1import{_ as A}from"./DTi0P79d.js";import{_ as F}from"./ByfqyMCI.js";import{_ as G}from"./Dg-Jslkm.js";import{d as H,q as K,a as J,c as C,A as Q,y as W,K as S,e as m,h as a,w as l,f as _,F as X,l as h,B as Y,b as c,i as d,t as r,g as n,z as Z,n as V,k as x,j as ee,O as ae}from"./01aceCaE.js";import{_ as te}from"./BvpMrsnd.js";import{_ as oe}from"./D7uJ7AaV.js";import{_ as se}from"./MOuMBI6K.js";import{_ as ne}from"./QANVyOcI.js";import{_ as le}from"./CPtkPeMy.js";import{_ as re}from"./DDYP1ZA8.js";import{_ as ie}from"./Bky3n2GB.js";import{u as ce}from"./DbwBttR9.js";import{u as me,a as de}from"./ICS24BcA.js";import{L as ue}from"./CTeKj-Oh.js";import"./BEHD0UYf.js";import"./Dy2ZB6nZ.js";import"./D2Pvl5xT.js";import"./Dcb4XI06.js";import"./P6HuDbjz.js";import"./Y9aZYSB8.js";import"./CN4uLDTv.js";const pe={key:0,class:"container mx-auto px-4 md:py-8 mt-[66px] max-w-2xl"},_e={class:"space-y-2"},fe={key:0,class:"text-sm text-red-500"},ve={class:"space-y-2"},ge={key:0,class:"text-sm text-red-500"},ye={class:"space-y-2"},Ce={key:0,class:"text-sm text-red-500"},he={key:1,class:"flex justify-center items-center min-h-[calc(100vh-54px)]"},Ae=H({__name:"contact",async setup(xe){let f,v;const $=K(),{t:e}=J(),{regionCode:b,initRegion:B}=ce(),g=C(()=>$.params.countryCode?.toLowerCase()||"us"),y=C(()=>$.params.langCode?.toLowerCase()||"en"),k=h(!0);ae("previewRegionCode",b);const D=Q("currentRegion",()=>({countryCode:g.value,langCode:y.value,regionCode:"",isGlobale:!1})),t=h({name:"",email:"",message:""}),s=h({}),{toast:R}=W(),L=o=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(o),P=C(()=>{const o={};return t.value.name.trim()||(o.name=e("contact.validation.nameRequired")),t.value.email.trim()?L(t.value.email)||(o.email=e("contact.validation.emailInvalid")):o.email=e("contact.validation.emailRequired"),t.value.message.trim()||(o.message=e("contact.validation.messageRequired")),s.value=o,Object.keys(o).length===0}),u=h(!1),q=async()=>{if(u.value=!0,P.value)try{await $fetch("/mail/contact",{method:"POST",body:t.value}),R({title:e("contact.notifications.successTitle"),description:e("contact.notifications.successDescription"),variant:"success"}),t.value={name:"",email:"",message:""}}catch(o){console.error("Error submitting form:",o),R({title:e("contact.notifications.errorTitle"),description:e("contact.notifications.errorDescription"),variant:"destructive"})}finally{u.value=!1}else u.value=!1};return[f,v]=S(()=>B(g.value,y.value)),await f,v(),b.value||([f,v]=S(()=>Y("/fr")),await f,v()),D.value={countryCode:g.value,langCode:y.value,regionCode:b.value,isGlobale:!1},k.value=!1,me({title:()=>e("contact.title"),ogTitle:()=>e("contact.title"),description:()=>e("contact.description"),ogDescription:()=>e("contact.description"),twitterCard:"summary_large_image"}),de({link:[{rel:"canonical",href:C(()=>`https://expert-zoom.com/${g.value}/${y.value}/contact`)}]}),(o,i)=>{const E=oe,N=G,j=te,w=se,T=ne,z=le,I=re,M=F,O=A,U=ie;return c(),m(X,null,[k.value?(c(),m("div",he,[...i[3]||(i[3]=[_("div",{class:"animate-spin rounded-full h-8 w-8 border-b-2 border-gray-900"},null,-1)])])):(c(),m("div",pe,[a(O,{class:"md:p-6 bg-stone-50"},{default:l(()=>[a(j,null,{default:l(()=>[a(E,{class:"text-2xl font-bold text-center"},{default:l(()=>[d(r(n(e)("contact.title")),1)]),_:1}),a(N,{class:"text-center md:text-lg mt-8"},{default:l(()=>[d(r(n(e)("contact.description")),1)]),_:1})]),_:1}),a(M,null,{default:l(()=>[_("form",{onSubmit:Z(q,["prevent"]),class:"space-y-6"},[_("div",_e,[a(w,{for:"name"},{default:l(()=>[d(r(n(e)("contact.form.name")),1)]),_:1}),a(T,{id:"name",modelValue:t.value.name,"onUpdate:modelValue":i[0]||(i[0]=p=>t.value.name=p),class:V({"border-red-500":s.value.name}),placeholder:n(e)("contact.form.namePlaceholder")},null,8,["modelValue","class","placeholder"]),s.value.name?(c(),m("span",fe,r(s.value.name),1)):x("",!0)]),_("div",ve,[a(w,{for:"email"},{default:l(()=>[d(r(n(e)("contact.form.email")),1)]),_:1}),a(T,{id:"email",type:"email",modelValue:t.value.email,"onUpdate:modelValue":i[1]||(i[1]=p=>t.value.email=p),class:V({"border-red-500":s.value.email}),placeholder:n(e)("contact.form.emailPlaceholder")},null,8,["modelValue","class","placeholder"]),s.value.email?(c(),m("span",ge,r(s.value.email),1)):x("",!0)]),_("div",ye,[a(w,{for:"message"},{default:l(()=>[d(r(n(e)("contact.form.message")),1)]),_:1}),a(z,{id:"message",modelValue:t.value.message,"onUpdate:modelValue":i[2]||(i[2]=p=>t.value.message=p),class:V({"border-red-500":s.value.message}),placeholder:n(e)("contact.form.messagePlaceholder"),rows:"5"},null,8,["modelValue","class","placeholder"]),s.value.message?(c(),m("span",Ce,r(s.value.message),1)):x("",!0)]),a(I,{disabled:u.value,type:"submit",class:"uppercase w-full"},{default:l(()=>[u.value?(c(),ee(n(ue),{key:0,class:"w-4 h-4 mr-2 animate-spin"})):x("",!0),d(" "+r(n(e)("contact.form.submit")),1)]),_:1},8,["disabled"])],32)]),_:1})]),_:1})])),a(U,{class:"my-8"})],64)}}});
1export{Ae 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.