{"_id":"vue-context-storage","_rev":"47-85722f357553e7a1b135e49fa0bfff8c","name":"vue-context-storage","dist-tags":{"latest":"0.1.46"},"versions":{"0.1.0":{"name":"vue-context-storage","version":"0.1.0","keywords":["vue","vue3","context","storage","state-management","query-sync"],"author":"","license":"MIT","_id":"vue-context-storage@0.1.0","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"dist":{"shasum":"9ad2a1f1c83867529dd73cb7566ce744678cc7d2","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.0.tgz","fileCount":41,"integrity":"sha512-5XM0WcJ+3lGH/BhpulLwJW0Ad3fk25hTMjG8LKdgiPJ+lsSlu+NkI1K5IJwt7E4sJWr4QlyuqqKeU6V9EEzpSQ==","signatures":[{"sig":"MEUCIQD1Lv7NKgE1AJSS8FzZlMxrTz9DCk0msE0PK1iVD7gUSwIgdypVzU/KR4p//QOHOz6RGeREYMKQU3uUrnV6sRJ39os=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179731},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./plugin":{"import":"./src/plugin.ts"},"./components":{"import":"./src/components.ts"}},"gitHead":"2cc2f6047e366d7ebef9ec651a920ac16533a486","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","ts:check":"tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","eslint":"^9.39.2","tsdown":"^0.3.0","prettier":"^3.7.4","@eslint/js":"^9.39.2","typescript":"^5.9.0","vue-router":"^4.6.4","@types/node":"^20.0.0","@types/lodash":"^4.17.15","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","dependency-cruiser":"^17.3.6","eslint-config-prettier":"^10.1.8","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.5.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.0_1767603737690_0.1537921603283059","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"vue-context-storage","version":"0.1.1","keywords":["vue","vue3","context","storage","state-management","query-sync"],"author":"","license":"MIT","_id":"vue-context-storage@0.1.1","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"19edb0ec39790f2418dff05c4c16a5ddc42fe69b","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.1.tgz","fileCount":41,"integrity":"sha512-d+iDnfVQn/rxHBvlHyTtLUmsoqaXk7v1BuECcPCg4BajnCMts1rrtjUKz9e83h3nkj+FSr4NyZANS5KxabWOCA==","signatures":[{"sig":"MEUCIQCY6lDvqwT7S6i4OkWumDL2lKmXYkovaA9Kxb5M2g8sjwIgUPf5lFQ5WZnk7UOn6RtGP/XmnramdcL5//zPymOSzOM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179837},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./plugin":{"import":"./src/plugin.ts"},"./components":{"import":"./src/components.ts"}},"gitHead":"8622d64ac52c35f839b69d5e71ed7f5fa8bb1782","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","ts:check":"tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","eslint":"^9.39.2","tsdown":"^0.3.0","prettier":"^3.7.4","@eslint/js":"^9.39.2","typescript":"^5.9.0","vue-router":"^4.6.4","@types/node":"^20.0.0","@types/lodash":"^4.17.15","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","dependency-cruiser":"^17.3.6","eslint-config-prettier":"^10.1.8","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.5.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.1_1767603989694_0.5518191022662629","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"vue-context-storage","version":"0.1.2","keywords":["vue","vue3","context","storage","state-management","query-sync"],"author":"","license":"MIT","_id":"vue-context-storage@0.1.2","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"e21c5cfe1bc9c75d96dcf516f17fbbeaf79da841","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.2.tgz","fileCount":41,"integrity":"sha512-2advO3l2Mk9Ep4/NGz3jQWAVMhfG69bG2kuWJ/HqD6H5SqsRIReToJNiuvAl/JPHWL7LDtWMaSmwv27iWSzIhw==","signatures":[{"sig":"MEQCIGkiLzMcIOdwAWSMNwSit3OzeYem0CgupMiCUzhRvUUWAiBGZccSSum7RxqtZ5HiEScWC8C1JJ1kij8mhODv/QxFDA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179755},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./plugin":{"import":"./src/plugin.ts"},"./components":{"import":"./src/components.ts"}},"gitHead":"0ad77c394929da06138159649f5839956242e4ee","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","ts:check":"tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","eslint":"^9.39.2","tsdown":"^0.3.0","prettier":"^3.7.4","@eslint/js":"^9.39.2","typescript":"^5.9.0","vue-router":"^4.6.4","@types/node":"^20.0.0","@types/lodash":"^4.17.15","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","dependency-cruiser":"^17.3.6","eslint-config-prettier":"^10.1.8","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.5.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.2_1767607756008_0.7139109675745408","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"vue-context-storage","version":"0.1.3","keywords":["vue","vue3","context","storage","state-management","query-sync"],"author":"","license":"MIT","_id":"vue-context-storage@0.1.3","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"9da5450d44fdb1a072f5ac15e74858f62bcbf12f","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.3.tgz","fileCount":41,"integrity":"sha512-DQ44bAmtt05Y8Jfv0iNR0vLsF0v1q/jQn/sJBtNL6Vdv84MDxVte/p06X+JKUfOed3GvswA1kmgFg80CcZjWAA==","signatures":[{"sig":"MEYCIQCl0R0jVJrNyr9OFzkL6yBnjw8an0SS39rx7NCvf1VDhAIhAOi0oAlKqIiT3prhHbnvxUozW5S2Byw8cGGzIxszdg/j","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":179623},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./plugin":{"import":"./src/plugin.ts"},"./components":{"import":"./src/components.ts"}},"gitHead":"0ad77c394929da06138159649f5839956242e4ee","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","ts:check":"tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","eslint":"^9.39.2","tsdown":"^0.3.0","prettier":"^3.7.4","@eslint/js":"^9.39.2","typescript":"^5.9.0","vue-router":"^4.6.4","@types/node":"^20.0.0","@types/lodash":"^4.17.15","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","dependency-cruiser":"^17.3.6","eslint-config-prettier":"^10.1.8","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.5.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.3_1767610314449_0.9241911047912499","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"vue-context-storage","version":"0.1.4","keywords":["vue","vue3","context","storage","state-management","query-sync"],"author":"","license":"MIT","_id":"vue-context-storage@0.1.4","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"4cdd503c5afaa2d700464abc3c06247319593092","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.4.tgz","fileCount":40,"integrity":"sha512-6P9ctQbzxi/O8fBQB5DTBLg0nPM6RCJp7nUhj2Qms5ep4aU/FO2MOCEJPLQP0zjlXbSjU4khDcI1tNmnWdJ6BA==","signatures":[{"sig":"MEQCIEsB46wKTjuJBbBAJw8A5edAqCWqOWVdaMaHb0SQB+KDAiAoV/ya0DR1cEhzQnNOrOLE/y4nMDfMmp3pbm6FfrXjEw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":167334},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":"./src/main.ts","require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"0ad77c394929da06138159649f5839956242e4ee","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","ts:check":"tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","eslint":"^9.39.2","tsdown":"^0.3.0","prettier":"^3.7.4","@eslint/js":"^9.39.2","typescript":"^5.9.0","vue-router":"^4.6.4","@types/node":"^20.0.0","@types/lodash":"^4.17.15","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","dependency-cruiser":"^17.3.6","eslint-config-prettier":"^10.1.8","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.5.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.4_1767612153578_0.10482150429200643","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"vue-context-storage","version":"0.1.5","keywords":["vue","vue3","context","storage","state-management","query-sync"],"author":"","license":"MIT","_id":"vue-context-storage@0.1.5","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"dc74e392f22c7df2a2af25f31eb167b36394414a","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.5.tgz","fileCount":40,"integrity":"sha512-pGjCAQc+asqLwzVVisiomU0SUJW0xWipwqPgtIhd1yp8Ip/gQ/RyrV19eBQk83Yvt57HMwiYEj8ZnRrA5prk4Q==","signatures":[{"sig":"MEUCIQDqBMwnHXgHK+LSAirkuflce6nDaBYCnM4Zh1BipZavYgIgaycWbOhCQxdiv5VomkMBUvflxsY8RDUy/YsZGjR0HXM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":167924},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":"./src/main.ts","require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"0ad77c394929da06138159649f5839956242e4ee","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","ts:check":"tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","eslint":"^9.39.2","tsdown":"^0.3.0","prettier":"^3.7.4","@eslint/js":"^9.39.2","typescript":"^5.9.0","vue-router":"^4.6.4","@types/node":"^20.0.0","@types/lodash":"^4.17.15","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","dependency-cruiser":"^17.3.6","eslint-config-prettier":"^10.1.8","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.5.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.5_1767612512571_0.2605042347703772","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"vue-context-storage","version":"0.1.6","keywords":["vue","vue3","context","storage","state-management","query-sync"],"author":"","license":"MIT","_id":"vue-context-storage@0.1.6","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"4d5433ac62b6da19f75a6cc8d53a7b1239d88104","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.6.tgz","fileCount":40,"integrity":"sha512-G4GFSZepK1ynnUZn5RGiFp6Ddq01rZD8aK2Ny1SvSIVUwdbwn861EpkV5tMjoMdYIlw6cSArmJ2mzjGRld99yQ==","signatures":[{"sig":"MEQCIC1/5hS9sSotQ6e2Pa0H42EqSnImLNBQn/59HQR+Ug/SAiAHmjowVD+oOKprl4+t4iq68isFpYhZtGl3G7EueCp9oA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":167376},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":"./src/main.ts","require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"0ad77c394929da06138159649f5839956242e4ee","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","ts:check":"tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash-es":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","eslint":"^9.39.2","tsdown":"^0.3.0","prettier":"^3.7.4","@eslint/js":"^9.39.2","typescript":"^5.9.0","vue-router":"^4.6.4","@types/node":"^20.0.0","@types/lodash-es":"^4.17.12","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","dependency-cruiser":"^17.3.6","eslint-config-prettier":"^10.1.8","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.5.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.6_1767614248705_0.6407399642951572","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"vue-context-storage","version":"0.1.7","keywords":["vue","vue3","context","storage","state-management","query-sync"],"author":"","license":"MIT","_id":"vue-context-storage@0.1.7","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"62ca7565e9e01109e4c8abad6a3af93e3c2626a5","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.7.tgz","fileCount":41,"integrity":"sha512-8WZ1/a5AJI2vTjWwjvz1XCW2kpL/aWEwGRKjFDE6iKjfIveyCY76KKxUsFh9TrL5SB0y1Y+5YiSATp0Xj7Q/9Q==","signatures":[{"sig":"MEUCIFrIyDX483nxkWlZKbLhp6MPXzOM30l14SfEA+L9xcQTAiEAt3kEcmxi8NfMQGty/u7Rfhe9uqFv213oy5vgNa0yZN8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":169865},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":"./src/main.ts","require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"0ad77c394929da06138159649f5839956242e4ee","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","ts:check":"tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash-es":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","eslint":"^9.39.2","tsdown":"^0.3.0","prettier":"^3.7.4","@eslint/js":"^9.39.2","typescript":"^5.9.0","vue-router":"^4.6.4","@types/node":"^20.0.0","@types/lodash-es":"^4.17.12","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","dependency-cruiser":"^17.3.6","eslint-config-prettier":"^10.1.8","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.5.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.7_1767614801814_0.15788922653873216","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"vue-context-storage","version":"0.1.8","keywords":["vue","vue3","context","storage","state-management","query-sync"],"author":"","license":"MIT","_id":"vue-context-storage@0.1.8","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"9f30c0052bbbc15ec3f8a93081dd884b8d5d14fb","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.8.tgz","fileCount":44,"integrity":"sha512-NnTvf0/g+H7gFY3yHK4lAZmAA1b6aPwnMEsV31Sgo3kzafUhan7G7BIdvjyoOOff73aTgjn31RJB8zB3Rgk+hg==","signatures":[{"sig":"MEUCIQCij9NcjRueXJa8pJ9C4OVBXKcLF6kk2aj9c9z9Wql/tQIgJXZPCLM99rHbrK2eUOAZV4WAdbP1W1MYQhyx3UDBb2Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":167986},"main":"./dist/index.cjs","type":"module","types":"./src/main.ts","exports":{".":{"types":"./src/main.ts","import":"./src/main.ts","require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"gitHead":"0ad77c394929da06138159649f5839956242e4ee","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","ts:check":"tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash-es":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","eslint":"^9.39.2","tsdown":"^0.3.0","prettier":"^3.7.4","@eslint/js":"^9.39.2","typescript":"^5.9.0","vue-router":"^4.6.4","@types/node":"^20.0.0","@types/lodash-es":"^4.17.12","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","dependency-cruiser":"^17.3.6","eslint-config-prettier":"^10.1.8","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.5.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.8_1767615855298_0.9473106107675027","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"vue-context-storage","version":"0.1.9","keywords":["vue","vue3","context","storage","state-management","query-sync"],"author":"","license":"MIT","_id":"vue-context-storage@0.1.9","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"a40271f9c084f2411342c60336511a1f3a7bd148","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.9.tgz","fileCount":41,"integrity":"sha512-Khf2vjvdFVz3zizYM/oVXi+mT+X2N8VdPnsqsWA7dx3srx9AtKJXu8dUKEmwSVPT+pgtL8cggdDkxhWRDP9HGA==","signatures":[{"sig":"MEQCIDLWeZbCCF+HPT938lpAhDNpSH0tJlNFjMKj6JLO4ZITAiAnCvTqHFDwGbFJvTaMCX/tB5qeIhsen0WYEwCy99+B1g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":203421},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./plugin":{"import":"./src/plugin.ts"},"./components":{"import":"./src/components.ts"}},"gitHead":"0ad77c394929da06138159649f5839956242e4ee","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","ts:check":"tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","eslint":"^9.39.2","tsdown":"^0.3.0","vue-tsc":"^3.2.1","prettier":"^3.7.4","@eslint/js":"^9.39.2","typescript":"^5.9.0","vue-router":"^4.6.4","@types/node":"^20.0.0","unplugin-vue":"^7.1.0","@types/lodash":"^4.17.15","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","dependency-cruiser":"^17.3.6","eslint-config-prettier":"^10.1.8","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.5.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.9_1767618438426_0.34751659812163593","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"vue-context-storage","version":"0.1.10","author":"","license":"MIT","_id":"vue-context-storage@0.1.10","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"b711afe0272082b4c9b46ca67312149b48b67b6c","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.10.tgz","fileCount":5,"integrity":"sha512-/SVDGYd5ffKbXtb/aAS5VmbjXimaXfEi3vvsdJb782Oum7cfUoVn0YAmDIaeQOyaw+OqBi5MIm7sZ4+vFkzaSQ==","signatures":[{"sig":"MEYCIQCGtOtLYayjExsB8s2ECI0T/LSiGBXLuJKsBMacM+Za9wIhAIe7LiBSiyeFW0k2hX/8NC39MBdJ8M0r5rAXLOkfm2tJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":44232},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"f571a2744f08283b43e8763e174888dd7524136c","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","vite":"^7.3.0","bumpp":"^10.3.2","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","prettier":"^3.7.4","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","@types/lodash":"^4.17.21","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.10_1767620383351_0.676496284677589","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"vue-context-storage","version":"0.1.11","author":"","license":"MIT","_id":"vue-context-storage@0.1.11","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"b0eb485035c4e8a268b6298824dfca7ac07d15da","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.11.tgz","fileCount":5,"integrity":"sha512-lvfly6f/nzBnmJi45mcj70WGnHi3+lV9yL/KJGTAmjCV8upAND8rUMldABt1BoFMbdckp69TxN8bVrJOa49oBg==","signatures":[{"sig":"MEUCICr9Shl5naX1oARaupDksRSFcwTp2KxSF2CVXnzTjL+nAiEAj5SXiXxBliRc5FG0uuerBPuQHoj6CNysxYIKaNnjOkc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":44754},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"62161f57aace9e2e4a8bd507cce4c1c1331152d5","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","vite":"^7.3.0","bumpp":"^10.3.2","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","prettier":"^3.7.4","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","@types/lodash":"^4.17.21","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.11_1767621032932_0.05914543731926236","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"vue-context-storage","version":"0.1.12","author":"","license":"MIT","_id":"vue-context-storage@0.1.12","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"ec6e69c2ae642766f54c0447d27cde5d7814d391","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.12.tgz","fileCount":5,"integrity":"sha512-QUOFfpKUb//3azg6zxVr/uv+bxWGVC7lvi5ZspOBUOw/dR3ndNVG0IrV2xYo5lyc7gDTfZGZjCMJ3M0YkqSfog==","signatures":[{"sig":"MEQCIHGsnRmL8+vVF+DvPepHLGKV3nkk52FY+3b8h3wx+av8AiBZclD8wH/w3WM+XrrCrSt2F1d3giA/WZ3L95nNq7UI4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":44756},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"1846f8b4dc8bdbf6c3c9c3adeeba2a8e2f10fb9d","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","vite":"^7.3.0","bumpp":"^10.3.2","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","prettier":"^3.7.4","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","@types/lodash":"^4.17.21","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","vue-router":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.12_1767631264228_0.43855372113793445","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"vue-context-storage","version":"0.1.13","author":"","license":"MIT","_id":"vue-context-storage@0.1.13","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"dcb088dc55e9874c97b0b10ca077a4afb1a09a90","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.13.tgz","fileCount":5,"integrity":"sha512-4eG4+AmWzAKzS4jvuYYqNDFnaBObNY2vv6pJI19PExrVQ8wBgsE1yUNCrgtpHyxUgZcMm1URkjt3D3VLU1+yVw==","signatures":[{"sig":"MEUCICu3CRs7j85hcxuCxQYQ7HFN5rYO7lxwRXsyilw4WF/OAiEAw9KqPhmAnLA76F48VFUSbn4rQD9SxEi8bvgr3KDV8OM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49208},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"d27a197d176142d7c02833c10962da5b12a53957","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","prettier":"^3.7.4","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","@types/lodash":"^4.17.21","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.13_1768045615182_0.022348245622830554","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"vue-context-storage","version":"0.1.14","author":"","license":"MIT","_id":"vue-context-storage@0.1.14","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"720d77542dc6fa8a20f61eca4f5ec7262f08b1f7","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.14.tgz","fileCount":5,"integrity":"sha512-ET34GP9pyf91VXgchZ2dDBJKuBt8fInfSolCnWa0uWcavAIcWd3dJl20Qs0OJPXpGn3IECXcbTzyPDrZ+DBabQ==","signatures":[{"sig":"MEQCIC2Jhwfc0Pp3MlizlT0VExBSI1VDBjEr17inwlR5idTKAiBVjuCPIfNtwAzwAdSCvM8sE4tYpSUPYbPmdyVKihvnog==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49276},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"952ea2eaed024a69c6706dc042b0dd7f646686e6","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","prettier":"^3.7.4","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","@types/lodash":"^4.17.21","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.14_1768045752302_0.8248315327535387","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"vue-context-storage","version":"0.1.15","author":"","license":"MIT","_id":"vue-context-storage@0.1.15","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"1240d6c0d412a4f80fcdae5a66a7c9df2150ce4e","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.15.tgz","fileCount":5,"integrity":"sha512-U3AJxt/syaU3bNrRPf/st13vN+Tn85CMtpAojKevi0Y7OTB7gy4a1G66RVSLlfSh6i7DgtBQcSrzbmqLDn234A==","signatures":[{"sig":"MEUCIQDVjFR5+aA4GNkqxIh5F5mHELwH14muw8Vq1EZ2AKSa3gIgdXA1Umsx1l6T8JqPpz1utTq5e0MKVKKiTq7I2d/hZ5A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48178},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"106eea1be3f48eb3b3a2efdc269f208d2360868f","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","prettier":"^3.7.4","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","@types/lodash":"^4.17.21","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.15_1768049157205_0.24213825684853219","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"vue-context-storage","version":"0.1.16","author":"","license":"MIT","_id":"vue-context-storage@0.1.16","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"62763f88c258e5c2c2c34c755bbb723485b26925","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.16.tgz","fileCount":5,"integrity":"sha512-qed8GYXhqglencIbRRy1eicpEcFrlGkg6zBxrwJQV5oLjHLfPgvKtN6rl61oI9RnpNDA+1nl5y0Kp7lnWd5Gyw==","signatures":[{"sig":"MEQCIG3Z+JIbEDZQ7Q/mM6llyau7jsPZQr9usSO69RC0m4hdAiBNITD8H9RRrDN5ps2VVp793UBmrJ6XPrvHZOhSkMv8Vg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49960},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"4674e3fef74e787b3a78f6c78ccd0d640fecc6a9","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","prettier":"^3.7.4","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","@types/lodash":"^4.17.21","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.16_1768050627231_0.4343220795132845","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"vue-context-storage","version":"0.1.17","author":"","license":"MIT","_id":"vue-context-storage@0.1.17","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"909ed90962a3c17553853022c8bc1dc127f5d24d","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.17.tgz","fileCount":5,"integrity":"sha512-w+y3FMTvNF6c7lLkPfTxl3dEUh7Bm3zvAYV3psOP+mNezOvpBovUKuXnh2qDx7nfnfuu61rp5d8U/17zZkHWaA==","signatures":[{"sig":"MEQCIFLnWVJpqRwIk2B4vLsk7h6zH78dLG9gWeanoHE8zaLjAiAPeIfTQCnO0J4Jd0Z65tMajKB+m6sVktgWqD5wnYDjxQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50423},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"69e7c95ac1221f62cbd3998fc353b035da0e263c","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.17_1768058465590_0.34663599926910926","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"vue-context-storage","version":"0.1.18","author":"","license":"MIT","_id":"vue-context-storage@0.1.18","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"6994a1cf6d91d60f2d370cf5de4ebda234f755a8","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.18.tgz","fileCount":5,"integrity":"sha512-bJYGBoGHhD3hQXawv0Zw8JP/W+ruk1oJar0jkZFxcCmCJkZ41jAMBE+uU3Rv3sdYIt8Umh8IUinAGkhH0IWaNg==","signatures":[{"sig":"MEYCIQC5luMznRpCQW028LXh2uiA1p0rrbNafsHLX+2cCvS3WwIhANaOxL53+Ld3TjtH8TaBWz+dVH5pAef9/CsOGj/jIYP7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51072},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"d510723cd6c290010b3002b55bffb048a55a4212","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.18_1768064545658_0.19760731055923175","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"vue-context-storage","version":"0.1.19","author":"","license":"MIT","_id":"vue-context-storage@0.1.19","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"2d4832705a0d98feb6ff673e629b963127a8555d","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.19.tgz","fileCount":5,"integrity":"sha512-Q1NxzupEr77T/BnpFKjeYpwpmc2kIOz41Lmf3v0rTmpkw/5+1D/Jtkx00EKyHLPnI2u7VOuyaGaQKr+IQuxiqg==","signatures":[{"sig":"MEUCIQDvchLKNf0IrAsOIMI9I3xJ1Ulq8gjtsMV9CVh7igH1BQIgUMB0pKVMoBDigc39xoINgiwiyKtHcbk1y2RbJkB7IGA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51057},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"eee00819512b92ebd738f96cc3c97c99ed57fafb","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.19_1768064668945_0.42284211473990063","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"vue-context-storage","version":"0.1.20","author":"","license":"MIT","_id":"vue-context-storage@0.1.20","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"6f4f2a0ad9a80cb705cb2dabb475232656c30992","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.20.tgz","fileCount":5,"integrity":"sha512-RljVxGaSCiaYWqBVpYA2dgmU5vJp/VBJODZw5elGH4dVktrzNS6GIXWTYLeFAK2EkBeZITa98z1ng9fpOYlmcQ==","signatures":[{"sig":"MEUCIGh2llYdfeCMA/eICknOj9UL0Op3yALdTRwegxSQGTRmAiEAnuVi7WsSVRORheajpnrHwHtKw+d4eQcEn7E5B3NQ2eY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51109},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"1d7d921d8bb69a4f57e5ee796c0c82143d0e0f69","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.20_1768559400657_0.6707956650455711","host":"s3://npm-registry-packages-npm-production"}},"0.1.21":{"name":"vue-context-storage","version":"0.1.21","author":"","license":"MIT","_id":"vue-context-storage@0.1.21","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"45719106053ce76ff12ff64db3b3972d23b5bcf4","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.21.tgz","fileCount":5,"integrity":"sha512-dmD+aC8MWFGksmlkyxdsBlHD/Yp6lrhAPsxRGH9qQEJbx5z3gWnN+lsVOSvYwbJyRZfTLfuZH4HUk2G4BUN9kQ==","signatures":[{"sig":"MEUCIGc+wxJlibJ0nW/mAVopv60Hgq3nFI42yI9f6K+kprOHAiEA7NfnZPNuHQx2m4DOdqASQ08mY80tuRZLmdwgij4+54Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50765},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"b6cb4757c8982e6a78aa1662050c7fd6444a4640","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.21"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.21_1768942628113_0.11882576332048345","host":"s3://npm-registry-packages-npm-production"}},"0.1.22":{"name":"vue-context-storage","version":"0.1.22","author":"","license":"MIT","_id":"vue-context-storage@0.1.22","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"a6d7aa51252fde13a00ec99976ce3f8309426b30","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.22.tgz","fileCount":5,"integrity":"sha512-gkkMo1nFBlt7CC4mJl8b0WfO+rJZXSRjax9t/fp3/SwyZqX3xoNbiX4V9Lqp+rui+A4yDezKKnWVujmxDjYaEA==","signatures":[{"sig":"MEUCIQC0jnGCeAu1q0m/6p8dGMxNnZ63GnVL+r4W0l/GXNW8fwIgYZiujfexg+oDT5IUH1bkgptVAE3IsAU0V9kcTAaF2Jg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50906},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"270b332e65aff65d9eb0b52d25f533895b9bfe06","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.22_1769338087202_0.008330889405155917","host":"s3://npm-registry-packages-npm-production"}},"0.1.23":{"name":"vue-context-storage","version":"0.1.23","author":"","license":"MIT","_id":"vue-context-storage@0.1.23","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"ed9d7d0da498d00bc5c9b29b2fdd9989bd185acd","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.23.tgz","fileCount":5,"integrity":"sha512-gVTzi6LscIdiKpTctxdtc2iw8Xq4Hbo46NTGV2JQ1ytQOphLbcvKUT20HAWDekcUe3XeSaPNfvelw3jh6XZdKw==","signatures":[{"sig":"MEUCIQCUsve02dZjGabPzJA+5c4WXsjPWDmSkTSiQyb9tZEWCAIgGrisV/RNTyAEEE3V1Nm9oQlZPeECTFvCseqC/GzUSa4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74030},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"91f2cb155dbd3c98e8bf3e7ee191833eafa4029f","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.23_1769636323850_0.018798143034773895","host":"s3://npm-registry-packages-npm-production"}},"0.1.24":{"name":"vue-context-storage","version":"0.1.24","author":"","license":"MIT","_id":"vue-context-storage@0.1.24","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"9765c6baf2ed43200a7d69cead14901c61a00c81","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.24.tgz","fileCount":5,"integrity":"sha512-OqJr6Fpo9940e32lxuK+N50ey2HMDCxas0ks2WivTW5oJmB8D+TBPaFhRkraXTFkt7kzJs56whIafTVZm4Vtew==","signatures":[{"sig":"MEUCIQC3zHTY8BWnORDVdTLtHpx7QPeGuNjkcS8zpAb1HcTviAIgI0MLuZOeXsikeRzulWK6fEL9+gNzKDVGHrcv0XU6lJQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74175},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"ad600acbc3cc5160b1b193fcc6c91f24f56d00ec","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.24_1769876535302_0.5921360032908156","host":"s3://npm-registry-packages-npm-production"}},"0.1.25":{"name":"vue-context-storage","version":"0.1.25","author":"","license":"MIT","_id":"vue-context-storage@0.1.25","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"8c66debddd092001ec4786be8b671b6f4337d003","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.25.tgz","fileCount":5,"integrity":"sha512-DMZW+POF0C+mSv0dHsCutb7p7Y7WJjf7wbVoQz2XDQhVAH1uhouwHBXjA7M6hCIYVkwO3uX0dkLtSQPLBx6F1A==","signatures":[{"sig":"MEUCIGehrAS+cGVWS1+OGDcuelUxrqFQWKXbRlgEY/ELCWhVAiEA1AnbMnVVXT1EbpPS3Cd2ehVT1xM3aKpTKe3jUJyNcCo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75698},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"f01ecc3b0c4f9879686f9a38e8fa16a8ea8d992c","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"10.9.2","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.25_1770068461077_0.4777842062273632","host":"s3://npm-registry-packages-npm-production"}},"0.1.26":{"name":"vue-context-storage","version":"0.1.26","author":"","license":"MIT","_id":"vue-context-storage@0.1.26","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"7244929b02262a58b93d38c0665aee5f3d4577ad","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.26.tgz","fileCount":5,"integrity":"sha512-t60eyJgO0TXgR3C9jzGzxenzWWukm4lLozwu5Hme041TXXBpfukbXEC3OsFZ+i4hn+XCxHikAL7QCL0slt+kKg==","signatures":[{"sig":"MEYCIQCZXBAPo/NDw0L9TC2mkJOnPWlPd2oo4JBXcDlRhiejwQIhANg6Z1OUYb7zzjB2yH0TlSUCv0gtTxYopDRwOzI5TykC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77379},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"6bbace9b7a46c8972275770b33ecd4d6c04e87c5","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.26_1770563243878_0.39331078790169105","host":"s3://npm-registry-packages-npm-production"}},"0.1.27":{"name":"vue-context-storage","version":"0.1.27","author":"","license":"MIT","_id":"vue-context-storage@0.1.27","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"a7e916ace2d7c892922cd3bb4132b73fb6b296bd","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.27.tgz","fileCount":5,"integrity":"sha512-m7774T9F8gFQr8C/VgFY4vbjW7Szj6j5fIqyY+yG9y1ExY2QXQss6SGop/1f57oZAxZR3g2EL39ePvQ+DXjkww==","signatures":[{"sig":"MEYCIQDMyu2SIUYWhp3SnRvIOj70GCFpwqXUItcRTx08jzkz4AIhAPUMG0DsLG6l0dYM2gSp91AKdwftCzCJHDT/HTOUluwa","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":84930},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"25db9389182939f628d2ac0031c9cea1ebe27d43","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.27_1770574661788_0.20307168450465407","host":"s3://npm-registry-packages-npm-production"}},"0.1.28":{"name":"vue-context-storage","version":"0.1.28","author":"","license":"MIT","_id":"vue-context-storage@0.1.28","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"a1f4fca0908323aa7600a39bed79e538025e952c","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.28.tgz","fileCount":5,"integrity":"sha512-p9dVyG2vkpc+mr6Hvod1/P0588A3hxQ7aZWSSZ7TP7HzdZBknojQfZ2Jvqd9Z/letwJ6OaeG+trXZJcGl4WBgA==","signatures":[{"sig":"MEUCIQDOt757TQFQHvYUP0jdedJGWFQyJdpRzv28XkzPPY7cYgIgfezq2P5slYr3modJWwmLM3WL3eWEfeSjx4j1PQWTmi0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79508},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"ed97a06518f4b5cf0f9381573b51d0e01000f3cd","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.28_1771007951981_0.0031667479567611956","host":"s3://npm-registry-packages-npm-production"}},"0.1.29":{"name":"vue-context-storage","version":"0.1.29","author":"","license":"MIT","_id":"vue-context-storage@0.1.29","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"21cf39b48efacbe4fa2afaa4c210389e6b5d95d8","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.29.tgz","fileCount":5,"integrity":"sha512-ekiz+YRqH9FgCUXN6Cam+ZNK2FMes/6f9/BJ/uSH/s00PWQWkHfqLC22Bm8gqxMlQhIzpm8Ijxs5T1F4NSjK7A==","signatures":[{"sig":"MEYCIQDc3vroC48vA3vRBksrLbrleEWsv6zkpcnJProuxptHfQIhAKBviGg2HJMd2V+q+El52k7DrlJTiN6T23ON4q1UL1ck","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80861},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"18b6107a36f57d27b372b590bc7aa91570d12323","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.29_1771173688993_0.5300009221878448","host":"s3://npm-registry-packages-npm-production"}},"0.1.30":{"name":"vue-context-storage","version":"0.1.30","author":"","license":"MIT","_id":"vue-context-storage@0.1.30","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"e73036861bcb8318918b258fb68fe156b53ed5c7","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.30.tgz","fileCount":5,"integrity":"sha512-mO/0phpHCWbXmFjYwliuoWwOkV5yHDfjkf6RTHEMLVbjWGk9hDXfQD416eacCXaVQ2ZTh+cCgKpVBAWBKSVERQ==","signatures":[{"sig":"MEYCIQD/JdmlGQkBQsFf7K7kO5fA9MWiskFYZ8jwtOYNeRGCuQIhAMWn0dixxFuGetH94y2tjMQzVNFuW1vAuXwzv0zQEGaG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80829},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"8d06c9dfcd76c4d2a5c6427ab0edc011fabd16bc","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.30_1772182028826_0.6328488043932168","host":"s3://npm-registry-packages-npm-production"}},"0.1.31":{"name":"vue-context-storage","version":"0.1.31","author":"","license":"MIT","_id":"vue-context-storage@0.1.31","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"8ccd0d035a01e8b4e6193d23367f1c26796c3b6b","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.31.tgz","fileCount":7,"integrity":"sha512-Y7WezbQFZKUNlKeou+6j+/lu+d1EUpJNNIPcAUC6mbfZKdyptVfLORa4ke/M+nTjWQSA+EvkuBKGrHCZvgCWww==","signatures":[{"sig":"MEYCIQDf8UqYfP2XWI75BMip2Vpo0U4fTBycQELaSV1io7+2WgIhAMFpg/YriSdsC49/5RWWs01HuQn0dfOL0i3/KMfk2gBu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":85477},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./zod":"./dist/zod.js","./package.json":"./package.json"},"gitHead":"1f73c9eb40cfed069069cddfd1f62fe3921f6ce8","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.31_1772400796990_0.39117079014977607","host":"s3://npm-registry-packages-npm-production"}},"0.1.32":{"name":"vue-context-storage","version":"0.1.32","author":"","license":"MIT","_id":"vue-context-storage@0.1.32","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"a527e22acb92a336dde6e4dd62a55035eb0ce62d","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.32.tgz","fileCount":7,"integrity":"sha512-YS7a7gZ68k6YxttM14LnBVdJvKroCrHosfvQYVI96JX8fW69n/dtyCCgx8GtzRZEn4uojLmJnlOqpoQivmGr1A==","signatures":[{"sig":"MEUCIQDCnMCgBMIQaBl08KpJgVbE/9kO8vgEJiAW931c+CalEwIgZx2+v82ZfC3jt3zx5gojhlWtUQDQEZ9hpne3ZhshzDg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":88755},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./zod":"./dist/zod.js","./package.json":"./package.json"},"gitHead":"5f733064f3afada4f0ea991d2fa503792c737acd","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.32_1772474735892_0.05526137817782284","host":"s3://npm-registry-packages-npm-production"}},"0.1.33":{"name":"vue-context-storage","version":"0.1.33","author":"","license":"MIT","_id":"vue-context-storage@0.1.33","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"b3a97bddd0b41fdd4065eb3ae368e5ef71faf49e","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.33.tgz","fileCount":7,"integrity":"sha512-6hllcedgvCalNAQwnx6q3QEy++5JZQcK80JRG1JuhrVJgOaF1AE6qovIkS8xOsQWjHLolKlqqblB4aLJQo/WdQ==","signatures":[{"sig":"MEUCIQCxaCAvermOJuDZ70Jb8F7l1OA7TfRGGhBSqnirIR2DgQIgDIFD1Bi6e9aVOIjSR6wIBxXAGw2WAZuJzfbxrFsVeZM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":88766},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./zod":"./dist/zod.js","./package.json":"./package.json"},"gitHead":"fa4648cdcaeb153fb5676f19be5c25b12fdca64d","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.33_1772477783262_0.8731950059943281","host":"s3://npm-registry-packages-npm-production"}},"0.1.34":{"name":"vue-context-storage","version":"0.1.34","author":"","license":"MIT","_id":"vue-context-storage@0.1.34","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"a2835ab63d7f573b18453c02b1cb32ca2fb5484f","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.34.tgz","fileCount":7,"integrity":"sha512-5usKE0vbhPzzb/2qEM8FtzWOAeHnUoFrFx9GVywUD1HsPDmqbY4OEmwLov+PgOZ+EAsYyT0UAotRTFZgNSS2wQ==","signatures":[{"sig":"MEUCIQDC3ZiBtaKoiuZUoyQ5R71tWM5QZfGG53B0bGalXsQ/cQIgFrqAVBmMfZsIzrTAmyOLz1aYHF3+yA9j2R3rrhm5nDI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94787},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./zod":"./dist/zod.js","./package.json":"./package.json"},"gitHead":"f3b70518d980f5a376cb05b65ba9600ad1370e8c","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.34_1772486247893_0.9305192672050004","host":"s3://npm-registry-packages-npm-production"}},"0.1.35":{"name":"vue-context-storage","version":"0.1.35","author":"","license":"MIT","_id":"vue-context-storage@0.1.35","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"2049f1f30069f8c1ff668a01920160485510c5db","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.35.tgz","fileCount":7,"integrity":"sha512-lSEZ3GNzjFlHyfwvHVmQaNnVEZJIR3z4brgxSv3eAAAB6dJXzV40DR1g8scLRku946CPIboYZtwPrkdH6kfQqw==","signatures":[{"sig":"MEQCIFqhXyxVF4l0sm2zY1wy5qnL/7aZ5zSZRXRpHLXg67kwAiA7UFzNqqaWb+wcn7MKMAr5zi4tObXW37VgjlQF44ElNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90897},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./zod":"./dist/zod.js","./package.json":"./package.json"},"gitHead":"816a156a838e11346be05ff3c2d8ead777f84813","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.35_1772658440257_0.04318378839297288","host":"s3://npm-registry-packages-npm-production"}},"0.1.36":{"name":"vue-context-storage","version":"0.1.36","author":"","license":"MIT","_id":"vue-context-storage@0.1.36","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"67ff4de3566987cc23d4326c26c87434eb6c6e2d","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.36.tgz","fileCount":7,"integrity":"sha512-tMqcQz2IRF/7uH09dYOesQ34cfCjVJR6UCrQ6r58nMJu4Q3pGolFLK3+CqRJP2WecHauvGv8t/9JAKaOqtBSuQ==","signatures":[{"sig":"MEUCIQC92XOyuf8yM7Y5dIrJWIYef4WdhdYS1mY7XB0k9jS0YgIgQm4bJrYrizrNeqI0NMeh9Yvt/PSN2R8CtWA/jPERF8I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92808},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./zod":"./dist/zod.js","./package.json":"./package.json"},"gitHead":"d401d69f369ca6fa6e7c246ffad89f1397486c16","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.36_1772660754923_0.10694441052839632","host":"s3://npm-registry-packages-npm-production"}},"0.1.37":{"name":"vue-context-storage","version":"0.1.37","author":"","license":"MIT","_id":"vue-context-storage@0.1.37","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"0cd07326fbc2a1440fe71dcc517657e15a50136e","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.37.tgz","fileCount":7,"integrity":"sha512-3vXBYTn5RH/C41lFI7gAZHyElfFve/vyeRJuv/oQ87p7I8qGSwSjhNeP4vBqgK/3B/0GpKxmqogRBSSmd1qSxg==","signatures":[{"sig":"MEYCIQCj4JQoIY7EgFpHXFoerb8zQb0JDljqSShYrvvrLJWi7gIhAKAtNH5wg/HeRN9do0PmZsZixGj3KdP4TZT09teOLtZG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":96656},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./zod":"./dist/zod.js","./package.json":"./package.json"},"gitHead":"b05a02c0557a38644ba04f464f6090c1c78cf89f","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.37_1773052908243_0.8325467288751205","host":"s3://npm-registry-packages-npm-production"}},"0.1.38":{"name":"vue-context-storage","version":"0.1.38","author":"","license":"MIT","_id":"vue-context-storage@0.1.38","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"36df9ee82b4c93cecd433b30dac50e0cd2f742e3","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.38.tgz","fileCount":7,"integrity":"sha512-kpVl6YBttKPEQ1AIZ/NhTtuB4Nlgb4151PvkNyjewRaTBCZSNNN4X2aV25EmUZTfuKm2dj96Fpp247psmsFWDw==","signatures":[{"sig":"MEQCIB/G1c6pdRj5hbs/oNYAu6HbnvoFvPFnFtLZkEvyobFQAiAHn2qygmKmLKymtBB9DGJRuZ84INwq0AQyFs6Puwsg2A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":96656},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./zod":"./dist/zod.js","./package.json":"./package.json"},"gitHead":"72149c3f072d57c06a10c2e73322dae84ee4e1d6","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.38_1773053020820_0.10338387631894319","host":"s3://npm-registry-packages-npm-production"}},"0.1.39":{"name":"vue-context-storage","version":"0.1.39","author":"","license":"MIT","_id":"vue-context-storage@0.1.39","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"c8411337f4cda79608cbb75ae9cb3790777398e0","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.39.tgz","fileCount":7,"integrity":"sha512-ZhDckVWZ9BIsLVh1P9cjB05Bu2nyg76DWLUYb0+1x2FURUsP4W5VB2w36HpgVhiU7ORL/cxdUU1i4ex3DxPE0A==","signatures":[{"sig":"MEYCIQDfTFlwczuEe+8RKEOTdvrbhUjFdqAZPp7smD/5HskHDAIhAP2lFgolqUFWGDmyqQUFHDhrOcLrN3swn/UBHmNjd+Yi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100572},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./zod":"./dist/zod.js","./package.json":"./package.json"},"gitHead":"484192c744a0a4d366c59bf8d03988ba433dc746","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.39_1773145623599_0.9159754683167702","host":"s3://npm-registry-packages-npm-production"}},"0.1.40":{"name":"vue-context-storage","version":"0.1.40","author":"","license":"MIT","_id":"vue-context-storage@0.1.40","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"45efce03857c8c6463ec1c24d78e78b461f8ffb5","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.40.tgz","fileCount":7,"integrity":"sha512-3nbb7BXe6U5U307v+iot1BtnRI74sFSKPMyDZrmTtoHw5/CzDhq/8PEBz/JzSeNSPcXFyLtEZuz6t3A98QYXAQ==","signatures":[{"sig":"MEUCICEtHzUb/LhuMcWDfE6pSfTI1VV6Rjn35+ek3zxNeP+HAiEAoy9TVHmVbax38dCIB8ZXnzpZO3LojCh8JPZpdinG40U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100588},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./zod":"./dist/zod.js","./package.json":"./package.json"},"gitHead":"bcdadfa980e06ae6e53a4505233fff10488bcba8","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.40_1773146292512_0.6028469018195761","host":"s3://npm-registry-packages-npm-production"}},"0.1.41":{"name":"vue-context-storage","version":"0.1.41","author":"","license":"MIT","_id":"vue-context-storage@0.1.41","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"9c437ed41167f00b1c2b36f58c15b05c29f212e6","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.41.tgz","fileCount":7,"integrity":"sha512-cj4/vhhD7mfGLU4s3T949xJiCB9jklt/MSNk0ITG6/8cvIihqVh41NUJpdvBYSF+U/rNNOpNIEQvWFSSiXE+xw==","signatures":[{"sig":"MEYCIQCNHRt1K8BP3i+WeCYZd5fZDeeqVHd6GoDejRIqCVomcwIhAKp1jsjKAdNYe/0ZJqRYK3A6PsES9C8Du+9zp/8qQ6nZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":98062},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./zod":"./dist/zod.js","./package.json":"./package.json"},"gitHead":"3d1194cff275f92dbc1f6d5e595a24e8530ce278","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"vitest run","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src","release":"bumpp && npm publish","ts:check":"vue-tsc --noEmit","lint:check":"eslint .","format:check":"prettier --check src/ playground/src","prepublishOnly":"npm run check && npm run test && npm run build","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.9.0","description":"Vue 3 context storage system with URL query synchronization support","directories":{},"_nodeVersion":"22.16.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.41_1773348562500_0.5000431709658879","host":"s3://npm-registry-packages-npm-production"}},"0.1.42":{"name":"vue-context-storage","version":"0.1.42","author":"","license":"MIT","_id":"vue-context-storage@0.1.42","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"e097d66ef777a86013f1cd6ed4dcc3cef4a9c073","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.42.tgz","fileCount":7,"integrity":"sha512-uMdRsMPUM7Y0iruiWnZz0h4veAR7Zn/rmOlUbCdOF9QjUsJC+waVRWnbSudzwg7tbsemy36/VHfUv3FzU6Db9Q==","signatures":[{"sig":"MEQCIB/2TKjC9UzFMXa4PuAa2GmjEnA3MLiQDqtQrPmK1GTCAiAP+z6VbX3+W4m7FNNvnCeXHW9+EcqAjOSX80AFTzUtEw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105941},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./zod":"./dist/zod.js","./package.json":"./package.json"},"gitHead":"c56ba039cec26993141f30f730f85be432a9abde","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite","test":"npm run test:unit && npm run test:e2e","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src playground-e2e/src","release":"npm run check && npm run test && bumpp && npm publish","play:e2e":"vite --config vite.e2e.config.ts","test:e2e":"playwright test","ts:check":"vue-tsc --noEmit","test:unit":"vitest run","lint:check":"eslint .","test:e2e:ui":"playwright test --ui","format:check":"prettier --check src/ playground/src playground-e2e/src","prepublishOnly":"npm run check && npm run test && npm run build","test:e2e:debug":"playwright test --debug","test:e2e:headed":"playwright test --headed","test:e2e:report":"playwright show-report","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.12.1","description":"Vue 3 reactive state management — sync state with the URL query, localStorage, and sessionStorage","directories":{},"_nodeVersion":"24.15.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@playwright/test":"^1.60.0","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.42_1780765725202_0.5323372367908035","host":"s3://npm-registry-packages-npm-production"}},"0.1.43":{"name":"vue-context-storage","version":"0.1.43","author":"","license":"MIT","_id":"vue-context-storage@0.1.43","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"1abfd928d565154f2729b03fd4237695d3c483f3","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.43.tgz","fileCount":5,"integrity":"sha512-v4WNkwNGK8x7igEFNSpnNQyDd4ZKGr8TIUHKdNFMO9gM04hKSIm15gRb7s+qW0dj094ycma9vpafaNmse76ejA==","signatures":[{"sig":"MEQCIFL/Rv9KvBMxHHWwR2hOIqGVU3SxekyyD5JZ4IQqaYv9AiBbvJpp2AHTKx4JnpQLzI/oDa9zc7MaQCfJPSWlzMsmCg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103717},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"1529c606f058eca5ea99c3d74c9b3f4b88b43433","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite --port 5173","test":"npm run test:unit && npm run test:e2e","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src playground-e2e/src","release":"npm run check && npm run test && bumpp && npm publish","play:e2e":"vite --port 5174 --config vite.e2e.config.ts","test:e2e":"playwright test","ts:check":"vue-tsc --noEmit","test:unit":"vitest run","lint:check":"eslint .","test:e2e:ui":"playwright test --ui","format:check":"prettier --check src/ playground/src playground-e2e/src","prepublishOnly":"npm run check && npm run test && npm run build","test:e2e:debug":"playwright test --debug","test:e2e:headed":"playwright test --headed","test:e2e:report":"playwright show-report","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.12.1","description":"Vue 3 reactive state management — sync state with the URL query, localStorage, and sessionStorage","directories":{},"_nodeVersion":"24.15.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@playwright/test":"^1.60.0","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.43_1780843173105_0.3547246857821673","host":"s3://npm-registry-packages-npm-production"}},"0.1.44":{"name":"vue-context-storage","version":"0.1.44","author":"","license":"MIT","_id":"vue-context-storage@0.1.44","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"baffae2c4f6cbfd20fa3cfd0eecd3f6c56c5eff4","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.44.tgz","fileCount":5,"integrity":"sha512-wmW2Stuxbhcygktbq5OKlyYndYXWnrwfxn2lR5q+qhcqB3F/MNp7nZTheGT0uMnahwcpy17vdGATIpFE2u7fKg==","signatures":[{"sig":"MEYCIQDVxd6wLAFk+XfzPIkvQWhPDzZ+L99EjPvHbgeacWrWlQIhAOvWY6tiXAPa+WN3OSd/rhgCGHx5XPq+gLJa0rL3IDYt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105442},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"e42ecd8f16ce75ab529b9bacd7da599269d73ef1","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite --port 5173","test":"npm run test:unit && npm run test:e2e","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src playground-e2e/src","release":"npm run check && npm run test && bumpp && npm publish","play:e2e":"vite --port 5174 --config vite.e2e.config.ts","test:e2e":"playwright test","ts:check":"vue-tsc --noEmit","test:unit":"vitest run","lint:check":"eslint .","test:e2e:ui":"playwright test --ui","format:check":"prettier --check src/ playground/src playground-e2e/src","prepublishOnly":"npm run check && npm run test && npm run build","test:e2e:debug":"playwright test --debug","test:e2e:headed":"playwright test --headed","test:e2e:report":"playwright show-report","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.12.1","description":"Vue 3 reactive state management — sync state with the URL query, localStorage, and sessionStorage","directories":{},"_nodeVersion":"24.15.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@playwright/test":"^1.60.0","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.44_1780862728293_0.83706865170881","host":"s3://npm-registry-packages-npm-production"}},"0.1.45":{"name":"vue-context-storage","version":"0.1.45","author":"","license":"MIT","_id":"vue-context-storage@0.1.45","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"homepage":"https://github.com/lviobio/vue-context-storage#readme","bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"dist":{"shasum":"cfb088f0a2c4801abd166ebd2145552374a480cd","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.45.tgz","fileCount":5,"integrity":"sha512-B+CZHfvCjQKbODxjSUWj8pR3CBVbllvXpIyNm0MpN9wNQAenDELzmxSB2lSxwoBhcil/nO4fzz7mi6izXd2AIg==","signatures":[{"sig":"MEQCIGtMIPKMYiBj8eospQxMxe9MdhOzxX4y9FVO87WUgkuRAiACHPwjXdzzN2W22UA5Uk0m2CZd1FuSDvwoZu7GPaJIcQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":105453},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":"./dist/index.js","./package.json":"./package.json"},"gitHead":"5d572d5f59575ad14a7174f8cc72be93a2b93e19","scripts":{"dev":"tsdown --watch","lint":"eslint . --fix","play":"vite --port 5173","test":"npm run test:unit && npm run test:e2e","build":"tsdown","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","format":"prettier --write src/ playground/src playground-e2e/src","release":"npm run check && npm run test && bumpp && npm publish","play:e2e":"vite --port 5174 --config vite.e2e.config.ts","test:e2e":"playwright test","ts:check":"vue-tsc --noEmit","test:unit":"vitest run","lint:check":"eslint .","test:e2e:ui":"playwright test --ui","format:check":"prettier --check src/ playground/src playground-e2e/src","prepublishOnly":"npm run check && npm run test && npm run build","test:e2e:debug":"playwright test --debug","test:e2e:headed":"playwright test --headed","test:e2e:report":"playwright show-report","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src"},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"repository":{"url":"git+https://github.com/lviobio/vue-context-storage.git","type":"git"},"_npmVersion":"11.12.1","description":"Vue 3 reactive state management — sync state with the URL query, localStorage, and sessionStorage","directories":{},"_nodeVersion":"24.15.0","dependencies":{"lodash":"^4.17.23"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.26","zod":"^4.3.5","vite":"^7.3.0","bumpp":"^10.3.2","jsdom":"^27.4.0","eslint":"^9.39.2","tsdown":"^0.18.4","vitest":"^4.0.16","vue-tsc":"^3.2.1","naive-ui":"^2.43.2","prettier":"^3.7.4","happy-dom":"^20.1.0","playwright":"^1.57.0","typescript":"^5.9.3","@types/node":"^25.0.3","tailwindcss":"^4.1.18","highlight.js":"^11.11.1","@types/lodash":"^4.17.21","@vue/test-utils":"^2.4.6","@playwright/test":"^1.60.0","@tailwindcss/vite":"^4.1.18","eslint-plugin-vue":"^10.6.2","typescript-eslint":"^8.51.0","@vitejs/plugin-vue":"^6.0.3","dependency-cruiser":"^17.3.6","vitest-browser-vue":"^2.0.1","@vitest/coverage-v8":"^4.0.16","eslint-config-prettier":"^10.1.8","@vitest/browser-playwright":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0"},"peerDependencies":{"vue":"^3.0.0","zod":"^4.0.0","vue-router":"^4.0.0 || ^5.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/vue-context-storage_0.1.45_1780864501363_0.9751021009076213","host":"s3://npm-registry-packages-npm-production"}},"0.1.46":{"name":"vue-context-storage","type":"module","version":"0.1.46","description":"Vue 3 reactive state management — sync state with the URL query, localStorage, and sessionStorage","author":"","license":"MIT","homepage":"https://github.com/lviobio/vue-context-storage#readme","repository":{"type":"git","url":"git+https://github.com/lviobio/vue-context-storage.git"},"bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"exports":{".":"./dist/index.js","./package.json":"./package.json"},"main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","publishConfig":{"access":"public"},"scripts":{"build":"tsdown","dev":"tsdown --watch","check":"npm run ts:check && npm run lint:check && npm run format:check && npm run dependency-cruiser:check","ts:check":"vue-tsc --noEmit","format":"prettier --write src/ playground/src playground-e2e/src","format:check":"prettier --check src/ playground/src playground-e2e/src","lint":"eslint . --fix","lint:check":"eslint .","dependency-cruiser:check":"depcruise --config .dependency-cruiser.cjs src playground/src","play":"vite --port 5173","play:e2e":"vite --port 5174 --config vite.e2e.config.ts","build:playground":"vite build","preview:playground":"vite preview --outDir playground/dist","test":"npm run test:unit && npm run test:e2e","test:unit":"vitest run","test:e2e":"playwright test","test:e2e:ui":"playwright test --ui","test:e2e:headed":"playwright test --headed","test:e2e:debug":"playwright test --debug","test:e2e:report":"playwright show-report","release":"npm run check && npm run test && bumpp && npm publish","prepublishOnly":"npm run check && npm run test && npm run build"},"peerDependencies":{"vue":"^3.0.0","vue-router":"^4.0.0 || ^5.0.0","zod":"^4.0.0"},"peerDependenciesMeta":{"zod":{"optional":true}},"devDependencies":{"@playwright/test":"^1.60.0","@tailwindcss/vite":"^4.1.18","@types/node":"^25.0.3","@vitejs/plugin-vue":"^6.0.3","@vitest/browser-playwright":"^4.0.16","@vitest/coverage-v8":"^4.0.16","@vue/eslint-config-typescript":"^14.6.0","@vue/test-utils":"^2.4.6","bumpp":"^10.3.2","dependency-cruiser":"^17.3.6","eslint":"^9.39.2","eslint-config-prettier":"^10.1.8","eslint-plugin-vue":"^10.6.2","happy-dom":"^20.1.0","highlight.js":"^11.11.1","jsdom":"^27.4.0","naive-ui":"^2.43.2","playwright":"^1.57.0","prettier":"^3.7.4","tailwindcss":"^4.1.18","tsdown":"^0.18.4","typescript":"^5.9.3","typescript-eslint":"^8.51.0","vite":"^7.3.0","vitest":"^4.0.16","vitest-browser-vue":"^2.0.1","vue":"^3.5.26","vue-tsc":"^3.2.1","zod":"^4.3.5"},"gitHead":"1ab3d95db77cd93c6a14ae97c7f29b737a87c7a1","_id":"vue-context-storage@0.1.46","_nodeVersion":"24.15.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-mRqUGbglKKeXGIIJj4OeGkxjm5wVH6Q5NkBz5MF4UoxydEgyhrLxZgkDKLzytuKsiJp/XQhSlGIrl/UcqO5fYg==","shasum":"526a3aa9a49383f9272776fea9c9ff0309a8c384","tarball":"https://registry.npmjs.org/vue-context-storage/-/vue-context-storage-0.1.46.tgz","fileCount":5,"unpackedSize":118437,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAPlFvKrgUPX2o8PSntA/Ss6omhXnGFAo/TJyyoURftUAiEAhNeRdfsbrZsEa/9GAjPEljopMxlilMzUKdofShpVH+s="}]},"_npmUser":{"name":"lviobio","email":"marsik025@gmail.com"},"directories":{},"maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/vue-context-storage_0.1.46_1783707250888_0.7034274844567392"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-05T09:02:17.689Z","modified":"2026-07-10T18:14:11.215Z","0.1.0":"2026-01-05T09:02:17.859Z","0.1.1":"2026-01-05T09:06:29.848Z","0.1.2":"2026-01-05T10:09:16.162Z","0.1.3":"2026-01-05T10:51:54.625Z","0.1.4":"2026-01-05T11:22:33.710Z","0.1.5":"2026-01-05T11:28:32.752Z","0.1.6":"2026-01-05T11:57:28.859Z","0.1.7":"2026-01-05T12:06:41.958Z","0.1.8":"2026-01-05T12:24:15.437Z","0.1.9":"2026-01-05T13:07:18.572Z","0.1.10":"2026-01-05T13:39:43.497Z","0.1.11":"2026-01-05T13:50:33.066Z","0.1.12":"2026-01-05T16:41:04.368Z","0.1.13":"2026-01-10T11:46:55.361Z","0.1.14":"2026-01-10T11:49:12.459Z","0.1.15":"2026-01-10T12:45:57.331Z","0.1.16":"2026-01-10T13:10:27.379Z","0.1.17":"2026-01-10T15:21:05.752Z","0.1.18":"2026-01-10T17:02:25.807Z","0.1.19":"2026-01-10T17:04:29.157Z","0.1.20":"2026-01-16T10:30:00.819Z","0.1.21":"2026-01-20T20:57:08.255Z","0.1.22":"2026-01-25T10:48:07.345Z","0.1.23":"2026-01-28T21:38:43.994Z","0.1.24":"2026-01-31T16:22:15.481Z","0.1.25":"2026-02-02T21:41:01.248Z","0.1.26":"2026-02-08T15:07:24.024Z","0.1.27":"2026-02-08T18:17:41.972Z","0.1.28":"2026-02-13T18:39:12.204Z","0.1.29":"2026-02-15T16:41:29.161Z","0.1.30":"2026-02-27T08:47:08.982Z","0.1.31":"2026-03-01T21:33:17.136Z","0.1.32":"2026-03-02T18:05:36.058Z","0.1.33":"2026-03-02T18:56:23.463Z","0.1.34":"2026-03-02T21:17:28.053Z","0.1.35":"2026-03-04T21:07:20.405Z","0.1.36":"2026-03-04T21:45:55.081Z","0.1.37":"2026-03-09T10:41:48.388Z","0.1.38":"2026-03-09T10:43:40.967Z","0.1.39":"2026-03-10T12:27:03.758Z","0.1.40":"2026-03-10T12:38:12.668Z","0.1.41":"2026-03-12T20:49:22.638Z","0.1.42":"2026-06-06T17:08:45.406Z","0.1.43":"2026-06-07T14:39:33.255Z","0.1.44":"2026-06-07T20:05:28.411Z","0.1.45":"2026-06-07T20:35:01.515Z","0.1.46":"2026-07-10T18:14:11.031Z"},"bugs":{"url":"https://github.com/lviobio/vue-context-storage/issues"},"license":"MIT","homepage":"https://github.com/lviobio/vue-context-storage#readme","repository":{"type":"git","url":"git+https://github.com/lviobio/vue-context-storage.git"},"description":"Vue 3 reactive state management — sync state with the URL query, localStorage, and sessionStorage","maintainers":[{"name":"lviobio","email":"marsik025@gmail.com"}],"readme":"# vue-context-storage\n\nVue 3 reactive state management — sync state with the URL query, localStorage, and sessionStorage through a single type-safe composable.\n\n[![npm downloads](https://img.shields.io/npm/dm/vue-context-storage.svg)](https://www.npmjs.com/package/vue-context-storage)\n[![TypeScript](https://badgen.net/badge/icon/TypeScript?icon=typescript&label)](https://www.typescriptlang.org/)\n[![Vue 3](https://img.shields.io/badge/vue-3.x-brightgreen.svg)](https://vuejs.org/)\n[![Bundle Size](https://img.shields.io/bundlephobia/minzip/vue-context-storage)](https://bundlephobia.com/package/vue-context-storage)\n[![GitHub issues](https://img.shields.io/github/issues/lviobio/vue-context-storage)](https://github.com/lviobio/vue-context-storage/issues)\n[![GitHub License](https://img.shields.io/github/license/lviobio/vue-context-storage)](https://github.com/lviobio/vue-context-storage)\n![CI](https://github.com/lviobio/vue-context-storage/actions/workflows/ci.yml/badge.svg)\n![Coverage](https://github.com/lviobio/vue-context-storage/actions/workflows/coverage.yml/badge.svg)\n[![codecov](https://codecov.io/gh/lviobio/vue-context-storage/branch/main/graph/badge.svg)](https://codecov.io/gh/lviobio/vue-context-storage)\n[![Live Demo](https://img.shields.io/badge/demo-live-brightgreen)](https://lviobio.github.io/vue-context-storage)\n\nKey features:\n\n- **Automatic URL query sync** — painless type coercion (numbers, booleans, arrays) and nested objects\n- **localStorage & sessionStorage** for persistent and session-scoped state — same API as the query handler\n- **Context prefixing** to avoid key collisions when the same key is reused across instances\n- **Type-safe** with optional Zod schema validation\n- **Tree-shakeable** and lightweight\n\n```ts\nconst filters = reactive({ search: '', page: 1 })\n\n// reactive state ⇄ URL query — kept in sync automatically, both directions\nuseContextStorage('query', filters) // URL: /products?search=shoes&page=2\nuseContextStorage('query', filters, { key: 'filters' }) // URL: /products?filters[search]=shoes&filters[page]=2\n// zod schema support with type coercion, 'page' will be converted to number\nuseContextStorage('query', filters, { schema: z.object({ search: z.string(), page: z.number() }) }) // URL: /products?filters[search]=shoes&filters[page]=2\n// transform function support with type coercion, 'page' will be converted to number\nuseContextStorage('query', filters, {\n  transform: (value) => ({ search: value.search, page: Number(value.page) }),\n}) // URL: /products?filters[search]=shoes&filters[page]=2\n// And a lot of other features... (onlyChanges option; createEmptyZodObject helper for zod schemas; additional default values; passing 'key' via ContextStoragePrefix wrapper)\n```\n\n## Live Demo\n\n🚀 **[Try the interactive playground](https://lviobio.github.io/vue-context-storage)**\n\n## Installation\n\n```bash\nnpm install vue-context-storage\n```\n\n## Features\n\n- ✅ **Vue 3 Composition API** - Built with modern Vue patterns\n- ✅ **URL Query Sync** - Automatically sync state with URL parameters\n- ✅ **localStorage Handler** - Persist state to localStorage with cross-tab sync\n- ✅ **sessionStorage Handler** - Session-scoped state that survives page refreshes\n- ✅ **Multiple Contexts** - Support multiple independent storage contexts\n- ✅ **TypeScript** - Full type safety and IntelliSense support\n- ✅ **Flexible** - Works with vue-router 4+ or 5+\n- ✅ **Transform Helpers** - Built-in utilities for type conversion\n\n## Motivation\n\nIn Vue applications, reactive state often needs to live beyond a single component. Filters, pagination, sorting, and user preferences must survive page reloads, be shareable via URL, or persist across sessions. Solving this typically means writing the same boilerplate over and over: manually reading and writing query parameters with vue-router, serializing objects to localStorage, handling type coercion from URL strings, and keeping everything in sync.\n\n`vue-context-storage` eliminates that repetitive work. You declare your reactive state once, point it at a storage target, and the library handles the rest:\n\n- **URL query parameters** stay in sync with your data automatically - users can bookmark or share a page and get the exact same state back.\n- **localStorage and sessionStorage** are kept up to date without manual `getItem`/`setItem` calls, including cross-tab synchronization.\n- **Type safety** is preserved end-to-end: URL strings are coerced back to numbers, booleans, and arrays via transform helpers or Zod schemas.\n\nThe goal is a single, declarative API - `useContextStorage('query', data, options)` - that replaces scattered watchers, router guards, and storage listeners with one composable call per piece of state.\n\n## Basic Usage\n\n### Option 1: Manual Component Import (Recommended)\n\nImport ContextStorage component in your `App.vue`:\n\n```vue\n<template>\n  <ContextStorage>\n    <router-view />\n  </ContextStorage>\n</template>\n\n<script setup lang=\"ts\">\nimport { ContextStorage } from 'vue-context-storage'\n</script>\n```\n\n### Option 2: Using Vue Plugin\n\nRegister the plugin in your main app file:\n\n```typescript\nimport { createApp } from 'vue'\nimport { VueContextStoragePlugin } from 'vue-context-storage'\nimport App from './App.vue'\n\nconst app = createApp(App)\n\n// Register components globally\napp.use(VueContextStoragePlugin)\n\napp.mount('#app')\n```\n\nThen use components without importing in your `App.vue`:\n\n```vue\n<template>\n  <ContextStorage>\n    <router-view />\n  </ContextStorage>\n</template>\n```\n\n## Unified Composable\n\n`useContextStorage()` provides a single entry point for all handler types:\n\n```vue\n<script setup lang=\"ts\">\nimport { reactive } from 'vue'\nimport { useContextStorage } from 'vue-context-storage'\n\nconst filters = reactive({\n  search: '',\n  status: 'active',\n  page: 1,\n})\n\n// Sync with URL query\nuseContextStorage('query', filters, {\n  key: 'filters',\n})\n\n// Sync with localStorage\nuseContextStorage('localStorage', filters, {\n  key: 'saved-filters',\n})\n\n// Sync with sessionStorage\nuseContextStorage('sessionStorage', filters, {\n  key: 'temp-filters',\n})\n</script>\n```\n\n**Important: Query handler type coercion.** URL query parameters are always strings. When state is restored from the URL, non-string values lose their original types — `{ page: 1 }` becomes `{ page: \"1\" }`, booleans become `\"true\"` / `\"false\"`, and arrays are restored as plain objects. Always use `schema` or `transform` option when using the query handler with non-string values:\n\n```typescript\n// Option 1: Zod schema (recommended)\nuseContextStorage('query', filters, {\n  key: 'filters',\n  schema: z.object({\n    page: z.number().default(1),\n    search: z.string().default(''),\n    status: z.string().default('active'),\n  }),\n})\n\n// Option 2: Transform function\nimport { transform } from 'vue-context-storage'\n\nuseContextStorage('query', filters, {\n  key: 'filters',\n  transform: (deserialized, initial) => ({\n    page: transform.asNumber(deserialized.page, { fallback: initial.page }),\n    search: transform.asString(deserialized.search, { fallback: initial.search }),\n    status: transform.asString(deserialized.status, { fallback: initial.status }),\n  }),\n})\n```\n\nWithout type coercion, comparisons like `page === 1` will silently fail after URL restore (the actual value will be `\"1\"`). The library emits a runtime `console.warn` when it detects non-string values registered without `schema` or `transform`.\n\nOptions are type-checked per handler — `'query'` accepts query options, `'localStorage'` and `'sessionStorage'` require a `key`, etc.\n\nYou can also pass an injection key directly instead of a string:\n\n```typescript\nimport { contextStorageQueryHandlerInjectKey } from 'vue-context-storage'\n\nuseContextStorage(contextStorageQueryHandlerInjectKey, filters, {\n  key: 'filters',\n})\n```\n\n## Use Query Handler in Components\n\nSync reactive state with URL query parameters:\n\n```vue\n<script setup lang=\"ts\">\nimport { reactive } from 'vue'\nimport { useContextStorage } from 'vue-context-storage'\n\ninterface Filters {\n  search: string\n  status: string\n  page: number\n}\n\nconst filters = reactive<Filters>({\n  search: '',\n  status: 'active',\n  page: 1,\n})\n\n// Automatically syncs filters with URL query\nuseContextStorage('query', filters, {\n  key: 'filters', // URL will be: ?filters[search]=...&filters[status]=...\n})\n</script>\n```\n\n## Advanced Usage\n\n### Using Transform Helpers\n\nConvert URL query string values to proper types:\n\n```typescript\nimport { ref } from 'vue'\nimport { useContextStorage, transform } from 'vue-context-storage'\n\ninterface TableState {\n  page: number\n  search: string\n  perPage: number\n}\n\nconst state = ref<TableState>({\n  page: 1,\n  search: '',\n  perPage: 25,\n})\n\nuseContextStorage('query', state, {\n  key: 'table',\n  transform: (deserialized, initial) => ({\n    page: transform.asNumber(deserialized.page, { fallback: 1 }),\n    search: transform.asString(deserialized.search, { fallback: '' }),\n    perPage: transform.asNumber(deserialized.perPage, { fallback: 25 }),\n  }),\n})\n```\n\n### Available Transform Helpers\n\n- `asNumber(value, options)` - Convert to number\n- `asString(value, options)` - Convert to string\n- `asBoolean(value, options)` - Convert to boolean\n- `asArray(value, options)` - Convert to array\n- `asNumberArray(value, options)` - Convert to number array\n- `asObjectArray(value, options)` - Convert indexed object to array of objects (see [Arrays of Objects](#arrays-of-objects))\n\n### Using Zod Schemas\n\nAlternatively, you can use [Zod](https://zod.dev/) schemas for automatic validation and type inference:\n\n```typescript\nimport { z } from 'zod'\nimport { useContextStorage } from 'vue-context-storage'\n\n// Define schema with automatic coercion\nconst FiltersSchema = z.object({\n  search: z.string().default(''),\n  page: z.number().int().positive().default(1),\n  status: z.enum(['active', 'inactive']).default('active'),\n})\n\nconst filters = ref(FiltersSchema.parse({}))\n\n// Use schema for automatic validation\nuseContextStorage('query', filters, {\n  key: 'filters',\n  schema: FiltersSchema,\n})\n```\n\n**Benefits:**\n\n- Automatic type coercion (strings → numbers, etc.)\n- Runtime validation with detailed errors\n- Automatic TypeScript type inference\n- Less boilerplate code\n- Single source of truth for structure and validation\n\n### Arrays of Objects\n\nThe query handler supports arrays of objects. They are serialized as indexed query parameters:\n\n```\n?items[0][product]=Apple&items[0][quantity]=5&items[1][product]=Banana&items[1][quantity]=10\n```\n\nAfter deserialization, URL parameters produce indexed objects (`{ '0': {...}, '1': {...} }`) rather than arrays. With a Zod schema, plain `z.array(...)` works out of the box — the library converts indexed objects back to sorted arrays automatically. With the manual approach, use `transform.asObjectArray`.\n\n**With transform helpers:**\n\n```typescript\nimport { reactive } from 'vue'\nimport { useContextStorage, transform } from 'vue-context-storage'\n\nconst data = reactive({\n  title: '',\n  items: [] as { product: string; quantity: number }[],\n})\n\nuseContextStorage('query', data, {\n  transform: (value) => ({\n    title: transform.asString(value.title),\n    items: transform.asObjectArray(value.items, (entry) => ({\n      product: transform.asString(entry.product),\n      quantity: transform.asNumber(entry.quantity),\n    })),\n  }),\n})\n```\n\n`asObjectArray` also supports a callback shorthand — pass a function as the second argument instead of an options object.\n\n**With Zod schema:**\n\n```typescript\nimport { z } from 'zod'\n\nconst ItemSchema = z.object({\n  product: z.string().default(''),\n  quantity: z.number().default(0),\n})\n\nconst DataSchema = z.object({\n  title: z.string().default(''),\n  items: z.array(ItemSchema),\n})\n\nuseContextStorage('query', data, { schema: DataSchema })\n```\n\nSee [Automatic Type Coercion](#automatic-type-coercion) for details on how indexed objects are converted.\n\n### Preserve Empty State\n\nKeep empty state in URL to prevent resetting on reload:\n\n```typescript\nuseContextStorage('query', filters, {\n  key: 'filters',\n  preserveEmptyState: true,\n  // Empty filters will show as: ?filters\n  // Without this option, empty filters would clear the URL completely\n})\n```\n\n### Additional Default Data\n\nWhen `onlyChanges` is enabled (the default), a key is omitted from the URL if its current value matches the initial snapshot. `additionalDefaultData` lets you specify extra values that should also be treated as defaults and excluded from the URL.\n\nThis is useful when the initial reactive data starts with `undefined` (e.g. before an API response), but you also want a specific value (like `1`) to be considered a default:\n\n```typescript\nconst data = ref({ page: undefined as number | undefined })\n\nuseContextStorage('query', data, {\n  key: 'filters',\n  onlyChanges: true,\n  additionalDefaultData: { page: 1 },\n})\n\n// page=undefined → not in query (matches initial)\n// page=1         → not in query (matches additionalDefaultData)\n// page=2         → appears in query as ?filters[page]=2\n```\n\nWhen using Zod schemas, you can also specify `additionalDefaultData` per-field via `.meta()` instead of (or in addition to) the option:\n\n```typescript\nconst Schema = z.object({\n  page: z.number().default(1).meta({ additionalDefaultData: 3 }),\n  search: z.string().default(''),\n})\n\nconst data = reactive({ page: undefined as number | undefined, search: '' })\n\nuseContextStorage('query', data, {\n  key: 'filters',\n  schema: Schema,\n})\n\n// page=1 → not in query (matches default from schema)\n// page=2 → appears in query as ?filters[page]=2\n// page=3 → not in query (matches additionalDefaultData from schema meta)\n```\n\nA field's schema `.default(...)` value is itself treated as a default baseline: a value equal to it is omitted from the URL, exactly like the initial snapshot and `additionalDefaultData`. So both the `.default()` value and any `.meta({ additionalDefaultData })` value are excluded, while every other value appears in the query.\n\nEach source of defaults is an **independent baseline** — the initial snapshot, the option-level `additionalDefaultData`, the schema `.meta({ additionalDefaultData })`, and the schema `.default()`. A value is omitted from the URL if it matches **any** of them, so they never overwrite each other (e.g. a field can have a `.default()` of `1`, a meta value of `5`, and an option value of `3`, and all three are excluded).\n\nNested objects work the same way. Following the documented best practice of declaring `.default()` at the object level, a value matching the nested default is omitted too:\n\n```typescript\nconst Schema = z.object({\n  filters: z\n    .object({\n      page: z.number(),\n      sort: z.string(),\n    })\n    .default({ page: 1, sort: 'asc' }),\n})\n\nconst data = reactive({\n  filters: { page: undefined as number | undefined, sort: undefined as string | undefined },\n})\n\nuseContextStorage('query', data, { key: 'q', schema: Schema })\n\n// filters = { page: 1, sort: 'asc' }  → not in query (matches the nested default)\n// filters = { page: 2, sort: 'asc' }  → ?q[filters][page]=2 (sort matches default, omitted)\n// filters = { page: 2, sort: 'desc' } → ?q[filters][page]=2&q[filters][sort]=desc\n```\n\nField-level defaults inside a nested object take priority over the object-level default and fill in any fields the object-level default omits.\n\n### Configure Query Handler\n\nCustomize behavior by passing options to the factory:\n\n```vue\n<template>\n  <!-- Override a single default handler without listing all of them -->\n  <ContextStorage :additional-handlers=\"[createQueryHandler({ mode: 'push' })]\">\n    <RouterView />\n  </ContextStorage>\n</template>\n```\n\nThe `additional-handlers` prop merges with the default handlers, replacing any handler of the same type (matched by injection key). This is the recommended way to customize a single handler.\n\nIf you need full control over all handlers, use the `handlers` prop instead:\n\n```typescript\nimport {\n  createQueryHandler,\n  createLocalStorageHandler,\n  createSessionStorageHandler,\n} from 'vue-context-storage'\n\nconst customHandlers = [\n  createQueryHandler({\n    mode: 'push', // 'replace' (default) or 'push' for history\n    preserveUnusedKeys: false, // Default is true — set to false for exclusive query ownership\n    preserveEmptyState: false,\n  }),\n  createLocalStorageHandler(),\n  createSessionStorageHandler(),\n]\n\n// Pass to ContextStorage or ContextStorageCollection component:\n// <ContextStorage :handlers=\"customHandlers\">\n```\n\n### Comma-separated Arrays in the Query String\n\nBy default, flat arrays are written as repeated query keys (`?ids=1&ids=2&ids=3`). Set `serialize: { arrayFormat: 'comma' }` to store them as a single comma-joined value instead:\n\n```typescript\ncreateQueryHandler({ serialize: { arrayFormat: 'comma' } })\n\n// { ids: [1, 2, 3] }  →  ?ids=1,2,3\n```\n\nValues that themselves contain the separator are safely backslash-escaped, so they survive the round-trip without breaking into extra elements:\n\n```typescript\n// { tags: ['Some value', 'with, comma', 'last'] }\n//   →  ?tags=Some value,with\\,comma,last\n//   →  { tags: ['Some value', 'with,comma', 'last'] }   (escaped comma restored)\n```\n\nThe option can be set on the factory (applies to every registered context) or per `useContextStorage('query', ...)` call (the per-call value wins). A custom separator is supported via `arraySeparator`:\n\n```typescript\ncreateQueryHandler({ serialize: { arrayFormat: 'comma', arraySeparator: '|' } })\n\n// { ids: [1, 2, 3] }  →  ?ids=1|2|3\n```\n\nRestoring a comma-joined array back into an array requires a `schema` or `transform` (a comma-joined string is indistinguishable from a plain string on the URL — the same requirement as any non-string query value):\n\n```typescript\nimport { z } from 'zod'\n\nconst data = reactive({ ids: [] as number[] })\n\nuseContextStorage('query', data, {\n  schema: z.object({ ids: z.array(z.number()) }),\n  serialize: { arrayFormat: 'comma' },\n})\n// ?ids=1,2,3  →  { ids: [1, 2, 3] }  (split + coerced automatically)\n```\n\nWith the manual `transform` approach, pass the matching `separator` to the array helpers:\n\n```typescript\nuseContextStorage('query', data, {\n  transform: (deserialized) => ({\n    ids: transform.asNumberArray(deserialized.ids, { separator: ',' }),\n  }),\n  serialize: { arrayFormat: 'comma' },\n})\n```\n\n### Fully Custom Serializer\n\nWhen the built-in serializer options aren't enough, pass a `serializer` (a `serialize` / `deserialize` pair) to `createQueryHandler` to take **full control** of how state is encoded to and decoded from the URL — e.g. a `qs`-style format, base64, or JSON. This is a **factory-level** option.\n\n```typescript\nimport { createQueryHandler, type QuerySerializer } from 'vue-context-storage'\n\n// Example: JSON-encode each registration's data under its key\nconst jsonSerializer: QuerySerializer = {\n  serialize: (data, options) => ({ [options?.key ?? '_']: JSON.stringify(data) }),\n  deserialize: (query) => {\n    const out: Record<string, unknown> = {}\n    for (const key of Object.keys(query)) {\n      try {\n        out[key] = JSON.parse(query[key] as string)\n      } catch {\n        out[key] = query[key]\n      }\n    }\n    return out\n  },\n}\n\n// <ContextStorage :additional-handlers=\"[createQueryHandler({ serializer: jsonSerializer })]\">\n//   useContextStorage('query', data, { key: 'f', schema: ... })\n//   →  ?f={\"ids\":[1,2,3],\"q\":\"hello\"}\n```\n\n**Contract** (`QuerySerializer`):\n\n- `serialize` and `deserialize` **must be mutual inverses**.\n- They must preserve the same per-`key` nesting the built-in pair uses: `deserialize(serialize(data, { key }))` reproduces `{ [key]: data }` (and `{ ...data }` when no `key` is given). The handler relies on this to extract each registration's subtree, diff against baselines, and drive `onlyChanges`.\n- `serialize` always receives the **fully resolved options** (`ResolvedSerializeOptions`): `key`, plus `arrayFormat` and `arraySeparator` (the factory-level and per-`useContextStorage` `serialize` options merged, with defaults applied). A custom serializer can honour them — e.g. respect `arrayFormat: 'comma'` — or own the encoding entirely and ignore them.\n- `deserialize` runs on the **whole** route query before per-registration extraction, so it does NOT receive options — fix the decoding format in the function (mirroring whatever `serialize` produced).\n- `deserialize` output still flows through `schema` / `transform` coercion, so return already-typed values (numbers, arrays — like the JSON example above) or URL-style strings the standard coercion understands.\n\n## Use localStorage Handler in Components\n\nPersist reactive state to `localStorage`. Data is automatically synced across browser tabs.\n\n```vue\n<script setup lang=\"ts\">\nimport { reactive } from 'vue'\nimport { useContextStorage } from 'vue-context-storage'\n\nconst settings = reactive({\n  theme: 'light',\n  fontSize: 14,\n  sidebarOpen: true,\n})\n\n// Automatically syncs settings with localStorage under the key \"app-settings\"\nuseContextStorage('localStorage', settings, {\n  key: 'app-settings',\n})\n</script>\n```\n\n### Configure localStorage Handler\n\n```typescript\nimport { createLocalStorageHandler } from 'vue-context-storage'\n\nconst customLocalStorage = createLocalStorageHandler({\n  listenToStorageEvents: true, // Cross-tab sync (default: true)\n})\n```\n\n## Use sessionStorage Handler in Components\n\nPersist reactive state to `sessionStorage`. Data survives page refreshes but is cleared when the tab is closed.\n\n```vue\n<script setup lang=\"ts\">\nimport { reactive } from 'vue'\nimport { useContextStorage } from 'vue-context-storage'\n\nconst formDraft = reactive({\n  email: '',\n  message: '',\n  step: 1,\n})\n\n// Automatically syncs form draft with sessionStorage\nuseContextStorage('sessionStorage', formDraft, {\n  key: 'contact-form-draft',\n})\n</script>\n```\n\n### Multiple Registrations Under One Root Key\n\nUse bracket notation in `key` to store multiple data objects under a common root:\n\n```typescript\nconst filters = reactive({ search: '', status: 'active' })\n\nuseContextStorage('sessionStorage', filters, {\n  key: 'app-state[filters]', // Storage key: 'app-state[filters]'\n})\n\nconst pagination = reactive({ page: 1, perPage: 25 })\n\nuseContextStorage('sessionStorage', pagination, {\n  key: 'app-state[pagination]', // Storage key: 'app-state[pagination]'\n})\n```\n\nOr use `<ContextStoragePrefix>` for automatic scoping (see [Prefix Scoping](#prefix-scoping-with-contextstorageprefix)).\n\n### Using Transform with Storage Handlers\n\nConvert stored values to proper types when reading from storage:\n\n```typescript\nimport { useContextStorage, transform } from 'vue-context-storage'\n\nconst settings = reactive({\n  theme: 'light',\n  fontSize: 14,\n})\n\nuseContextStorage('localStorage', settings, {\n  key: 'app-settings',\n  transform: (deserialized, initial) => ({\n    theme: transform.asString(deserialized.theme, { fallback: 'light' }),\n    fontSize: transform.asNumber(deserialized.fontSize, { fallback: 14 }),\n  }),\n})\n```\n\n### Using Zod Schemas with Storage Handlers\n\n```typescript\nimport { z } from 'zod'\nimport { useContextStorage } from 'vue-context-storage'\n\nconst SettingsSchema = z.object({\n  theme: z.enum(['light', 'dark']).default('light'),\n  fontSize: z.number().int().positive().default(14),\n  sidebarOpen: z.boolean().default(true),\n})\n\nconst settings = reactive(SettingsSchema.parse({}))\n\nuseContextStorage('localStorage', settings, {\n  key: 'app-settings',\n  schema: SettingsSchema,\n})\n```\n\n### Custom Serialization\n\nProvide custom serializer/deserializer functions:\n\n```typescript\nuseContextStorage('localStorage', settings, {\n  key: 'app-settings',\n  serializer: (data) => btoa(JSON.stringify(data)),\n  deserializer: (str) => JSON.parse(atob(str)),\n})\n```\n\n## Prefix Scoping with `<ContextStoragePrefix>`\n\nThe `<ContextStoragePrefix>` component adds a prefix to all `useContextStorage` calls within its subtree. Prefixes stack when nested, and are concatenated with bracket notation.\n\n### Basic Usage\n\n```vue\n<template>\n  <ContextStoragePrefix name=\"table\">\n    <MyTable />\n  </ContextStoragePrefix>\n</template>\n```\n\nInside `MyTable`, any `useContextStorage('query', data)` call will automatically get `key: 'tables'`. If the composable also specifies its own key, they are combined:\n\n```typescript\n// Inside MyTable — effective key becomes 'table[filters]'\nuseContextStorage('query', filters, { key: 'filters' })\n// URL: ?table[filters][search]=...\n```\n\n### Stacking Prefixes\n\nNested `<ContextStoragePrefix>` components stack their prefixes:\n\n```vue\n<ContextStoragePrefix name=\"tables\">\n  <ContextStoragePrefix name=\"first\">\n    <!-- All handlers here get prefix 'tables[first]' -->\n    <!-- useContextStorage('query', data) → URL: ?tables[first][search]=... -->\n    <!-- useContextStorage('localStorage', data, { key: 'state' }) → key: 'state[tables][first]' -->\n  </ContextStoragePrefix>\n</ContextStoragePrefix>\n```\n\n### Per-Handler Prefixes\n\nPass an object to apply different prefixes per handler type:\n\n```vue\n<ContextStoragePrefix :name=\"{ query: 'url-tables', localStorage: 'ls-data' }\">\n  <!-- query handler gets prefix 'url-tables' -->\n  <!-- localStorage handler gets prefix 'ls-data' -->\n  <!-- sessionStorage handler gets no prefix (not specified) -->\n</ContextStoragePrefix>\n```\n\n### Dynamic Prefix\n\nWhen the `name` prop changes, all descendant components are re-created and re-registered with the new prefix:\n\n```vue\n<ContextStoragePrefix :name=\"activeTab\">\n  <TabContent />\n</ContextStoragePrefix>\n```\n\n## Registering Custom Handlers\n\nRegister your own handlers at runtime and extend the type map for full type safety:\n\n```typescript\nimport { defineContextStorageHandler } from 'vue-context-storage'\nimport { myHandlerInjectionKey } from './my-handler'\n\n// Runtime registration\ndefineContextStorageHandler('myHandler', myHandlerInjectionKey)\n\n// TypeScript augmentation (e.g. in a .d.ts or at module level)\ndeclare module 'vue-context-storage' {\n  interface ContextStorageHandlerMap {\n    myHandler: { key: string }\n  }\n}\n\n// Now fully type-checked\nuseContextStorage('myHandler', data, { key: 'example' })\n```\n\n## API Reference\n\n### Composables\n\n#### `useContextStorage(type, data, options)`\n\nUnified composable that delegates to the correct handler based on `type`.\n\n**Parameters:**\n\n- `type: 'query' | 'localStorage' | 'sessionStorage' | InjectionKey` - Handler type or injection key\n- `data: MaybeRefOrGetter<T>` - Reactive reference to sync\n- `options` - Handler-specific options (type-checked per handler)\n\n**Returns:** `{ data, stop, reset, wasChanged }`\n\n- `data` - The reactive reference passed in\n- `stop()` - Unregister and stop syncing (called automatically on unmount)\n- `reset()` - Restore data to its initial state\n- `wasChanged: ComputedRef<boolean>` - Whether data differs from initial state\n\n**Custom handler registration:**\n\n- `defineContextStorageHandler(name, injectionKey)` - Register a custom handler\n- `resolveHandlerInjectionKey(type)` - Look up an injection key by name\n\n### Handler Factories\n\n#### `createQueryHandler(options?)`\n\nCreates a query handler factory for URL query synchronization.\n\n**Options:**\n\n- `mode?: 'replace' | 'push'` - Router navigation mode (default: `'replace'`)\n- `preserveUnusedKeys?: boolean` - Keep other query params (default: `true`)\n- `preserveEmptyState?: boolean` - Preserve empty state in URL (default: `false`)\n- `emptyPlaceholder?: string` - Placeholder for empty state (default: `'_'`)\n- `onlyChanges?: boolean` - Only write changed values to URL (default: `true`)\n\n#### `createLocalStorageHandler(options?)`\n\nCreates a localStorage handler factory.\n\n**Options:**\n\n- `listenToStorageEvents?: boolean` - Enable cross-tab sync (default: `true`)\n\n#### `createSessionStorageHandler(options?)`\n\nCreates a sessionStorage handler factory.\n\n**Options:**\n\n- `listenToStorageEvents?: boolean` - Listen to storage events (default: `false`)\n\n### Components\n\n#### `<ContextStoragePrefix>`\n\nScopes a prefix for all descendant `useContextStorage` calls via provide/inject.\n\n**Props:**\n\n- `name: string | Partial<Record<string, string>>` (required) - Prefix to apply. A string applies to all handlers; an object applies per handler type (e.g. `{ query: 'q', localStorage: 'ls' }`)\n\nNested `<ContextStoragePrefix>` components stack their prefixes using bracket notation. When `name` changes dynamically, all descendant components are re-created.\n\n### Transform Helpers\n\nAll transform helpers support nullable and missable options:\n\n```typescript\ntransform.asNumber(value, {\n  fallback: 0, // Default value\n  nullable: false, // Allow null return\n  missable: false, // Allow undefined return\n})\n```\n\n## Zod Helpers\n\nZod-specific helpers are exported from the main entry point. `zod` remains an optional peer dependency — the helpers are implemented via duck-typed schema introspection, so the main bundle never imports Zod at runtime.\n\n```bash\nnpm install zod\n```\n\n### Automatic Type Coercion\n\nWhen a `schema` is provided, the library automatically coerces URL query parameter values to match the expected Zod types before validation. This handles the common URL serialization quirks below.\n\n#### Array Coercion\n\nA URL with multiple values (`?ids=1&ids=2`) produces an array `['1', '2']`, but a single value (`?ids=1`) produces just `'1'`. Without correction, `z.string().array()` would reject the single-value case with `\"expected array, received string\"`.\n\nThe library introspects the Zod schema before validation and wraps non-array values into single-element arrays wherever the schema expects `.array()`. This works recursively for nested objects. **No special helpers are needed** — plain `.array()` schemas work out of the box:\n\n```typescript\nconst Schema = z.object({\n  tags: z.string().array(),\n  ids: z.number().array(),\n  statuses: z.enum(['active', 'inactive']).array(),\n  filters: z\n    .object({\n      categories: z.string().array(),\n    })\n    .default({ categories: [] }),\n})\n\n// All of these work automatically:\n// ?tags=vue          → { tags: ['vue'], ... }\n// ?tags=vue&tags=ts  → { tags: ['vue', 'ts'], ... }\n// (no tags param)    → { tags: [], ... }  (falls back to the value in your reactive state)\n```\n\nArrays of objects are also handled automatically. They deserialize from indexed query parameters (`?items[0][product]=Apple`) into indexed objects (`{ '0': { product: 'Apple' } }`), and the library converts them back to arrays sorted by numeric key wherever the schema expects `.array()` — coercion is applied recursively inside array elements as well:\n\n```typescript\nconst ItemSchema = z.object({\n  product: z.string().default(''),\n  quantity: z.number().default(0),\n})\n\nconst Schema = z.object({\n  items: z.array(ItemSchema),\n})\n\n// ?items[0][product]=Apple&items[0][quantity]=5\n// → { items: [{ product: 'Apple', quantity: 5 }] }\n```\n\n#### Boolean Coercion\n\nThe query handler serializes booleans as `'1'`/`'0'` strings in URL parameters (e.g. `?active=1`). Standard `z.coerce.boolean()` cannot be used because `Boolean('0')` is `true` in JavaScript. The library automatically converts `'1'` → `true` and `'0'` → `false` when the schema expects a boolean field. **No special helpers are needed** — plain `z.boolean()` works out of the box:\n\n```typescript\nconst Schema = z.object({\n  active: z.boolean().default(false),\n  enabled: z.boolean().default(true),\n})\n\n// ?active=1  → { active: true, enabled: true }\n// ?active=0  → { active: false, enabled: true }\n```\n\n#### Number Coercion\n\nURL query parameters are always strings (`?page=5` → `'5'`), so plain `z.number()` would reject them with `\"expected number, received string\"`. The library automatically converts numeric strings to numbers wherever the schema expects a number — including inside nested objects and `z.array(z.number())`. **`z.coerce` is not required** — plain `z.number()` works out of the box:\n\n```typescript\nconst Schema = z.object({\n  page: z.number().default(1),\n  score: z.number().nullable(),\n  ids: z.array(z.number()),\n})\n\n// ?page=5            → { page: 5, ... }\n// ?score=42          → { score: 42, ... }\n// ?ids=1&ids=2       → { ids: [1, 2], ... }\n```\n\nCoercion is conservative: a non-numeric string (`?page=abc`) or an empty value is **not** forced to a number (`Number('')` would be `0`). Instead the schema validation fails and the field falls back to its initial data, so missing/garbage input never silently becomes `0`. `null` is preserved for `.nullable()` fields.\n\n> `z.coerce.number()` still works and remains useful when you want Zod's own coercion semantics (e.g. coercing booleans or accepting empty strings as `0`).\n\n### `createEmptyZodObject(schema, options?)`\n\nCreates a plain object with empty/default values based on a Zod schema. Useful for initializing reactive data from a schema definition.\n\n```typescript\nimport { z } from 'zod'\nimport { createEmptyZodObject } from 'vue-context-storage'\n\nconst FiltersSchema = z.object({\n  search: z.string().default(''),\n  page: z.number().default(1),\n  active: z.boolean().default(false),\n  score: z.number().nullable(),\n})\n\nconst filters = reactive(createEmptyZodObject(FiltersSchema))\n// Result: { search: '', page: 1, active: false, score: null }\n```\n\n**Options:**\n\n- `useDefaults` (default: `true`) — When `true`, uses `.default()` values from the schema. When `false`, uses type-based empty values (`''` for strings, `0` for numbers, `false` for booleans, etc.).\n- `withSchema` (default: `false`) — When `true`, attaches the schema to the result object via `SCHEMA_SYMBOL` (wrapped with `markRaw`). Nested objects also receive their respective schemas.\n\n```typescript\nimport { createEmptyZodObject, SCHEMA_SYMBOL } from 'vue-context-storage'\n\nconst data = createEmptyZodObject(FiltersSchema, { withSchema: true })\ndata[SCHEMA_SYMBOL] // → FiltersSchema\n```\n\n**Type-based defaults** (when `useDefaults: false` or no `.default()` is set):\n\n| Zod type      | Default value                                  |\n| ------------- | ---------------------------------------------- |\n| `z.string()`  | `''`                                           |\n| `z.number()`  | `0` (respects `.min()` / `.positive()`)        |\n| `z.boolean()` | `false`                                        |\n| `z.array()`   | `[]`                                           |\n| `z.object()`  | Recursively created via `createEmptyZodObject` |\n| `z.date()`    | `null`                                         |\n| `.nullable()` | `null`                                         |\n| `.optional()` | `undefined`                                    |\n\n## TypeScript Support\n\nFull TypeScript support with type inference:\n\n```typescript\nimport type {\n  ContextStorageHandler,\n  ContextStorageHandlerFactory,\n  QueryValue,\n} from 'vue-context-storage'\n```\n\nWhen using Zod schemas, TypeScript will automatically infer types:\n\n```typescript\nconst FiltersSchema = z.object({\n  search: z.string().default(''),\n  page: z.number().default(1),\n})\n\ntype Filters = z.infer<typeof FiltersSchema>\n// Result: { search: string; page: number }\n```\n\n## Examples\n\n### Pagination with URL Sync\n\n```typescript\nimport { ref } from 'vue'\nimport { useContextStorage, transform } from 'vue-context-storage'\n\nconst pagination = ref({\n  page: 1,\n  perPage: 25,\n  total: 0,\n})\n\nuseContextStorage('query', pagination, {\n  key: 'page',\n  transform: (data, initial) => ({\n    page: transform.asNumber(data.page, { fallback: 1 }),\n    perPage: transform.asNumber(data.perPage, { fallback: 25 }),\n    total: initial.total, // Don't sync total from URL\n  }),\n})\n```\n\n## Peer Dependencies\n\n- `vue`: ^3.0.0\n- `vue-router`: ^4.0.0 || ^5.0.0\n- `zod`: ^4.0.0 (optional - only if using schema validation)\n\n## License\n\nMIT\n\n## Development\n\n### Running Playground Locally\n\n```bash\n# Development mode (hot reload)\nnpm run play\n\n# Production preview\nnpm run build:playground\nnpm run preview:playground\n```\n\n### Building\n\n```bash\n# Build library\nnpm run build\n\n# Build playground for deployment\nnpm run build:playground\n```\n\n### Testing & Quality\n\n```bash\n# Run all checks\nnpm run check\n\n# Type checking\nnpm run ts:check\n\n# Linting\nnpm run lint\n\n# Formatting\nnpm run format\n```\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n","readmeFilename":"README.md"}