1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[935,1558,1612,3068,3239,5103,6871,7702,9852],{7925:(e,s,t)=>{t.d(s,{c:()=>r});var a=t(26667);function r(){let[e,s]=(0,a.useState)({x:0,y:0});return(0,a.useEffect)(()=>{let e=e=>{s({x:e.clientX,y:e.clientY})};return window.addEventListener("mousemove",e),()=>{window.removeEventListener("mousemove",e)}},[]),e}},18628:(e,s,t)=>{t.d(s,{k:()=>p});var a=t(67611),r=t(26667),l=t(89095),n=t(95950),i=t(85470),c=t(82591),d=t(25773),o=t(63320);let m=["email"],h=[{key:"day_before",label:"Tag vorher",time:"18:00"},{key:"same_day",label:"Am Termintag",time:"07:00"},{key:"1h",label:"1 Stunde vorher",time:""}],x=[{key:"email",label:"Email",icon:c.A},{key:"sms",label:"SMS",icon:d.A},{key:"whatsapp",label:"WhatsApp",icon:o.A}];function u(e){let s={day_before:{enabled:!0,channels:[...m]},same_day:{enabled:!0,channels:[...m]},"1h":{enabled:!0,channels:[...m]}};if(!e)return s;if(e.includes(":"))for(let t of e.split("|")){let[e,a]=t.split(":");if(e&&h.some(s=>s.key===e))if(void 0===a||""===a)s[e]={enabled:!1,channels:[]};else{let t=a.split(",").filter(Boolean);s[e]={enabled:t.length>0,channels:t.length>0?t:[...m]}}}else for(let t of e.split(","))"no_day_before"===t&&(s.day_before={enabled:!1,channels:[]}),"no_same_day"===t&&(s.same_day={enabled:!1,channels:[]}),"no_1h"===t&&(s["1h"]={enabled:!1,channels:[]});return s}function p({form:e}){let[s,t]=(0,r.useState)(()=>u(e.getValues("cron_job")));(0,r.useEffect)(()=>{let s=e.watch((e,{name:s})=>{"cron_job"===s&&t(u(e.cron_job))});return()=>s.unsubscribe()},[e]);let c=s=>{t(s),e.setValue("cron_job",function(e){let s=[];for(let t of h){let a=e[t.key];a.enabled?a.channels.length>0&&s.push(`${t.key}:${a.channels.join(",")}`):s.push(`${t.key}:`)}return s.join("|")||null}(s))};return(0,a.jsxs)(i.Zp,{children:[(0,a.jsx)(i.aR,{className:"pb-3",children:(0,a.jsx)(n.J,{className:"text-sm font-medium",children:"Erinnerungs-Benachrichtigungen"})}),(0,a.jsx)(i.Wu,{className:"space-y-3",children:h.map(e=>(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-3",children:[(0,a.jsx)(l.S,{id:`reminder-${e.key}`,checked:s[e.key].enabled,onCheckedChange:t=>{var a,r;let l;return a=e.key,r=!0===t,void((l={...s})[a]={enabled:r,channels:r?[...m]:[]},c(l))}}),(0,a.jsxs)(n.J,{htmlFor:`reminder-${e.key}`,className:"text-sm cursor-pointer flex-1",children:[e.label,e.time&&(0,a.jsxs)("span",{className:"text-muted-foreground ml-1",children:["(",e.time,")"]})]})]}),s[e.key].enabled&&(0,a.jsx)("div",{className:"flex items-center gap-4 ml-7 pl-1 border-l-2 border-muted",children:x.map(t=>{let r=t.icon;return(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(l.S,{id:`${e.key}-${t.key}`,checked:s[e.key].channels.includes(t.key),onCheckedChange:a=>{var r,l,n;let i,d;return r=e.key,l=t.key,n=!0===a,d=(i={...s})[r].channels,void(n?!d.includes(l)&&(i[r]={...i[r],channels:[...d,l]}):i[r]={...i[r],channels:d.filter(e=>e!==l)},0===i[r].channels.length&&(i[r].enabled=!1),c(i))},className:"h-3.5 w-3.5"}),(0,a.jsxs)(n.J,{htmlFor:`${e.key}-${t.key}`,className:"text-xs cursor-pointer flex items-center gap-1 text-muted-foreground",children:[(0,a.jsx)(r,{className:"h-3 w-3"}),t.label]})]},t.key)})})]},e.key))})]})}},20593:(e,s,t)=>{t.d(s,{InteractionManager:()=>W});var a=t(67611),r=t(26667),l=t(24597),n=t(26364),i=t(51188),c=t(44756),d=t(76421),o=t(69190),m=t(34382),h=t(88325),x=t(85470),u=t(78060),p=t(15536),f=t(39942),j=t(73442),g=t(28898),b=t(49209),N=t(51096),y=t(19743),v=t(25900),w=t(39982),k=t(44016),C=t(63320),A=t(23230),E=t(42091),_=t(82591),$=t(57445),S=t(98098);function M({appointment:e}){let s=e.contact_date?new Date(e.contact_date):null,t=e.contact_time?.slice(0,5)||"--:--",r=e.user||e.lead,l=r?`${r.firstname||""} ${r.lastname||""}`.trim():null,n=r?.email,d=r?.phone,o=r?.avatar_url,m=e.contact_type_media?S.m3[e.contact_type_media]:null,h=(e=>{switch(e){case"video":return y.A;case"onsite_office":return v.A;case"onsite_lead":case"onsite_customer":return w.A;case"onsite_custom":return k.A;default:return C.A}})(e.contact_type_media);return(0,a.jsxs)(x.Zp,{className:"w-full rounded-2xl shadow-lg animate-in fade-in slide-in-from-top-4 duration-500 border",children:[(0,a.jsxs)(x.aR,{className:"relative pb-2",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)($.E,{variant:"outline",className:"rounded-md px-2 py-0.5 text-[10px] uppercase tracking-wider font-semibold border-primary/20 bg-primary/5 text-primary",children:m?.label||"Termin"}),null]}),(0,a.jsx)(x.ZB,{className:"text-base font-semibold",children:s&&(0,i.GP)(s,"EEEE, d. MMMM yyyy",{locale:c.de})}),(0,a.jsxs)(x.BT,{className:"flex items-center gap-2 text-sm text-muted-foreground mt-0.5",children:[(0,a.jsx)(A.A,{className:"h-3.5 w-3.5"}),(0,a.jsxs)("span",{children:[t," Uhr"]}
1),(0,a.jsx)("span",{className:"text-muted-foreground/50",children:"â¢"}),(0,a.jsxs)("span",{children:[(0,S.Qr)(e.contact_type,e.duration_minutes)," ","Min."]})]})]}),(0,a.jsx)(x.X9,{children:(0,a.jsx)("div",{className:"h-10 w-10 rounded-full bg-muted/50 flex items-center justify-center border shadow-sm",children:h&&(0,a.jsx)(h,{className:"h-5 w-5 text-primary"})})})]}),(0,a.jsxs)(x.Wu,{className:"space-y-3",children:[(0,a.jsxs)("div",{className:"w-full bg-muted/30 rounded-xl p-3 flex items-start gap-3 border border-border/50",children:[(0,a.jsx)("div",{className:"mt-0.5 relative h-8 w-8 rounded-full overflow-hidden bg-muted flex items-center justify-center flex-shrink-0",children:o?(0,a.jsx)(N.default,{src:o,alt:l||"Avatar",fill:!0,className:"object-cover"}):(0,a.jsx)(E.A,{className:"h-4 w-4 text-muted-foreground"})}),(0,a.jsxs)("div",{className:"text-sm",children:[(0,a.jsx)("p",{className:"font-medium text-foreground",children:l||"Unbekannt"}),(0,a.jsxs)("div",{className:"flex flex-col gap-0.5 mt-1",children:[n&&(0,a.jsxs)("div",{className:"flex items-center gap-1.5 text-muted-foreground text-xs",children:[(0,a.jsx)(_.A,{className:"h-3 w-3"}),(0,a.jsx)("span",{children:n})]}),d&&(0,a.jsxs)("div",{className:"flex items-center gap-1.5 text-muted-foreground text-xs",children:[(0,a.jsx)(C.A,{className:"h-3 w-3"}),(0,a.jsx)("span",{children:d})]})]})]})]}),e.contact_type&&S.CA[e.contact_type]&&(0,a.jsx)("div",{className:"px-1 pt-2",children:(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:S.CA[e.contact_type].description})})]})]})}var B=t(7112);let L={phone:C.A,video:y.A,onsite_office:v.A,onsite_lead:w.A,onsite_customer:w.A,onsite_custom:k.A};function T({contactType:e,mediaType:s}){let t=S.CA[e],r=s?S.m3[s]:null,l=s?L[s]:null;return t?(0,a.jsxs)(x.Zp,{className:"w-full rounded-2xl shadow-lg animate-in fade-in slide-in-from-top-4 duration-500 border border-dashed bg-muted/20",children:[(0,a.jsxs)(x.aR,{children:[(0,a.jsx)(x.ZB,{className:"text-base font-semibold",children:t.title}),(0,a.jsx)(x.X9,{children:(0,a.jsx)(B.A,{className:"h-5 w-5 text-primary"})})]}),(0,a.jsxs)(x.Wu,{className:"space-y-3",children:[(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:t.description}),r?.info&&(0,a.jsxs)("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[l&&(0,a.jsx)(l,{className:"h-3 w-3 shrink-0"}),(0,a.jsx)("span",{className:"italic",children:"firstcall"===e&&"phone"===s?"Wir rufen zeitnah zur\xfcck, falls du uns nicht erreichst.":r.info})]})]})]}):null}var z=t(9118),D=t(50411);function R({fetchSlots:e,onBook:s,minDateOffsetDays:t=2,cancelPath:l="/",title:N,description:y,initialData:v,submitLabel:w="Termin vereinbaren",isReschedule:k=!1,currentAppointment:C,contactType:A="qualifycall",contactTypes:E,mediaType:_="phone",footerContent:$}){let B,L,R,V,W,I,F,J,U,Z,P,O=C?.contact_date?(0,n.H)(C.contact_date):void 0,K=C?.contact_time?C.contact_time.slice(0,5):null,{mainStep:H,wizardStepIndex:G,date:q,time:X,isSubmitting:Y,isSuccess:Q,appointmentId:ee,availableSlots:es,isLoadingSlots:et,slotsError:ea,minDate:er,form:el,currentStepField:en,fieldId:ei,isOverview:ec,handleDateSelect:ed,setTime:eo,handleMainNext:em,nextWizardStep:eh,handleBack:ex,onSubmit:eu}=(0,z.q)({fetchSlots:e,onBook:s,minDateOffsetDays:t,initialData:v,initialDate:O,initialTime:K,isReschedule:k}),[ep,ef]=(0,r.useState)(!1);(0,r.useEffect)(()=>{ep&&q&&X&&(em(),ef(!1))},[ep,q,X,em]);let{register:ej,formState:{errors:eg},getValues:eb}=el;(0,r.useEffect)(()=>{ea&&h.oR.error("Fehler beim Laden der Zeiten.")},[ea]),(0,r.useEffect)(()=>{Q&&h.oR.success("Termin erfolgreich gebucht!")},[Q]);let eN=async()=>{try{await eu()}catch(e){h.oR.error("Fehler bei der Buchung: "+(e.message||"Ein unbekannter Fehler ist aufgetreten"))}};if(Q&&ee){let e=C?.contact_type_media||_,s=C?.contact_type||A,t=(0,S.Qr)(s,C?.duration_minutes),r=S.m3[e],n=r?.label;return(0,a.jsx)(g.w,{email:eb("email"),date:q,time:X||"",appointmentId:ee,homePath:l,durationMinutes:t,mediaLabel:n})}return(0,a.jsxs)("div",{className:"w-full min-h-screen py-6 md:py-12 flex flex-col items-center justify-start gap-8",children:[(0,a.jsx)(b.s,{title:N,description:y}),!C&&(E||A)&&(0,a.jsx)("div",{className:"w-full space-y-4",children:E?E.map(e=>(0,a.jsx)(T,{contactType:e,mediaType:_},e)):A&&(0,a.jsx)(T,{contactType:A,mediaType:_})}),C&&(0,a.jsx)(M,{appointment:C}),(0,a.jsxs)(x.Zp,{className:"w-full transition-all duration-300 relative",children:[(0,a.jsxs)(x.aR,{children:[(0,a.jsx)(x.ZB,{children:1===H?"Termin vereinbaren":en.label}),(0,a.jsx)(x.BT,{children:1===H?"W\xe4hle einen passenden Termin aus.":en.description})]}),(0,a.jsx)(x.Wu,{className:"p-2 md:p-6 min-h-[300px] flex flex-col justify-center",children:1===H?(0,a.jsx)(j.x,{fetchSlots:e,minDateOffsetDays:t,initialDate:q,initialTime:X,onDateChange:ed,onTimeChange:eo,autoProceed:!0,onSelectionComplete:(e,s)=>{eo(s),ef(!0)}}):(0,a.jsx)("form",{onSubmit:eN,className:"max-w-md mx-auto w-full animate-in slide-in-from-right-4 fade-in duration-300",children:ec?(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsxs)("div",{className:"bg-muted/30 p-4 rounded-lg border space-y-3",children:[(0,a.jsxs)("div",{className:"flex justify-between items-center pb-2 border-b",children:[(0,a.jsx)("span",{className:"text-muted-foreground",children:"Termin:"}),(0,a.jsxs)("span",{className:"font-medium",children:[q&&(0,i.GP)(q,"d.MM.yyyy",{locale:c.de})," -"," ",X," Uhr"]})]}),(0,a.jsx)("div",{className:"grid gap-2 text-sm",children:(B=C?.lead||C?.user,L=eb("firstname")||B?.firstname||"",R=eb("lastname")||B?.lastname||"",V=eb("email")||B?.email||"",W=eb("phone")||"",I=eb("notes"),F=el.watch("files")||[],(0,a.jsxs)(a.Fragment,{children:[(L||R)&&(0,a.jsxs)("div",{className:"flex justify-between",children:[(0,a.jsx)("span",{className:"text-muted-foreground",children:"Name:"}),(0,a.jsxs)("span",{className:"font-medium",children:[L," ",R]})]}),V&&(0,a.jsxs)("div",{className:"flex justify-between",children:[(0,a.jsx)("span",{className:"text-muted-foreground",children:"Email:"}),(0,a.jsx)("span",{className:"font-medium",children:V})]}),W&&(0,a.jsxs)("div",{className:"flex justify-between",children:[(0,a.jsx)("span",{className:"text-muted-foreground",children:"Tel:"}),(0,a.jsx)("span",{className:"font-medium",children:W})]}),I&&(0,a.jsxs)("div",{className:"flex flex-col gap-1 mt-2",children:[(0,a.jsx)("span",{className:"text-muted-foreground",children:"Notiz:"}),(0,a.jsx)("span",{className:"font-medium bg-muted p-2 rounded text-xs",children:I})]}),F.length>0&&(0,a.jsxs)("div",{className:"flex flex-col gap-1 mt-2",children:[(0,a.jsx)("span",{className:"text-muted-foreground",children:"Dateien:"}),(0,a.jsx)("div",{className:"flex flex-wrap gap-2 mt-1",children:F.map((e,s)=>{let t=null!=e.match(/\.(jpeg|jpg|gif|png|webp|avif)$/);return(0,a.jsx)("div",{className:"relative w-10 h-10 rounded border overflow-hidden flex items-center justify-center bg-muted",children:t?(0,a.jsx)("img",{src:e,alt:"Preview",className:"w-full h-full object-cover"}):(0,a.jsx)("span",{className:"text-[9px] text-muted-foreground font-bold",children:"Datei"})},s)})})]})]}))})]}),(0,a.jsxs)("div",{className:"space-y-2 p-4",children:[(0,a.jsxs)("div",{className:"text-left text-md text-muted-foreground",children:["Button"," ",(0,a.jsx)("span",{className:"font-medium text-primary",children:w})," ","klicken und best\xe4tigen."]}),(0,a.jsx)("div",{className:"text-left text-md text-primary",children:(J=C?.contact_type_media||_,U=C?.contact_type||A,Z=S.m3[J],P=(0,S.Qr)(U,C?.duration_minutes),`${Z?.info||"Wir treffen uns."} Dauer ca. ${P} Min.`)})]})]}):(0,a.jsx)("div",{className:"space-y-4",children:(0,a.jsxs)("div",{className:"grid gap-2",children:["textarea"===en.type?(0,a.jsx)(f.T,{...ej(ei),placeholder:en.placeholder,className:"text-lg p-4 min-h-[150px]",autoF
1ocus:!0}):(0,a.jsx)(p.p,{...ej(ei),type:en.type||"text",placeholder:en.placeholder,className:"text-lg p-6 h-auto",autoFocus:!0}),"notes"===ei&&(0,a.jsx)("div",{className:"mt-4",children:(0,a.jsx)(D.F,{value:el.watch("files")||[],onChange:e=>el.setValue("files",e),bucketName:"leads",label:"Dateien anh\xe4ngen"})}),eg[ei]&&(0,a.jsx)("p",{className:"text-destructive text-sm font-medium",children:eg[ei]?.message})]})})})}),(0,a.jsxs)(x.wL,{className:"flex justify-between p-6",children:[1===H?(0,a.jsx)("div",{}):(0,a.jsxs)(u.$,{variant:"ghost",onClick:ex,disabled:Y,children:[(0,a.jsx)(d.A,{className:"mr-2 h-4 w-4"})," Zur\xfcck"]}),1===H?(0,a.jsxs)(u.$,{onClick:em,disabled:!q||!X,children:["Weiter ",(0,a.jsx)(o.A,{className:"ml-2 h-4 w-4"})]}):ec?(0,a.jsx)(u.$,{onClick:eN,disabled:Y,className:"",children:Y?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(m.A,{className:"mr-2 h-4 w-4 animate-spin"})," Wird gebucht..."]}):(0,a.jsx)(a.Fragment,{children:w})}):(0,a.jsxs)(u.$,{onClick:eh,disabled:Y,children:["Weiter ",(0,a.jsx)(o.A,{className:"ml-2 h-4 w-4"})]})]})]}),1===H&&$]})}t(40432);var V=t(84949);function W({mode:e,actorId:s,target:r,defaultIntent:n="book",guestActions:i,onSuccess:c,title:d,description:o,footerContent:m,currentAppointment:h,companyId:x,fetchSlots:u}){let p=(0,V.usePathname)();if("book"===n){if("guest"===e)return(0,a.jsx)(R,{fetchSlots:async(e,s)=>{if(i?.fetchSlots)return i.fetchSlots(e,s);let{fetchSlotsAction:a}=await Promise.resolve().then(t.bind(t,46945));return a(e)},onBook:async e=>{if(i?.onBook)return i.onBook({...e,origin:p});let{bookAppointmentCore:s}=await Promise.resolve().then(t.bind(t,95540));return console.log("Guest Booking via Manager (Default)",e),c?.(),{success:!0}},title:d,description:o,contactTypes:["firstcall","qualifycall"],mediaType:"phone",footerContent:m,currentAppointment:h,isReschedule:!!h});if("customer"===e&&s){let e=h?.contact_date?new Date(h.contact_date):void 0,t=h?.contact_time?.slice(0,5)||void 0;return(0,a.jsx)(l.E,{userId:s,onSuccess:c,initialDate:e,initialTime:t,appointmentId:h?.id,appointment:h,companyId:x,fetchSlots:u})}return(0,a.jsx)("div",{className:"text-destructive",children:"Fehler: Ung\xfcltiger Modus oder fehlende Daten f\xfcr die Buchung."})}return(0,a.jsx)("div",{children:"Interaction Manager: Unknown Intent"})}},50411:(e,s,t)=>{t.d(s,{F:()=>p});var a=t(67611),r=t(12230),l=t(91572),n=t(16809),i=t(62076),c=t(51096),d=t(26667),o=t(88325),m=t(15536),h=t(93881),x=t(99750);let u=e=>{try{let s=e.split("?")[0];if(!s)return"file";let t=s.split("/"),a=t[t.length-1];return decodeURIComponent(a||"file")}catch{return"file"}};function p({value:e=[],onChange:s,bucketName:t="app_feedback",basePath:p,label:f="Bilder"}){let j=(0,d.useRef)(null),{uploadFiles:g,deleteFile:b,isUploading:N}=(0,h.l)(t,p),[y,v]=(0,d.useState)(e);(0,d.useEffect)(()=>{(async()=>{"secure-documents"===t&&e.length>0?v(await Promise.all(e.map(async e=>{if(e.includes(`/${t}/`))try{let s=e.split(`/${t}/`)[1]?.split("?")[0];if(s){let{data:a}=await x.N.storage.from(t).createSignedUrl(s,3600);return a?.signedUrl||e}}catch(e){console.error("Failed to refresh signed url",e)}return e}))):v(e)})()},[e,t]);let w=async t=>{if(t.target.files&&t.target.files.length>0){let a=Array.from(t.target.files);try{let t=await g(a);s([...e,...t]),o.oR.success(`${t.length} Datei(en) hochgeladen`)}catch(e){o.oR.error("Fehler beim Hochladen")}finally{j.current&&(j.current.value="")}}},k=async t=>{let a=e[t];if(a){s(e.filter((e,s)=>s!==t));try{await b(a),o.oR.success("Datei gel\xf6scht")}catch(e){o.oR.error("Fehler beim L\xf6schen der Datei")}}};return(0,a.jsxs)("div",{className:"space-y-3",children:[y.length>0&&(0,a.jsx)("div",{className:"flex flex-wrap gap-3",children:y.map((e,s)=>(0,a.jsxs)("div",{className:"relative group flex flex-col items-center gap-1",style:{width:"64px"},children:[(0,a.jsxs)("div",{className:"relative w-16 h-16",children:[null!=e.match(/\.(jpeg|jpg|gif|png|webp|avif)($|\?)/i)?(0,a.jsx)(c.default,{src:e,alt:"Upload",fill:!0,className:"rounded-md border object-cover"}):(0,a.jsx)("div",{className:"w-full h-full flex items-center justify-center bg-muted rounded-md border",children:(0,a.jsx)(r.A,{className:"h-6 w-6 text-muted-foreground"})}),(0,a.jsxs)("button",{onClick:()=>k(s),className:"absolute -top-1 -right-1 p-0.5 bg-destructive text-destructive-foreground rounded-full hover:bg-destructive/90 transition-opacity opacity-100 md:opacity-0 md:group-hover:opacity-100",type:"button",children:[(0,a.jsx)(l.A,{className:"h-3 w-3"}),(0,a.jsx)("span",{className:"sr-only",children:"Entfernen"})]})]}),(0,a.jsx)("span",{className:"text-xs text-muted-foreground text-center w-full leading-tight px-0.5 no-wrap",title:u(e),children:((e,s=12)=>{if(e.length<=s)return e;let t=e.lastIndexOf(".");if(t>0){let a=e.substring(0,t),r=e.substring(t),l=s-r.length-3;return l>=1?a.substring(0,l)+"..."+r:a.substring(0,1)+"..."+r}return e.substring(0,s-3)+"..."})(u(e))})]},s))}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsxs)("label",{className:"flex items-center cursor-pointer text-sm font-medium text-muted-foreground hover:text-foreground transition-colors",children:[(0,a.jsx)(m.p,{type:"file",accept:"*",multiple:!0,ref:j,onChange:w,className:"hidden",disabled:N}),(0,a.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 border rounded-md hover:bg-muted/50 transition-colors",children:[(0,a.jsx)(n.A,{className:"h-4 w-4"}),(0,a.jsx)("span",{children:N?"Wird hochgeladen...":f})]})]}),N&&(0,a.jsx)(i.Loader,{size:16,className:"text-muted-foreground"})]})]})}},50813:(e,s,t)=>{t.d(s,{UserProfileSkeleton:()=>n});var a=t(67611),r=t(85470),l=t(91453);function n(){return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(r.aR,{className:"w-full",children:(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsxs)("div",{className:"flex items-center gap-4",children:[(0,a.jsx)(l.E,{className:"sm:h-24 h-24 sm:w-24 w-24 rounded-full"}),(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)(l.E,{className:"h-6 sm:w-48"}),(0,a.jsx)(l.E,{className:"h-4 sm:w-64"})]})]}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)(l.E,{className:"h-8 w-8"}),(0,a.jsx)(l.E,{className:"h-8 sm:w-24 w-16"})]})]})}),(0,a.jsx)(r.Wu,{className:"flex flex-wrap gap-5 pt-2.5",children:Array.from({length:8}).map((e,s)=>(0,a.jsx)(l.E,{className:"h-10 w-full sm:w-[30%]"},`profile-skeleton-${String(s)}`))})]})}},61731:(e,s,t)=>{t.d(s,{InfomaterialClient:()=>w});var a=t(67611),r=t(26667),l=t(98098),n=t(64761),i=t(56068),c=t(74794),d=t(37663),o=t(25773),m=t(38030),h=t(32688),x=t(77961),u=t(78060),p=t(40432),f=t.n(p),j=t(58377),g=t(79001),b=t(64840),N=t(84100),y=t(15536),v=t(95950);function w({variant:e="standalone",showCalendar:s=!0}){let[t,p]=r.useState(""),[w,k]=r.useState(""),[C,A]=r.useState(!1),E="booking"===e,_=E&&s,$=()=>{let e="Hallo Mark R\xe4tzel, ich habe Interesse an deinem Service und m\xf6chte mich informieren.";
1return t&&(e+=` Mein Name ist ${t}.`),w?e+=` Am besten rufst du mich um ${w} Uhr an. Da h\xe4tte ich 15 Minuten Zeit.`:e+=" Bitte ruf mich zur\xfcck.",`https://wa.me/4917681291373?text=${encodeURIComponent(e)}`},S=[{title:l.CA.firstcall.title,description:(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("p",{children:["Du kannst direkt im B\xfcro anrufen: ",(0,a.jsx)("br",{}),(0,a.jsx)(j.R,{className:"font-bold text-primary hover:underline block mt-1 text-lg",children:"+49 511 6469 8167"}),E&&(0,a.jsx)("span",{className:"block mt-2 text-sm text-muted-foreground",children:"Falls du mich nicht erreichst, rufe ich dich sp\xe4testens innerhalb von 48 Stunden zur\xfcck."})]}),(0,a.jsx)("p",{children:"Wenn du 15 Minuten Zeit hast, k\xf6nnen wir das Erstgespr\xe4ch direkt f\xfchren. Falls nicht, vereinbaren wir einfach einen Termin."}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:_?(0,a.jsxs)(a.Fragment,{children:["Hast du jetzt keine Zeit?"," ",(0,a.jsx)(b.SmoothScrollLink,{href:"#booking-calendar",className:"text-primary hover:underline font-medium",children:(0,a.jsxs)("span",{className:"inline-flex items-center",children:["Zum Kalender scrollen.",(0,a.jsx)(i.A,{className:"w-4 h-4"})]})})]}):E?(0,a.jsxs)(a.Fragment,{children:["Schreib mir sonst bei"," ",(0,a.jsx)("a",{href:$(),target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline font-medium",children:"WhatsApp"}),"."]}):(0,a.jsxs)(a.Fragment,{children:["Hast du jetzt keine Zeit? Erstelle direkt einen Termin oder gib unten"," ",(0,a.jsx)(b.SmoothScrollLink,{href:"#contact-form",className:"text-primary hover:underline font-medium",children:(0,a.jsxs)("span",{className:"flex items-center gap-1",children:["deine Kontaktdaten ein. ",(0,a.jsx)(i.A,{className:"w-4 h-4"})]})})]})})]}),icon:(0,a.jsx)(c.A,{}),footer:(0,a.jsxs)("div",{className:"flex flex-col gap-3 w-full justify-center items-center",children:[(0,a.jsx)(u.$,{className:"h-12 gap-2 w-full text-base font-bold",asChild:!0,children:(0,a.jsxs)(j.R,{phoneE164:g.h,children:[(0,a.jsx)(d.A,{className:"w-4 h-4"}),"Jetzt anrufen"]})}),(0,a.jsxs)(N.lG,{open:C,onOpenChange:A,children:[(0,a.jsx)(N.zM,{asChild:!0,children:(0,a.jsxs)(u.$,{className:"h-10 gap-2 w-full",variant:"outline",children:[(0,a.jsx)(o.A,{className:"w-4 h-4"}),"Per WhatsApp schreiben"]})}),(0,a.jsxs)(N.Cf,{className:"sm:max-w-[425px]",children:[(0,a.jsxs)(N.c7,{children:[(0,a.jsx)(N.L3,{children:"R\xfcckruf per WhatsApp"}),(0,a.jsx)(N.rr,{children:"Gib kurz deinen Namen und deine bevorzugte R\xfcckrufzeit an, damit wir uns optimal vorbereiten k\xf6nnen."})]}),(0,a.jsxs)("div",{className:"grid gap-4 py-4",children:[(0,a.jsxs)("div",{className:"grid gap-2",children:[(0,a.jsx)(v.J,{htmlFor:"name",children:"Dein Name (Optional)"}),(0,a.jsx)(y.p,{id:"name",placeholder:"z.B. Max Mustermann",value:t,onChange:e=>p(e.target.value),className:"h-12 text-lg"})]}),(0,a.jsxs)("div",{className:"grid gap-2",children:[(0,a.jsx)(v.J,{htmlFor:"time",children:"Beste R\xfcckrufzeit (Optional)"}),(0,a.jsx)(y.p,{id:"time",placeholder:"z.B. Morgens 9 Uhr oder Mittags",value:w,onChange:e=>k(e.target.value),className:"h-12 text-lg"})]})]}),(0,a.jsx)(N.Es,{children:(0,a.jsx)(u.$,{className:"h-12 gap-2 w-full text-lg font-bold",asChild:!0,children:(0,a.jsxs)("a",{href:$(),target:"_blank",rel:"noopener noreferrer",onClick:()=>A(!1),children:[(0,a.jsx)(o.A,{className:"w-4 h-4"}),"Weiter zu WhatsApp"]})})})]})]})]})},{title:l.CA.qualifycall.title,description:l.CA.qualifycall.description,icon:(0,a.jsx)(d.A,{}),footer:_?(0,a.jsx)("div",{className:"flex w-full justify-center items-center",children:(0,a.jsx)(u.$,{className:"gap-2 h-10 w-full",asChild:!0,children:(0,a.jsxs)("a",{href:"#booking-calendar",children:[(0,a.jsx)(m.A,{className:"w-4 h-4"}),"Zum Kalender scrollen"]})})}):E?null:(0,a.jsx)("div",{className:"flex w-full justify-center items-center",children:(0,a.jsx)(u.$,{className:"gap-2 h-10 w-full",asChild:!0,children:(0,a.jsxs)(f(),{href:"/termin-buchen",children:[(0,a.jsx)(m.A,{className:"w-4 h-4"}),"Jetzt Erstgespr\xe4ch ver\xadein\xadba\xadren"]})})})}
1,{title:l.CA.salescall.title,description:l.CA.salescall.description,icon:(0,a.jsx)(h.A,{})},{title:"Los geht's!",description:"Sobald alles f\xfcr dich passt, starten wir durch, dich an deine Ziele zu bringen.",icon:(0,a.jsx)(x.A,{})}];return(0,a.jsx)(n.v,{steps:S})}},97684:(e,s,t)=>{t.d(s,{Y:()=>N});var a=t(67611),r=t(26667),l=t(21230),n=t(99039),i=t(78060),c=t(95950),d=t(89095),o=t(7634),m=t(76716),h=t(55832),x=t(57848),u=t(12230),p=t(33777),f=t(85470),j=t(15536),g=t(30668),b=t(98922);function N({mode:e,basePath:s="confirmation",context:t={firstname:"",lastname:""},defaultChannels:N=["email"],recipient:y,externalTemplates:v=[],hasSmsIntegration:w=!0,hasWhatsAppIntegration:k=!0,isEditMode:C=!1}){let A,E;w&&k||console.log("[CommunicationSelector] channel(s) disabled â no integration",{hasSmsIntegration:w,hasWhatsAppIntegration:k});let _=(0,l.xW)(),[$,S]=(0,r.useState)(!1),[M,B]=(0,r.useState)(""),[L,T]=(0,r.useState)("email"),z=`${s}.send`,D=`${s}.channels`,R=`${s}.templateId`,V=`${s}.useCustomContent`,W=_.watch(z),I=_.watch(D)||[],F=_.watch(R);_.watch(`${s}.customSubject`);let J=_.watch(`${s}.customBody`),U=_.watch(`${s}.customContext`)||{},Z=_.watch(V)??!1,P=(0,r.useMemo)(()=>!!F&&(0,m.q4)(F),[F]),O=r.useMemo(()=>{let e=Object.values(m.ry).map(e=>({...e})),s=[];return v.forEach(t=>{let a=e.findIndex(e=>e.id===t.templateName);a>=0?e[a]={...e[a],status:t.status}:s.push(t)}),[...e,...s].filter(e=>{let s=M.toLowerCase();try{let a=e.content(t);return e.label.toLowerCase().includes(s)||e.id.toLowerCase().includes(s)||a.toLowerCase().includes(s)}catch(t){return e.label.toLowerCase().includes(s)||e.id.toLowerCase().includes(s)}}).reduce((e,s)=>{let t=s.category||"other";return e[t]||(e[t]=[]),e[t]?.push(s),e},{})},[M,t,v]);r.useMemo(()=>{if(!F)return"";try{return(0,m.Xm)(F,{...t,...U})}catch(e){return"Error: "+e.message}},[F,t,U]);let[K,H]=(0,r.useState)("");return(r.useEffect(()=>{if(!F||!P)return void H("");try{let e={...t,...U,customContent:Z?J:void 0},s=(0,m.ur)(F,e);if(s){let e=n.renderToStaticMarkup(s),t=`<!DOCTYPE html><html lang="de"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"></head><body>${e}</body></html>`;H(t)}}catch(e){H(`<!DOCTYPE html><html><body><p style="color:red;">Error: ${e.message}</p></body></html>`)}},[F,t,P,J,Z,U]),r.useEffect(()=>{if(!F)return;let e=m.ry[F];if(e&&e.subject)try{let a=e.subject(t),r=_.getValues(`${s}.customSubject`);r&&""!==r.trim()||_.setValue(`${s}.customSubject`,a,{shouldDirty:!1})}catch(e){console.error("Failed to sync template subject",e)}},[F,t]),r.useEffect(()=>{if(!F||!Z)return;let e=m.ry[F];if(e)try{if(!_.getValues(`${s}.customBody`)){let a=e.content(t);_.setValue(`${s}.customBody`,a,{shouldDirty:!0})}}catch(e){console.error("Failed to sync template defaults",e)}},[F,Z]),"simple"===e)?(0,a.jsxs)("div",{className:"space-y-4 rounded-xl border p-4 bg-card",children:[(0,a.jsx)(o.zB,{control:_.control,name:z,render:({field:e})=>(0,a.jsxs)(o.eI,{className:"flex flex-row items-center justify-between rounded-lg p-0 space-y-0",children:[(0,a.jsxs)("div",{className:"space-y-0.5",children:[(0,a.jsx)(o.lR,{className:"text-base",children:"Kontakt benachrichtigen"}),(0,a.jsx)(o.Rr,{children:C?"Sende eine Best\xe4tigung der \xc4nderungen.":"Sende eine Best\xe4tigung."})]}),(0,a.jsx)(o.MJ,{children:(0,a.jsx)(d.S,{checked:e.value,onCheckedChange:e.onChange})})]})}),W&&(0,a.jsxs)("div",{className:"pt-2 animate-in slide-in-from-top-2 fade-in",children:[(0,a.jsx)(c.J,{className:"text-xs mb-2 block text-muted-foreground uppercase",children:"Kan\xe4le"}),(0,a.jsx)("div",{className:"flex gap-4",children:["email","sms","whatsapp"].map(e=>{let s="email"===e,t="sms"===e||"whatsapp"===e,r="sms"===e&&!w,l="whatsapp"===e&&!k,n=s&&!y?.email||t&&!y?.phone||r||l,i=n?r?"SMS-Integration nicht konfiguriert":l?"Nicht konfiguriert":s?"E-Mail fehlt":"Telefonnummer fehlt":null;return(0,a.jsx)(o.zB,{control:_.control,name:D,render:({field:s})=>(0,a.jsxs)(o.eI,{className:"flex flex-row items-start space-x-2 space-y-0",children:[(0,a.jsx)(o.MJ,{children:(0,a.jsx)(d.S,{checked:s.value?.includes(e),disabled:n,onCheckedChange:t=>{if(!n)return t?s.onChange([...s.value,e]):s.onChange(s.value?.filter(s=>s!==e))}})}),(0,a.jsxs)(o.lR,{className:(0,g.cn)("text-sm font-normal capitalize",n&&"text-muted-foreground opacity-50"),title:i??void 0,children:[(0,a.jsx)("span",{className:"block",children:e}),n&&i&&(0,a.jsx)("span",{className:"block text-xs font-normal text-muted-foreground mt-0.5",children:i})]})]},e)},e)})}),(!y?.email||""===y.email.trim())&&(!y?.phone||""===y.phone.trim())&&(0,a.jsx)("p",{className:"text-sm text-destructive mt-2",children:"Keine Kontaktdaten verf\xfcgbar."})]})]}):(0,a.jsxs)(f.Zp,{className:"space-y-6 overflow-y-auto bg-accent",children:[(0,a.jsxs)(f.aR,{children:[(0,a.jsx)(c.J,{children:"Kanal"}),(0,a.jsx)("div",{className:"flex gap-2",children:["email","sms","whatsapp"].map(e=>{let s="email"===e,t="sms"===e||"whatsapp"===e,r=y?.email&&""!==y.email.trim(),l=y?.phone&&""!==y.phone.trim(),n="sms"===e&&!w,c="whatsapp"===e&&!k,d=s&&!r||t&&!l||n||c,o=d?n?"SMS-Integration nicht konfiguriert":c?"Nicht konfiguriert":s?"E-Mail fehlt":"Telefonnummer fehlt":null;return(0,a.jsxs)(i.$,{type:"button",variant:I.includes(e)?"default_foreground":"outline",disabled:d,onClick:()=>{d||(I.includes(e)?_.setValue(D,I.filter(s=>s!==e)):_.setValue(D,[...I,e]))},className:"flex-1 flex flex-col h-auto py-2 gap-0.5 capitalize",title:o??void 0,children:[(0,a.jsxs)("span",{className:"flex items-center justify-center gap-2",children:[I.includes(e)&&(0,a.jsx)(h.A,{className:"h-4 w-4 shrink-0"}),e]}),d&&o&&(0,a.jsx)("span",{className:"text-[10px] font-normal normal-case opacity-80",children:o})]},e)})}),(!y?.email||""===y.email.trim())&&(!y?.phone||""===y.phone.trim())&&(0,a.jsx)("p",{className:"text-sm text-destructive mt-2",children:"Keine Kontaktdaten verf\xfcgbar. Bitte E-Mail oder Telefonnummer im Profil hinzuf\xfcgen."}),(0,a.jsx)(o.zB,{name:D,render:()=>(0,a.jsx)(o.C5,{})})]}),(0,a.jsxs)(f.Wu,{className:"space-y-2 flex-1",children:[(0,a.jsx)(c.J,{children:"Template w\xe4hlen"}),(0,a.jsxs)("div",{className:"rounded-lg border text-popover-foreground flex flex-col overflow-hidden",children:[(0,a.jsxs)("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:[(0,a.jsx)(x.A,{className:"mr-2 h-4 w-4 shrink-0 opacity-50"}),(0,a.jsx)(j.p,{className:"flex h-11 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground border-none shadow-none focus-visible:ring-0",placeholder:"Template suchen...",value:M,onChange:e=>B(e.target.value)})]}),(0,a.jsx)("div",{className:"max-h-[300px] overflow-y-auto overflow-x-hidden",children:0===Object.entries(O).length?(0,a.jsx)("div",{className:"py-6 text-center text-sm text-muted-foreground",children:"Keine Templates gefunden."}):(0,a.jsx)("div",{className:"p-1",children:Object.entries(O).map(([e,s])=>(0,a.jsxs)("div",{className:"overflow-hidden p-1 text-foreground",children:[(0,a.jsx)("div",{className:"px-2 py-1.5 text-xs font-semibold text-muted-foreground uppercase",children:e}),s.map(e=>{e.status;let s="APPROVED"===e.status?"bg-green-500/10 text-green-600 border-green-200":"REJECTED"===e.status?"bg-red-500/10 text-red-600 border-red-200":e.status?"bg-yellow-500/10 text-yellow-600 border-yellow-200":"";return(0,a.jsxs)("div",{onClick:()=>{_.setValue(R,e.id,{shouldValidate:!0}),"whatsapp"===e.category&&_.setValue(D,["whatsapp"],{shouldValidate:!0})},className:(0,g.cn)("relative flex select-none items-center justify-between rounded-sm px-2 py-1.5 text-sm outline-none cursor-pointer aria-selected:bg-card aria-selected:text-card-foreground hover:bg-card hover:text-card-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",F===e.id?"bg-card text-accent-foreground":""),children:[(0,a.jsxs)("div",{className:"flex flex-col gap-0.5 w-full",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("span",{className:"font-medium leading-none",children:e.label}),e.status&&(0,a.jsx)("span",{className:(0,g.cn)("text-[10px] px-1.5 py-0.5 rounded border capitalize",s),children:e.status.toLowerCase()})]}),(0,a.jsx)("span",{className:"text-[10px] text-muted-foreground opacity-70 truncate font-mono",children:e.id})]}),F===e.id&&(0,a.jsx)("div",{className:"ml-auto flex h-4 w-4 items-center justify-center",children:(0,a.jsx)("div",{className:"h-1.5 w-1.5 rounded-full bg-primary"})})]},e.id)})]},e))})})]}),(0,a.jsx)(o.zB,{name:R,render:()=>(0,a.jsx)(o.C5,{})}),F&&(0,a.jsxs)("div",{className:"space-y-4 border-t pt-4",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)(c.J,{className:"text-base font-semibold",children:"Nachricht"}),(0,a.jsxs)("div",{className:"flex gap-1 bg-muted rounded-lg p-1",children:[(0,a.jsxs)(i.$,{type:"button",variant:Z?"ghost":"default",size:"sm",className:"h-7 px-3 text-xs gap-1.5",onClick:()=>_.setValue(V,!1),children:[(0,a.jsx)(u.A,{className:"h-3.5 w-3.5"}),"Template"]}),(0,a.jsxs)(i.$,{type:"button",variant:Z?"default":"ghost",size:"sm",className:"h-7 px-3 text-xs gap-1.5",onClick:()=>
1{if(_.setValue(V,!0),!_.getValues(`${s}.customBody`)&&F){let e=m.ry[F];e&&_.setValue(`${s}.customBody`,e.content(t))}},children:[(0,a.jsx)(p.A,{className:"h-3.5 w-3.5"}),"Anpassen"]})]})]}),(A=m.ry[F],A?.variables&&A.variables.length>0?(0,a.jsxs)("div",{className:"space-y-3 border-b pb-4",children:[(0,a.jsx)(c.J,{className:"text-sm font-semibold text-primary",children:"Platzhalter ausf\xfcllen"}),(0,a.jsx)("div",{className:"grid gap-3",children:A.variables.map(e=>(0,a.jsxs)("div",{className:"space-y-1",children:[(0,a.jsx)(c.J,{className:"text-xs text-muted-foreground",children:e.label}),(0,a.jsx)(j.p,{placeholder:e.placeholder,value:U[e.key]||"",onChange:t=>{_.setValue(`${s}.customContext`,{...U,[e.key]:t.target.value},{shouldDirty:!0})},className:"h-8 text-sm"})]},e.key))})]}):null),F&&(0,a.jsxs)("div",{children:[(0,a.jsxs)(c.J,{className:"text-sm text-muted-foreground flex items-center gap-2",children:[(0,a.jsx)(x.A,{className:"h-3 w-3"})," Link-Check & Ziel"]}),(0,a.jsxs)("div",{className:"rounded-md border bg-muted/50 p-3 text-xs font-mono space-y-2",children:[(0,a.jsxs)("div",{className:"grid grid-cols-[80px_1fr] gap-2 items-start",children:[(0,a.jsx)("span",{className:"text-muted-foreground",children:"Generiert:"}),(0,a.jsx)("span",{className:"break-all text-primary font-medium",children:(I.includes("sms")||I.includes("whatsapp"))&&t.shortCode?`${t.baseUrl||""}/go/${t.shortCode}`:t.appointmentLink||t.link||"Kein Link im Kontext"})]}),(0,a.jsxs)("div",{className:"grid grid-cols-[80px_1fr] gap-2 items-start",children:[(0,a.jsx)("span",{className:"text-muted-foreground",children:"Ziel:"}),(0,a.jsx)("span",{className:"break-all text-muted-foreground",children:(E={userId:y?.id?.startsWith("usr_")?y.id:void 0,leadId:y?.id&&!y.id.startsWith("usr_")?y.id:void 0,companyId:void 0,appointmentId:t.appointmentId,contractLink:t.contractLink,link:t.link},(0,m.Z1)(F,E))})]})]})]}),I.includes("email")&&(0,a.jsx)(o.zB,{control:_.control,name:`${s}.customSubject`,render:({field:e})=>(0,a.jsxs)(o.eI,{children:[(0,a.jsx)(o.lR,{children:"Betreff (Email)"}),(0,a.jsx)(o.MJ,{children:(0,a.jsx)(j.p,{...e,value:e.value??"",placeholder:"Betreff..."})}),(0,a.jsx)(o.C5,{})]})}),!Z&&P&&I.includes("email")&&(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(c.J,{className:"text-sm text-muted-foreground",children:"Email-Vorschau"}),(0,a.jsx)("div",{className:"border rounded-md overflow-hidden bg-white min-h-[300px]",children:(0,a.jsx)("iframe",{srcDoc:K,className:"w-full h-[400px] border-0",title:"Email Preview",sandbox:"allow-same-origin"})})]}),!Z&&I.includes("whatsapp")&&F&&(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(c.J,{className:"text-sm text-muted-foreground",children:"WhatsApp-Vorschau"}),(0,a.jsx)("div",{className:"border rounded-md overflow-hidden bg-gray-50 flex justify-center items-center p-4",children:(0,a.jsx)(b.n,{contentFn:m.ry[F]?.content||(()=>""),variables:m.ry[F]?.variables,buttons:m.ry[F]?.buttons,header:m.ry[F]?.header,footer:m.ry[F]?.footer,context:{...t,...U,channel:"whatsapp"},className:"shadow-md"})})]}),!Z&&I.includes("sms")&&F&&(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(c.J,{className:"text-sm text-muted-foreground",children:"SMS-Vorschau"}),(0,a.jsx)("div",{className:"border rounded-md bg-white p-4 min-h-[100px] flex items-center justify-center",children:(0,a.jsxs)("div",{className:"bg-gray-100 rounded-2xl rounded-tl-none p-3 max-w-[80%] text-sm text-gray-800 shadow-sm whitespace-pre-wrap font-sans relative",children:[(()=>{let e=t.shortCode?`${t.baseUrl||""}/go/${t.shortCode}`:void 0,s={...t,...U,channel:"sms",link:e||t.link,appointmentLink:e||t.appointmentLink};try{return(0,m.Xm)(F,s)}catch(e){return"Error rendering SMS: "+e.message}})(),(0,a.jsx)("div",{className:"text-[10px] text-gray-400 mt-1 text-right",children:"SMS"})]})})]}),Z&&(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)("div",{className:"flex justify-between items-center",children:[(0,a.jsx)(c.J,{children:"Nachrichtentext"}),(0,a.jsxs)("div",{className:"flex gap-1 bg-muted rounded-lg p-1",children:[I.map(e=>{let s="email"===e?"email":"whatsapp"===e?"whatsapp":"text",t="email"===e&&!P;return(0,a.jsx)(i.$,{type:"button",variant:L===s?"default":"ghost",size:"sm",className:"h-6 px-2 text-xs capitalize",onClick:()=>T(s),disabled:t,children:e},e)}),0===I.length&&(0,a.jsx)("span",{className:"text-[10px] p-1 text-muted-foreground",children:"W\xe4hle einen Kanal"})]})]}),(0,a.jsx)(o.zB,{control:_.control,name:`${s}.customBody`,render:({field:e})=>(0,a.jsxs)(o.eI,{children:[(0,a.jsx)(o.MJ,{children:(0,a.jsxs)("div",{className:"grid grid-cols-1 gap-4",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,a.jsx)("textarea",{className:"flex min-h-[300px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm r
1ing-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 font-mono",...e,placeholder:"Nachricht eingeben..."}),(0,a.jsxs)("p",{className:"text-xs text-muted-foreground text-right",children:[(e.value||"").length," Zeichen |"," ",Math.ceil((e.value||"").length/160)," SMS"]})]}),(0,a.jsx)("div",{className:"border rounded-md overflow-hidden bg-white min-h-[300px] flex justify-center items-center p-4",children:"email"===L&&P?(0,a.jsx)("iframe",{srcDoc:K,className:"w-full h-full border-0 min-h-[400px]",title:"Email Preview",sandbox:"allow-same-origin"}):"whatsapp"===L&&F?(0,a.jsx)(b.n,{contentFn:Z?()=>e.value:m.ry[F]?.content||(()=>""),variables:m.ry[F]?.variables,buttons:m.ry[F]?.buttons,header:m.ry[F]?.header,footer:m.ry[F]?.footer,context:{...t,...U,channel:"whatsapp"},className:"shadow-md"}):(0,a.jsx)("div",{className:"prose prose-sm max-w-none text-black whitespace-pre-wrap font-sans w-full",children:e.value})})]})}),(0,a.jsx)(o.C5,{})]})})]})]})]})]})}},98922:(e,s,t)=>{t.d(s,{n:()=>i});var a=t(67611),r=t(26667),l=t(30668),n=t(96350);function i({contentFn:e,variables:s=[],buttons:t=[],header:i,footer:c,context:d={},className:o}){let{renderedContent:m,usedVariables:h}=(0,r.useMemo)(()=>{let t={...d},a=new Set([...s.map(e=>e.key),"firstname","lastname","salutation"]),r=new Map(s.map(e=>[e.key,e]));a.forEach(e=>{let s=e.split(".").reduce((e,s)=>e?.[s],d);if(!s){let t=r.get(e);s="firstname"===e?"Max":"lastname"===e?"Mustermann":t?.placeholder?t.placeholder:t?.type==="date"?"TT.MM.JJJJ":t?.type==="time"?"HH:mm":t?.type==="url"?"https://beispiel.de":`{{${e}}}`}let a=`:::VAR|${e}|${s}:::`,l=e.split("."),n=t;for(let e=0;e<l.length-1;e++){let s=l[e];n[s]||(n[s]={}),n=n[s]}n[l[l.length-1]]=a});try{return{renderedContent:e(t),usedVariables:a}}catch(s){try{return{renderedContent:e(d),usedVariables:a}}catch{return{renderedContent:"Error generating preview.",usedVariables:a}}}},[e,s,d]);return(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)("div",{className:(0,l.cn)("bg-white dark:bg-[#202c33] rounded-lg shadow-sm text-[14.2px] leading-[19px] text-[#111b21] dark:text-[#e9edef] max-w-[340px] relative rounded-tr-none","after:content-[''] after:absolute after:top-0 after:-right-[8px] after:w-0 after:h-0 after:border-[8px] after:border-t-white dark:after:border-t-[#202c33] after:border-r-transparent after:border-b-transparent after:border-l-transparent",o),children:[i&&(0,a.jsxs)("div",{className:"px-3 pt-3 pb-1",children:["TEXT"===i.type&&i.text&&(0,a.jsx)("div",{className:"text-[15px] font-bold text-[#111b21] dark:text-[#e9edef]",children:i.text}),("IMAGE"===i.type||"VIDEO"===i.type||"DOCUMENT"===i.type)&&(0,a.jsx)("div",{className:"w-full h-[140px] bg-gray-100 dark:bg-[#2a3942] rounded-md flex items-center justify-center flex-col gap-2 text-muted-foreground overflow-hidden",children:"IMAGE"===i.type&&(i.mediaUrl||d?.imageUrl)?(0,a.jsx)("img",{src:i.mediaUrl||d?.imageUrl,alt:"Header",className:"w-full h-full object-cover",onError:e=>{e.target.style.display="none",e.target.nextElementSibling&&(e.target.parentElement.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="18" height="18" x="3" y="3" rx="2" ry="2" /><circle cx="9" cy="9" r="2" /><path d="m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21" /></svg><span class="text-xs uppercase font-medium">IMAGE Header</span>')}}):(0,a.jsxs)(a.Fragment,{children:["IMAGE"===i.type&&(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.jsx)("rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2"}),(0,a.jsx)("circle",{cx:"9",cy:"9",r:"2"}),(0,a.jsx)("path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"})]}),"VIDEO"===i.type&&(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.jsx)("path",{d:"m22 8-6 4 6 4V8Z"}),(0,a.jsx)("rect",{width:"14",height:"12",x:"2",y:"6",rx:"2",ry:"2"})]}),"DOCUMENT"===i.type&&(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.jsx)("path",{d:"M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"}),(0,a.jsx)("polyline",{points:"14 2 14 8 20 8"})]}),(0,a.jsxs)("span",{className:"text-xs uppercase font-medium",children:[i.type," Header"]})]})})]}),(0,a.jsx)("div",{className:"px-3 pt-1 pb-1",children:(0,a.jsx)("div",{className:"whitespace-pre-wrap break-words",children:m?m.split(/(:::VAR\|[^|]+\|[\s\S]+?:::)/g).map((e,s)=>{if(e.startsWith(":::VAR|")){let[t,r]=e.slice(7,-3).split("|"),n=!r?.startsWith("{{");return(0,a.jsx)("span",{className:(0,l.cn)("px-1 py-0.5 rounded mx-0.5 font-medium transition-colors",n?"bg-[#d9fdd3] text-[#00a884] dark:bg-[#005c4b] dark:text-[#e9edef] border border-[#00a884]/30":"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/30 dark:text-yellow-500 border border-yellow-500/30 dashed border-b-2"),title:t,children:r},s)}return e.split(/(https?:\/\/[^\s]+)/g).map((e,t)=>{if(e.match(/^https?:\/\//))return(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 align-baseline break-all",children:[(0,a.jsx)("a",{href:e,target:"_blank",rel:"noopener noreferrer",className:"text-[#039be5] hover:underline",onClick:e=>e.stopPropagation(),children:e}),(0,a.jsx)(n.A,{className:"h-3 w-3 text-[#039be5] opacity-70"})]},`${s}-${t}`);let r=e.split(/(\*[^*]+\*)/g);return(0,a.jsx)("span",{children:r.map((e,s)=>e.startsWith("*")&&e.endsWith("*")?(0,a.jsx)("strong",{children:e.slice(1,-1)},s):e)},`${s}-${t}`)})}):null})}),(0,a.jsxs)("div",{className:"px-3 pb-2 flex justify-between items-end gap-2",children:[(0,a.jsx)("div",{className:"text-[11px] text-[#667781] dark:text-[#8696a0] leading-[14px]",children:c}),(0,a.jsxs)("div",{className:"flex shrink-0 space-x-1 items-center opacity-60",children:[(0,a.jsx)("span",{className:"text-[11px] text-[#667781] dark:text-[#8696a0]",children:"12:00"}),(0,a.jsx)("span",{className:"text-[#53bdeb]",children:(0,a.jsx)("svg",{viewBox:"0 0 16 15",width:"16",height:"15",className:"",children:(0,a.jsx)("path",{fill:"currentColor",d:"M15.01 3.316l-.478-.372a.365.365 0 0 0-.51.063L8.666 9.879a.32.32 0 0 1-.484.033l-.358-.325a.319.319 0 0 0-.484.032l-.378.483a.418.418 0 0 0 .036.541l1.32 1.266c.143.14.361.125.484-.033l6.272-7.46a.366.366 0 0 0-.064-.512zm-4.1 0l-.478-.372a.365.365 0 0 0-.51.063L4.566 9.879a.32.32 0 0 1-.484.033L1.891 7.769a.366.366 0 0 0-.515.006l-.423.433a.364.364 0 0 0 .006.514l3.258 3.185c.143.14.361.125.484-.033l6.272-7.46a.365.365 0 0 0-.063-.51z"})})})]})]}),t&&t.length>0&&(0,a.jsx)("div",{className:"border-t border-[#e9edef] dark:border-[#2a3942] mt-1",children:t.map((e,s)=>(0,a.jsx)("div",{className:(0,l.cn)("h-[40px] flex items-center justify-center cursor-pointer text-[#00a884] font-medium text-[15px] hover:bg-gray-50 dark:hover:bg-[#2a3942]/50 transition-colors",0!==s&&"border-t border-[#e9edef] dark:border-[#2a3942]"),children:(0,a.jsxs)("span",{className:"flex items-center gap-2",children:["URL"===e.type&&(0,a.jsx)(n.A,{className:"w-4 h-4"}),e.text]})}
1,s))})]}),t&&t.some(e=>"URL"===e.type)&&(0,a.jsxs)("div",{className:"text-xs text-muted-foreground p-2 bg-muted/30 rounded border border-dashed",children:[(0,a.jsx)("p",{className:"font-semibold mb-1",children:"\uD83D\uDD17 Link Check:"}),t.filter(e=>"URL"===e.type).map((e,t)=>(0,a.jsxs)("div",{className:"flex gap-2 items-start break-all",children:[(0,a.jsx)("span",{className:"shrink-0",children:"â¢"}),(0,a.jsx)("span",{children:(e=>{if(!e)return"";let t=e,a=e.match(/{{([^}]+)}}/g);return a&&a.forEach(e=>{let a=e.slice(2,-2),r=a.split(".").reduce((e,s)=>e?.[s],d);if(!r){let e=s.find(e=>e.key===a);r="firstname"===a?"Max":"lastname"===a?"Mustermann":e?.placeholder?e.placeholder:`{{${a}}}`}t=t.replace(e,r)}),t})(e.url||"")})]},t))]})]})}}}]);
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.