{"version":3,"file":"ProgressiveForm.Do-B0Pib.mjs","names":["useState"],"sources":["https:/framerusercontent.com/modules/cnjpqoGWhFXudNrRbIrD/ePygtZC5wJYh2k4sBEKU/ProgressiveForm.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useState}from\"react\";/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n */const CALENDLY_URL=\"https://calendly.com/ryan-baker-take2/intro-call?utm_source=frame-progressive-form\";const FREE_EMAIL_DOMAINS=[\"gmail.com\",\"yahoo.com\",\"hotmail.com\",\"outlook.com\",\"aol.com\",\"icloud.com\",\"mail.com\",\"protonmail.com\",\"live.com\",\"msn.com\",\"me.com\",\"mac.com\",\"googlemail.com\",\"ymail.com\",\"yahoo.co.uk\",\"hotmail.co.uk\",\"hotmail.fr\",\"yahoo.fr\",\"yahoo.es\",\"yahoo.de\"];function getHubSpotCookie(){try{return document.cookie.split(\"; \").find(c=>c.startsWith(\"hubspotutk=\"))?.split(\"=\")[1];}catch{return undefined;}}export default function ProgressiveForm(props){const{portalId,formId,buttonColor,buttonTextColor,inputBorderColor,fontFamily,style}=props;const[step,setStep]=useState(1);const[submitting,setSubmitting]=useState(false);const[submitted,setSubmitted]=useState(false);const[error,setError]=useState(\"\");const[email,setEmail]=useState(\"\");const[firstName,setFirstName]=useState(\"\");const[lastName,setLastName]=useState(\"\");const[phone,setPhone]=useState(\"\");const[company,setCompany]=useState(\"\");const[jobTitle,setJobTitle]=useState(\"\");const inputStyle={width:\"100%\",maxWidth:\"100%\",minWidth:0,display:\"block\",flex:\"1 1 auto\",padding:\"12px 16px\",borderRadius:\"8px\",border:`1px solid ${inputBorderColor||\"#E0E0E0\"}`,fontSize:\"15px\",fontFamily:fontFamily||\"inherit\",outline:\"none\",backgroundColor:\"#F7F7F7\",boxSizing:\"border-box\",marginBottom:\"12px\"};const buttonStyle={width:\"100%\",maxWidth:\"100%\",display:\"block\",padding:\"14px\",borderRadius:\"8px\",backgroundColor:buttonColor||\"#1A1A1A\",color:buttonTextColor||\"#FFFFFF\",fontSize:\"15px\",fontWeight:600,fontFamily:fontFamily||\"inherit\",border:\"none\",cursor:\"pointer\",marginTop:\"4px\",boxSizing:\"border-box\"};const containerStyle={width:\"100%\",maxWidth:\"100%\",minWidth:0,alignSelf:\"stretch\",boxSizing:\"border-box\",display:\"flex\",flexDirection:\"column\",gap:\"0px\"};const rootStyle={...style,...containerStyle};const rowStyle={width:\"100%\",display:\"flex\",gap:\"10px\",alignItems:\"stretch\",boxSizing:\"border-box\"};const halfInputStyle={...inputStyle,width:0,flex:\"1 1 0\"};const handleEmailSubmit=e=>{e.preventDefault();if(!email||!/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(email)){setError(\"Please enter a valid email address.\");return;}const domain=email.split(\"@\")[1]?.toLowerCase();if(FREE_EMAIL_DOMAINS.includes(domain)){setError(\"Please use your work email address.\");return;}setError(\"\");setStep(2);};// Show the thank-you screen and open Calendly in a new tab.\n// If the popup is blocked, the user can still click the \"here\" link\n// on the thank-you screen — we do NOT redirect the current tab.\nconst completeSubmission=()=>{setError(\"\");setSubmitted(true);try{window.open(CALENDLY_URL,\"_blank\",\"noopener,noreferrer\");}catch{// Intentionally ignored — the thank-you screen provides\n// a manual link if the popup didn't open.\n}};const handleFinalSubmit=async e=>{e.preventDefault();if(!firstName||!lastName||!company||!jobTitle){setError(\"Please fill in all required fields.\");return;}setError(\"\");setSubmitting(true);const fields=[{name:\"work_email\",value:email},{name:\"firstname\",value:firstName},{name:\"lastname\",value:lastName},{name:\"company\",value:company},{name:\"jobtitle\",value:jobTitle},{name:\"phone\",value:phone}];const hutk=getHubSpotCookie();const context={pageUri:window.location.href,pageName:document.title};if(hutk)context.hutk=hutk;try{const res=await fetch(`https://api.hsforms.com/submissions/v3/integration/submit/${portalId}/${formId}`,{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},keepalive:true,body:JSON.stringify({fields,context})});if(res.ok){completeSubmission();}else{let message=\"Submission failed. Please try again.\";try{const data=await res.json();message=data?.errors?.[0]?.message||message;}catch{completeSubmission();return;}setError(message);}}catch(err){completeSubmission();}finally{setSubmitting(false);}};if(submitted){return /*#__PURE__*/_jsx(\"div\",{style:{...rootStyle,padding:\"8px 0\"},children:/*#__PURE__*/_jsxs(\"p\",{style:{fontSize:\"15px\",fontFamily:fontFamily||\"inherit\",margin:0,color:\"#333\"},children:[\"Thank you. Please schedule a time that works for you\",\" \",/*#__PURE__*/_jsx(\"a\",{href:CALENDLY_URL,target:\"_blank\",rel:\"noopener noreferrer\",style:{color:buttonColor||\"#1A1A1A\",fontWeight:600,textDecoration:\"underline\"},children:\"here\"}),\".\"]})});}return /*#__PURE__*/_jsxs(\"div\",{style:rootStyle,children:[step===1&&/*#__PURE__*/_jsxs(\"form\",{onSubmit:handleEmailSubmit,style:containerStyle,children:[/*#__PURE__*/_jsx(\"input\",{type:\"email\",placeholder:\"Work email\",value:email,onChange:e=>setEmail(e.target.value),style:inputStyle,required:true}),error&&/*#__PURE__*/_jsx(\"p\",{style:{color:\"red\",fontSize:\"13px\",margin:\"0 0 8px\",fontFamily:fontFamily||\"inherit\"},children:error}),/*#__PURE__*/_jsx(\"button\",{type:\"submit\",style:buttonStyle,children:\"See a Demo\"})]}),step===2&&/*#__PURE__*/_jsxs(\"form\",{onSubmit:handleFinalSubmit,style:containerStyle,children:[/*#__PURE__*/_jsxs(\"div\",{style:rowStyle,children:[/*#__PURE__*/_jsx(\"input\",{type:\"text\",placeholder:\"First name *\",value:firstName,onChange:e=>setFirstName(e.target.value),style:halfInputStyle,required:true}),/*#__PURE__*/_jsx(\"input\",{type:\"text\",placeholder:\"Last name *\",value:lastName,onChange:e=>setLastName(e.target.value),style:halfInputStyle,required:true})]}),/*#__PURE__*/_jsx(\"input\",{type:\"text\",placeholder:\"Company *\",value:company,onChange:e=>setCompany(e.target.value),style:inputStyle,required:true}),/*#__PURE__*/_jsx(\"input\",{type:\"text\",placeholder:\"Job title *\",value:jobTitle,onChange:e=>setJobTitle(e.target.value),style:inputStyle,required:true}),/*#__PURE__*/_jsx(\"input\",{type:\"tel\",placeholder:\"Phone number (optional)\",value:phone,onChange:e=>setPhone(e.target.value),style:inputStyle}),error&&/*#__PURE__*/_jsx(\"p\",{style:{color:\"red\",fontSize:\"13px\",margin:\"0 0 8px\",fontFamily:fontFamily||\"inherit\"},children:error}),/*#__PURE__*/_jsx(\"button\",{type:\"submit\",style:buttonStyle,disabled:submitting,children:submitting?\"Submitting...\":\"Schedule a Demo\"}),/*#__PURE__*/_jsx(\"button\",{type:\"button\",onClick:()=>{setStep(1);setError(\"\");},style:{...buttonStyle,backgroundColor:\"transparent\",color:\"#666\",fontWeight:400,marginTop:\"8px\",fontSize:\"13px\"},children:\"Back\"})]})]});}addPropertyControls(ProgressiveForm,{portalId:{title:\"HubSpot Portal ID\",type:ControlType.String,defaultValue:\"YOUR_PORTAL_ID\"},formId:{title:\"HubSpot Form ID\",type:ControlType.String,defaultValue:\"YOUR_FORM_ID\"},buttonColor:{title:\"Button Color\",type:ControlType.Color,defaultValue:\"#1A1A1A\"},buttonTextColor:{title:\"Button Text Color\",type:ControlType.Color,defaultValue:\"#FFFFFF\"},inputBorderColor:{title:\"Input Border\",type:ControlType.Color,defaultValue:\"#E0E0E0\"},fontFamily:{title:\"Font Family\",type:ControlType.String,defaultValue:\"Inter, sans-serif\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ProgressiveForm\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ProgressiveForm.map"],"mappings":"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"}