{"_id":"zod-search-params","_rev":"9-e6a052abb90a81b0de1fa485850145f5","name":"zod-search-params","dist-tags":{"latest":"0.2.1"},"versions":{"0.1.0":{"name":"zod-search-params","version":"0.1.0","keywords":["zod","search params","url search params","next.js","nextjs","react"],"_id":"zod-search-params@0.1.0","maintainers":[{"name":"theboxer","email":"theboxercz@gmail.com"}],"dist":{"shasum":"62f8cfd01d8fcf4d089d2033c296042ff28fd218","tarball":"https://registry.npmjs.org/zod-search-params/-/zod-search-params-0.1.0.tgz","fileCount":7,"integrity":"sha512-jUGrMUzMsU3CCYRWxvOBYySo28yI+zk6iM8eXzauAqr8aGt+AR+fIvvp6ga5Yf7JiHV9/lAbSfFqehtBRRwUOQ==","signatures":[{"sig":"MEUCIBCVqzzPBb9PCH/gG0WiWowP+a2N6T31Q3aMrObVDuePAiEAoqtluaopzh99EsKll/M/UiQkwAfpNk5/MhxpLZjDjtQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":10946},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=18"},"gitHead":"2943723ebb223fbb6c805fc5454a0a16be62a495","private":false,"scripts":{"lint":"eslint 'src/**/*.ts'","test":"jest","build":"tsc --project tsconfig.build.json","format":"prettier --write 'src/**/*.ts'","prepare":"yarn build","version":"yarn format && git add -A src","lint:fix":"eslint --fix 'src/**/*.ts'","preversion":"yarn lint","test:watch":"jest --watchAll","postversion":"git push && git push --tags","format:check":"prettier 'src/**/*.ts'","prepublishOnly":"yarn test && yarn lint"},"_npmUser":{"name":"theboxer","email":"theboxercz@gmail.com"},"_npmVersion":"10.1.0","description":"Zod utility for parsing search params","directories":{},"_nodeVersion":"20.9.0","_hasShrinkwrap":false,"devDependencies":{"zod":"^3.22.2","jest":"^29.7.0","eslint":"^8.52.0","ts-jest":"^29.1.1","ts-node":"^10.9.1","prettier":"^3.0.2","typescript":"^5.2.2","@types/jest":"^29.5.8","eslint-plugin-import":"^2.28.1","eslint-plugin-unicorn":"^48.0.1","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.0","@typescript-eslint/parser":"^6.4.1","@typescript-eslint/eslint-plugin":"^6.4.1"},"peerDependencies":{"zod":"^3.20.0"},"_npmOperationalInternal":{"tmp":"tmp/zod-search-params_0.1.0_1700338620767_0.23872723565646514","host":"s3://npm-registry-packages"}},"0.1.1":{"name":"zod-search-params","version":"0.1.1","keywords":["zod","search params","url search params","next.js","nextjs","react"],"_id":"zod-search-params@0.1.1","maintainers":[{"name":"theboxer","email":"theboxercz@gmail.com"}],"dist":{"shasum":"62f173633a6fcb94004cbb9031fe3f1b4392cde7","tarball":"https://registry.npmjs.org/zod-search-params/-/zod-search-params-0.1.1.tgz","fileCount":7,"integrity":"sha512-EcusYI9LoOFiv7DLFiFVJc1bYKH+0cslSq1k2KbUV1Ami3hW0t8VuSCRQBZ69LC+dH0cJduJDbeFN0kkaUkk3Q==","signatures":[{"sig":"MEUCIQCQO4v9Wp8w1n3XkqQSY3gPn13eJhJe1VT3vEFTJMOoYgIgJD0uyeUmWMSildAZEKzqjCKDKEraLLSzQe0J+IqR2jY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11028},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=18"},"gitHead":"ce3543530ac835eed02fac7839e3aace552df5c2","private":false,"scripts":{"lint":"eslint 'src/**/*.ts'","test":"jest","build":"tsc --project tsconfig.build.json","format":"prettier --write 'src/**/*.ts'","prepare":"yarn build","version":"yarn format && git add -A src","lint:fix":"eslint --fix 'src/**/*.ts'","preversion":"yarn lint","test:watch":"jest --watchAll","postversion":"git push && git push --tags","format:check":"prettier 'src/**/*.ts'","prepublishOnly":"yarn test && yarn lint"},"_npmUser":{"name":"theboxer","email":"theboxercz@gmail.com"},"_npmVersion":"10.1.0","description":"Zod utility for parsing search params","directories":{},"_nodeVersion":"20.9.0","_hasShrinkwrap":false,"devDependencies":{"zod":"^3.22.2","jest":"^29.7.0","eslint":"^8.52.0","ts-jest":"^29.1.1","ts-node":"^10.9.1","prettier":"^3.0.2","typescript":"^5.2.2","@types/jest":"^29.5.8","eslint-plugin-import":"^2.28.1","eslint-plugin-unicorn":"^48.0.1","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.0","@typescript-eslint/parser":"^6.4.1","@typescript-eslint/eslint-plugin":"^6.4.1"},"peerDependencies":{"zod":"^3.20.0"},"_npmOperationalInternal":{"tmp":"tmp/zod-search-params_0.1.1_1705934442532_0.04159489008836559","host":"s3://npm-registry-packages"}},"0.1.2":{"name":"zod-search-params","version":"0.1.2","keywords":["zod","search params","query params","url search params","url query params","next.js","nextjs","react"],"license":"MIT","_id":"zod-search-params@0.1.2","maintainers":[{"name":"theboxer","email":"theboxercz@gmail.com"}],"dist":{"shasum":"733d61258edfa2caabf0b6bcb4bf4cdd404614e2","tarball":"https://registry.npmjs.org/zod-search-params/-/zod-search-params-0.1.2.tgz","fileCount":7,"integrity":"sha512-fUB5zzvQdzAw4Eq+1nMRYrhEf8cQZVLm9twl9y+pc+VzsmSWoCEUJa7sGkBPH8U9GFYupglh74Tdk03gf6TxWg==","signatures":[{"sig":"MEYCIQCeEeV0+MogHukLwo2JiN3Qm3eLlQs2cnQb9URo2DTSQQIhAODRi5WITwFwdKohMa0Bs5vNmHXJWoeJ7nLnRk4xmhVP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11616},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=18"},"gitHead":"8e9ef9df43f727023aec9116467005ca57c76538","private":false,"scripts":{"lint":"eslint 'src/**/*.ts'","test":"jest","build":"tsc --project tsconfig.build.json","format":"prettier --write 'src/**/*.ts'","prepare":"yarn build","version":"yarn format && git add -A src","lint:fix":"eslint --fix 'src/**/*.ts'","preversion":"yarn lint","test:watch":"jest --watchAll","postversion":"git push && git push --tags","format:check":"prettier 'src/**/*.ts'","prepublishOnly":"yarn test && yarn lint"},"_npmUser":{"name":"theboxer","email":"theboxercz@gmail.com"},"_npmVersion":"10.1.0","description":"Zod utility for parsing search params","directories":{},"_nodeVersion":"20.9.0","_hasShrinkwrap":false,"devDependencies":{"zod":"^3.22.2","jest":"^29.7.0","eslint":"^8.52.0","ts-jest":"^29.1.1","ts-node":"^10.9.1","prettier":"^3.0.2","typescript":"^5.2.2","@types/jest":"^29.5.8","eslint-plugin-import":"^2.28.1","eslint-plugin-unicorn":"^48.0.1","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.0","@typescript-eslint/parser":"^6.4.1","@typescript-eslint/eslint-plugin":"^6.4.1"},"peerDependencies":{"zod":"^3.20.0"},"_npmOperationalInternal":{"tmp":"tmp/zod-search-params_0.1.2_1706002843927_0.32962067733345934","host":"s3://npm-registry-packages"}},"0.1.3":{"name":"zod-search-params","version":"0.1.3","keywords":["zod","search params","query params","url search params","url query params","next.js","nextjs","react"],"license":"MIT","_id":"zod-search-params@0.1.3","maintainers":[{"name":"theboxer","email":"theboxercz@gmail.com"}],"homepage":"https://github.com/theboxer/zod-search-params","bugs":{"url":"https://github.com/theboxer/zod-search-params/issues"},"dist":{"shasum":"3f45154a483e3d5755aa9b68547b6c1973bf9014","tarball":"https://registry.npmjs.org/zod-search-params/-/zod-search-params-0.1.3.tgz","fileCount":7,"integrity":"sha512-qL6vajT/wSv/nFdhksDU8OxALf5uT+yQijpbBs6sJm3arCrE24T63koTeZ9Uf7B8v/qj66t85T+91d6aC096LQ==","signatures":[{"sig":"MEYCIQDXmyXxEz4vqSYJuajyupbSNvDH/56ru9empDdQXBPcNgIhAKl6mpi26wglU/KMTHS9yp/GEmmx1uudGmcpLHiiq38l","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11916},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=18"},"funding":"https://github.com/sponsors/theboxer","gitHead":"434ad8200fe8e16d79bdfbde50706627aa25e160","private":false,"scripts":{"lint":"eslint 'src/**/*.ts'","test":"jest","build":"tsc --project tsconfig.build.json","format":"prettier --write 'src/**/*.ts'","prepare":"yarn build","version":"yarn format && git add -A src","lint:fix":"eslint --fix 'src/**/*.ts'","preversion":"yarn lint","test:watch":"jest --watchAll","postversion":"git push && git push --tags","format:check":"prettier 'src/**/*.ts'","prepublishOnly":"yarn test && yarn lint"},"_npmUser":{"name":"theboxer","email":"theboxercz@gmail.com"},"repository":{"url":"git+https://github.com/theboxer/zod-search-params.git","type":"git"},"_npmVersion":"10.1.0","description":"Zod utility for parsing search params","directories":{},"_nodeVersion":"20.9.0","_hasShrinkwrap":false,"devDependencies":{"zod":"^3.22.2","jest":"^29.7.0","eslint":"^8.52.0","ts-jest":"^29.1.1","ts-node":"^10.9.1","prettier":"^3.0.2","typescript":"^5.2.2","@types/jest":"^29.5.8","eslint-plugin-import":"^2.28.1","eslint-plugin-unicorn":"^48.0.1","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.0","@typescript-eslint/parser":"^6.4.1","@typescript-eslint/eslint-plugin":"^6.4.1"},"peerDependencies":{"zod":"^3.20.0"},"_npmOperationalInternal":{"tmp":"tmp/zod-search-params_0.1.3_1706111458997_0.45748388586428956","host":"s3://npm-registry-packages"}},"0.1.4":{"name":"zod-search-params","version":"0.1.4","keywords":["zod","search params","query params","url search params","url query params","next.js","nextjs","react"],"license":"MIT","_id":"zod-search-params@0.1.4","maintainers":[{"name":"theboxer","email":"theboxercz@gmail.com"}],"homepage":"https://github.com/theboxer/zod-search-params","bugs":{"url":"https://github.com/theboxer/zod-search-params/issues"},"dist":{"shasum":"dc766a936834ed59e09ef1bb022092d7ca6a7203","tarball":"https://registry.npmjs.org/zod-search-params/-/zod-search-params-0.1.4.tgz","fileCount":7,"integrity":"sha512-WCJ9LmCnL3NqHObE1+xHUhOiZC9aJTXQYO9M0XULkRp43KTx+0UcEUlAouORWhfFeW+Va9fz9twHEvuteG/Alw==","signatures":[{"sig":"MEUCICeuzhqG//C04AWoLmPCLiCQHObEdXhFFVteseeQVOVrAiEA6usiRG6SC01JMFvl71nIGePsRwPb1dLoP1lpjOGBCyE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11940},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=18"},"funding":"https://github.com/sponsors/theboxer","gitHead":"bff2ac13903bb6da4849470b0d6e41c483a6e0fd","private":false,"scripts":{"lint":"eslint 'src/**/*.ts'","test":"jest","build":"tsc --project tsconfig.build.json","format":"prettier --write 'src/**/*.ts'","prepare":"yarn build","version":"yarn format && git add -A src","lint:fix":"eslint --fix 'src/**/*.ts'","preversion":"yarn lint","test:watch":"jest --watchAll","postversion":"git push && git push --tags","format:check":"prettier 'src/**/*.ts'","prepublishOnly":"yarn test && yarn lint"},"_npmUser":{"name":"theboxer","email":"theboxercz@gmail.com"},"repository":{"url":"git+https://github.com/theboxer/zod-search-params.git","type":"git"},"_npmVersion":"10.5.2","description":"Zod utility for parsing search params","directories":{},"_nodeVersion":"20.13.1","_hasShrinkwrap":false,"devDependencies":{"zod":"^3.22.2","jest":"^29.7.0","eslint":"^8.52.0","ts-jest":"^29.1.1","ts-node":"^10.9.1","prettier":"^3.0.2","typescript":"^5.2.2","@types/jest":"^29.5.8","eslint-plugin-import":"^2.28.1","eslint-plugin-unicorn":"^48.0.1","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.0","@typescript-eslint/parser":"^6.4.1","@typescript-eslint/eslint-plugin":"^6.4.1"},"peerDependencies":{"zod":"^3.20.0"},"_npmOperationalInternal":{"tmp":"tmp/zod-search-params_0.1.4_1728909157224_0.759741400196305","host":"s3://npm-registry-packages"}},"0.1.5":{"name":"zod-search-params","version":"0.1.5","keywords":["zod","search params","query params","url search params","url query params","next.js","nextjs","react"],"license":"MIT","_id":"zod-search-params@0.1.5","maintainers":[{"name":"theboxer","email":"theboxercz@gmail.com"}],"homepage":"https://github.com/theboxer/zod-search-params","bugs":{"url":"https://github.com/theboxer/zod-search-params/issues"},"dist":{"shasum":"f60124e755719212dacbb203aba7b6b344da44d3","tarball":"https://registry.npmjs.org/zod-search-params/-/zod-search-params-0.1.5.tgz","fileCount":7,"integrity":"sha512-Z/ZZefTeIpfmwHyj4TvWPzT0iVGCMgVHmKikZzd4IE5N22df6FjRaBBgx66wiDC1l3xoxK/3N3rUN3AYAAsldg==","signatures":[{"sig":"MEYCIQDTI7fGTrr4gJSukm8d7EtIA31LPq02oJEKDKZeXkRBYAIhANqXCPV4mrTiCZLp4SoQj5WDg/Dipij+VgSPhGhwGLmT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":12182},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=18"},"funding":"https://github.com/sponsors/theboxer","gitHead":"6e4bd361e9ec28e45253a0c339cf778c4ae0166b","private":false,"scripts":{"lint":"eslint 'src/**/*.ts'","test":"jest","build":"tsc --project tsconfig.build.json","format":"prettier --write 'src/**/*.ts'","prepare":"yarn build","version":"yarn format && git add -A src","lint:fix":"eslint --fix 'src/**/*.ts'","preversion":"yarn lint","test:watch":"jest --watchAll","postversion":"git push && git push --tags","format:check":"prettier 'src/**/*.ts'","prepublishOnly":"yarn test && yarn lint"},"_npmUser":{"name":"theboxer","email":"theboxercz@gmail.com"},"repository":{"url":"git+https://github.com/theboxer/zod-search-params.git","type":"git"},"_npmVersion":"10.5.2","description":"Zod utility for parsing search params","directories":{},"_nodeVersion":"20.13.1","_hasShrinkwrap":false,"devDependencies":{"zod":"^3.22.2","jest":"^29.7.0","eslint":"^8.52.0","ts-jest":"^29.1.1","ts-node":"^10.9.1","prettier":"^3.0.2","typescript":"^5.2.2","@types/jest":"^29.5.8","eslint-plugin-import":"^2.28.1","eslint-plugin-unicorn":"^48.0.1","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.0","@typescript-eslint/parser":"^6.4.1","@typescript-eslint/eslint-plugin":"^6.4.1"},"peerDependencies":{"zod":"^3.20.0"},"_npmOperationalInternal":{"tmp":"tmp/zod-search-params_0.1.5_1729686248828_0.9676159723948083","host":"s3://npm-registry-packages"}},"0.1.6":{"name":"zod-search-params","version":"0.1.6","keywords":["zod","search params","query params","url search params","url query params","next.js","nextjs","react"],"license":"MIT","_id":"zod-search-params@0.1.6","maintainers":[{"name":"theboxer","email":"theboxercz@gmail.com"}],"homepage":"https://github.com/theboxer/zod-search-params","bugs":{"url":"https://github.com/theboxer/zod-search-params/issues"},"dist":{"shasum":"f6c557c966d8b6091b7be1795c7bb12e9c2ae19f","tarball":"https://registry.npmjs.org/zod-search-params/-/zod-search-params-0.1.6.tgz","fileCount":7,"integrity":"sha512-C111INCebaDzOvVEubYNF4tvXX9iCSLJwEPznv0EmW7ttb5mItdEF0YESWn/YvFVIZ5/FffpowmsYktFkM9Ydg==","signatures":[{"sig":"MEYCIQDKZAUhyy8CiqjpR3jJFEz9EYvADWSUeoGNydEtN5E/IgIhAPWPlDM8YXrWd826sb+SPRsfSxZB1z0RgvmU/ZlJsBUV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12275},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=18"},"funding":"https://github.com/sponsors/theboxer","gitHead":"91dc9ac05ac69c04e4b719600e6d87002ad054de","private":false,"scripts":{"lint":"eslint 'src/**/*.ts'","test":"jest","build":"tsc --project tsconfig.build.json","format":"prettier --write 'src/**/*.ts'","prepare":"yarn build","version":"yarn format && git add -A src","lint:fix":"eslint --fix 'src/**/*.ts'","preversion":"yarn lint","test:watch":"jest --watchAll","postversion":"git push && git push --tags","format:check":"prettier 'src/**/*.ts'","prepublishOnly":"yarn test && yarn lint"},"_npmUser":{"name":"theboxer","actor":{"name":"theboxer","type":"user","email":"theboxercz@gmail.com"},"email":"theboxercz@gmail.com"},"repository":{"url":"git+https://github.com/theboxer/zod-search-params.git","type":"git"},"_npmVersion":"10.9.0","description":"Zod utility for parsing search params","directories":{},"_nodeVersion":"20.15.1","_hasShrinkwrap":false,"devDependencies":{"zod":"^3.22.2","jest":"^29.7.0","eslint":"^8.52.0","ts-jest":"^29.1.1","ts-node":"^10.9.1","prettier":"^3.0.2","typescript":"^5.2.2","@types/jest":"^29.5.8","eslint-plugin-import":"^2.28.1","eslint-plugin-unicorn":"^48.0.1","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.0","@typescript-eslint/parser":"^6.4.1","@typescript-eslint/eslint-plugin":"^6.4.1"},"peerDependencies":{"zod":"^3.20.0"},"_npmOperationalInternal":{"tmp":"tmp/zod-search-params_0.1.6_1751980038010_0.7081593712422107","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"zod-search-params","version":"0.2.0","keywords":["zod","search params","query params","url search params","url query params","next.js","nextjs","react"],"license":"MIT","_id":"zod-search-params@0.2.0","maintainers":[{"name":"theboxer","email":"theboxercz@gmail.com"}],"homepage":"https://github.com/theboxer/zod-search-params","bugs":{"url":"https://github.com/theboxer/zod-search-params/issues"},"dist":{"shasum":"c79156179cc1f8a38807b8ede8c01c38ece8b2c2","tarball":"https://registry.npmjs.org/zod-search-params/-/zod-search-params-0.2.0.tgz","fileCount":11,"integrity":"sha512-WZKbELOEWkSGkecusfwzLwBdUlmjYResom1fgfnTQFm0ngohkzcccy2X0tIirg36QHsDEz+N1LPnyb7Q+X9gHw==","signatures":[{"sig":"MEQCIBfpa0e5hoA/uCYbUiX6z3NVZNoWkH77V/quZ1Vk4YjkAiBQ5bG0nKYYGeBZ8MsQ/eXvi92ffuNMTJFqIyfGBZw0CA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18392},"main":"lib/v3/index.js","types":"lib/v3/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./lib/v3/index.d.ts","import":"./lib/v3/index.js","require":"./lib/v3/index.js"},"./v3":{"types":"./lib/v3/index.d.ts","import":"./lib/v3/index.js","require":"./lib/v3/index.js"},"./v4":{"types":"./lib/v4/index.d.ts","import":"./lib/v4/index.js","require":"./lib/v4/index.js"}},"funding":"https://github.com/sponsors/theboxer","gitHead":"3008dd22e0c9e36116d08652745dd108879b873c","private":false,"scripts":{"lint":"eslint 'src/**/*.ts'","test":"jest","build":"tsc --project tsconfig.build.json","format":"prettier --write 'src/**/*.ts'","prepare":"yarn build","version":"yarn format && git add -A src","lint:fix":"eslint --fix 'src/**/*.ts'","preversion":"yarn lint","test:types":"tsc --noEmit --esModuleInterop --skipLibCheck --strict src/test/**/types.ts","test:watch":"jest --watchAll","postversion":"git push && git push --tags","format:check":"prettier 'src/**/*.ts'","prepublishOnly":"yarn test && yarn lint"},"_npmUser":{"name":"theboxer","email":"theboxercz@gmail.com"},"repository":{"url":"git+https://github.com/theboxer/zod-search-params.git","type":"git"},"_npmVersion":"10.9.0","description":"Zod utility for parsing search params","directories":{},"_nodeVersion":"20.15.1","_hasShrinkwrap":false,"devDependencies":{"zod":"^4.1.5","jest":"^29.7.0","eslint":"^8.52.0","ts-jest":"^29.1.1","ts-node":"^10.9.1","prettier":"^3.0.2","typescript":"^5.2.2","@types/jest":"^29.5.8","eslint-plugin-import":"^2.28.1","eslint-plugin-unicorn":"^48.0.1","eslint-config-prettier":"^9.0.0","eslint-plugin-prettier":"^5.0.0","@typescript-eslint/parser":"^6.4.1","@typescript-eslint/eslint-plugin":"^6.4.1"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/zod-search-params_0.2.0_1758725380189_0.5096165192075137","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"zod-search-params","version":"0.2.1","private":false,"description":"Zod utility for parsing search params","license":"MIT","repository":{"type":"git","url":"git+https://github.com/theboxer/zod-search-params.git"},"bugs":{"url":"https://github.com/theboxer/zod-search-params/issues"},"funding":"https://github.com/sponsors/theboxer","homepage":"https://github.com/theboxer/zod-search-params","keywords":["zod","search params","query params","url search params","url query params","next.js","nextjs","react"],"main":"lib/v3/index.js","types":"lib/v3/index.d.ts","exports":{".":{"import":"./lib/v3/index.js","require":"./lib/v3/index.js","types":"./lib/v3/index.d.ts"},"./v3":{"import":"./lib/v3/index.js","require":"./lib/v3/index.js","types":"./lib/v3/index.d.ts"},"./v4":{"import":"./lib/v4/index.js","require":"./lib/v4/index.js","types":"./lib/v4/index.d.ts"}},"engines":{"node":">=18"},"scripts":{"build":"tsc --project tsconfig.build.json","format":"prettier --write 'src/**/*.ts'","format:check":"prettier 'src/**/*.ts'","lint":"eslint 'src/**/*.ts'","lint:fix":"eslint --fix 'src/**/*.ts'","test":"jest","test:types":"tsc --noEmit --esModuleInterop --skipLibCheck --strict src/test/**/types.ts","test:watch":"jest --watchAll","prepare":"yarn build","prepublishOnly":"yarn test && yarn lint","preversion":"yarn lint","version":"yarn format && git add -A src","postversion":"git push && git push --tags"},"devDependencies":{"@types/jest":"^29.5.8","@typescript-eslint/eslint-plugin":"^6.4.1","@typescript-eslint/parser":"^6.4.1","eslint-config-prettier":"^9.0.0","eslint-plugin-import":"^2.28.1","eslint-plugin-prettier":"^5.0.0","eslint-plugin-unicorn":"^48.0.1","jest":"^29.7.0","prettier":"^3.0.2","ts-jest":"^29.1.1","ts-node":"^10.9.1","zod":"^4.1.5","eslint":"^8.52.0","typescript":"^5.2.2"},"peerDependencies":{"zod":"^3.25.0 || ^4.0.0"},"_id":"zod-search-params@0.2.1","gitHead":"f44455fdc3422a47c8d1117f7ee9efd56ae3953e","_nodeVersion":"20.15.1","_npmVersion":"10.9.0","dist":{"integrity":"sha512-8dYQCkOBuZ3JGsvMzjEF0R9HKV/ghGWrYd8zU2eK6ngY0ui6TTzKI9frXiEPBugGMlzmpr7vGnXz0eq+p8HD4g==","shasum":"d61e971e077f6c3ceb880761c320550738e4bcc2","tarball":"https://registry.npmjs.org/zod-search-params/-/zod-search-params-0.2.1.tgz","fileCount":11,"unpackedSize":19185,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDr9zRBTJl8KVeERcHLT5aULFRrfjgUrnHteSo4auweSAiBvNlztHJ2zv0jbf7q/InQcORmrHeSaIWgqo7S5iGNOFw=="}]},"_npmUser":{"name":"theboxer","email":"theboxercz@gmail.com"},"directories":{},"maintainers":[{"name":"theboxer","email":"theboxercz@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/zod-search-params_0.2.1_1768315275021_0.9236929441520092"},"_hasShrinkwrap":false}},"time":{"created":"2023-11-18T20:17:00.766Z","modified":"2026-01-13T14:41:15.347Z","0.1.0":"2023-11-18T20:17:00.968Z","0.1.1":"2024-01-22T14:40:42.682Z","0.1.2":"2024-01-23T09:40:44.075Z","0.1.3":"2024-01-24T15:50:59.155Z","0.1.4":"2024-10-14T12:32:37.377Z","0.1.5":"2024-10-23T12:24:09.034Z","0.1.6":"2025-07-08T13:07:18.194Z","0.2.0":"2025-09-24T14:49:40.365Z","0.2.1":"2026-01-13T14:41:15.161Z"},"bugs":{"url":"https://github.com/theboxer/zod-search-params/issues"},"license":"MIT","homepage":"https://github.com/theboxer/zod-search-params","keywords":["zod","search params","query params","url search params","url query params","next.js","nextjs","react"],"repository":{"type":"git","url":"git+https://github.com/theboxer/zod-search-params.git"},"description":"Zod utility for parsing search params","maintainers":[{"name":"theboxer","email":"theboxercz@gmail.com"}],"readme":"# zod-search-params\n> zod-search-params is a library for parsing and validating search params in the browser.\n\n## Features\n- Predictable output\n- Type safety\n- Easy to use\n\n## How to use\n### Install\n```shell\nyarn add zod-search-params\n```\n\n### Import\n```ts\nimport { parseSearchParams } from 'zod-search-params'; // by default this imports version for zod v3\n// or\nimport { parseSearchParams } from 'zod-search-params/v3'; // specifically import version for zod v3\n// or\nimport { parseSearchParams } from 'zod-search-params/v4'; // specifically import version for zod v4\n```\n\n### Define Schema\nDo **NOT** use `coerce` in the schema, coerce is applied automatically (to prevent casting `undefined` to `\"undefined\"` etc.) for enabled types, when it's needed.\n```ts\nconst schema = z.object({\n  search: z.string().catch(''),\n  page: z.number().catch(1),\n});\n```\n\n### Parse search params\n```ts\nimport { parseSearchParams } from 'zod-search-params';\nconst parsedSearchParams = parseSearchParams(schema, urlSearchParams);\n```\n\n## Type safety\n### Always data\nIf all object properties within the zod schema are defined with `.catch()`, the output will always be an object with the same properties as the schema, but with the default values.\n\n```ts\nimport { parseSearchParams } from 'zod-search-params';\n\nconst schema = z.object({\n  search: z.string().catch(''),\n  page: z.number().catch(1),\n});\n\nconst parsedSearchParams = parseSearchParams(schema);\n/*\ntypeof parsedSearchParams\n{\n  search: string,\n  page: number,\n}\n */\n```\n\n### Optional data\nIf one or all object properties within the zod schema don't have `.catch()`, the output will be an object with the same properties as the schema or `undefined`. Where the `undefined` will return if parsing of the search params fail (for example passing string into a number).\n\n```ts\nimport { parseSearchParams } from 'zod-search-params';\n\nconst schema = z.object({\n  search: z.string().catch(''),\n  page: z.number(),\n});\n\nconst parsedSearchParams = parseSearchParams(schema);\n/*\ntypeof parsedSearchParams\nundefined | {\n  search: string,\n  page: number,\n}\n */\n```\n\n### Always data with optional properties\nUsing `.optional()` on a property will make the property optional, can be also chained with `.default()` to provide a default value.\n\n```ts\nimport { parseSearchParams } from 'zod-search-params';\n\nconst schema = z.object({\n  search: z.string().catch(''),\n  page: z.number().optional().catch(undefined),\n  sort: z.string().optional().default('name').catch('name'),\n});\n\nconst parsedSearchParams = parseSearchParams(schema);\n/*\ntypeof parsedSearchParams\n{\n  search: string,\n  page?: number,\n  sort: string,\n}\n */\n```\n\n## Examples\n\n### Basic example\n```ts\nimport { URLSearchParams } from 'url';\n\nconst schema = z.object({\n  search: z.string().catch(''),\n  page: z.number().catch(1),\n});\n\nconst objectParams = {\n  search: 'hello',\n  page: '2',\n};\n\nconst urlParams = new URLSearchParams();\nurlParams.append('search', 'hello');\nurlParams.append('page', '2');\n\nconsole.log(parseSearchParams(schema, objectParams));\nconsole.log(parseSearchParams(schema, urlParams));\n\n/* \nOUTPUTS:\n{\n  search: 'hello',\n  page: 2,\n }\n */\n```\n\n### Array support\n```ts\nimport { URLSearchParams } from 'url';\n\nconst schema = z.object({\n  tags: z.array(z.string()).catch([]),\n  ids: z.array(z.number()).catch([]),\n});\n\nconst objectParams = {\n  tags: ['zod', 'typescript'],\n  ids: '42',\n};\n\nconst urlParams = new URLSearchParams();\nurlParams.append('tags', 'zod');\nurlParams.append('tags', 'typescript');\nurlParams.append('ids', '42');\n\nconsole.log(parseSearchParams(schema, objectParams));\nconsole.log(parseSearchParams(schema, urlParams));\n\n/* \nOUTPUTS:\n{\n  tags: ['zod', 'typescript'],\n  ids: [42],\n }\n */\n```\n","readmeFilename":"README.md"}