{"_id":"@elysia-vue-query/core","_rev":"5-93e3f1e476f882c6ef241203a6911ad1","name":"@elysia-vue-query/core","dist-tags":{"latest":"2.0.1"},"versions":{"0.1.0":{"name":"@elysia-vue-query/core","version":"0.1.0","keywords":["elysia","eden","vue","tanstack-query","vue-query","typescript"],"author":{"name":"Saku Shiina","email":"shiinasaku@proton.me"},"license":"MIT","_id":"@elysia-vue-query/core@0.1.0","maintainers":[{"name":"sakushiina","email":"sakushiina@proton.me"}],"homepage":"https://elysia-vue.pages.dev","bugs":{"url":"https://github.com/elysia-vue-query/elysia-vue-query/issues"},"dist":{"shasum":"0d5eca46d87dfc915e992d33688b5aa54efb1cac","tarball":"https://registry.npmjs.org/@elysia-vue-query/core/-/core-0.1.0.tgz","fileCount":10,"integrity":"sha512-7tj7/xiwvEZ5Pl1/x/05WoPPtAaW1i67so16/WSLBjm/Cm3kf2XVVT7PL/rz/7IAkZGa/I553oVaugkdqbBH0A==","signatures":[{"sig":"MEUCIHrKBAV1dhfIQ1mapGH2mdzMjsHevi3VjcLUJ1azcit9AiEA91bBcqbo/lse8se159smHQCZ60wnuyv2nORrxllH9Co=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elysia-vue-query%2fcore@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":40293},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.mts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"bfbe01f5fa7aee08468864cf030ea09f3f69a0c3","scripts":{"dev":"tsdown --watch","build":"tsdown"},"_npmUser":{"name":"sakushiina","email":"sakushiina@proton.me"},"repository":{"url":"git+https://github.com/elysia-vue-query/elysia-vue-query.git","type":"git","directory":"packages/core"},"_npmVersion":"11.9.0","description":"Proxy engine, key builders, and serialization for elysia-vue-query","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsdown":"^0.21.0","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/core_0.1.0_1772954937215_0.8572264213203613","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@elysia-vue-query/core","version":"1.0.0","keywords":["eden","elysia","tanstack-query","typescript","vue","vue-query"],"author":{"name":"Saku Shiina","email":"shiinasaku@proton.me"},"license":"MIT","_id":"@elysia-vue-query/core@1.0.0","maintainers":[{"name":"sakushiina","email":"sakushiina@proton.me"}],"homepage":"https://elysia-vue.pages.dev","bugs":{"url":"https://github.com/elysia-vue-query/elysia-vue-query/issues"},"dist":{"shasum":"d4389fe1e63040b7d890c58353af5288fc3a1862","tarball":"https://registry.npmjs.org/@elysia-vue-query/core/-/core-1.0.0.tgz","fileCount":10,"integrity":"sha512-jVf1Sg+hC7CH2WbBa5KlfiHuQH/ZL5lxn7iC6cT8FLRkrAI0NmWqGk2U1rY4C54wv6k1Wouhi95r+m8EEulQdg==","signatures":[{"sig":"MEYCIQDhhHOoCC0u1TpHGaBsDpgQcUh1LZUDUwSlx6P3vvtmfwIhAPfdQzPBblvClvNq95ZLjGYrYT6Ho87Ext2dy2Wia2iJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":40804},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.mts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"763d154bef39c96f36426681a0c83a5b84cecda1","scripts":{"dev":"tsdown --watch","build":"tsdown"},"_npmUser":{"name":"sakushiina","email":"sakushiina@proton.me"},"repository":{"url":"git+https://github.com/elysia-vue-query/elysia-vue-query.git","type":"git","directory":"packages/core"},"_npmVersion":"11.11.0","description":"Proxy engine, key builders, and serialization for elysia-vue-query","directories":{},"_nodeVersion":"25.8.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsdown":"^0.21.0","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/core_1.0.0_1772982316914_0.17983647886174103","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@elysia-vue-query/core","version":"1.1.0","keywords":["eden","elysia","tanstack-query","typescript","vue","vue-query"],"author":{"name":"Saku Shiina","email":"shiinasaku@proton.me"},"license":"MIT","_id":"@elysia-vue-query/core@1.1.0","maintainers":[{"name":"sakushiina","email":"sakushiina@proton.me"}],"homepage":"https://elysia-vue.pages.dev","bugs":{"url":"https://github.com/elysia-vue-query/elysia-vue-query/issues"},"dist":{"shasum":"ebc3255eb94f96837e5195828194c74821dc78cb","tarball":"https://registry.npmjs.org/@elysia-vue-query/core/-/core-1.1.0.tgz","fileCount":10,"integrity":"sha512-vtnw0QOJphxq6IEoluTZ/MJnGs1VTAvutZ6/Ql7xxc/hMvmQm9YkFxHSWm6n/TQ39Zgt1lddTz61JvuWs9S1xQ==","signatures":[{"sig":"MEUCICP6U7TpnI2NBss7QMFutKU4SUL2A1s8rGdO0XV8oaZaAiEAz18Yxoz9y2SuWvfmPnoE0W4oOxc73WzfIwaBp8ysAEQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41336},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.mts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"9f7ef6f6b3fca5603591b809028f7372f8d712ad","scripts":{"dev":"tsdown --watch","build":"tsdown"},"_npmUser":{"name":"sakushiina","email":"sakushiina@proton.me"},"repository":{"url":"git+https://github.com/elysia-vue-query/elysia-vue-query.git","type":"git","directory":"packages/core"},"_npmVersion":"11.9.0","description":"Proxy engine, key builders, and serialization for elysia-vue-query","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsdown":"^0.21.0","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/core_1.1.0_1772982692526_0.6690206012570719","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@elysia-vue-query/core","version":"2.0.0","keywords":["eden","elysia","tanstack-query","typescript","vue","vue-query"],"author":{"name":"Saku Shiina","email":"shiinasaku@proton.me"},"license":"MIT","_id":"@elysia-vue-query/core@2.0.0","maintainers":[{"name":"sakushiina","email":"sakushiina@proton.me"}],"homepage":"https://elysia-vue.pages.dev","bugs":{"url":"https://github.com/elysia-vue-query/elysia-vue-query/issues"},"dist":{"shasum":"c047cb38ee709e7db949f55bee824bdb49cd80ba","tarball":"https://registry.npmjs.org/@elysia-vue-query/core/-/core-2.0.0.tgz","fileCount":11,"integrity":"sha512-TQXjHz4UJLpvCOik16iMf+5YVfeowRCEeSpngofn5QNxQf2NaMpu0adQdaBVdHp0W437tcNE+df5sfsuPVtqQw==","signatures":[{"sig":"MEYCIQCQUiVRq6LkHI/U950uGsohG1p7p09XwdRaeEvQ1wIzBgIhAJu5KakxqBwFbw68butGFSZER3TKNH9HhMK82TcCK/NO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":42412},"main":"./dist/index.cjs","type":"module","_from":"file:elysia-vue-query-core-2.0.0.tgz","types":"./dist/index.d.mts","module":"./dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"scripts":{"dev":"vp pack --watch","build":"vp pack"},"_npmUser":{"name":"sakushiina","email":"sakushiina@proton.me"},"_resolved":"/tmp/040700c2843177cf154746e4fad125ba/elysia-vue-query-core-2.0.0.tgz","_integrity":"sha512-TQXjHz4UJLpvCOik16iMf+5YVfeowRCEeSpngofn5QNxQf2NaMpu0adQdaBVdHp0W437tcNE+df5sfsuPVtqQw==","repository":{"url":"git+https://github.com/elysia-vue-query/elysia-vue-query.git","type":"git","directory":"packages/core"},"_npmVersion":"11.9.0","description":"Proxy engine, key builders, and serialization for elysia-vue-query","directories":{},"_nodeVersion":"24.14.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vite-plus":"latest","typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/core_2.0.0_1774027757154_0.5438855465261028","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@elysia-vue-query/core","version":"2.0.1","description":"Proxy engine, key builders, and serialization for elysia-vue-query","keywords":["eden","elysia","tanstack-query","typescript","vue","vue-query"],"homepage":"https://elysia-vue.pages.dev","license":"MIT","author":{"name":"Saku Shiina","email":"shiinasaku@proton.me"},"repository":{"type":"git","url":"git+https://github.com/elysia-vue-query/elysia-vue-query.git","directory":"packages/core"},"type":"module","main":"./dist/index.cjs","module":"./dist/index.mjs","types":"./dist/index.d.mts","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"publishConfig":{"access":"public","provenance":true},"devDependencies":{"typescript":"^6.0.2","vite-plus":"latest"},"scripts":{"build":"vp pack","dev":"vp pack --watch"},"_id":"@elysia-vue-query/core@2.0.1","bugs":{"url":"https://github.com/elysia-vue-query/elysia-vue-query/issues"},"_integrity":"sha512-iBc/NTjgIOG5nXVqJUsWXRsCKfCiNuS1DWTLJsXmTIHlJvzceRgFaS2QS7FJ4FofkIO1VxFqU1uKhMCkB4nkWw==","_resolved":"/tmp/802476d36a1952e662b07c1548706b3f/elysia-vue-query-core-2.0.1.tgz","_from":"file:elysia-vue-query-core-2.0.1.tgz","_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-iBc/NTjgIOG5nXVqJUsWXRsCKfCiNuS1DWTLJsXmTIHlJvzceRgFaS2QS7FJ4FofkIO1VxFqU1uKhMCkB4nkWw==","shasum":"1e078ee9c5f432617eb2a1f2d316cc6d68f5747c","tarball":"https://registry.npmjs.org/@elysia-vue-query/core/-/core-2.0.1.tgz","fileCount":11,"unpackedSize":42436,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elysia-vue-query%2fcore@2.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIB+3HPnSuPpkXvW7XUA2JPtHFTSMkaW6mON70CDhUpWlAiEAoma2jWUfs3wHBbq1CKD6I8oFiFJCYgo2mRPtzghcrsQ="}]},"_npmUser":{"name":"sakushiina","email":"sakushiina@proton.me"},"directories":{},"maintainers":[{"name":"sakushiina","email":"sakushiina@proton.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/core_2.0.1_1775719440875_0.031264793149402115"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-08T07:28:57.104Z","modified":"2026-04-09T07:24:01.363Z","0.1.0":"2026-03-08T07:28:57.347Z","1.0.0":"2026-03-08T15:05:17.059Z","1.1.0":"2026-03-08T15:11:32.677Z","2.0.0":"2026-03-20T17:29:17.321Z","2.0.1":"2026-04-09T07:24:01.055Z"},"bugs":{"url":"https://github.com/elysia-vue-query/elysia-vue-query/issues"},"author":{"name":"Saku Shiina","email":"shiinasaku@proton.me"},"license":"MIT","homepage":"https://elysia-vue.pages.dev","keywords":["eden","elysia","tanstack-query","typescript","vue","vue-query"],"repository":{"type":"git","url":"git+https://github.com/elysia-vue-query/elysia-vue-query.git","directory":"packages/core"},"description":"Proxy engine, key builders, and serialization for elysia-vue-query","maintainers":[{"name":"sakushiina","email":"sakushiina@proton.me"}],"readme":"# @elysia-vue-query/core\n\nFramework-agnostic primitives for bridging Eden Treaty with TanStack Query.\n\n[![Version](https://npmx.dev/api/registry/badge/version/@elysia-vue-query/core?labelColor=030712&color=f06292)](https://npmx.dev/package/@elysia-vue-query/core)\n[![License](https://npmx.dev/api/registry/badge/license/@elysia-vue-query/core?labelColor=030712&color=4ade80)](https://npmx.dev/package/@elysia-vue-query/core)\n[![Types](https://npmx.dev/api/registry/badge/types/@elysia-vue-query/core?labelColor=030712&color=3b82f6)](https://npmx.dev/package/@elysia-vue-query/core)\n\n---\n\n## Role in the Monorepo\n\nThis package provides the foundational layer that all framework-specific bindings depend on:\n\n- **Proxy enhancer** -- Wraps an Eden Treaty client in a recursive `Proxy` that tracks route segments, HTTP methods, and parameters via `Symbol` branding.\n- **Query key builder** -- Constructs deterministic, hierarchical key tuples from branded proxy references.\n- **Stable serialization** -- Sorts object keys alphabetically and strips `undefined` values, ensuring identical parameters always produce identical cache keys.\n- **Symbol namespacing** -- `EDEN_ROUTE_SYMBOL` prevents collisions with any other TanStack Query keys in the application.\n\nYou typically do not install this package directly. It is included as a dependency of `@elysia-vue-query/vue` and `@elysia-vue-query/nuxt`.\n\n## Install\n\n```bash\nbun add @elysia-vue-query/core\n```\n\n## Exports\n\n| Export                                   | Description                                         |\n| ---------------------------------------- | --------------------------------------------------- |\n| `EDEN_ROUTE_SYMBOL`                      | Unique symbol used to namespace all Eden query keys |\n| `createEdenQueryProxy(client)`           | Wraps an Eden client in a segment-tracking proxy    |\n| `getRouteMeta(enhanced)`                 | Extracts `RouteMeta` from a branded proxy           |\n| `buildQueryKey(enhanced)`                | Builds the canonical query key tuple                |\n| `buildMutationInvalidationKey(enhanced)` | Builds a partial key for subtree invalidation       |\n| `buildPartialKey(...segments)`           | Manually constructs a partial key                   |\n| `stableSerialize(input)`                 | Deterministic serialization for cache key params    |\n\n## Documentation\n\nFull API reference and usage guide:\n**[Docs](https://elysia-vue.pages.dev/api/core)**\n\n## License\n\n[MIT](../../LICENSE)\n","readmeFilename":"README.md"}