import{l as P,r as q,y as N,a9 as L,aa as R,v as s,P as r,a3 as u,ax as O,a7 as w,F as W,af as Y,V as $,Z as j,ab as z,u as T,i as H,k as b,h as m,ae as _}from"./vue-core-BWkI2jmS.js";import{a as Z,L as A,b as G}from"./admin-Ct38yXux.js";import{u as J,a as K,b as Q}from"./FormSuccessScreen-uBnFk0ky.js";import{u as X}from"./index-jlIP7SKV.js";import{F as ee}from"./FormShell-YkNv90Bg.js";const te={class:"form-field form-field--row"},se={class:"form-field__col"},ie=["for"],le=["id","disabled"],oe={class:"form-field__col"},ae=["for"],ne=["id","disabled"],re={class:"form-field form-field--row"},de={class:"form-field__col"},ue=["for"],me=["id","disabled"],ce={class:"form-field__col"},fe=["for"],pe=["id","disabled"],ve={class:"form-field form-field--row"},ge={class:"form-field__col"},be=["for"],_e=["id","disabled"],he={class:"form-field__col"},ye=["for"],we=["id","disabled"],ke=["value"],Fe={class:"form-field"},Se=["for"],Ne={key:0,class:"form-field__hint-inline"},$e=["id","disabled"],Te={class:"form-field"},Ae=["for"],Me=["id","disabled"],Ve={class:"form-field__honeypot","aria-hidden":"true"},xe=["name"],Ue=P({__name:"FormBooking",props:{preset:{},previewMode:{type:Boolean,default:!1},initialTopic:{default:""},initialEmail:{default:""},initialEml:{default:""}},setup(l){const o=l,{trackFormStart:M,trackFormSubmit:V}=Q(),{cleanUtm:x}=J(),{honeypotField:k,honeypotValue:f,isBot:U}=K(),C=X(),F={nis2:"NIS2",dora:"DORA",pentesting:"Pentesting",isms:"ISMS","incident-response":"Incident Response","cloud-security":"Cloud Security",compliance:"Compliance",awareness:"Awareness",allgemein:"Allgemein"},B=b(()=>{const a=o.preset.options.topicWhitelist;return!a||a.length===0?Object.entries(F).map(([t,i])=>({value:t,label:i})):a.map(t=>({value:t,label:F[t]||t}))}),n=m("idle"),p=m(""),h=m(!1),e=q({firstName:"",lastName:"",email:o.initialEmail||"",phone:"",company:"",topic:o.initialTopic||o.preset.options.defaultTopic||"",scheduledAt:"",message:""});N(()=>o.initialEmail,a=>{a&&!e.email&&(e.email=a)}),N(()=>o.initialTopic,a=>{a&&!e.topic&&(e.topic=a)});const c=m(!1),v=m(!1),g=m(!1),y=b(()=>o.preset.options.defaultDurationMinutes),E=b(()=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e.email.trim())),S=b(()=>!!(!e.firstName.trim()||!e.lastName.trim()||!E.value||!e.topic||!e.scheduledAt||o.preset.consentText&&!c.value));function d(){h.value||o.previewMode||(h.value=!0,M(`preset-${o.preset.slug}`))}async function I(){if(o.previewMode||U.value||S.value)return;n.value="submitting",p.value="";const a=await Z.post("/forms/booking",{firstName:e.firstName.trim(),lastName:e.lastName.trim(),email:e.email.trim(),phone:e.phone.trim()||void 0,company:e.company.trim()||void 0,topic:e.topic,scheduledAt:e.scheduledAt||void 0,durationMinutes:y.value||void 0,message:e.message.trim()||void 0,privacyAccepted:c.value,consentTracking:v.value,consentMarketing:g.value,presetSlug:o.preset.slug,page:window.location.pathname+window.location.search,utm:x.value,eml:o.initialEml||void 0,cookieConsent:C.getSnapshot()??void 0,[k]:f.value},{skipAuth:!0});a.success?(n.value="success",V(`preset-${o.preset.slug}`),A.info("SYSTEM","Preset-Buchungsformular abgesendet",{slug:o.preset.slug})):(n.value="error",p.value=a.error||"Die Termin-Anfrage konnte nicht gesendet werden.",A.error("SYSTEM","Preset-Buchungsformular Fehler",{slug:o.preset.slug,error:a.error}))}function D(){n.value="idle",p.value="",e.firstName="",e.lastName="",e.email=o.initialEmail||"",e.phone="",e.company="",e.topic=o.initialTopic||o.preset.options.defaultTopic||"",e.scheduledAt="",e.message="",c.value=!1,v.value=!1,g.value=!1,h.value=!1}return(a,t)=>(_(),L(ee,{preset:l.preset,status:n.value,"error-message":p.value,consent:c.value,"tracking-consent":v.value,"marketing-consent":g.value,"submit-disabled":S.value,"preview-mode":l.previewMode,"analytics-event":"conversion","analytics-params":{form_type:"preset-booking",preset_slug:l.preset.slug},onSubmit:I,"onUpdate:consent":t[9]||(t[9]=i=>c.value=i),"onUpdate:trackingConsent":t[10]||(t[10]=i=>v.value=i),"onUpdate:marketingConsent":t[11]||(t[11]=i=>g.value=i),onReset:D},{default:R(()=>[s("div",te,[s("div",se,[s("label",{class:"form-field__label",for:`${l.preset.slug}-firstname`},"Vorname *",8,ie),r(s("input",{id:`${l.preset.slug}-firstname`,"onUpdate:modelValue":t[0]||(t[0]=i=>e.firstName=i),type:"text",autocomplete:"given-name",class:"form-field__input",disabled:n.value==="submitting",required:"",onFocus:d},null,40,le),[[u,e.firstName]])]),s("div",oe,[s("label",{class:"form-field__label",for:`${l.preset.slug}-lastname`},"Nachname *",8,ae),r(s("input",{id:`${l.preset.slug}-lastname`,"onUpdate:modelValue":t[1]||(t[1]=i=>e.lastName=i),type:"text",autocomplete:"family-name",class:"form-field__input",disabled:n.value==="submitting",required:"",onFocus:d},null,40,ne),[[u,e.lastName]])])]),s("div",re,[s("div",de,[s("label",{class:"form-field__label",for:`${l.preset.slug}-email`},"E-Mail *",8,ue),r(s("input",{id:`${l.preset.slug}-email`,"onUpdate:modelValue":t[2]||(t[2]=i=>e.email=i),type:"email",autocomplete:"email",class:"form-field__input",disabled:n.value==="submitting",required:"",onFocus:d},null,40,me),[[u,e.email]])]),s("div",ce,[s("label",{class:"form-field__label",for:`${l.preset.slug}-phone`},"Telefon",8,fe),r(s("input",{id:`${l.preset.slug}-phone`,"onUpdate:modelValue":t[3]||(t[3]=i=>e.phone=i),type:"tel",autocomplete:"tel",class:"form-field__input",disabled:n.value==="submitting",onFocus:d},null,40,pe),[[u,e.phone]])])]),s("div",ve,[s("div",ge,[s("label",{class:"form-field__label",for:`${l.preset.slug}-company`},"Unternehmen",8,be),r(s("input",{id:`${l.preset.slug}-company`,"onUpdate:modelValue":t[4]||(t[4]=i=>e.company=i),type:"text",autocomplete:"organization",class:"form-field__input",disabled:n.value==="submitting",onFocus:d},null,40,_e),[[u,e.company]])]),s("div",he,[s("label",{class:"form-field__label",for:`${l.preset.slug}-topic`},"Thema *",8,ye),r(s("select",{id:`${l.preset.slug}-topic`,"onUpdate:modelValue":t[5]||(t[5]=i=>e.topic=i),class:"form-field__input",disabled:n.value==="submitting",required:"",onFocus:d},[t[12]||(t[12]=s("option",{value:"",disabled:""},"Bitte auswählen",-1)),(_(!0),w(W,null,Y(B.value,i=>(_(),w("option",{key:i.value,value:i.value},$(i.label),9,ke))),128))],40,we),[[O,e.topic]])])]),s("div",Fe,[s("label",{class:"form-field__label",for:`${l.preset.slug}-when`},[t[13]||(t[13]=j(" Wunschtermin * ",-1)),y.value?(_(),w("span",Ne,"("+$(y.value)+" Min.)",1)):z("",!0)],8,Se),r(s("input",{id:`${l.preset.slug}-when`,"onUpdate:modelValue":t[6]||(t[6]=i=>e.scheduledAt=i),type:"datetime-local",class:"form-field__input",disabled:n.value==="submitting",required:"",onFocus:d},null,40,$e),[[u,e.scheduledAt]]),t[14]||(t[14]=s("p",{class:"form-field__hint"}," Wir bestätigen Ihren Terminwunsch oder schlagen Ihnen eine Alternative vor. ",-1))]),s("div",Te,[s("label",{class:"form-field__label",for:`${l.preset.slug}-message`},"Nachricht",8,Ae),r(s("textarea",{id:`${l.preset.slug}-message`,"onUpdate:modelValue":t[7]||(t[7]=i=>e.message=i),class:"form-field__textarea",rows:"4",disabled:n.value==="submitting",onFocus:d},null,40,Me),[[u,e.message]])]),s("div",Ve,[r(s("input",{"onUpdate:modelValue":t[8]||(t[8]=i=>H(f)?f.value=i:null),name:T(k),type:"text",tabindex:"-1",autocomplete:"off"},null,8,xe),[[u,T(f)]])])]),_:1},8,["preset","status","error-message","consent","tracking-consent","marketing-consent","submit-disabled","preview-mode","analytics-params"]))}}),Pe=G(Ue,[["__scopeId","data-v-cb6ded2f"]]);export{Pe as F};