{"version":3,"file":"Captcha.dcpLIfJS.mjs","names":["useState"],"sources":["https:/framerusercontent.com/modules/LD1qBWMq6rdvXZEoSXpu/0rWtqGHCTPO0xXPubYqM/Captcha.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useEffect}from\"react\";import{ControlType,addPropertyControls}from\"framer\";/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function Captcha(props){const[generatedCode,setGeneratedCode]=useState(\"\");const[userTypedCode,setUserTypedCode]=useState(\"\");const[captchaError,setCaptchaError]=useState(\"\");const[captchaSuccess,setCaptchaSuccess]=useState(\"\");const[obfuscationLines,setObfuscationLines]=useState([]);useEffect(()=>{generateCaptcha();},[props.width]);const generateCaptcha=()=>{const characters=\"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789\";let newCode=\"\";for(let i=0;i<6;i++){newCode+=characters.charAt(Math.floor(Math.random()*characters.length));}setGeneratedCode(newCode);generateObfuscation();setCaptchaError(\"\");setCaptchaSuccess(\"\");setUserTypedCode(\"\");};const generateObfuscation=()=>{const lines=Array.from({length:3},()=>({x1:Math.random()*100+\"%\",y1:Math.random()*100+\"%\",x2:Math.random()*100+\"%\",y2:Math.random()*100+\"%\"}));setObfuscationLines(lines);};const verifyCaptcha=()=>{setCaptchaError(\"\");setCaptchaSuccess(\"\");if(userTypedCode.toUpperCase()===generatedCode){setCaptchaSuccess(\"Captcha verified successfully!\");sessionStorage.setItem(\"rc-captcha-verified\",JSON.stringify(true));setUserTypedCode(\"\");}else{generateCaptcha();setCaptchaError(\"Captcha verification failed. Please try again.\");sessionStorage.removeItem(\"rc-captcha-verified\");}};return /*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",borderRadius:\"12px\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",fontSize:\"20px\",fontWeight:\"bold\",fontFamily:\"monospace\",color:\"#233F7A\",background:\"#fff\",width:props.width,height:\"40px\",borderRadius:\"5px\",overflow:\"hidden\",border:\"1px solid #ddd\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{letterSpacing:\"3px\",zIndex:2},children:generatedCode}),/*#__PURE__*/_jsx(\"svg\",{style:{position:\"absolute\",top:0,left:0,width:\"100%\",height:\"100%\",zIndex:1},children:obfuscationLines.map((line,index)=>/*#__PURE__*/_jsx(\"line\",{x1:line.x1,y1:line.y1,x2:line.x2,y2:line.y2,stroke:\"#ccc\",strokeWidth:\"1\"},index))}),/*#__PURE__*/_jsx(\"button\",{onClick:generateCaptcha,type:\"button\",style:{position:\"absolute\",top:\"50%\",right:\"5px\",transform:\"translateY(-50%)\",background:\"transparent\",border:\"none\",cursor:\"pointer\",fontSize:\"16px\",zIndex:3},children:\"🔄\"})]}),/*#__PURE__*/_jsx(\"input\",{style:{width:\"100%\",padding:\"10px 12px\",marginTop:\"12px\",borderRadius:\"5px\",fontFamily:\"Geist\",border:\"1px solid #ffffff26\",outline:\"none\"},onChange:e=>setUserTypedCode(e.target.value),type:\"text\",value:userTypedCode,placeholder:\"Write text from image\"}),captchaSuccess&&/*#__PURE__*/_jsx(\"span\",{style:{marginTop:\"4px\",display:\"block\",fontFamily:\"Geist\",fontSize:\"12px\",color:\"#28A745\"},children:captchaSuccess}),captchaError&&/*#__PURE__*/_jsx(\"span\",{style:{marginTop:\"4px\",display:\"block\",fontFamily:\"Geist\",fontSize:\"12px\",color:\"#DC3545\"},children:captchaError}),/*#__PURE__*/_jsx(\"button\",{onClick:verifyCaptcha,type:\"button\",style:{width:\"100%\",borderRadius:\"5px\",fontFamily:\"Geist\",background:props.buttonColor,color:\"#fff\",padding:\"10px 0\",marginTop:\"8px\",border:\"none\",cursor:\"pointer\"},children:\"Submit\"})]});}addPropertyControls(Captcha,{width:{type:ControlType.Number,defaultValue:150,min:100},buttonColor:{type:ControlType.Color,defaultValue:\"#233F7A\",title:\"Button Background\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Captcha\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"any\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Captcha.map"],"mappings":"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"}