{"version":3,"file":"PartnerQualificationForm.BnuXZv38.mjs","names":["useState","useRef","_Fragment"],"sources":["https:/framerusercontent.com/modules/kuX7E6daEUFU1XSSL1wd/5GLBW0DzXxWF2UNb8eCZ/PartnerQualificationForm.js"],"sourcesContent":["// ─────────────────────────────────────────────────────────────────────────────\n// DynamicsForm.tsx — Framer Code Component\n//\n// Permanent fields:\n//   - First Name\n//   - Last Name\n//   - Work Email\n//   - Company Name\n//\n// POSTHOG EVENTS:\n//   form_started\n//   form_submitted\n//   identify\n// ─────────────────────────────────────────────────────────────────────────────\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useRef,useState}from\"react\";// ─── PostHog helper ──────────────────────────────────────────────────────────\nfunction ph(method,...args){try{const posthog=window.posthog;if(posthog&&typeof posthog[method]===\"function\"){posthog[method](...args);}}catch{// Silently ignore if PostHog is blocked or unavailable.\n}}// ─── Component ───────────────────────────────────────────────────────────────\n/**\n * @framerIntrinsicWidth 460\n * @framerIntrinsicHeight 330\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n */export default function DynamicsForm(props){const{formKey=\"lead-general\",destinationType=\"lead\",subject=\"Inbound Evohire Discount\",functionUrl=\"https://payevo-forms.azurewebsites.net/api/formsubmit\",heading=\"\",subheading=\"\",successMessage=\"Thanks! We'll be in touch soon.\",submitLabel=\"Submit\",primaryColor=\"#156BB4\",backgroundColor=\"#FFFFFF\",borderColor=\"#D1D5DB\",textColor=\"#111827\",labelColor=\"#374151\",errorColor=\"#DC2626\",borderRadius=8,inputPadding=12,gap=20,fontFamily=\"inherit\",fontSize=15}=props;const[values,setValues]=useState({firstName:\"\",lastName:\"\",workEmail:\"\",companyName:\"\"});const[errors,setErrors]=useState({});const[touched,setTouched]=useState({});const[status,setStatus]=useState(\"idle\");const[submitError,setSubmitError]=useState(\"\");const honeypotRef=useRef(null);const formStartedRef=useRef(false)// ── Validation ──────────────────────────────────────────────────────────\n;function validateField(name,value){const trimmedValue=value.trim();if(!trimmedValue){const labels={firstName:\"First Name\",lastName:\"Last Name\",workEmail:\"Work Email\",companyName:\"Company Name\"};return`${labels[name]} is required`;}if(name===\"workEmail\"){const emailPattern=/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;if(!emailPattern.test(trimmedValue)){return\"Please enter a valid work email address\";}}return\"\";}function validateAll(){const newErrors={};const fieldNames=[\"firstName\",\"lastName\",\"workEmail\",\"companyName\"];fieldNames.forEach(name=>{const error=validateField(name,values[name]);if(error){newErrors[name]=error;}});setErrors(newErrors);setTouched({firstName:true,lastName:true,workEmail:true,companyName:true});return Object.keys(newErrors).length===0;}// ── Field handlers ──────────────────────────────────────────────────────\nfunction handleChange(name,value){setValues(previousValues=>({...previousValues,[name]:value}))// Fire form_started only once.\n;if(!formStartedRef.current){formStartedRef.current=true;ph(\"capture\",\"form_started\",{form_key:formKey,destination_type:destinationType,page:typeof window!==\"undefined\"?window.location.pathname:\"\"});}// Revalidate a field after the user has touched it.\nif(touched[name]){const error=validateField(name,value);setErrors(previousErrors=>({...previousErrors,[name]:error}));}}function handleBlur(name){setTouched(previousTouched=>({...previousTouched,[name]:true}));const error=validateField(name,values[name]);setErrors(previousErrors=>({...previousErrors,[name]:error}));}// ── Submission ──────────────────────────────────────────────────────────\nasync function handleSubmit(event){event.preventDefault();if(!validateAll()){return;}if(!functionUrl){setStatus(\"error\");setSubmitError(\"Form endpoint is not configured.\");return;}setStatus(\"submitting\");setSubmitError(\"\");const submittedFields={firstName:values.firstName.trim(),lastName:values.lastName.trim(),email:values.workEmail.trim(),companyName:values.companyName.trim()};try{const response=await fetch(functionUrl,{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify({formKey,destinationType,fields:submittedFields,_hp:honeypotRef.current?.value??\"\",subject})});if(!response.ok){const responseData=await response.json().catch(()=>({}));setStatus(\"error\");setSubmitError(responseData.error??\"Something went wrong. Please try again.\");return;}setStatus(\"success\");ph(\"capture\",\"form_submitted\",{form_key:formKey,destination_type:destinationType,consent_type:\"implied\",page:typeof window!==\"undefined\"?window.location.pathname:\"\"});const fullName=[submittedFields.firstName,submittedFields.lastName].filter(Boolean).join(\" \");ph(\"identify\",submittedFields.email,{email:submittedFields.email,first_name:submittedFields.firstName,last_name:submittedFields.lastName,name:fullName,company:submittedFields.companyName,company_name:submittedFields.companyName,form_key:formKey,consent_type:\"implied\",consent_source:formKey,consent_timestamp:new Date().toISOString()});}catch{setStatus(\"error\");setSubmitError(\"Unable to submit. Please check your connection and try again.\");}}// ── Styles ──────────────────────────────────────────────────────────────\nconst css={wrapper:{width:\"100%\",fontFamily,fontSize:`${fontSize}px`,color:textColor,backgroundColor,boxSizing:\"border-box\"},form:{display:\"block\",width:\"100%\",margin:0,padding:0,textAlign:\"left\",boxSizing:\"border-box\"},header:{marginBottom:`${gap}px`},heading:{margin:0,color:textColor,fontSize:`${fontSize*1.4}px`,fontWeight:700},subheading:{marginTop:\"6px\",marginBottom:0,color:labelColor,fontSize:`${fontSize*.9}px`,lineHeight:1.5},nameRow:{display:\"flex\",gap:`${gap*.6}px`,marginBottom:`${gap}px`,width:\"100%\",alignItems:\"flex-start\",boxSizing:\"border-box\"},halfField:{flex:1,minWidth:0,width:\"calc(50% - 6px)\",textAlign:\"left\",boxSizing:\"border-box\"},fullField:{marginBottom:`${gap}px`,width:\"100%\",textAlign:\"left\",boxSizing:\"border-box\"},label:{display:\"block\",width:\"100%\",textAlign:\"left\",whiteSpace:\"nowrap\",marginBottom:\"6px\",color:labelColor,fontSize:`${fontSize*.875}px`,fontWeight:500},required:{marginLeft:\"3px\",color:errorColor,display:\"inline\"},input:hasError=>({width:\"100%\",display:\"block\",padding:`${inputPadding}px ${inputPadding*1.2}px`,color:textColor,backgroundColor,border:`1.5px solid ${hasError?errorColor:borderColor}`,borderRadius:`${borderRadius*.7}px`,fontFamily,fontSize:`${fontSize}px`,outline:\"none\",boxSizing:\"border-box\",transition:\"border-color 0.15s ease\",appearance:\"none\",WebkitAppearance:\"none\"}),errorText:{display:\"flex\",alignItems:\"center\",gap:\"4px\",marginTop:\"5px\",color:errorColor,fontSize:`${fontSize*.8}px`},submitButton:disabled=>({width:\"100%\",marginTop:`${gap*.4}px`,padding:`${inputPadding*1.1}px ${inputPadding*2}px`,color:\"#FFFFFF\",backgroundColor:primaryColor,border:\"none\",borderRadius:`${borderRadius*.7}px`,fontFamily,fontSize:`${fontSize}px`,fontWeight:600,letterSpacing:\"0.01em\",cursor:disabled?\"not-allowed\":\"pointer\",opacity:disabled?.65:1,transition:\"opacity 0.15s ease\"}),submitError:{marginBottom:`${gap*.6}px`,padding:`${inputPadding}px ${inputPadding*1.2}px`,color:\"#991B1B\",backgroundColor:\"#FEF2F2\",border:\"1px solid #FCA5A5\",borderRadius:`${borderRadius*.7}px`,fontSize:`${fontSize*.875}px`,lineHeight:1.5},successWrapper:{display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",padding:`${gap*2}px ${gap}px`,textAlign:\"center\"},successIcon:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:\"52px\",height:\"52px\",marginBottom:`${gap*.8}px`,color:primaryColor,backgroundColor:`${primaryColor}18`,borderRadius:\"50%\",fontSize:\"24px\"},successTitle:{marginBottom:\"10px\",color:textColor,fontSize:`${fontSize*1.2}px`,fontWeight:700},successMessage:{maxWidth:\"360px\",color:labelColor,fontSize:`${fontSize*.95}px`,lineHeight:1.6}}// ── Reusable input field ────────────────────────────────────────────────\n;function renderField(name,label,type,placeholder){const error=errors[name];const showError=touched[name]&&error;return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"label\",{htmlFor:name,className:\"dynamics-form-label\",style:css.label,children:[label,/*#__PURE__*/_jsx(\"span\",{className:\"dynamics-form-required\",style:css.required,children:\"*\"})]}),/*#__PURE__*/_jsx(\"input\",{className:\"dynamics-form-input\",id:name,name:name,type:type,value:values[name],placeholder:placeholder,required:true,autoComplete:name===\"firstName\"?\"given-name\":name===\"lastName\"?\"family-name\":name===\"workEmail\"?\"email\":\"organization\",onChange:event=>handleChange(name,event.target.value),onBlur:()=>handleBlur(name),style:css.input(Boolean(error))}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",showError&&/*#__PURE__*/_jsxs(\"div\",{style:css.errorText,children:[\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \",/*#__PURE__*/_jsx(\"span\",{children:\"⚠\"}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \",/*#__PURE__*/_jsx(\"span\",{children:error}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]});}// ── Success screen ──────────────────────────────────────────────────────\nif(status===\"success\"){return /*#__PURE__*/_jsxs(\"div\",{style:css.wrapper,children:[\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",/*#__PURE__*/_jsxs(\"div\",{style:css.successWrapper,children:[\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \",/*#__PURE__*/_jsx(\"div\",{style:css.successIcon,children:\"✓\"}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",/*#__PURE__*/_jsx(\"div\",{style:css.successTitle,children:\"You're all set!\"}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",/*#__PURE__*/_jsx(\"div\",{style:css.successMessage,children:successMessage}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]});}// ── Form ────────────────────────────────────────────────────────────────\nconst isSubmitting=status===\"submitting\";return /*#__PURE__*/_jsxs(\"div\",{className:\"dynamics-form-root\",style:css.wrapper,children:[/*#__PURE__*/_jsx(\"style\",{children:`\n\n                .dynamics-form-root,\n                .dynamics-form-root * {\n                    box-sizing: border-box !important;\n                }\n\n                .dynamics-form-root {\n                    display: block !important;\n                    width: 100% !important;\n                    height: auto !important;\n                    min-height: 0 !important;\n                    margin: 0 !important;\n                    padding: 0 !important;\n                    text-align: left !important;\n                }\n\n                .dynamics-form-root .dynamics-form {\n                    display: block !important;\n                    width: 100% !important;\n                    height: auto !important;\n                    min-height: 0 !important;\n                    margin: 0 !important;\n                    padding: 0 !important;\n                    text-align: left !important;\n                }\n\n                .dynamics-form-root .dynamics-form-name-row {\n                    display: flex !important;\n                    align-items: flex-start !important;\n                    justify-content: flex-start !important;\n                    width: 100% !important;\n                    height: auto !important;\n                    gap: 12px !important;\n                    margin: 0 0 20px !important;\n                }\n\n                .dynamics-form-root .dynamics-form-half-field {\n                    display: block !important;\n                    flex: 1 1 0 !important;\n                    width: 0 !important;\n                    min-width: 0 !important;\n                    height: auto !important;\n                    margin: 0 !important;\n                    padding: 0 !important;\n                    text-align: left !important;\n                }\n\n                .dynamics-form-root .dynamics-form-full-field {\n                    display: block !important;\n                    width: 100% !important;\n                    height: auto !important;\n                    min-height: 0 !important;\n                    margin: 0 0 20px !important;\n                    padding: 0 !important;\n                    text-align: left !important;\n                }\n\n                .dynamics-form-root .dynamics-form-label {\n                    display: block !important;\n                    position: static !important;\n                    width: 100% !important;\n                    height: auto !important;\n                    margin: 0 0 6px !important;\n                    padding: 0 !important;\n                    text-align: left !important;\n                    white-space: nowrap !important;\n                }\n\n                .dynamics-form-root .dynamics-form-required {\n                    display: inline !important;\n                    position: static !important;\n                    float: none !important;\n                    margin-left: 3px !important;\n                }\n\n                .dynamics-form-root .dynamics-form-input {\n                    display: block !important;\n                    position: static !important;\n                    width: 100% !important;\n                    height: auto !important;\n                    margin: 0 !important;\n                    padding: ${inputPadding}px ${inputPadding*1.2}px !important;\n                }\n\n                .dynamics-form-root .dynamics-form-submit {\n                    display: block !important;\n                    position: static !important;\n                    width: 100% !important;\n                    height: auto !important;\n                    margin: 8px 0 0 !important;\n                }\n\n            `}),/*#__PURE__*/_jsxs(\"form\",{className:\"dynamics-form\",onSubmit:handleSubmit,noValidate:true,style:css.form,children:[\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \",\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",/*#__PURE__*/_jsxs(\"div\",{\"aria-hidden\":\"true\",style:{position:\"absolute\",height:0,overflow:\"hidden\",opacity:0,pointerEvents:\"none\"},children:[\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",/*#__PURE__*/_jsx(\"input\",{ref:honeypotRef,type:\"text\",name:\"_hp\",tabIndex:-1,autoComplete:\"off\",defaultValue:\"\"}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",(heading||subheading)&&/*#__PURE__*/_jsxs(\"div\",{style:css.header,children:[\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",heading&&/*#__PURE__*/_jsx(\"h2\",{style:css.heading,children:heading}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",subheading&&/*#__PURE__*/_jsx(\"p\",{style:css.subheading,children:subheading}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",status===\"error\"&&submitError&&/*#__PURE__*/_jsx(\"div\",{style:css.submitError,children:submitError}),/*#__PURE__*/_jsxs(\"div\",{className:\"dynamics-form-name-row\",style:css.nameRow,children:[/*#__PURE__*/_jsxs(\"div\",{className:\"dynamics-form-half-field\",style:css.halfField,children:[\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",renderField(\"firstName\",\"First Name\",\"text\",\"First name\"),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]}),/*#__PURE__*/_jsxs(\"div\",{className:\"dynamics-form-half-field\",style:css.halfField,children:[\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",renderField(\"lastName\",\"Last Name\",\"text\",\"Last name\"),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]}),/*#__PURE__*/_jsxs(\"div\",{className:\"dynamics-form-full-field\",style:css.fullField,children:[\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",renderField(\"workEmail\",\"Work Email\",\"email\",\"name@company.com\"),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]}),/*#__PURE__*/_jsxs(\"div\",{className:\"dynamics-form-full-field\",style:css.fullField,children:[\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",renderField(\"companyName\",\"Company Name\",\"text\",\"Company name\"),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]}),/*#__PURE__*/_jsxs(\"button\",{className:\"dynamics-form-submit\",type:\"submit\",disabled:isSubmitting,style:css.submitButton(isSubmitting),children:[\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \",isSubmitting?\"Submitting…\":submitLabel,\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]}),\"\\xa0 \\xa0 \\xa0 \\xa0 \\xa0 \\xa0\",\" \"]}),\"\\xa0 \\xa0 \\xa0 \\xa0\",\" \"]});}// ─── Framer property controls ────────────────────────────────────────────────\naddPropertyControls(DynamicsForm,{subject:{type:ControlType.String,title:\"Form Subject\",defaultValue:\"Inbound API Partner opportunity\",description:\"Appears as the topic on the Dynamics lead record.\"},formKey:{type:ControlType.String,title:\"Form Key\",defaultValue:\"lead-general\",placeholder:\"lead-general\",description:\"Unique identifier for this form.\"},destinationType:{type:ControlType.Enum,title:\"Destination\",options:[\"lead\",\"event-registration\",\"contest-entry\"],optionTitles:[\"Lead\",\"Event Registration\",\"Contest Entry\"],defaultValue:\"lead\",description:\"The Dynamics destination for the submission.\"},heading:{type:ControlType.String,title:\"Heading\",placeholder:\"Get in touch\"},subheading:{type:ControlType.String,title:\"Subheading\",placeholder:\"We'll respond within one business day.\"},successMessage:{type:ControlType.String,title:\"Success Message\",defaultValue:\"Thanks! We'll be in touch within one business day.\"},submitLabel:{type:ControlType.String,title:\"Button Label\",defaultValue:\"Submit\"},functionUrl:{type:ControlType.String,title:\"Function URL\",defaultValue:\"https://payevo-forms.azurewebsites.net/api/formsubmit\",placeholder:\"https://payevo-forms.azurewebsites.net/api/formsubmit\",description:\"The Azure Function endpoint.\"},primaryColor:{type:ControlType.Color,title:\"Primary\",defaultValue:\"#156BB4\"},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#FFFFFF\"},borderColor:{type:ControlType.Color,title:\"Border\",defaultValue:\"#D1D5DB\"},textColor:{type:ControlType.Color,title:\"Text\",defaultValue:\"#111827\"},labelColor:{type:ControlType.Color,title:\"Labels\",defaultValue:\"#374151\"},errorColor:{type:ControlType.Color,title:\"Error\",defaultValue:\"#DC2626\"},borderRadius:{type:ControlType.Number,title:\"Border Radius\",defaultValue:8,min:0,max:24,step:1,unit:\"px\"},inputPadding:{type:ControlType.Number,title:\"Input Padding\",defaultValue:12,min:6,max:24,step:1,unit:\"px\"},gap:{type:ControlType.Number,title:\"Field Gap\",defaultValue:20,min:8,max:40,step:2,unit:\"px\"},fontSize:{type:ControlType.Number,title:\"Font Size\",defaultValue:15,min:12,max:20,step:1,unit:\"px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"DynamicsForm\",\"slots\":[],\"annotations\":{\"framerIntrinsicWidth\":\"460\",\"framerIntrinsicHeight\":\"330\",\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./PartnerQualificationForm.map"],"mappings":"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"}