1import G from"./DkWGNHsB.js";import{F as j,a as E}from"./Cijk6y8L.js";import z from"./C8BGABDk.js";import{X as C,K as R,aI as W,M as $,N as s,O as r,P as x,Q as k,T,U as o,R as H,$ as D,V as I,a0 as N,a1 as q,_ as Q}from"./B-rITWnd.js";const X={class:"landingpage-form-hubspot"},J={key:0},Y={class:"flex flex-col gap-4"},Z={key:0,class:"pt-2"},ee={key:1},te=["innerHTML"],oe={key:1},ae=["innerHTML"],ne=["innerHTML"],se=["innerHTML"],re={class:"mt-8"},ie={key:1,class:"mt-4 font-bold text-red-600"},le=["innerHTML"],me={__name:"FormHubspotLandingPage",props:{portalId:{type:String,required:!0},formGuid:{type:String,required:!0},formData:{type:Object,required:!0},hubspotPortal:{type:String,default:"production",validator:L=>["sandbox","production"].includes(L)}},setup(L){const i=L,M=C(!1),V=C(!1),K=C(""),O=C(""),{t:v}=R(),n=W({}),m=$(()=>{var c;return((c=i.formData)==null?void 0:c.legalConsentOptions)||null}),S={required:v("validationRequired"),email:v("validationEmail"),number:v("validationNumber")},A={single_line_text:{formKitType:"text"},multi_line_text:{formKitType:"textarea"},email:{formKitType:"email",addValidation:"email"},phone:{formKitType:"tel"},number:{formKitType:"number"},dropdown:{formKitType:"select",needsOptions:!0},radio:{formKitType:"radio",needsOptions:!0},checkbox:{withOpts:"checkboxGroup",withoutOpts:"checkbox",needsOptions:!0},single_checkbox:{formKitType:"checkbox"},date:{formKitType:"date"},file:{formKitType:"file"},hidden:{formKitType:"hidden"}},P=c=>c.formKitType==="select"?"input placeholder-transparent pl-36 select-input":"input placeholder-transparent pl-32",U=c=>{switch(c.type){case"radio":return"";case"textarea":return"$reset absolute top-[6px] left-[6px] text-sm flex items-center bg-secondary-200 px-3 rounded-l-xl h-[calc(100%-12px)] min-w-[120px] nx-auto";default:return"$reset absolute top-[6px] left-[6px] text-sm flex items-center bg-secondary-200 px-3 rounded-l-full h-[calc(100%-12px)] min-w-[120px]"}},F=$(()=>(i.formData.fieldGroups||[]).flatMap(w=>(w.fields||[]).map(t=>{var b,y;const a=A[t.fieldType]||{formKitType:"text"};let l=a.formKitType,u=null;t.fieldType==="checkbox"?(l=(b=t.options)!=null&&b.length?a.withOpts:a.withoutOpts,u=t.options||null):t.fieldType==="single_checkbox"?l="checkbox":a.needsOptions&&(u=t.options||null);const p=[];t.required&&p.push("required"),a.addValidation&&p.push(a.addValidation);const _=p.join("|");return t.name in n||(l==="checkboxGroup"?n[t.name]=Array.isArray(t.defaultValues)?t.defaultValues:[]:l==="checkbox"?n[t.name]=t.defaultValue==="true"||t.defaultValue===!0:l==="select"&&((y=t.defaultValues)!=null&&y.length)?n[t.name]=t.defaultValues[0]:n[t.name]=t.defaultValue??""),{name:t.name,label:t.label||t.placeholder,placeholder:t.placeholder||"",formKitType:l,options:u,validation:_,fieldType:t.fieldType,hidden:!!t.hidden}})));async function B(){var a,l,u,p,_,b,y,e,f;M.value=!0,O.value="",V.value=!1;const c=Object.entries(n).filter(([d])=>!d.startsWith("sub_")).map(([d,h])=>{let g=h;return Array.isArray(h)&&(g=h.join(";")),typeof h=="boolean"&&(g=h?"true":"false"),{name:d,value:g}}),w=((l=(a=i.formData.legalConsentOptions)==null?void 0:a.communicationsCheckboxes)==null?void 0:l.map(d=>{const h=`sub_${d.subscriptionTypeId}`,g=n[h]===!0||n[h]==="true";return{subscriptionTypeId:d.subscriptionTypeId,value:g,text:d.label||"",legalBasis:"CONSENT_WITH_NOTICE"}}))||[],t={portalId:i.portalId,formGuid:i.formGuid,fields:c,context:{pageUri:window.location.href,pageName:document.title},legalConsentOptions:{consent:{consentToProcess:!0,text:((u=i.formData.legalConsentOptions)==null?void 0:u.communicationConsentText)||"",communications:w}},hubspotPortal:i.hubspotPortal};try{await $fetch("/api/hubspot",{method:"POST",body:t}),V.value=!0,((b=(_=(p=i.formData)==null?void 0:p.configuration)==null?void 0:_.postSubmitAction)==null?void 0:b.type)==="thank_you"?K.value=i.formData.configuration.postSubmitAction.value||"Thank you for your submission!":((f=(e=(y=i.formData)==null?void 0:y.configuration)==null?void 0:e.postSubmitAction)==null?void 0:f.type)==="redirect_url"?K.value=`<a href="${i.formData.configuration.postSubmitAction.value}" rel="noreferrer noopener" target="_blank"> ${i.formData.configuration.postSubmitAction.value} </a>
1`:K.value="Thank you for your submission!"}catch(d){O.value=d.message||"An error occurred during submission."}finally{M.value=!1}}return(c,w)=>{const t=G,a=j,l=z;return r(),s("div",X,[x(o(E),{"config-file":"true"},{default:k(()=>[o(V)?T("",!0):(r(),s("div",J,[x(a,{type:"form",actions:!1,onSubmit:B},{default:k(()=>{var u,p,_,b,y;return[x(t,{level:"h5","visual-level":"h5",class:"mb-7"},{default:k(()=>[D(I(o(v)("personalData")),1)]),_:1}),H("div",Y,[(r(!0),s(N,null,q(o(F),e=>(r(),s("div",{key:e.name,class:Q(["mb-4",["mb-4",e.hidden?"hidden":""]])},[e.fieldType==="single_checkbox"?(r(),s("div",Z,[x(a,{modelValue:o(n)[e.name],"onUpdate:modelValue":f=>o(n)[e.name]=f,name:e.name,label:e.label,type:"checkbox",validation:e.validation,"validation-messages":S,"decorator-icon":"check",classes:{decorator:"border rounded-sm",decoratorIcon:"text-xs text-black"}},null,8,["modelValue","onUpdate:modelValue","name","label","validation"])])):(r(),s("div",ee,[x(a,{modelValue:o(n)[e.name],"onUpdate:modelValue":f=>o(n)[e.name]=f,name:e.name,label:e.validation.includes("required")?`${e.label}*`:e.label,type:e.formKitType,placeholder:e.placeholder,validation:e.validation,"validation-messages":S,"select-icon":e.formKitType==="select"?"down":void 0,options:e.formKitType==="select"?e.options:void 0,classes:{outer:"$reset",wrapper:"w-full relative",inner:"inner",label:U(e),input:P(e)}},null,8,["modelValue","onUpdate:modelValue","name","label","type","placeholder","validation","select-icon","options","classes"])]))],2))),128)),(u=o(m))!=null&&u.communicationConsentText?(r(),s("div",{key:0,class:"mb-4 text-sm text-gray-600",innerHTML:o(m).communicationConsentText},null,8,te)):T("",!0),(_=(p=o(m))==null?void 0:p.communicationsCheckboxes)!=null&&_.length?(r(),s("ul",oe,[(r(!0),s(N,null,q(o(m).communicationsCheckboxes,e=>(r(),s("li",{key:e.subscriptionTypeId,class:"mb-3"},[x(a,{modelValue:o(n)[`sub_${e.subscriptionTypeId}`],"onUpdate:modelValue":f=>o(n)[`sub_${e.subscriptionTypeId}`]=f,type:"checkbox",name:`sub_${e.subscriptionTypeId}`,label:e.label,"decorator-icon":"check",validation:e.required?"required":void 0,"validation-messages":S,classes:{decorator:"border rounded-sm",decoratorIcon:"text-xs text-black"}},{label:k(()=>[H("span",{class:"text-sm",innerHTML:e.label},null,8,ae)]),_:2},1032,["modelValue","onUpdate:modelValue","name","label","validation"])]))),128))])):T("",!0),(b=o(m))!=null&&b.consentToProcessText?(r(),s("div",{key:2,class:"mb-4 text-sm text-gray-600",innerHTML:o(m).consentToProcessText},null,8,ne)):T("",!0),(y=o(m))!=null&&y.privacyText?(r(),s("div",{key:3,class:"mb-4 text-xs leading-4 text-gray-600",innerHTML:o(m).privacyText},null,8,se)):T("",!0)]),H("div",re,[x(a,{type:"submit",disabled:o(M)},{default:k(()=>[D(I(o(v)("downloadBrochure"))+" ",1),x(l,{class:"ml-3 size-3",name:"fa7-solid:arrow-right"})]),_:1},8,["disabled"])])]}),_:1})])),o(O)?(r(),s("div",ie,I(o(O)),1)):T("",!0),o(V)?(r(),s("div",{key:2,class:"mt-4 font-bold text-green-600",innerHTML:o(K)},null,8,le)):T("",!0)]),_:1})])}}};export{me as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.