{"version":3,"file":"ButtonToInput.BluBse_p.mjs","names":["useState","useRef"],"sources":["https:/framerusercontent.com/modules/MuTaMvP7Oa9aMwLWWb7C/ZtFffFWD2nDBVdjRlhhG/ButtonToInput.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState,useRef,useEffect}from\"react\";import{addPropertyControls,ControlType}from\"framer\";// Design tokens from Figma (Donor Site Booking Flow)\nconst TEAL=\"#003632\"// primary dark teal\n;const TEAL_BORDER=\"#094844\"// slightly lighter teal for borders\n;const WHITE=\"#ffffff\";const ERROR_RED=\"#ef4444\";const GOODLABS_GREEN=\"#0D3331\";export function LeadCapture({buttonLabel=\"Get Started\",placeholder=\"Enter your email\",borderRadius=8,fontSize=16,height=54,buttonMaxWidth=200,buttonPaddingX=24,buttonPaddingY=16}){const[open,setOpen]=useState(false);const[email,setEmail]=useState(\"\");const[loading,setLoading]=useState(false);const[error,setError]=useState(\"\");const inputRef=useRef(null);useEffect(()=>{if(open&&inputRef.current){inputRef.current.focus();}},[open]);function getAttribution(){const params=new URLSearchParams(window.location.search);const keys=[\"utm_source\",\"utm_medium\",\"utm_campaign\",\"utm_content\",\"utm_term\",\"gclid\",\"fbclid\"];const out={};for(const key of keys){const val=params.get(key);if(val)out[key]=val;}return out;}function handleSubmit(e){e?.preventDefault();setError(\"\");const trimmed=email.trim().toLowerCase();if(!/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(trimmed)){setError(\"Enter a valid email\");return;}setLoading(true);const url=new URL(\"https://app.goodlabs.com/signup\");url.searchParams.set(\"email\",trimmed);const attribution=getAttribution();if(Object.keys(attribution).length>0){for(const[key,val]of Object.entries(attribution)){url.searchParams.set(key,val);}}else{url.searchParams.set(\"utm_source\",\"website\");url.searchParams.set(\"utm_medium\",\"cta\");url.searchParams.set(\"utm_campaign\",\"join_today\");}url.searchParams.set(\"landingUrl\",window.location.href);if(document.referrer){url.searchParams.set(\"ref\",document.referrer);}window.location.href=url.toString();}function handleKeyDown(e){if(e.key===\"Escape\"){setOpen(false);setEmail(\"\");setError(\"\");}}// Outer wrapper fills the Framer frame in both states\nconst wrapperStyle={width:\"100%\",height:\"100%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",fontFamily:\"'Inter', sans-serif\"};// ---------- BUTTON STATE ----------\nif(!open){return /*#__PURE__*/_jsx(\"div\",{style:wrapperStyle,children:/*#__PURE__*/_jsxs(\"button\",{onClick:()=>setOpen(true),style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",gap:10,maxWidth:buttonMaxWidth,padding:`${buttonPaddingY}px ${buttonPaddingX}px`,background:GOODLABS_GREEN,color:WHITE,border:\"none\",borderRadius,fontFamily:\"'Inter', sans-serif\",fontSize,fontWeight:500,cursor:\"pointer\",transition:\"opacity 0.15s ease\",letterSpacing:0,lineHeight:\"22px\",whiteSpace:\"nowrap\"},onMouseEnter:e=>e.currentTarget.style.opacity=\"0.85\",onMouseLeave:e=>e.currentTarget.style.opacity=\"1\",children:[buttonLabel,/*#__PURE__*/_jsx(\"span\",{style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:28,height:28,borderRadius:\"50%\",background:\"rgba(255, 255, 255, 0.25)\",flexShrink:0},children:/*#__PURE__*/_jsxs(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:WHITE,strokeWidth:\"2.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"line\",{x1:\"5\",y1:\"12\",x2:\"19\",y2:\"12\"}),/*#__PURE__*/_jsx(\"polyline\",{points:\"12 5 19 12 12 19\"})]})})]})});}// ---------- INPUT STATE ----------\nreturn /*#__PURE__*/_jsx(\"div\",{style:wrapperStyle,children:/*#__PURE__*/_jsxs(\"form\",{onSubmit:handleSubmit,style:{width:\"100%\",maxWidth:buttonMaxWidth,position:\"relative\",fontFamily:\"'Inter', sans-serif\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",height,borderRadius:borderRadius+4,border:`1px solid ${error?ERROR_RED:TEAL_BORDER}`,background:\"rgba(255, 255, 255, 0.9)\",transition:\"border-color 0.15s ease\"},children:[/*#__PURE__*/_jsx(\"input\",{ref:inputRef,type:\"email\",value:email,onChange:e=>{setEmail(e.target.value);if(error)setError(\"\");},onKeyDown:handleKeyDown,placeholder:placeholder,style:{flex:1,minWidth:0,height:\"100%\",padding:\"0 16px\",fontSize,fontFamily:\"'Inter', sans-serif\",fontWeight:400,border:\"none\",outline:\"none\",background:\"transparent\",color:\"#000000\",letterSpacing:0,lineHeight:\"22px\"}}),/*#__PURE__*/_jsx(\"button\",{type:\"submit\",disabled:loading,\"aria-label\":\"Submit\",style:{width:40,height:40,borderRadius:\"50%\",background:GOODLABS_GREEN,color:WHITE,border:\"none\",cursor:loading?\"default\":\"pointer\",opacity:loading?.5:1,transition:\"opacity 0.15s ease\",flexShrink:0,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",marginRight:8,alignSelf:\"center\"},children:/*#__PURE__*/_jsxs(\"svg\",{width:\"18\",height:\"18\",viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2.5\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"line\",{x1:\"5\",y1:\"12\",x2:\"19\",y2:\"12\"}),/*#__PURE__*/_jsx(\"polyline\",{points:\"12 5 19 12 12 19\"})]})})]}),error&&/*#__PURE__*/_jsx(\"span\",{style:{color:ERROR_RED,fontSize:13,fontWeight:400,marginTop:6,display:\"block\"},children:error})]})});}addPropertyControls(LeadCapture,{buttonLabel:{type:ControlType.String,title:\"Button Label\",defaultValue:\"Get Started\"},placeholder:{type:ControlType.String,title:\"Placeholder\",defaultValue:\"Enter your email\"},borderRadius:{type:ControlType.Number,title:\"Border Radius\",defaultValue:8,min:0,max:24},fontSize:{type:ControlType.Number,title:\"Font Size\",defaultValue:16,min:12,max:24},height:{type:ControlType.Number,title:\"Height\",defaultValue:54,min:40,max:72},buttonMaxWidth:{type:ControlType.Number,title:\"Button Max Width\",defaultValue:200,min:100,max:600},buttonPaddingX:{type:ControlType.Number,title:\"Button Padding X\",defaultValue:24,min:8,max:60},buttonPaddingY:{type:ControlType.Number,title:\"Button Padding Y\",defaultValue:16,min:4,max:40}});\nexport const __FramerMetadata__ = {\"exports\":{\"LeadCapture\":{\"type\":\"reactComponent\",\"name\":\"LeadCapture\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ButtonToInput.map"],"mappings":"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"}