{"_id":"@sentinel-password/react","_rev":"30-ba720659e8ab3c3be878a76f8c8f19e2","name":"@sentinel-password/react","dist-tags":{"latest":"2.0.0"},"versions":{"0.2.0":{"name":"@sentinel-password/react","version":"0.2.0","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@0.2.0","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://github.com/akankov/sentinel-password#readme","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"39d8686e9515ec1cfd0a84068c6ecd524b5880a7","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-0.2.0.tgz","fileCount":8,"integrity":"sha512-iRFB5Micfd1f57moNh2+Vztokr2MzEIzKQAB4oMsnkn+J9fylNIANUUP2o4b7mbxuLG87aLnBFA8IGj4B3G3UA==","signatures":[{"sig":"MEQCIBc2rbzQCzq9vHOg6YDpphkKu9+ZMQMhTalktC+KphJ4AiA3m0ORl0q2+PPXir+VwPn+zGbA8BHSPaTMrfD2N/PU3g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32981},"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"}}},"gitHead":"5c2c9aa1fabbd85ba3f4970a59bf33c86616131a","scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"akankov","email":"akankov@gmail.com"},"repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"10.9.4","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"22.21.1","dependencies":{"@sentinel-password/core":"workspace:*"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^5.4.21","jsdom":"^25.0.1","react":"^18.3.1","vitest":"^4.0.14","react-dom":"^18.3.1","storybook":"^8.6.14","typescript":"^5.9.3","@types/react":"^18.3.18","@storybook/test":"^8.6.14","@storybook/react":"^8.6.14","@types/react-dom":"^18.3.5","@storybook/blocks":"^8.6.14","@vitest/coverage-v8":"^4.0.14","@storybook/react-vite":"^8.6.14","@testing-library/react":"^16.1.0","@storybook/addon-essentials":"^8.6.14","@storybook/addon-interactions":"^8.6.14"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.2.0_1764699221974_0.4068021720545725","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@sentinel-password/react","version":"0.2.1","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@0.2.1","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://github.com/akankov/sentinel-password#readme","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"f54d27356f98e3f8e32444763b3e576daf628855","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-0.2.1.tgz","fileCount":9,"integrity":"sha512-40gbxrcvwbSvRfk4JaXs0NOTUzks57P0ezhgC1QTEieBMVa/wgA7Hk+Gv6o5+hr2erpRgs36n6bSc3xvS+/eAw==","signatures":[{"sig":"MEUCIBSpbfXZnWAKi0YAbdfmETKL/X3zuXk789NJsYR7KnA1AiEArGYUvxUSXmOg2vRdV1FfwT62eOi63YqQekbrL85xnKs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":34048},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-0.2.1.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/e50d105cff09f52beeb0b7a06904480d/sentinel-password-react-0.2.1.tgz","_integrity":"sha512-40gbxrcvwbSvRfk4JaXs0NOTUzks57P0ezhgC1QTEieBMVa/wgA7Hk+Gv6o5+hr2erpRgs36n6bSc3xvS+/eAw==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.6.2","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"@sentinel-password/core":"0.1.3"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^5.4.21","jsdom":"^25.0.1","react":"^18.3.1","vitest":"^4.0.14","react-dom":"^18.3.1","storybook":"^8.6.14","typescript":"^5.9.3","@types/react":"^18.3.18","@storybook/test":"^8.6.14","@storybook/react":"^8.6.14","@types/react-dom":"^18.3.5","@storybook/blocks":"^8.6.14","@vitest/coverage-v8":"^4.0.14","@storybook/react-vite":"^8.6.14","@testing-library/react":"^16.1.0","@storybook/addon-essentials":"^8.6.14","@storybook/addon-interactions":"^8.6.14"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.2.1_1764798326062_0.9547863869529172","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@sentinel-password/react","version":"0.3.0","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@0.3.0","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://github.com/akankov/sentinel-password#readme","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"4334eac6207e94a4486dcf930d48462c57e5d872","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-0.3.0.tgz","fileCount":9,"integrity":"sha512-d6VLr92jhg7tWEoy/h3erPZtINqLYyAKwShWVN0uuNHCNaDu9trDSGJ8JkOv3HhM+rRNbjV9B3OwUQqV9SsgYw==","signatures":[{"sig":"MEYCIQCnUi+4Lu4FWxbNaxnyZ3Jgv1VBFK8Uq/VtSQuYoXesGgIhANZFG6YE+epz9yp6AXhP5Oe4cY51Rvq3QRg24HwD47/3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":34096},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-0.3.0.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/b3ddcd552f85180e510fb62af8bdd4a6/sentinel-password-react-0.3.0.tgz","_integrity":"sha512-d6VLr92jhg7tWEoy/h3erPZtINqLYyAKwShWVN0uuNHCNaDu9trDSGJ8JkOv3HhM+rRNbjV9B3OwUQqV9SsgYw==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.6.2","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@sentinel-password/core":"0.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^7.3.1","jsdom":"^28.1.0","react":"^19.2.4","vitest":"^4.0.18","react-dom":"^19.2.4","storybook":"^8.6.17","typescript":"^5.9.3","@types/react":"^19.2.14","@storybook/test":"^8.6.17","@storybook/react":"^8.6.17","@types/react-dom":"^19.2.3","@storybook/blocks":"^8.6.17","@vitest/coverage-v8":"^4.0.18","@storybook/react-vite":"^8.6.17","@testing-library/react":"^16.3.2","@storybook/addon-essentials":"^8.6.17","@storybook/addon-interactions":"^8.6.17"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.3.0_1771447762586_0.5954480409931997","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@sentinel-password/react","version":"0.5.0","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@0.5.0","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://github.com/akankov/sentinel-password#readme","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"82bde23a5007dd30091e59aeb030dae0ae66955f","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-0.5.0.tgz","fileCount":9,"integrity":"sha512-sd7e57eVgOqygl//M2UXnJQhjpIE7/4AvC8syCPVNd9eoPdpwxLyS4yUXTzP9ZsiEN2w5vvJ7qAHTmuUvYeabg==","signatures":[{"sig":"MEYCIQDG03Q8SuT8ecNqX98nnwu0atxVwcp7kQb8/APARm5rzAIhANRa9IJ81bINdRH/dF47m+vEOShGxOUA/vVPNCkY4TOd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":34094},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-0.5.0.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/26950616492eeea0e67efed87a6fb5a5/sentinel-password-react-0.5.0.tgz","_integrity":"sha512-sd7e57eVgOqygl//M2UXnJQhjpIE7/4AvC8syCPVNd9eoPdpwxLyS4yUXTzP9ZsiEN2w5vvJ7qAHTmuUvYeabg==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.9.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"@sentinel-password/core":"0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^6.4.1","jsdom":"^29.0.0","react":"^19.2.4","vitest":"^4.1.0","react-dom":"^19.2.4","storybook":"^8.6.18","typescript":"^5.9.3","@types/react":"^19.2.14","@storybook/test":"^8.6.18","@storybook/react":"^8.6.18","@types/react-dom":"^19.2.3","@storybook/blocks":"^8.6.18","@vitest/coverage-v8":"^4.1.0","@storybook/react-vite":"^8.6.18","@testing-library/react":"^16.3.2","@storybook/addon-essentials":"^8.6.18","@storybook/addon-interactions":"^8.6.18"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.5.0_1773734992220_0.5865915674491438","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@sentinel-password/react","version":"0.5.1","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@0.5.1","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://github.com/akankov/sentinel-password#readme","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"f1f3853c90986bea065a51c725615271defd4212","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-0.5.1.tgz","fileCount":9,"integrity":"sha512-xkt6rnCSNrBJzHVoF5Uq+YdaDhci/hGDmlpHA62PuGGn/pPcHuKUsv/ax2ai9K16KlW/gQYLypfezBbow16qLA==","signatures":[{"sig":"MEQCIGTByT3vFafX2CBvoSmzBz1//qSwA5NtUlU4glyzIbaYAiACeT6nqas3zY3z127cuesrWQCrjiYeLj/DQ69nClHtEA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@0.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":34094},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-0.5.1.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/9cfa549837b2b5c910300af109e269f6/sentinel-password-react-0.5.1.tgz","_integrity":"sha512-xkt6rnCSNrBJzHVoF5Uq+YdaDhci/hGDmlpHA62PuGGn/pPcHuKUsv/ax2ai9K16KlW/gQYLypfezBbow16qLA==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.9.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"@sentinel-password/core":"0.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^6.4.1","jsdom":"^29.0.1","react":"^19.2.4","vitest":"^4.1.1","react-dom":"^19.2.4","storybook":"^8.6.18","typescript":"^5.9.3","@types/react":"^19.2.14","@storybook/test":"^8.6.18","@storybook/react":"^8.6.18","@types/react-dom":"^19.2.3","@storybook/blocks":"^8.6.18","@vitest/coverage-v8":"^4.1.1","@storybook/react-vite":"^8.6.18","@testing-library/react":"^16.3.2","@storybook/addon-essentials":"^8.6.18","@storybook/addon-interactions":"^8.6.18"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.5.1_1774459531964_0.37544820629608044","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"@sentinel-password/react","version":"0.5.2","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@0.5.2","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://github.com/akankov/sentinel-password#readme","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"918e710e9887ad5ca0f51c4650ddc18119598702","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-0.5.2.tgz","fileCount":9,"integrity":"sha512-0czBZNx8GuUI6qREUfItnN71Yk8MdPs9h7vigopk2wzEW5mY/3rRDmJiq2ygOrK51WkQmeJ/QO61TFnSnwYHhA==","signatures":[{"sig":"MEYCIQD9IPaNUFylIBPL2BkQ4z8xpchXBLVIAy7K4fnrLjuK+wIhAKmSsv1Q4VGCkLiRUD8YZ9RS0uUV9PF8vdtpNw48++r2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@0.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":33930},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-0.5.2.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/8cdb91f80c6b4ccf0f3dcc3e01e985dc/sentinel-password-react-0.5.2.tgz","_integrity":"sha512-0czBZNx8GuUI6qREUfItnN71Yk8MdPs9h7vigopk2wzEW5mY/3rRDmJiq2ygOrK51WkQmeJ/QO61TFnSnwYHhA==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.9.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"@sentinel-password/core":"0.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^6.4.1","jsdom":"^29.0.1","react":"^19.2.4","vitest":"^4.1.1","react-dom":"^19.2.4","storybook":"^10.3.3","typescript":"^5.9.3","@types/react":"^19.2.14","@storybook/react":"^10.3.3","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.1","@storybook/react-vite":"^10.3.3","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.5.2_1774511046971_0.0215828451745097","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"@sentinel-password/react","version":"0.5.3","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@0.5.3","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://github.com/akankov/sentinel-password#readme","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"bb32ce64a8285d25f718e7455da832d89d7418fb","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-0.5.3.tgz","fileCount":9,"integrity":"sha512-1JGFQ7zCe9zPV3BKi1r32k2AAdUfN8LTX11lxRNEC1jdjD1qvO5HuVr3akoNEpAdC92k8Cm7mxmk6gh2kjDdKw==","signatures":[{"sig":"MEQCIDYfSKyCY37ufaqIjqda6Z+bM3VHaAuhDFmQuer0zdplAiBVzKyiYWwehI9B7hjfKTDJhexsao4l8EqqVEwBgSDysg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@0.5.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":33930},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-0.5.3.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/e8db76a0e82cef364bf19fdc5d9e4994/sentinel-password-react-0.5.3.tgz","_integrity":"sha512-1JGFQ7zCe9zPV3BKi1r32k2AAdUfN8LTX11lxRNEC1jdjD1qvO5HuVr3akoNEpAdC92k8Cm7mxmk6gh2kjDdKw==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.9.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"@sentinel-password/core":"0.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.3","jsdom":"^29.0.1","react":"^19.2.4","vitest":"^4.1.1","react-dom":"^19.2.4","storybook":"^10.3.3","typescript":"^5.9.3","@types/react":"^19.2.14","@storybook/react":"^10.3.3","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.1","@storybook/react-vite":"^10.3.3","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.5.3_1774511994429_0.258244957727525","host":"s3://npm-registry-packages-npm-production"}},"0.5.4":{"name":"@sentinel-password/react","version":"0.5.4","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@0.5.4","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://github.com/akankov/sentinel-password#readme","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"f727908b7d3c9667d02e7db92e041ed60e0f58db","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-0.5.4.tgz","fileCount":9,"integrity":"sha512-M4jOpQSLbEEXqAsgoxLXZIS2/8ob3S6lLY1Ta8WZI/Ex9TBMeYLKr0pyEREjMxuCa1xLkB6I08G7PhKkiJEuzw==","signatures":[{"sig":"MEQCIBtdw+Aw/w7ALZEbbhotGTgQk3veFKhlXzl8oG67UHOtAiBHTcxjRr5BY5IKs4yxxrxyaUfXGka4ZDaIaLu/M39jLQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@0.5.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":33930},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-0.5.4.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/82f54f469040af46d4e5971829449dbf/sentinel-password-react-0.5.4.tgz","_integrity":"sha512-M4jOpQSLbEEXqAsgoxLXZIS2/8ob3S6lLY1Ta8WZI/Ex9TBMeYLKr0pyEREjMxuCa1xLkB6I08G7PhKkiJEuzw==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.9.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"@sentinel-password/core":"0.4.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.3","jsdom":"^29.0.1","react":"^19.2.4","vitest":"^4.1.2","react-dom":"^19.2.4","storybook":"^10.3.3","typescript":"^5.9.3","@types/react":"^19.2.14","@storybook/react":"^10.3.3","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.2","@storybook/react-vite":"^10.3.3","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.5.4_1774887336531_0.6466888509651978","host":"s3://npm-registry-packages-npm-production"}},"0.5.5":{"name":"@sentinel-password/react","version":"0.5.5","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@0.5.5","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"a12c209fc7d50be3db4cdd2ec6545fbc8b2675c7","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-0.5.5.tgz","fileCount":9,"integrity":"sha512-oatetIjU1saiPg7mMA2Y9ZSPhEmNZ/Q0jYSjZICErTCjwUcWtlBLheozgYpfGptKgiqxzd/aAnvSukEViLCHjw==","signatures":[{"sig":"MEQCIHt3QTxPRFlbyzCLyVHG8oFK1nGLpkTyHWIvzrkG+ColAiBZKJAvGbnCSiC8HZJ1EiRsdmaNfKJWDM+pvQbqbiwnMQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@0.5.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":33923},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-0.5.5.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/c09f9de96c5ff4b0369e8cd03b67c219/sentinel-password-react-0.5.5.tgz","_integrity":"sha512-oatetIjU1saiPg7mMA2Y9ZSPhEmNZ/Q0jYSjZICErTCjwUcWtlBLheozgYpfGptKgiqxzd/aAnvSukEViLCHjw==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.9.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"@sentinel-password/core":"0.4.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.3","jsdom":"^29.0.1","react":"^19.2.4","vitest":"^4.1.2","react-dom":"^19.2.4","storybook":"^10.3.3","typescript":"^5.9.3","@types/react":"^19.2.14","@storybook/react":"^10.3.3","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.2","@storybook/react-vite":"^10.3.3","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.5.5_1774893108199_0.48049639279777834","host":"s3://npm-registry-packages-npm-production"}},"0.5.6":{"name":"@sentinel-password/react","version":"0.5.6","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@0.5.6","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"7128683bed6437775081747b2c86f28037ad5f61","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-0.5.6.tgz","fileCount":9,"integrity":"sha512-pHxX+suhZlGMj19rJqm3mn3gj221tctUppnIWamRDEOeBA+tuUCUjsDMIoWfC3xsS3NPMsq4ANqHIHaJRHEn1g==","signatures":[{"sig":"MEQCIAhFd+/QeH8mZS35d0Q5FCix2nBqh0okMXjKNgYO0vC1AiAC2fSBShD7Cerlcfm2Mbb1ZO6Z2RaeiEWYd1x8TsHMdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@0.5.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":33923},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-0.5.6.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/fc8518894e348bd1db3dc8476ab8326c/sentinel-password-react-0.5.6.tgz","_integrity":"sha512-pHxX+suhZlGMj19rJqm3mn3gj221tctUppnIWamRDEOeBA+tuUCUjsDMIoWfC3xsS3NPMsq4ANqHIHaJRHEn1g==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.9.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"@sentinel-password/core":"0.4.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.3","jsdom":"^29.0.1","react":"^19.2.4","vitest":"^4.1.2","react-dom":"^19.2.4","storybook":"^10.3.3","typescript":"^6.0.2","@types/react":"^19.2.14","@storybook/react":"^10.3.3","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.2","@storybook/react-vite":"^10.3.3","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.5.6_1774940434049_0.5826326024345494","host":"s3://npm-registry-packages-npm-production"}},"0.5.7":{"name":"@sentinel-password/react","version":"0.5.7","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@0.5.7","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"48f2809ca71184bb1431835c99156df601bf1a89","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-0.5.7.tgz","fileCount":9,"integrity":"sha512-KUwS7F74Ur+h83iK6nPqoeazRRLXj597Og+epG8OpMGviAHyqdaGdSiMa16pvY1TDUdtbucYTn091KhdHP8vpQ==","signatures":[{"sig":"MEUCIQD0nAG9wgjnBcLuFtUu0KUjCbhE6E6/kNaL6aBXGISyUgIgdooHv5pED2yQXxtt11f255ThnydDAJWRuZKv70DFKMU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@0.5.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":36546},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-0.5.7.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/8bb633f56065ebcd90ee7c2249ef8c56/sentinel-password-react-0.5.7.tgz","_integrity":"sha512-KUwS7F74Ur+h83iK6nPqoeazRRLXj597Og+epG8OpMGviAHyqdaGdSiMa16pvY1TDUdtbucYTn091KhdHP8vpQ==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.9.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"@sentinel-password/core":"0.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.3","jsdom":"^29.0.1","react":"^19.2.4","vitest":"^4.1.2","react-dom":"^19.2.4","storybook":"^10.3.3","typescript":"^6.0.2","@types/react":"^19.2.14","@storybook/react":"^10.3.3","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.2","@storybook/react-vite":"^10.3.3","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.5.7_1774971250451_0.0037704259470991985","host":"s3://npm-registry-packages-npm-production"}},"0.5.8":{"name":"@sentinel-password/react","version":"0.5.8","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@0.5.8","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"9dda7c97a2f447ea23c66cc740f8f7e5e1440438","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-0.5.8.tgz","fileCount":9,"integrity":"sha512-ZqpI83h8KY5qV1CEdmOPDJgNH0rH8cttCoNQ1LNDWNqKlr9HBUlFhW/U5MLip+XEtG8SI1b6yakJe1DvlOLTeg==","signatures":[{"sig":"MEYCIQCUW41PiSyVZRsjmFHILha4cotAFEYUqq5o2cNUkLbp6gIhAJO2qLHQd8ajUdRHV9p7lRLOtzgbWIGpNNuPgaE7D8ZZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@0.5.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":36546},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-0.5.8.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/b3fb83ebf989bee4da44cd1a3f5a8736/sentinel-password-react-0.5.8.tgz","_integrity":"sha512-ZqpI83h8KY5qV1CEdmOPDJgNH0rH8cttCoNQ1LNDWNqKlr9HBUlFhW/U5MLip+XEtG8SI1b6yakJe1DvlOLTeg==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.9.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"@sentinel-password/core":"0.4.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.3","jsdom":"^29.0.1","react":"^19.2.4","vitest":"^4.1.2","react-dom":"^19.2.4","storybook":"^10.3.3","typescript":"^6.0.2","@types/react":"^19.2.14","@storybook/react":"^10.3.3","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.2","@storybook/react-vite":"^10.3.3","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.5.8_1774975008870_0.5191781619855795","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@sentinel-password/react","version":"1.0.0","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.0.0","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"7f7c926b0ed005a7e3bb49cbf4e2ccafc7b7a986","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.0.0.tgz","fileCount":9,"integrity":"sha512-gt3MQpaNb3gk/ckcIUBMbpjEeZCdXcrXFpNMZzqxi/k27BiMoFCAYIFb9B0FFfaoTLZg3nHV+KR/GXrQxuICEw==","signatures":[{"sig":"MEYCIQDVJvHCL6ZACV4cGA9QnZ7lMhK1HuchgnEbvle8hQc6YgIhAN4vBBr9U0Pwz6xitHWBpuU/0dxyD4f8kiqTBicXOU24","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":36546},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.0.0.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/439305fddb3ec04f5a9452cd588e4a51/sentinel-password-react-1.0.0.tgz","_integrity":"sha512-gt3MQpaNb3gk/ckcIUBMbpjEeZCdXcrXFpNMZzqxi/k27BiMoFCAYIFb9B0FFfaoTLZg3nHV+KR/GXrQxuICEw==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.9.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.0","dependencies":{"@sentinel-password/core":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.3","jsdom":"^29.0.1","react":"^19.2.4","vitest":"^4.1.2","react-dom":"^19.2.4","storybook":"^10.3.3","typescript":"^6.0.2","@types/react":"^19.2.14","@storybook/react":"^10.3.3","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.2","@storybook/react-vite":"^10.3.3","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.0.0_1775030821141_0.19655014939436866","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@sentinel-password/react","version":"1.1.0","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.1.0","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"2e111bf9af5c20448b358b443b3831893a1d4434","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.1.0.tgz","fileCount":9,"integrity":"sha512-OI+4r5YdaZO+aux+FoL6WxNtOokPHCLWomYTEq/Tgfy/Puq0bgQY0yIN6VzQYDdfGticZSHUxuoGhrwxSexR/A==","signatures":[{"sig":"MEQCIE++Cj/+HbiyIPnw9I3Oz7qYwf570BkIn3k/2fnWKthzAiAOBmuwlOjC64Hx3FDzNy22MsRhLUGm4y+6pTPIAbwE8Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":36546},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.1.0.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/54c15a67cc71eb3a1df68e240fe0c086/sentinel-password-react-1.1.0.tgz","_integrity":"sha512-OI+4r5YdaZO+aux+FoL6WxNtOokPHCLWomYTEq/Tgfy/Puq0bgQY0yIN6VzQYDdfGticZSHUxuoGhrwxSexR/A==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.11.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"@sentinel-password/core":"1.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.7","jsdom":"^29.0.1","react":"^19.2.4","vitest":"^4.1.2","react-dom":"^19.2.4","storybook":"^10.3.4","typescript":"^6.0.2","@types/react":"^19.2.14","@storybook/react":"^10.3.4","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.2","@storybook/react-vite":"^10.3.4","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.1.0_1776859903132_0.46998524805116615","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@sentinel-password/react","version":"1.1.1","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.1.1","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"625e7147db589cf78997cf867d47cb4eea5e2a1f","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.1.1.tgz","fileCount":9,"integrity":"sha512-ImyzIXbfhNn/0hfViVJ3Is8reqAFWGFLe9yG9kAm6GDPheuSi2+PR3AHYerY2NW3lJXf877E4NAxT3HCu5HKPw==","signatures":[{"sig":"MEUCIQDKFNRXSeQwA8CbackH/h6QP68RR6VddWiBhAArzVuXmgIgFGVxQcYFWlENjzeGEcEVD8wlki/i4eaxbnqRAvFi8ao=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":36546},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.1.1.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/eb0f3c95514a5eaf9a2f6308257e07be/sentinel-password-react-1.1.1.tgz","_integrity":"sha512-ImyzIXbfhNn/0hfViVJ3Is8reqAFWGFLe9yG9kAm6GDPheuSi2+PR3AHYerY2NW3lJXf877E4NAxT3HCu5HKPw==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.11.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"@sentinel-password/core":"1.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.9","jsdom":"^29.0.2","react":"^19.2.5","vitest":"^4.1.5","react-dom":"^19.2.5","storybook":"^10.3.5","typescript":"^6.0.3","@types/react":"^19.2.14","@storybook/react":"^10.3.5","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.5","@storybook/react-vite":"^10.3.5","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.1.1_1776866035354_0.32385785155431357","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@sentinel-password/react","version":"1.1.2","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.1.2","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"7fc61877cfd048f6b16749d6cd41292cc137af08","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.1.2.tgz","fileCount":9,"integrity":"sha512-geMhD4Wr5KfUFVrSi5g1CAQ2Re5L6qeUFb8zKKXyMIL5VVIECSsaZxb20VimSWro7VpsGpiy60q+JCu1VPXCMg==","signatures":[{"sig":"MEYCIQCU05IHYMpLrb/A4kcPPh5715LD/PaXt2yZzdptoA2uowIhAIm6/wEFuQQQkd5KFiF4tdAxP7i05rHr3IUv278L6+A2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":36547},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.1.2.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/0579674f5fa75490c8cfd1f45642b10f/sentinel-password-react-1.1.2.tgz","_integrity":"sha512-geMhD4Wr5KfUFVrSi5g1CAQ2Re5L6qeUFb8zKKXyMIL5VVIECSsaZxb20VimSWro7VpsGpiy60q+JCu1VPXCMg==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.11.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"@sentinel-password/core":"1.1.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.10","jsdom":"^29.1.1","react":"^19.2.5","vitest":"^4.1.5","react-dom":"^19.2.5","storybook":"^10.3.6","typescript":"^6.0.3","@types/react":"^19.2.14","@storybook/react":"^10.3.6","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.5","@storybook/react-vite":"^10.3.6","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.1.2_1777892574234_0.36616168325599374","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@sentinel-password/react","version":"1.1.3","keywords":["password","validation","react","hooks","components","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.1.3","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"5f424986e2dd0df34b958280d09be221c80fff85","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.1.3.tgz","fileCount":9,"integrity":"sha512-TXqJ+EA/XamDeMipuw97YxCVdwQK8dQg25HGIAnvGIRryoEOTobG6iUarQrU8vAE2EKRwOGPSb5jZYuFZm/R+w==","signatures":[{"sig":"MEUCIF0tpN8Bk0tgeWyyi3+3m1aZZ03qwhR1xbBSz6fp2mOIAiEA723yBEsMm7tXkzfw+8FQPjq1sEcShfOq1YOB1Ebno3w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":36547},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.1.3.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/0012586596773df840971d66a863bc04/sentinel-password-react-1.1.3.tgz","_integrity":"sha512-TXqJ+EA/XamDeMipuw97YxCVdwQK8dQg25HGIAnvGIRryoEOTobG6iUarQrU8vAE2EKRwOGPSb5jZYuFZm/R+w==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.11.0","description":"React hooks and components for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"@sentinel-password/core":"1.1.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.10","jsdom":"^29.1.1","react":"^19.2.5","vitest":"^4.1.5","react-dom":"^19.2.5","storybook":"^10.3.6","typescript":"^6.0.3","@types/react":"^19.2.14","@storybook/react":"^10.3.6","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.5","@storybook/react-vite":"^10.3.6","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.1.3_1777994731599_0.9816235961459976","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@sentinel-password/react","version":"1.2.0","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.2.0","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"e186f3193c4685729ca85665a27d2c2eb95b3366","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.2.0.tgz","fileCount":9,"integrity":"sha512-1M+eFqOkBSoBS6mbJE8bUkIGk78+DgeCoTeAI0o0t0Y93dEUcQwpHBFKuhVHP0GreID2jS+E8eqUNd9M96KjUg==","signatures":[{"sig":"MEYCIQDa9y/VLWUwqK8GRRXpJG6qNDJRnIG9VqPPU93eE0kwNQIhALJXw9E4TL0uYTtVCwptvS27Esizy6cqvYLtolzTyUjz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":42809},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.2.0.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/df442c68ba0f6dc407503d22e871d9bb/sentinel-password-react-1.2.0.tgz","_integrity":"sha512-1M+eFqOkBSoBS6mbJE8bUkIGk78+DgeCoTeAI0o0t0Y93dEUcQwpHBFKuhVHP0GreID2jS+E8eqUNd9M96KjUg==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.11.0","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"@sentinel-password/core":"1.1.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.12","jsdom":"^29.1.1","react":"^19.2.6","vitest":"^4.1.5","react-dom":"^19.2.6","storybook":"^10.3.6","typescript":"^6.0.3","@types/react":"^19.2.14","@storybook/react":"^10.3.6","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.5","@storybook/react-vite":"^10.3.6","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.2.0_1778512609950_0.48610061593823617","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@sentinel-password/react","version":"1.3.0","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.3.0","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"d3661a1a28c239ebb1de4a83698273230e44300c","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.3.0.tgz","fileCount":9,"integrity":"sha512-X+dfvXR/OaBkf1+r908KMr5oCgwGCY099WiFjUuuXLhYlR20FXGrc7iyW6etWqAX5xBRuGB2SjJrjl3rTHcKTw==","signatures":[{"sig":"MEUCIEmS3ByJ7cXDt/KGI9MiXAPdRzgR280X31TllNvtjDqLAiEAgdoxSFaV7SsQyz8TVXR8i5jXoK4opKU064P7SjCchjc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43131},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.3.0.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/16b9e53a9bb5ef9655c276a8aa545aa2/sentinel-password-react-1.3.0.tgz","_integrity":"sha512-X+dfvXR/OaBkf1+r908KMr5oCgwGCY099WiFjUuuXLhYlR20FXGrc7iyW6etWqAX5xBRuGB2SjJrjl3rTHcKTw==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.11.0","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"@sentinel-password/core":"1.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.12","jsdom":"^29.1.1","react":"^19.2.6","vitest":"^4.1.5","react-dom":"^19.2.6","storybook":"^10.3.6","typescript":"^6.0.3","@types/react":"^19.2.14","@storybook/react":"^10.3.6","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.5","@storybook/react-vite":"^10.3.6","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.3.0_1778520804085_0.6432618240435142","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@sentinel-password/react","version":"1.3.1","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.3.1","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"a450705a9ad19b915900b441a33717936497b6b3","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.3.1.tgz","fileCount":9,"integrity":"sha512-rTo0gRahKy8C4zszsE5BZnsxaKKWXmwMhQtDpuJW9AJrdeiL5EXz8fy/p4LK8TALPQd73IhL2osbXRlhjl1yxw==","signatures":[{"sig":"MEUCIQD0pmkLn4ywGOYu566RxEBBV6AacbY8d6Luy3mvTko3DAIgOdYlvWqv7iDqXlkSNBJWFUOMH83uEkHLZg0jrkC77z0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43131},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.3.1.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/8f1129e739332655c83f9b76235d3da1/sentinel-password-react-1.3.1.tgz","_integrity":"sha512-rTo0gRahKy8C4zszsE5BZnsxaKKWXmwMhQtDpuJW9AJrdeiL5EXz8fy/p4LK8TALPQd73IhL2osbXRlhjl1yxw==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.11.0","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.14.1","dependencies":{"@sentinel-password/core":"1.2.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.12","jsdom":"^29.1.1","react":"^19.2.6","vitest":"^4.1.5","react-dom":"^19.2.6","storybook":"^10.3.6","typescript":"^6.0.3","@types/react":"^19.2.14","@storybook/react":"^10.3.6","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.5","@storybook/react-vite":"^10.3.6","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.3.1_1778776666619_0.830649410833368","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@sentinel-password/react","version":"1.3.2","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.3.2","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"50d17cb2ff855d7855d00dfdd1a4af30d9028fb0","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.3.2.tgz","fileCount":9,"integrity":"sha512-fHlGuZ9oxbbvaq6NCffelWffwqerElTzkBqbjA5IXkggGMnGNf+CQ8t3q9X8mVe32G1NuDeNYbBNOpgdDKU75A==","signatures":[{"sig":"MEYCIQDy1EbcxF01w4SXbGwQ5Mu8ydyYu+h3/4+NXBi26+Z2nQIhAL3NIAZep6oo9mHRk1AID0gR5CoWdhdTuabZYduU7N1z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43131},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.3.2.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/7260df4898e36274a092dcb2c105a554/sentinel-password-react-1.3.2.tgz","_integrity":"sha512-fHlGuZ9oxbbvaq6NCffelWffwqerElTzkBqbjA5IXkggGMnGNf+CQ8t3q9X8mVe32G1NuDeNYbBNOpgdDKU75A==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.12.1","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@sentinel-password/core":"1.2.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.12","jsdom":"^29.1.1","react":"^19.2.6","vitest":"^4.1.5","react-dom":"^19.2.6","storybook":"^10.3.6","typescript":"^6.0.3","@types/react":"^19.2.14","@storybook/react":"^10.3.6","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.5","@storybook/react-vite":"^10.3.6","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.3.2_1778779446819_0.5223241315510747","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@sentinel-password/react","version":"1.3.3","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.3.3","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"c65add59f2cb8c64b43edb730c0b0a26aca1cbb9","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.3.3.tgz","fileCount":9,"integrity":"sha512-Q8e+8YE0RqvrM95eEkpY/k7gfsuFKbddbMcJaQfRl24Wk8w6opFxZM9xQetHyC2j/XCIpJ/9OqPivJudprwZKw==","signatures":[{"sig":"MEUCIQDF+dIZ1g+feu2eiRRkATOHqVSb2/GXSmziq5cQJAwyfwIgbkOEjna0GKb69C+1lTfoa7fEBY47uYV93vHo83e2afY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.3.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43131},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.3.3.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/f1a0596cb40a481d792ac2052d4a0dba/sentinel-password-react-1.3.3.tgz","_integrity":"sha512-Q8e+8YE0RqvrM95eEkpY/k7gfsuFKbddbMcJaQfRl24Wk8w6opFxZM9xQetHyC2j/XCIpJ/9OqPivJudprwZKw==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.12.1","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","dependencies":{"@sentinel-password/core":"1.2.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.13","jsdom":"^29.1.1","react":"^19.2.6","vitest":"^4.1.6","react-dom":"^19.2.6","storybook":"^10.4.0","typescript":"^6.0.3","@types/react":"^19.2.14","@storybook/react":"^10.4.0","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.6","@storybook/react-vite":"^10.4.0","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.3.3_1779118657855_0.3322836120814139","host":"s3://npm-registry-packages-npm-production"}},"1.3.4":{"name":"@sentinel-password/react","version":"1.3.4","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.3.4","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"7b90b1e92ded35b041dfacbfa99726c7256de367","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.3.4.tgz","fileCount":9,"integrity":"sha512-H9aO6yFsHBkFTTIjAe5zVzj5sOd04eJZMyb2OgbucYLrOSss9tQiNyv8dMNTZUXUjc2u3F6jUt7T+BMTFntAcQ==","signatures":[{"sig":"MEYCIQDDbDQrVdZ5+zYDEzc63m3m3wYmIZXZdddT3cANIutdtQIhAPHjVM9EoTXlNEG2ECz6+mdX8LGf3dHs3nJW5klkvu1p","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.3.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43131},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.3.4.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/9ed31e2a3065fa7961ee778d64f2be73/sentinel-password-react-1.3.4.tgz","_integrity":"sha512-H9aO6yFsHBkFTTIjAe5zVzj5sOd04eJZMyb2OgbucYLrOSss9tQiNyv8dMNTZUXUjc2u3F6jUt7T+BMTFntAcQ==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.13.0","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","dependencies":{"@sentinel-password/core":"1.2.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.14","jsdom":"^29.1.1","react":"^19.2.6","vitest":"^4.1.7","react-dom":"^19.2.6","storybook":"^10.4.1","typescript":"^6.0.3","@types/react":"^19.2.15","@storybook/react":"^10.4.1","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.7","@storybook/react-vite":"^10.4.1","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.3.4_1780248956077_0.6101829514023154","host":"s3://npm-registry-packages-npm-production"}},"1.3.5":{"name":"@sentinel-password/react","version":"1.3.5","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.3.5","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"b85a134aa5b435fc1ff4f1e821dc4db004def726","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.3.5.tgz","fileCount":9,"integrity":"sha512-zuhSb9qQwuHsfd/5NmBfUd27ZJfDjLjOaQs5mRajVhbf+MDbYMb5Wg927KzVrOskx2+93hruGpJuT+rIcZAcdw==","signatures":[{"sig":"MEYCIQD97xHfdm+o517BRRMDMOfoN6Fn+6QjxWzV5CEkE2EmcAIhAMOFLNZLtdwUIWh4u3JsZJaGB0/WM4Q6Xp/jboh0+j3O","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.3.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43131},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.3.5.tgz","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"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/f11d8e22a0b8020a035bdc6fb4f6f100/sentinel-password-react-1.3.5.tgz","_integrity":"sha512-zuhSb9qQwuHsfd/5NmBfUd27ZJfDjLjOaQs5mRajVhbf+MDbYMb5Wg927KzVrOskx2+93hruGpJuT+rIcZAcdw==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.13.0","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","dependencies":{"@sentinel-password/core":"1.2.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.16","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.8","react-dom":"^19.2.7","storybook":"^10.4.2","typescript":"^6.0.3","@types/react":"^19.2.16","@storybook/react":"^10.4.2","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.8","@storybook/react-vite":"^10.4.2","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.3.5_1780653377733_0.8898380125433225","host":"s3://npm-registry-packages-npm-production"}},"1.3.6":{"name":"@sentinel-password/react","version":"1.3.6","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.3.6","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"b6209f7c725bdec050b1099b9077759667b96381","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.3.6.tgz","fileCount":9,"integrity":"sha512-tphnrmedX1mZpV5WHwAlEdkJ1kcrl1ngLQlrKwt0jXPW9Jb9ZqNzJtqCVpVhqpj5eEwr9hjxbuGixWnhP+qVlQ==","signatures":[{"sig":"MEYCIQD7rAUgvh+a2zAi4869bgEshAW7iqztnyBtXr2eDiBMggIhAK2VcG4nTdSEglix4229vGBF1CBA7VXq1M5NCwhU9OaH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.3.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43248},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.3.6.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/04b5422852ba88b6f0d1c97826804903/sentinel-password-react-1.3.6.tgz","_integrity":"sha512-tphnrmedX1mZpV5WHwAlEdkJ1kcrl1ngLQlrKwt0jXPW9Jb9ZqNzJtqCVpVhqpj5eEwr9hjxbuGixWnhP+qVlQ==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.13.0","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","dependencies":{"@sentinel-password/core":"1.3.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.16","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.8","react-dom":"^19.2.7","storybook":"^10.4.2","typescript":"^6.0.3","@types/react":"^19.2.16","@storybook/react":"^10.4.2","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.8","@storybook/react-vite":"^10.4.2","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.3.6_1781019162433_0.2534522000356001","host":"s3://npm-registry-packages-npm-production"}},"1.3.7":{"name":"@sentinel-password/react","version":"1.3.7","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.3.7","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"0025d85cc21a36195858762b437842eb8409cadb","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.3.7.tgz","fileCount":9,"integrity":"sha512-Jh+5w095qGG4PIt8CuIZCWtPx6tE2RqCsf+yDsqR1uzTvnzEmLNq/0l1AeEugmNtRQv2TKm8AfDc9OtwCpi51g==","signatures":[{"sig":"MEYCIQCaFv/hG+O5ek0dEAqzHNvmpS16BJTCj1JttWsffd0q3QIhALzTctVhiIYh8sn8XBEzhJ3JhvKiIHGhbwvm8CauZMB+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.3.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43248},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.3.7.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/cba98a8c8aefaf73fdb94366d6936333/sentinel-password-react-1.3.7.tgz","_integrity":"sha512-Jh+5w095qGG4PIt8CuIZCWtPx6tE2RqCsf+yDsqR1uzTvnzEmLNq/0l1AeEugmNtRQv2TKm8AfDc9OtwCpi51g==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.13.0","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","dependencies":{"@sentinel-password/core":"1.3.1"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.16","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.8","react-dom":"^19.2.7","storybook":"^10.4.4","typescript":"^6.0.3","@types/react":"^19.2.17","@storybook/react":"^10.4.4","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.8","@storybook/react-vite":"^10.4.4","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.3.7_1781293297685_0.9412272182158079","host":"s3://npm-registry-packages-npm-production"}},"1.3.8":{"name":"@sentinel-password/react","version":"1.3.8","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.3.8","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"a81b4030152e282c192b45378c4f22ce7e671e2e","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.3.8.tgz","fileCount":9,"integrity":"sha512-zOgx8sbagwVoDAwmzNyBtt/JQ/URzZMDt2k0A3S3dlvnwlZYdllBBUWjWs4iudSEKLYyKAWWQQy2ZpKH2iDlCg==","signatures":[{"sig":"MEYCIQCreVxdfhA43IEzFvQqQs+t/G5rDbqruyH+wZ4W+ZnAAAIhAP8ZwFZK7O4RX2IXIInagcHfKzWNzx17vRkbH28Wf/k2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.3.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43248},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.3.8.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/c016a15632a8979ab9ce4d2454d470d2/sentinel-password-react-1.3.8.tgz","_integrity":"sha512-zOgx8sbagwVoDAwmzNyBtt/JQ/URzZMDt2k0A3S3dlvnwlZYdllBBUWjWs4iudSEKLYyKAWWQQy2ZpKH2iDlCg==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.13.0","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","dependencies":{"@sentinel-password/core":"1.3.2"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.16","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.8","react-dom":"^19.2.7","storybook":"^10.4.4","typescript":"^6.0.3","@types/react":"^19.2.17","@storybook/react":"^10.4.4","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.8","@storybook/react-vite":"^10.4.4","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.3.8_1781439965473_0.34601020976136065","host":"s3://npm-registry-packages-npm-production"}},"1.3.9":{"name":"@sentinel-password/react","version":"1.3.9","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.3.9","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"1fd454d6fd1e3012b1451834389f732440feaf26","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.3.9.tgz","fileCount":9,"integrity":"sha512-uGU4YduUP2pDTNynw1qIq4Ux6a08hi4Tp8Rr5lggLstT4s7+8z22R+NLHvQzGPmxysS9MxIVLqWPk4VO71o9Qw==","signatures":[{"sig":"MEQCIE7y/xmNGJnqUCstaI+LXfAsJiaOCqjb2UUTLQAI/GMBAiB4bstm879wFlKo+Cx+9VPOkxaglROQi7OlPAx6181bnA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.3.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":43248},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.3.9.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/5bceaa25e2c18b8b0521a4bb0b4fe9db/sentinel-password-react-1.3.9.tgz","_integrity":"sha512-uGU4YduUP2pDTNynw1qIq4Ux6a08hi4Tp8Rr5lggLstT4s7+8z22R+NLHvQzGPmxysS9MxIVLqWPk4VO71o9Qw==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.13.0","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.16.0","dependencies":{"@sentinel-password/core":"1.3.3"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.0.16","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","react-dom":"^19.2.7","storybook":"^10.4.6","typescript":"^6.0.3","@types/react":"^19.2.17","@storybook/react":"^10.4.6","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.9","@storybook/react-vite":"^10.4.6","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.3.9_1781852356344_0.09300468285069496","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@sentinel-password/react","version":"1.4.0","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","_id":"@sentinel-password/react@1.4.0","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"dist":{"shasum":"f993393b9b81b4f2874726b9465641baa4cf2096","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-1.4.0.tgz","fileCount":9,"integrity":"sha512-QLU0x0LKuIeU2HvGQ2obrRF60dcJQNH3XT9OwDCO9W50GJFJ3bS6v4narAmVefOSAG+K4voAr17wLU10JFSMaA==","signatures":[{"sig":"MEUCIGR4GV4L4spqROp7GvqboJea2dVzgurUEfN51xRi99BMAiEAtbnR8QjDI+UxVJQsSPWC84krxT+K+JmTv2BAXLKAVqE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":83911},"main":"./dist/index.cjs","type":"module","_from":"file:sentinel-password-react-1.4.0.tgz","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"scripts":{"lint":"eslint src","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","lint:fix":"eslint src --fix","storybook":"storybook dev -p 6006","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","build-storybook":"storybook build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"_resolved":"/tmp/825361650f42ce27274f300652235542/sentinel-password-react-1.4.0.tgz","_integrity":"sha512-QLU0x0LKuIeU2HvGQ2obrRF60dcJQNH3XT9OwDCO9W50GJFJ3bS6v4narAmVefOSAG+K4voAr17wLU10JFSMaA==","repository":{"url":"git+https://github.com/akankov/sentinel-password.git","type":"git","directory":"packages/react"},"_npmVersion":"11.16.0","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"@sentinel-password/core":"1.4.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vite":"^8.1.3","jsdom":"^29.1.1","react":"^19.2.7","vitest":"^4.1.9","react-dom":"^19.2.7","storybook":"^10.4.6","typescript":"^6.0.3","@types/react":"^19.2.17","@storybook/react":"^10.4.6","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.9","@storybook/react-vite":"^10.4.6","@testing-library/react":"^16.3.2"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.4.0_1783343083613_0.9502485805015182","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@sentinel-password/react","version":"2.0.0","type":"module","description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"publishConfig":{"access":"public","provenance":true},"sideEffects":false,"keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","engines":{"node":">=22"},"repository":{"type":"git","url":"git+https://github.com/akankov/sentinel-password.git","directory":"packages/react"},"homepage":"https://akankov.github.io/sentinel-password/","bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"peerDependencies":{"react":"^18.0.0 || ^19.0.0"},"dependencies":{"@sentinel-password/core":"2.0.0"},"devDependencies":{"@storybook/react":"^10.5.3","@storybook/react-vite":"^10.5.3","@testing-library/react":"^16.3.2","@types/react":"^19.2.17","@types/react-dom":"^19.2.3","@vitest/coverage-v8":"^4.1.10","jsdom":"^29.1.1","react":"^19.2.8","react-dom":"^19.2.8","storybook":"^10.5.3","tsup":"^8.5.1","typescript":"^6.0.3","vite":"^8.1.5","vitest":"^4.1.10"},"scripts":{"build":"tsup","test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","lint":"eslint src","lint:fix":"eslint src --fix","typecheck":"tsc --noEmit","clean":"rm -rf dist coverage","storybook":"storybook dev -p 6006","build-storybook":"storybook build"},"_id":"@sentinel-password/react@2.0.0","_integrity":"sha512-CDOshW8+4fRZoVcdKDVlqbn1K63hIp9n16CD17IFfr+akUF/uiJCjzowLCi/f8Efp3orEWFFBkoZYsl//aw72Q==","_resolved":"/tmp/f02f5e8e8eadb4db8ba23dc072aff438/sentinel-password-react-2.0.0.tgz","_from":"file:sentinel-password-react-2.0.0.tgz","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-CDOshW8+4fRZoVcdKDVlqbn1K63hIp9n16CD17IFfr+akUF/uiJCjzowLCi/f8Efp3orEWFFBkoZYsl//aw72Q==","shasum":"daf677c141dd1e3cd5f88381c5e6f551dc480967","tarball":"https://registry.npmjs.org/@sentinel-password/react/-/react-2.0.0.tgz","fileCount":9,"unpackedSize":83913,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sentinel-password%2freact@2.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFSBp+VMY8DWzoSJROFg9CiDaXMndqv0fBgJAUTQK7nlAiAi1SAOA5/f5uQrlKZvyKuBWAemu+cOxguJhdSPUt6Chg=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:043c025b-1a94-4b28-9f7d-22aaeecad849"}},"directories":{},"maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/react_2.0.0_1785259500663_0.42600265200188603"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-02T18:13:41.899Z","modified":"2026-07-28T17:25:01.150Z","0.2.0":"2025-12-02T18:13:42.166Z","0.2.1":"2025-12-03T21:45:26.257Z","0.3.0":"2026-02-18T20:49:22.719Z","0.5.0":"2026-03-17T08:09:52.355Z","0.5.1":"2026-03-25T17:25:32.150Z","0.5.2":"2026-03-26T07:44:07.172Z","0.5.3":"2026-03-26T07:59:54.574Z","0.5.4":"2026-03-30T16:15:36.712Z","0.5.5":"2026-03-30T17:51:48.357Z","0.5.6":"2026-03-31T07:00:34.199Z","0.5.7":"2026-03-31T15:34:10.574Z","0.5.8":"2026-03-31T16:36:49.009Z","1.0.0":"2026-04-01T08:07:01.273Z","1.1.0":"2026-04-22T12:11:43.282Z","1.1.1":"2026-04-22T13:53:55.535Z","1.1.2":"2026-05-04T11:02:54.407Z","1.1.3":"2026-05-05T15:25:31.749Z","1.2.0":"2026-05-11T15:16:50.088Z","1.3.0":"2026-05-11T17:33:24.236Z","1.3.1":"2026-05-14T16:37:46.806Z","1.3.2":"2026-05-14T17:24:06.977Z","1.3.3":"2026-05-18T15:37:38.025Z","1.3.4":"2026-05-31T17:35:56.205Z","1.3.5":"2026-06-05T09:56:17.868Z","1.3.6":"2026-06-09T15:32:42.561Z","1.3.7":"2026-06-12T19:41:37.895Z","1.3.8":"2026-06-14T12:26:05.612Z","1.3.9":"2026-06-19T06:59:16.480Z","1.4.0":"2026-07-06T13:04:43.784Z","2.0.0":"2026-07-28T17:25:00.814Z"},"bugs":{"url":"https://github.com/akankov/sentinel-password/issues"},"author":{"name":"Aleksei Kankov","email":"akankov@gmail.com"},"license":"MIT","homepage":"https://akankov.github.io/sentinel-password/","keywords":["password","validation","react","hook","typescript","password-validator","password-strength","react-hooks"],"repository":{"type":"git","url":"git+https://github.com/akankov/sentinel-password.git","directory":"packages/react"},"description":"React hook (usePasswordValidator) for @sentinel-password/core - password validation made simple","maintainers":[{"name":"akankov","email":"akankov@gmail.com"}],"readme":"# @sentinel-password/react\n\n[![npm version](https://img.shields.io/npm/v/@sentinel-password/react.svg)](https://www.npmjs.com/package/@sentinel-password/react)\n[![TypeScript](https://img.shields.io/badge/TypeScript-6.0+-blue.svg)](https://www.typescriptlang.org/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nReact hook for password validation using `@sentinel-password/core`. Provides debounced validation with full TypeScript support.\n\n**[Documentation](https://akankov.github.io/sentinel-password/)** | **[Interactive Playground](https://akankov.github.io/sentinel-password/playground/)** | **[API Reference](https://akankov.github.io/sentinel-password/api/react.html)**\n\n## Features\n\n- **`usePasswordValidator` hook** - Debounced password validation with configurable delay\n- **TypeScript-First** - Full type safety with strict mode\n- **Lightweight** - Minimal wrapper around `@sentinel-password/core`\n- **React 18 & 19** - Supports both React 18 and 19\n\n## Installation\n\n`@sentinel-password/core` is a regular `dependency` of this package (not a peer), so installing `@sentinel-password/react` automatically pulls in core. You only need to add it explicitly if you're importing from core directly elsewhere in your app.\n\n```bash\nnpm install @sentinel-password/react\n# or\npnpm add @sentinel-password/react\n# or\nyarn add @sentinel-password/react\n```\n\n**Peer dependencies:** React 18 or 19 — bring your own.\n\n## Quick Start\n\n```tsx\nimport { usePasswordValidator } from '@sentinel-password/react'\n\nfunction PasswordForm() {\n  const { password, setPassword, result, isValidating } = usePasswordValidator({\n    debounceMs: 300,\n    minLength: 10,\n    requireUppercase: true,\n  })\n\n  return (\n    <div>\n      <input\n        type=\"password\"\n        value={password}\n        onChange={(e) => setPassword(e.target.value)}\n        placeholder=\"Enter password\"\n      />\n      {isValidating && <span>Validating...</span>}\n      {result && (\n        <div>\n          <p>Strength: {result.strength}</p>\n          {result.feedback.suggestions.map((s, i) => (\n            <p key={i}>{s}</p>\n          ))}\n        </div>\n      )}\n    </div>\n  )\n}\n```\n\n## API\n\n### `usePasswordValidator(options?)`\n\nReturns an object with:\n\n| Property | Type | Description |\n|----------|------|-------------|\n| `password` | `string` | Current password value |\n| `setPassword` | `(password: string) => void` | Update the password. Whether validation also fires depends on `debounceMs` / `validateOnChange` — see those rows below. In manual mode (`debounceMs: 0` + `validateOnChange: false`) this only updates state; call `validate()` to evaluate. |\n| `result` | `ValidationResult \\| undefined` | Validation result (undefined until first validation) |\n| `isValidating` | `boolean` | Whether validation is in progress (during debounce) |\n| `validate` | `() => void` | Manually trigger validation |\n| `reset` | `() => void` | Reset password and validation state (aborts in-flight async checks) |\n| `asyncResults` | `Record<string, AsyncCheckState>` | Per-check state (`pending`/`passed`/`failed`/`error`) of the registered `asyncChecks` for the most recent run |\n| `isValidatingAsync` | `boolean` | True while any async check from the most recent run is still pending |\n\n### Options\n\nExtends all [`@sentinel-password/core` options](https://www.npmjs.com/package/@sentinel-password/core) plus:\n\n| Option | Type | Default | Description |\n|--------|------|---------|-------------|\n| `debounceMs` | `number` | `300` | Debounce delay in ms (0 to disable) |\n| `initialPassword` | `string` | `''` | Seed value for the hook's `password` state. Use this together with `validateOnMount` to validate a restored draft (e.g. multi-step signup) on first render — never a user's stored password, which a correct app can't possess in plaintext. The input stays fully controlled by `setPassword` afterwards. |\n| `validateOnMount` | `boolean` | `false` | Validate the seed value (see `initialPassword`) once on mount. Skips empty values, so it's a no-op when `initialPassword` is empty or omitted. |\n| `validateOnChange` | `boolean` | `false` | Only matters when `debounceMs === 0`: `true` validates synchronously on every change, `false` disables automatic validation (call `validate()` manually). With the default `debounceMs > 0`, debounced validation runs on every change regardless of this flag. |\n| `asyncChecks` | `Record<string, AsyncCheck>` | — | Named async checks — `(password, signal) => Promise<{ passed, message? }>` — that run whenever validation fires. Results surface on `asyncResults` and do **not** affect the synchronous `result`; superseded runs are aborted via the provided `AbortSignal`. Pair with [`@sentinel-password/breach`](https://www.npmjs.com/package/@sentinel-password/breach) for HIBP checks. |\n\n## Related Packages\n\n- [`@sentinel-password/core`](https://www.npmjs.com/package/@sentinel-password/core) - Core validation engine (zero dependencies)\n- [`@sentinel-password/react-components`](https://www.npmjs.com/package/@sentinel-password/react-components) - Accessible, headless React components\n\n## License\n\nMIT © Aleksei Kankov\n","readmeFilename":"README.md"}