{"_id":"@crafyholding/crafy-captcha-react","_rev":"2-e8f8bce469cf1fa14d9ace2b49a6f6db","name":"@crafyholding/crafy-captcha-react","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@crafyholding/crafy-captcha-react","version":"1.0.0","keywords":["captcha","crafy","security","bot-protection"],"author":{"name":"CrafyCAPTCHA","email":"hello@captcha.crafy.net"},"license":"MIT","_id":"@crafyholding/crafy-captcha-react@1.0.0","maintainers":[{"name":"crafyholding","email":"bitbooklite@gmail.com"}],"homepage":"https://github.com/crafycaptcha/crafy-captcha-react#readme","bugs":{"url":"https://github.com/crafycaptcha/crafy-captcha-react/issues"},"dist":{"shasum":"6f12be37eefe5a845d49b775d1d8e4b884a7de71","tarball":"https://registry.npmjs.org/@crafyholding/crafy-captcha-react/-/crafy-captcha-react-1.0.0.tgz","fileCount":6,"integrity":"sha512-T5ROm4xImV21Hb7CsXbpKc6e3sljOctnNXY/rpMUjKTI5OuvEZ1XKkm/g1R9I79mw1yj2dV3GPsP7QuMuGqTNA==","signatures":[{"sig":"MEYCIQDD3u9/5dI6FVjG2w8IpQfnScOub7Xy7tJs1g2LBKbD6gIhALpLbTEM3onbxZGjwk5SBW0N9/oMjAGSJTGT/6v0w1GJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":71032},"main":"dist/index.js","gitHead":"afc4e5aed9aa49b3aa30f136a39fa122a2989c83","scripts":{"build":"esbuild src/index.js --bundle --outfile=dist/index.js --format=cjs --loader:.jsx=jsx --external:react"},"_npmUser":{"name":"crafyholding","email":"bitbooklite@gmail.com"},"repository":{"url":"git+https://github.com/crafycaptcha/crafy-captcha-react.git","type":"git"},"_npmVersion":"10.9.0","description":"React component Client SDK for CrafyCAPTCHA","directories":{},"_nodeVersion":"22.19.0","dependencies":{"@crafyholding/crafy-captcha-js":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.28.0"},"peerDependencies":{"react":"^19.2.5"},"_npmOperationalInternal":{"tmp":"tmp/crafy-captcha-react_1.0.0_1778057343688_0.6508606209614989","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@crafyholding/crafy-captcha-react","version":"1.0.1","description":"React component Client SDK for CrafyCAPTCHA","main":"dist/index.js","dependencies":{"@crafyholding/crafy-captcha-js":"^1.0.6"},"peerDependencies":{"react":"^19.2.5"},"devDependencies":{"esbuild":"^0.28.0"},"scripts":{"build":"esbuild src/index.js --bundle --outfile=dist/index.js --format=cjs --loader:.jsx=jsx --external:react"},"repository":{"type":"git","url":"git+https://github.com/crafycaptcha/crafy-captcha-react.git"},"keywords":["captcha","crafy","security","bot-protection"],"author":{"name":"CrafyCAPTCHA","email":"hello@captcha.crafy.net"},"license":"MIT","_id":"@crafyholding/crafy-captcha-react@1.0.1","gitHead":"afc4e5aed9aa49b3aa30f136a39fa122a2989c83","bugs":{"url":"https://github.com/crafycaptcha/crafy-captcha-react/issues"},"homepage":"https://github.com/crafycaptcha/crafy-captcha-react#readme","_nodeVersion":"22.19.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-oHGGeQIYjUs2znNqspBSJHL6sYS4tRlKAlmVxZyWEdYguxLb13HjWBp3walEv/kM2TlGYPMgF6MWIZ0BOiXoFA==","shasum":"11b76cb24042b4b807be2d76890da64a64a441c4","tarball":"https://registry.npmjs.org/@crafyholding/crafy-captcha-react/-/crafy-captcha-react-1.0.1.tgz","fileCount":7,"unpackedSize":73884,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCi7cxzsQNQxprUbcrbAZEvuKmjjwl6qFNqZx6ANfEDUQIgXWKcHeWt5nQrKemJKCVH0WUPCurU1HK6BL7vZIU+iMo="}]},"_npmUser":{"name":"crafyholding","email":"bitbooklite@gmail.com"},"directories":{},"maintainers":[{"name":"crafyholding","email":"bitbooklite@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/crafy-captcha-react_1.0.1_1779504154716_0.8854556405588705"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-06T08:49:03.625Z","modified":"2026-05-23T02:42:35.312Z","1.0.0":"2026-05-06T08:49:03.829Z","1.0.1":"2026-05-23T02:42:34.877Z"},"bugs":{"url":"https://github.com/crafycaptcha/crafy-captcha-react/issues"},"author":{"name":"CrafyCAPTCHA","email":"hello@captcha.crafy.net"},"license":"MIT","homepage":"https://github.com/crafycaptcha/crafy-captcha-react#readme","keywords":["captcha","crafy","security","bot-protection"],"repository":{"type":"git","url":"git+https://github.com/crafycaptcha/crafy-captcha-react.git"},"description":"React component Client SDK for CrafyCAPTCHA","maintainers":[{"name":"crafyholding","email":"bitbooklite@gmail.com"}],"readme":"Official documentation in https://captcha.crafy.net/docs/\r\n\r\n## Example\r\n\r\n```javascript\r\nimport React, { useRef } from 'react';\r\nimport CrafyCaptcha from '@crafyholding/crafy-captcha-react';\r\n\r\nfunction MiFormulario() {\r\n  const captchaRef = useRef(null);\r\n\r\n  const handleSubmit = async (e) => {\r\n    e.preventDefault();\r\n    try {\r\n      // Intenta loguear...\r\n    } catch (error) {\r\n      // Si la contraseña era incorrecta, resetea el puzzle usando la ref\r\n      captchaRef.current.reset();\r\n    }\r\n  };\r\n\r\n  return (\r\n    <form onSubmit={handleSubmit}>\r\n      {/* ... inputs ... */}\r\n      <CrafyCaptcha \r\n        ref={captchaRef}\r\n        publicKey=\"pk_test_...\"\r\n        onSuccess={(token) => console.log('Resuelto!', token)}\r\n        onExpire={() => alert('El tiempo expiró, resuelve de nuevo.')}\r\n        onError={(err) => console.error('Fallo técnico', err)}\r\n      />\r\n      <button type=\"submit\">Enviar</button>\r\n    </form>\r\n  );\r\n}\r\n```","readmeFilename":"README.md"}