@bigz-app/booking-widget 0.1.24 → 0.1.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6727,15 +6727,8 @@
6727
6727
 
6728
6728
  function n(){return n=Object.assign?Object.assign.bind():function(e){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(e[t]=r[t]);}return e},n.apply(this,arguments)}const r=["children","options"],o=["allowFullScreen","allowTransparency","autoComplete","autoFocus","autoPlay","cellPadding","cellSpacing","charSet","classId","colSpan","contentEditable","contextMenu","crossOrigin","encType","formAction","formEncType","formMethod","formNoValidate","formTarget","frameBorder","hrefLang","inputMode","keyParams","keyType","marginHeight","marginWidth","maxLength","mediaGroup","minLength","noValidate","radioGroup","readOnly","rowSpan","spellCheck","srcDoc","srcLang","srcSet","tabIndex","useMap"].reduce((e,n)=>(e[n.toLowerCase()]=n,e),{class:"className",for:"htmlFor"}),a={amp:"&",apos:"'",gt:">",lt:"<",nbsp:" ",quot:"“"},c=["style","script","pre"],i=["src","href","data","formAction","srcDoc","action"],u=/([-A-Z0-9_:]+)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|(?:\{((?:\\.|{[^}]*?}|[^}])*)\})))?/gi,l=/mailto:/i,s=/\n{2,}$/,f=/^(\s*>[\s\S]*?)(?=\n\n|$)/,_=/^ *> ?/gm,d=/^(?:\[!([^\]]*)\]\n)?([\s\S]*)/,p=/^ {2,}\n/,y=/^(?:( *[-*_])){3,} *(?:\n *)+\n/,h=/^(?: {1,3})?(`{3,}|~{3,}) *(\S+)? *([^\n]*?)?\n([\s\S]*?)(?:\1\n?|$)/,g=/^(?: {4}[^\n]+\n*)+(?:\n *)+\n?/,m=/^(`+)((?:\\`|(?!\1)`|[^`])+)\1/,k=/^(?:\n *)*\n/,x=/\r\n?/g,v=/^\[\^([^\]]+)](:(.*)((\n+ {4,}.*)|(\n(?!\[\^).+))*)/,q=/^\[\^([^\]]+)]/,b=/\f/g,S=/^---[ \t]*\n(.|\n)*\n---[ \t]*\n/,$=/^\s*?\[(x|\s)\]/,z=/^ *(#{1,6}) *([^\n]+?)(?: +#*)?(?:\n *)*(?:\n|$)/,E=/^ *(#{1,6}) +([^\n]+?)(?: +#*)?(?:\n *)*(?:\n|$)/,A=/^([^\n]+)\n *(=|-){3,} *\n/,R=/^ *(?!<[a-z][^ >/]* ?\/>)<([a-z][^ >/]*) ?((?:[^>]*[^/])?)>\n?(\s*(?:<\1[^>]*?>[\s\S]*?<\/\1>|(?!<\1\b)[\s\S])*?)<\/\1>(?!<\/\1>)\n*/i,B=/&([a-z0-9]+|#[0-9]{1,6}|#x[0-9a-fA-F]{1,6});/gi,L=/^<!--[\s\S]*?(?:-->)/,O=/^(data|aria|x)-[a-z_][a-z\d_.-]*$/,j=/^ *<([a-z][a-z0-9:]*)(?:\s+((?:<.*?>|[^>])*))?\/?>(?!<\/\1>)(\s*\n)?/i,C=/^\{.*\}$/,I=/^(https?:\/\/[^\s<]+[^<.,:;"')\]\s])/,T=/^<([^ >]+@[^ >]+)>/,M=/^<([^ >]+:\/[^ >]+)>/,w=/-([a-z])?/gi,D=/^(\|.*)\n(?: *(\|? *[-:]+ *\|[-| :]*)\n((?:.*\|.*\n)*))?\n?/,F=/^[^\n]+(?: \n|\n{2,})/,P=/^\[([^\]]*)\]:\s+<?([^\s>]+)>?\s*("([^"]*)")?/,Z=/^!\[([^\]]*)\] ?\[([^\]]*)\]/,N=/^\[([^\]]*)\] ?\[([^\]]*)\]/,G=/(\n|^[-*]\s|^#|^ {2,}|^-{2,}|^>\s)/,U=/\t/g,V=/(^ *\||\| *$)/g,H=/^ *:-+: *$/,Q=/^ *:-+ *$/,W=/^ *-+: *$/,J="((?:\\[.*?\\][([].*?[)\\]]|<.*?>(?:.*?<.*?>)?|`.*?`|\\\\\\1|[\\s\\S])+?)",K=RegExp(`^([*_])\\1${J}\\1\\1(?!\\1)`),X=RegExp(`^([*_])${J}\\1(?!\\1)`),Y=RegExp(`^(==)${J}\\1`),ee=RegExp(`^(~~)${J}\\1`),ne=/^(:[a-zA-Z0-9-_]+:)/,re=/^\\([^0-9A-Za-z\s])/,te=/\\([^0-9A-Za-z\s])/g,oe=/^[\s\S](?:(?! \n|[0-9]\.|http)[^=*_~\-\n:<`\\\[!])*/,ae=/^\n+/,ce=/^([ \t]*)/,ie=/(?:^|\n)( *)$/,ue="(?:\\d+\\.)",le="(?:[*+-])";function se(e){return "( *)("+(1===e?ue:le)+") +"}const fe=se(1),_e=se(2);function de(e){return RegExp("^"+(1===e?fe:_e))}const pe=de(1),ye=de(2);function he(e){return RegExp("^"+(1===e?fe:_e)+"[^\\n]*(?:\\n(?!\\1"+(1===e?ue:le)+" )[^\\n]*)*(\\n|$)","gm")}const ge=he(1),me=he(2);function ke(e){const n=1===e?ue:le;return RegExp("^( *)("+n+") [\\s\\S]+?(?:\\n{2,}(?! )(?!\\1"+n+" (?!"+n+" ))\\n*|\\s*\\n*$)")}const xe=ke(1),ve=ke(2);function qe(e,n){const r=1===n,t=r?xe:ve,o=r?ge:me,a=r?pe:ye;return {t:e=>a.test(e),o:je(function(e,n){const r=ie.exec(n.prevCapture);return r&&(n.list||!n.inline&&!n.simple)?t.exec(e=r[1]+e):null}),i:1,u(e,n,t){const c=r?+e[2]:void 0,i=e[0].replace(s,"\n").match(o);let u=false;return {items:i.map(function(e,r){const o=a.exec(e)[0].length,c=RegExp("^ {1,"+o+"}","gm"),l=e.replace(c,"").replace(a,""),s=r===i.length-1,f=-1!==l.indexOf("\n\n")||s&&u;u=f;const _=t.inline,d=t.list;let p;t.list=true,f?(t.inline=false,p=$e(l)+"\n\n"):(t.inline=true,p=$e(l));const y=n(p,t);return t.inline=_,t.list=d,y}),ordered:r,start:c}},l:(n,r,t)=>e(n.ordered?"ol":"ul",{key:t.key,start:"20"===n.type?n.start:void 0},n.items.map(function(n,o){return e("li",{key:o},r(n,t))}))}}const be=RegExp("^\\[((?:\\[[^\\[\\]]*(?:\\[[^\\[\\]]*\\][^\\[\\]]*)*\\]|[^\\[\\]])*)\\]\\(\\s*<?((?:\\([^)]*\\)|[^\\s\\\\]|\\\\.)*?)>?(?:\\s+['\"]([\\s\\S]*?)['\"])?\\s*\\)"),Se=/^!\[(.*?)\]\( *((?:\([^)]*\)|[^() ])*) *"?([^)"]*)?"?\)/;function $e(e){let n=e.length;for(;n>0&&e[n-1]<=" ";)n--;return e.slice(0,n)}function ze(e,n){return e.startsWith(n)}function Ee(e,n,r){if(Array.isArray(r)){for(let n=0;n<r.length;n++)if(ze(e,r[n]))return true;return false}return r(e,n)}function Ae(e){return e.replace(/[ÀÁÂÃÄÅàáâãä忯]/g,"a").replace(/[çÇ]/g,"c").replace(/[ðÐ]/g,"d").replace(/[ÈÉÊËéèêë]/g,"e").replace(/[ÏïÎîÍíÌì]/g,"i").replace(/[Ññ]/g,"n").replace(/[øØœŒÕõÔôÓóÒò]/g,"o").replace(/[ÜüÛûÚúÙù]/g,"u").replace(/[ŸÿÝý]/g,"y").replace(/[^a-z0-9- ]/gi,"").replace(/ /gi,"-").toLowerCase()}function Re(e){return W.test(e)?"right":H.test(e)?"center":Q.test(e)?"left":null}function Be(e,n,r,t){const o=r.inTable;r.inTable=true;let a=[[]],c="";function i(){if(!c)return;const e=a[a.length-1];e.push.apply(e,n(c,r)),c="";}return e.trim().split(/(`[^`]*`|\\\||\|)/).filter(Boolean).forEach((e,n,r)=>{"|"===e.trim()&&(i(),t)?0!==n&&n!==r.length-1&&a.push([]):c+=e;}),i(),r.inTable=o,a}function Le(e,n,r){r.inline=true;const t=e[2]?e[2].replace(V,"").split("|").map(Re):[],o=e[3]?function(e,n,r){return e.trim().split("\n").map(function(e){return Be(e,n,r,true)})}(e[3],n,r):[],a=Be(e[1],n,r,!!o.length);return r.inline=false,o.length?{align:t,cells:o,header:a,type:"25"}:{children:a,type:"21"}}function Oe(e,n){return null==e.align[n]?{}:{textAlign:e.align[n]}}function je(e){return e.inline=1,e}function Ce(e){return je(function(n,r){return r.inline?e.exec(n):null})}function Ie(e){return je(function(n,r){return r.inline||r.simple?e.exec(n):null})}function Te(e){return function(n,r){return r.inline||r.simple?null:e.exec(n)}}function Me(e){return je(function(n){return e.exec(n)})}const we=/(javascript|vbscript|data(?!:image)):/i;function De(e){try{const n=decodeURIComponent(e).replace(/[^A-Za-z0-9/:]/g,"");if(we.test(n))return null}catch(e){return null}return e}function Fe(e){return e?e.replace(te,"$1"):e}function Pe(e,n,r){const t=r.inline||false,o=r.simple||false;r.inline=true,r.simple=true;const a=e(n,r);return r.inline=t,r.simple=o,a}function Ze(e,n,r){const t=r.inline||false,o=r.simple||false;r.inline=false,r.simple=true;const a=e(n,r);return r.inline=t,r.simple=o,a}function Ne(e,n,r){const t=r.inline||false;r.inline=false;const o=e(n,r);return r.inline=t,o}const Ge=(e,n,r)=>({children:Pe(n,e[2],r)});function Ue(){return {}}function Ve(){return null}function He(...e){return e.filter(Boolean).join(" ")}function Qe(e,n,r){let t=e;const o=n.split(".");for(;o.length&&(t=t[o[0]],void 0!==t);)o.shift();return t||r}function We(r="",t={}){t.overrides=t.overrides||{},t.namedCodesToUnicode=t.namedCodesToUnicode?n({},a,t.namedCodesToUnicode):a;const s=t.slugify||Ae,V=t.sanitizer||De,H=t.createElement||_$2,Q=[f,h,g,t.enforceAtxHeadings?E:z,A,D,xe,ve],W=[...Q,F,R,L,j];function J(e,r,...o){const a=Qe(t.overrides,e+".props",{});return H(function(e,n){const r=Qe(n,e);return r?"function"==typeof r||"object"==typeof r&&"render"in r?r:Qe(n,e+".component",e):e}(e,t.overrides),n({},r,a,{className:He(null==r?void 0:r.className,a.className)||void 0}),...o)}function te(e){e=e.replace(S,"");let n=false;t.forceInline?n=true:t.forceBlock||(n=false===G.test(e));const r=_e(fe(n?e:$e(e).replace(ae,"")+"\n\n",{inline:n}));for(;"string"==typeof r[r.length-1]&&!r[r.length-1].trim();)r.pop();if(null===t.wrapper)return r;const o=t.wrapper||(n?"span":"div");let a;if(r.length>1||t.forceWrapper)a=r;else {if(1===r.length)return a=r[0],"string"==typeof a?J("span",{key:"outer"},a):a;a=null;}return H(o,{key:"outer"},a)}function ie(e,n){if(!n||!n.trim())return null;const r=n.match(u);return r?r.reduce(function(n,r){const t=r.indexOf("=");if(-1!==t){const a=function(e){return -1!==e.indexOf("-")&&null===e.match(O)&&(e=e.replace(w,function(e,n){return n.toUpperCase()})),e}(r.slice(0,t)).trim(),c=function(e){const n=e[0];return ('"'===n||"'"===n)&&e.length>=2&&e[e.length-1]===n?e.slice(1,-1):e}(r.slice(t+1).trim()),u=o[a]||a;if("ref"===u)return n;const l=n[u]=function(e,n,r,t){return "style"===n?function(e){const n=[];let r="",t=false,o=false,a="";if(!e)return n;for(let c=0;c<e.length;c++){const i=e[c];if('"'!==i&&"'"!==i||t||(o?i===a&&(o=false,a=""):(o=true,a=i)),"("===i&&r.endsWith("url")?t=true:")"===i&&t&&(t=false),";"!==i||o||t)r+=i;else {const e=r.trim();if(e){const r=e.indexOf(":");if(r>0){const t=e.slice(0,r).trim(),o=e.slice(r+1).trim();n.push([t,o]);}}r="";}}const c=r.trim();if(c){const e=c.indexOf(":");if(e>0){const r=c.slice(0,e).trim(),t=c.slice(e+1).trim();n.push([r,t]);}}return n}(r).reduce(function(n,[r,o]){return n[r.replace(/(-[a-z])/g,e=>e[1].toUpperCase())]=t(o,e,r),n},{}):-1!==i.indexOf(n)?t(Fe(r),e,n):(r.match(C)&&(r=Fe(r.slice(1,r.length-1))),"true"===r||"false"!==r&&r)}(e,a,c,V);"string"==typeof l&&(R.test(l)||j.test(l))&&(n[u]=te(l.trim()));}else "style"!==r&&(n[o[r]||r]=true);return n},{}):null}const ue=[],le={},se={0:{t:[">"],o:Te(f),i:1,u(e,n,r){const[,t,o]=e[0].replace(_,"").match(d);return {alert:t,children:n(o,r)}},l(e,n,r){const t={key:r.key};return e.alert&&(t.className="markdown-alert-"+s(e.alert.toLowerCase(),Ae),e.children.unshift({attrs:{},children:[{type:"27",text:e.alert}],noInnerParse:true,type:"11",tag:"header"})),J("blockquote",t,n(e.children,r))}},1:{o:Me(p),i:1,u:Ue,l:(e,n,r)=>J("br",{key:r.key})},2:{t:e=>{const n=e[0];return "-"===n||"*"===n||"_"===n},o:Te(y),i:1,u:Ue,l:(e,n,r)=>J("hr",{key:r.key})},3:{t:[" "],o:Te(g),i:0,u:e=>({lang:void 0,text:Fe($e(e[0].replace(/^ {4}/gm,"")))}),l:(e,r,t)=>J("pre",{key:t.key},J("code",n({},e.attrs,{className:e.lang?"lang-"+e.lang:""}),e.text))},4:{t:["```","~~~"],o:Te(h),i:0,u:e=>({attrs:ie("code",e[3]||""),lang:e[2]||void 0,text:e[4],type:"3"})},5:{t:["`"],o:Ie(m),i:3,u:e=>({text:Fe(e[2])}),l:(e,n,r)=>J("code",{key:r.key},e.text)},6:{t:["[^"],o:Te(v),i:0,u:e=>(ue.push({footnote:e[2],identifier:e[1]}),{}),l:Ve},7:{t:["[^"],o:Ce(q),i:1,u:e=>({target:"#"+s(e[1],Ae),text:e[1]}),l:(e,n,r)=>J("a",{key:r.key,href:V(e.target,"a","href")},J("sup",{key:r.key},e.text))},8:{t:["[ ]","[x]"],o:Ce($),i:1,u:e=>({completed:"x"===e[1].toLowerCase()}),l:(e,n,r)=>J("input",{checked:e.completed,key:r.key,readOnly:true,type:"checkbox"})},9:{t:["#"],o:Te(t.enforceAtxHeadings?E:z),i:1,u:(e,n,r)=>({children:Pe(n,e[2],r),id:s(e[2],Ae),level:e[1].length}),l:(e,n,r)=>J("h"+e.level,{id:e.id,key:r.key},n(e.children,r))},10:{o:Te(A),i:0,u:(e,n,r)=>({children:Pe(n,e[1],r),level:"="===e[2]?1:2,type:"9"})},11:{t:["<"],o:Me(R),i:1,u(e,n,r){const[,t]=e[3].match(ce),o=RegExp("^"+t,"gm"),a=e[3].replace(o,""),i=(u=a,W.some(e=>e.test(u))?Ne:Pe);var u;const l=e[1].toLowerCase(),s=-1!==c.indexOf(l),f=(s?l:e[1]).trim(),_={attrs:ie(f,e[2]),noInnerParse:s,tag:f};if(r.inAnchor=r.inAnchor||"a"===l,s)_.text=e[3];else {const e=r.inHTML;r.inHTML=true,_.children=i(n,a,r),r.inHTML=e;}return r.inAnchor=false,_},l:(e,r,t)=>J(e.tag,n({key:t.key},e.attrs),e.text||(e.children?r(e.children,t):""))},13:{t:["<"],o:Me(j),i:1,u(e){const n=e[1].trim();return {attrs:ie(n,e[2]||""),tag:n}},l:(e,r,t)=>J(e.tag,n({},e.attrs,{key:t.key}))},12:{t:["\x3c!--"],o:Me(L),i:1,u:()=>({}),l:Ve},14:{t:["!["],o:Ie(Se),i:1,u:e=>({alt:Fe(e[1]),target:Fe(e[2]),title:Fe(e[3])}),l:(e,n,r)=>J("img",{key:r.key,alt:e.alt||void 0,title:e.title||void 0,src:V(e.target,"img","src")})},15:{t:["["],o:Ce(be),i:3,u:(e,n,r)=>({children:Ze(n,e[1],r),target:Fe(e[2]),title:Fe(e[3])}),l:(e,n,r)=>J("a",{key:r.key,href:V(e.target,"a","href"),title:e.title},n(e.children,r))},16:{t:["<"],o:Ce(M),i:0,u:e=>({children:[{text:e[1],type:"27"}],target:e[1],type:"15"})},17:{t:(e,n)=>!n.inAnchor&&!t.disableAutoLink&&(ze(e,"http://")||ze(e,"https://")),o:Ce(I),i:0,u:e=>({children:[{text:e[1],type:"27"}],target:e[1],title:void 0,type:"15"})},18:{t:["<"],o:Ce(T),i:0,u(e){let n=e[1],r=e[1];return l.test(r)||(r="mailto:"+r),{children:[{text:n.replace("mailto:",""),type:"27"}],target:r,type:"15"}}},20:qe(J,1),33:qe(J,2),19:{o:Te(k),i:3,u:Ue,l:()=>"\n"},21:{o:je(function(e,n){if(n.inline||n.simple||n.inHTML&&-1===e.indexOf("\n\n")&&-1===n.prevCapture.indexOf("\n\n"))return null;let r="";e.split("\n").every(e=>(e+="\n",!Q.some(n=>n.test(e))&&(r+=e,!!e.trim())));const t=$e(r);return ""===t?null:[r,,t]}),i:3,u:Ge,l:(e,n,r)=>J("p",{key:r.key},n(e.children,r))},22:{t:["["],o:Ce(P),i:0,u:e=>(le[e[1]]={target:e[2],title:e[4]},{}),l:Ve},23:{t:["!["],o:Ie(Z),i:0,u:e=>({alt:e[1]?Fe(e[1]):void 0,ref:e[2]}),l:(e,n,r)=>le[e.ref]?J("img",{key:r.key,alt:e.alt,src:V(le[e.ref].target,"img","src"),title:le[e.ref].title}):null},24:{t:e=>"["===e[0]&&-1===e.indexOf("]("),o:Ce(N),i:0,u:(e,n,r)=>({children:n(e[1],r),fallbackChildren:e[0],ref:e[2]}),l:(e,n,r)=>le[e.ref]?J("a",{key:r.key,href:V(le[e.ref].target,"a","href"),title:le[e.ref].title},n(e.children,r)):J("span",{key:r.key},e.fallbackChildren)},25:{t:["|"],o:Te(D),i:1,u:Le,l(e,n,r){const t=e;return J("table",{key:r.key},J("thead",null,J("tr",null,t.header.map(function(e,o){return J("th",{key:o,style:Oe(t,o)},n(e,r))}))),J("tbody",null,t.cells.map(function(e,o){return J("tr",{key:o},e.map(function(e,o){return J("td",{key:o,style:Oe(t,o)},n(e,r))}))})))}},27:{o:je(function(e,n){let r;return ze(e,":")&&(r=ne.exec(e)),r||oe.exec(e)}),i:4,u(e){const n=e[0];return {text:-1===n.indexOf("&")?n:n.replace(B,(e,n)=>t.namedCodesToUnicode[n]||e)}},l:e=>e.text},28:{t:["**","__"],o:Ie(K),i:2,u:(e,n,r)=>({children:n(e[2],r)}),l:(e,n,r)=>J("strong",{key:r.key},n(e.children,r))},29:{t:e=>{const n=e[0];return ("*"===n||"_"===n)&&e[1]!==n},o:Ie(X),i:3,u:(e,n,r)=>({children:n(e[2],r)}),l:(e,n,r)=>J("em",{key:r.key},n(e.children,r))},30:{t:["\\"],o:Ie(re),i:1,u:e=>({text:e[1],type:"27"})},31:{t:["=="],o:Ie(Y),i:3,u:Ge,l:(e,n,r)=>J("mark",{key:r.key},n(e.children,r))},32:{t:["~~"],o:Ie(ee),i:3,u:Ge,l:(e,n,r)=>J("del",{key:r.key},n(e.children,r))}};true===t.disableParsingRawHTML&&(delete se[11],delete se[13]);const fe=function(e){var n=Object.keys(e);function r(t,o){var a=[];if(o.prevCapture=o.prevCapture||"",t.trim())for(;t;)for(var c=0;c<n.length;){var i=n[c],u=e[i];if(!u.t||Ee(t,o,u.t)){var l=u.o(t,o);if(l&&l[0]){t=t.substring(l[0].length);var s=u.u(l,r,o);o.prevCapture+=l[0],s.type||(s.type=i),a.push(s);break}c++;}else c++;}return o.prevCapture="",a}return n.sort(function(n,r){return e[n].i-e[r].i||(n<r?-1:1)}),function(e,n){return r(function(e){return e.replace(x,"\n").replace(b,"").replace(U," ")}(e),n)}}(se),_e=(de=function(e,n){return function(r,t,o){const a=e[r.type].l;return n?n(()=>a(r,t,o),r,t,o):a(r,t,o)}}(se,t.renderRule),function e(n,r={}){if(Array.isArray(n)){const t=r.key,o=[];let a=false;for(let t=0;t<n.length;t++){r.key=t;const c=e(n[t],r),i="string"==typeof c;i&&a?o[o.length-1]+=c:null!==c&&o.push(c),a=i;}return r.key=t,o}return de(n,e,r)});var de;const pe=te(r);return ue.length?J("div",null,pe,J("footer",{key:"footer"},ue.map(function(e){return J("div",{id:s(e.identifier,Ae),key:e.identifier},e.identifier,_e(fe(e.footnote,{inline:true})))}))):pe}var Markdown = n=>{let{children:t="",options:o}=n,a=function(e,n){if(null==e)return {};var r,t,o={},a=Object.keys(e);for(t=0;t<a.length;t++)n.indexOf(r=a[t])>=0||(o[r]=e[r]);return o}(n,r);return _n(We(t,o),a)};
6729
6729
 
6730
- // Helper function to preprocess markdown for underline support
6731
- const preprocessMarkdown$1 = (markdown) => {
6732
- // Convert double underscores to HTML underline tags for React Markdown
6733
- return markdown.replace(/__([^_]+)__/g, "<u>$1</u>");
6734
- };
6735
- const IconCheck$1 = ({ size = 16, color = "#10b981" }) => (u$2("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: color, strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: u$2("polyline", { points: "20 6 9 17 4 12" }) }));
6736
- const IconWave$1 = ({ size = 20, color = "#0ea5e9" }) => (u$2("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: color, strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [u$2("path", { d: "M2 18c2-2 6-2 8 0s6 2 8 0 6-2 8 0" }), u$2("path", { d: "M2 12c2-2 6-2 8 0s6 2 8 0 6-2 8 0" }), u$2("path", { d: "M2 6c2-2 6-2 8 0s6 2 8 0 6-2 8 0" })] }));
6737
6730
  // Portal component that renders dialog at document body level
6738
- function DialogPortal({ children, isOpen }) {
6731
+ function DialogPortal({ children, isOpen, zIndex = 999999, }) {
6739
6732
  const [portalRoot, setPortalRoot] = Rn.useState(null);
6740
6733
  Rn.useEffect(() => {
6741
6734
  if (!isOpen) {
@@ -6767,9 +6760,12 @@
6767
6760
  "--bw-border-radius-small",
6768
6761
  "--bw-spacing",
6769
6762
  "--bw-spacing-large",
6763
+ "--bw-spacing-small",
6770
6764
  "--bw-font-family",
6771
6765
  "--bw-font-size",
6772
6766
  "--bw-font-size-large",
6767
+ "--bw-font-size-small",
6768
+ "--bw-font-size-xl",
6773
6769
  "--bw-shadow-lg",
6774
6770
  "--bw-shadow-md",
6775
6771
  "--bw-highlight-muted",
@@ -6797,7 +6793,7 @@
6797
6793
  left: 0;
6798
6794
  width: 100%;
6799
6795
  height: 100%;
6800
- z-index: 999999;
6796
+ z-index: ${zIndex};
6801
6797
  pointer-events: none;
6802
6798
  ${cssProperties}
6803
6799
  `;
@@ -6818,7 +6814,7 @@
6818
6814
  }
6819
6815
  document.body.style.overflow = "";
6820
6816
  };
6821
- }, [isOpen]);
6817
+ }, [isOpen, zIndex]);
6822
6818
  if (!isOpen || !portalRoot)
6823
6819
  return null;
6824
6820
  return $$1(u$2("div", { style: {
@@ -6827,7 +6823,8 @@
6827
6823
  height: "100%",
6828
6824
  }, children: children }), portalRoot);
6829
6825
  }
6830
- function EventTypeDetailsDialog({ isOpen, onClose, eventType, onEventTypeSelect, }) {
6826
+ // Shared dialog wrapper component
6827
+ function DialogWrapper({ isOpen, onClose, children, maxWidth = "700px", className, zIndex = 999999, }) {
6831
6828
  // Get fallback styles from the widget container for cases where CSS variables aren't available
6832
6829
  const [fallbackStyles, setFallbackStyles] = Rn.useState({});
6833
6830
  Rn.useEffect(() => {
@@ -6864,15 +6861,10 @@
6864
6861
  return () => {
6865
6862
  document.removeEventListener("keydown", handleEscape);
6866
6863
  };
6867
- }, [isOpen]);
6868
- if (!isOpen || !eventType)
6864
+ }, [isOpen, onClose]);
6865
+ if (!isOpen)
6869
6866
  return null;
6870
- const isAvailable = eventType.hasAvailableInstances;
6871
- const handleBookingClick = () => {
6872
- onEventTypeSelect(eventType);
6873
- onClose();
6874
- };
6875
- return (u$2(DialogPortal, { isOpen: isOpen, children: u$2("div", { style: fallbackStyles, children: u$2("div", { style: {
6867
+ return (u$2(DialogPortal, { isOpen: isOpen, zIndex: zIndex, children: u$2("div", { style: fallbackStyles, className: className, children: u$2("div", { style: {
6876
6868
  position: "fixed",
6877
6869
  top: 0,
6878
6870
  left: 0,
@@ -6885,11 +6877,11 @@
6885
6877
  alignItems: "center",
6886
6878
  justifyContent: "center",
6887
6879
  padding: "var(--bw-spacing)",
6888
- zIndex: 999999,
6880
+ zIndex: zIndex,
6889
6881
  }, onClick: onClose, children: u$2("div", { style: {
6890
6882
  backgroundColor: "var(--bw-surface-color)",
6891
6883
  borderRadius: "var(--bw-border-radius)",
6892
- maxWidth: "700px",
6884
+ maxWidth,
6893
6885
  width: "100%",
6894
6886
  maxHeight: "90vh",
6895
6887
  overflow: "auto",
@@ -6917,181 +6909,199 @@
6917
6909
  e.currentTarget.style.backgroundColor = "var(--bw-border-color)";
6918
6910
  }, onMouseLeave: (e) => {
6919
6911
  e.currentTarget.style.backgroundColor = "var(--bw-surface-color)";
6920
- }, children: "\u00D7" }), u$2("div", { style: { padding: "var(--bw-spacing-large)" }, children: [u$2("div", { style: {
6921
- marginBottom: "24px",
6922
- padding: "16px",
6923
- backgroundColor: "var(--bw-background-color)",
6924
- borderRadius: "var(--bw-border-radius)",
6925
- border: `1px solid var(--bw-border-color)`,
6926
- }, children: [u$2("div", { children: [u$2("div", { style: {
6927
- fontSize: "14px",
6928
- fontWeight: "600",
6929
- color: "var(--bw-highlight-color)",
6930
- marginBottom: "8px",
6931
- fontFamily: "var(--bw-font-family)",
6932
- }, children: eventType.category.name }), u$2("h2", { style: {
6933
- fontSize: "28px",
6934
- fontWeight: "700",
6935
- color: "var(--bw-text-color)",
6936
- marginBottom: "16px",
6937
- lineHeight: "1.3",
6938
- fontFamily: "var(--bw-font-family)",
6939
- margin: "0 0 16px 0",
6940
- }, children: eventType.name })] }), eventType.highlights && eventType.highlights.length > 0 && (u$2("div", { style: { display: "flex", alignItems: "center", gap: "8px" }, children: u$2("div", { style: { marginBottom: "24px" }, children: u$2("ul", { style: {
6941
- listStyle: "none",
6942
- padding: "0",
6943
- margin: "0",
6944
- display: "flex",
6945
- flexDirection: "column",
6946
- gap: "3px",
6947
- }, children: eventType.highlights
6948
- .filter((highlight) => highlight.trim())
6949
- .map((highlight, index) => (u$2("li", { style: {
6950
- display: "flex",
6951
- alignItems: "flex-start",
6952
- gap: "10px",
6953
- fontFamily: "var(--bw-font-family)",
6954
- fontSize: "16px",
6955
- lineHeight: "1.6",
6956
- color: "var(--bw-text-color)",
6957
- }, children: [u$2("div", { style: { marginTop: "4px", flexShrink: 0 }, children: u$2(IconCheck$1, { size: 16, color: "var(--bw-success-color)" }) }), u$2("span", { children: highlight.trim() })] }, index))) }) }) }))] }), eventType.description && (u$2("div", { style: {
6958
- marginBottom: "24px",
6959
- color: "var(--bw-text-muted)",
6960
- fontSize: "16px",
6961
- lineHeight: "1.6",
6912
+ }, children: "\u00D7" }), children] }) }) }) }));
6913
+ }
6914
+
6915
+ // Helper function to preprocess markdown for underline support
6916
+ const preprocessMarkdown$1 = (markdown) => {
6917
+ // Convert double underscores to HTML underline tags for React Markdown
6918
+ return markdown.replace(/__([^_]+)__/g, "<u>$1</u>");
6919
+ };
6920
+ const IconCheck$1 = ({ size = 16, color = "#10b981" }) => (u$2("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: color, strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: u$2("polyline", { points: "20 6 9 17 4 12" }) }));
6921
+ const IconWave$1 = ({ size = 20, color = "#0ea5e9" }) => (u$2("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: color, strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [u$2("path", { d: "M2 18c2-2 6-2 8 0s6 2 8 0 6-2 8 0" }), u$2("path", { d: "M2 12c2-2 6-2 8 0s6 2 8 0 6-2 8 0" }), u$2("path", { d: "M2 6c2-2 6-2 8 0s6 2 8 0 6-2 8 0" })] }));
6922
+ function EventTypeDetailsDialog({ isOpen, onClose, eventType, onEventTypeSelect, }) {
6923
+ if (!isOpen || !eventType)
6924
+ return null;
6925
+ const isAvailable = eventType.hasAvailableInstances;
6926
+ const handleBookingClick = () => {
6927
+ onEventTypeSelect(eventType);
6928
+ onClose();
6929
+ };
6930
+ return (u$2(DialogWrapper, { isOpen: isOpen, onClose: onClose, maxWidth: "700px", children: u$2("div", { style: { padding: "var(--bw-spacing-large)" }, children: [u$2("div", { style: {
6931
+ marginBottom: "24px",
6932
+ padding: "16px",
6933
+ backgroundColor: "var(--bw-background-color)",
6934
+ borderRadius: "var(--bw-border-radius)",
6935
+ border: `1px solid var(--bw-border-color)`,
6936
+ }, children: [u$2("div", { children: [u$2("div", { style: {
6937
+ fontSize: "14px",
6938
+ fontWeight: "600",
6939
+ color: "var(--bw-highlight-color)",
6940
+ marginBottom: "8px",
6962
6941
  fontFamily: "var(--bw-font-family)",
6963
- padding: "0px 20px",
6964
- }, children: [u$2("style", { dangerouslySetInnerHTML: {
6965
- __html: `
6966
- .bw-markdown-content p {
6967
- margin: 0 0 12px 0 !important;
6968
- color: var(--bw-text-muted) !important;
6969
- font-family: var(--bw-font-family) !important;
6970
- line-height: 1.6 !important;
6971
- }
6972
- .bw-markdown-content p:last-child {
6973
- margin-bottom: 0 !important;
6974
- }
6975
- .bw-markdown-content h2 {
6976
- font-size: 20px !important;
6977
- font-weight: 700 !important;
6978
- color: var(--bw-text-color) !important;
6979
- margin: 20px 0 8px 0 !important;
6980
- line-height: 1.3 !important;
6981
- display: block !important;
6982
- }
6983
- .bw-markdown-content h3 {
6984
- font-size: 18px !important;
6985
- font-weight: 600 !important;
6986
- color: var(--bw-text-color) !important;
6987
- margin: 16px 0 8px 0 !important;
6988
- line-height: 1.3 !important;
6989
- display: block !important;
6990
- }
6991
- .bw-markdown-content strong {
6992
- font-weight: 700 !important;
6993
- color: var(--bw-text-color) !important;
6994
- }
6995
- .bw-markdown-content em {
6996
- font-style: italic !important;
6997
- }
6998
- .bw-markdown-content u {
6999
- text-decoration: underline !important;
7000
- }
7001
- .bw-markdown-content ul {
7002
- margin: 12px 0 !important;
7003
- padding-left: 24px !important;
7004
- list-style-type: disc !important;
7005
- display: block !important;
7006
- }
7007
- .bw-markdown-content ol {
7008
- margin: 12px 0 !important;
7009
- padding-left: 24px !important;
7010
- list-style-type: decimal !important;
7011
- display: block !important;
7012
- }
7013
- .bw-markdown-content li {
7014
- margin-bottom: 4px !important;
7015
- display: list-item !important;
7016
- color: var(--bw-text-muted) !important;
7017
- font-family: var(--bw-font-family) !important;
7018
- line-height: 1.6 !important;
7019
- }
7020
- .bw-markdown-content blockquote {
7021
- margin: 12px 0 !important;
7022
- padding-left: 16px !important;
7023
- border-left: 3px solid var(--bw-border-color) !important;
7024
- font-style: italic !important;
7025
- color: var(--bw-text-muted) !important;
7026
- display: block !important;
7027
- }
7028
- .bw-markdown-content a {
7029
- color: var(--bw-highlight-color) !important;
7030
- text-decoration: underline !important;
7031
- }
7032
- .bw-markdown-content a:hover {
7033
- text-decoration: none !important;
7034
- }
7035
- `,
7036
- } }), u$2("div", { className: "bw-markdown-content", children: Markdown({ children: preprocessMarkdown$1(eventType.description) }) })] })), u$2("div", { style: {
6942
+ }, children: eventType.category.name }), u$2("h2", { style: {
6943
+ fontSize: "28px",
6944
+ fontWeight: "700",
6945
+ color: "var(--bw-text-color)",
6946
+ marginBottom: "16px",
6947
+ lineHeight: "1.3",
6948
+ fontFamily: "var(--bw-font-family)",
6949
+ margin: "0 0 16px 0",
6950
+ }, children: eventType.name })] }), eventType.highlights && eventType.highlights.length > 0 && (u$2("div", { style: { display: "flex", alignItems: "center", gap: "8px" }, children: u$2("div", { style: { marginBottom: "24px" }, children: u$2("ul", { style: {
6951
+ listStyle: "none",
6952
+ padding: "0",
6953
+ margin: "0",
7037
6954
  display: "flex",
7038
- justifyContent: "space-between",
7039
- alignItems: "center",
7040
- marginTop: "32px",
7041
- padding: "20px",
7042
- backgroundColor: "var(--bw-background-color)",
7043
- borderRadius: "var(--bw-border-radius)",
7044
- border: `1px solid var(--bw-border-color)`,
7045
- }, children: [u$2("div", { children: [u$2("div", { className: "bw-event-type-price", style: {
7046
- fontWeight: "700",
7047
- color: "var(--bw-text-color)",
7048
- fontFamily: "var(--bw-font-family)",
7049
- textAlign: "left",
7050
- }, children: eventType.groupedDurations && u$2("span", { children: eventType.groupedDurations }) }), u$2("div", { className: "bw-event-type-price", style: {
7051
- fontSize: "clamp(1.72rem, 4vw, 32px)",
7052
- fontWeight: "700",
7053
- color: "var(--bw-text-color)",
7054
- fontFamily: "var(--bw-font-family)",
7055
- textAlign: "right",
7056
- }, children: u$2("span", { children: ["ab ", formatCurrency(eventType.minPrice)] }) })] }), isAvailable && (u$2("button", { onClick: handleBookingClick, style: {
7057
- backgroundColor: "var(--bw-highlight-color)",
7058
- color: "white",
7059
- padding: "14px 28px",
7060
- border: "none",
7061
- borderRadius: "var(--bw-border-radius)",
7062
- fontSize: "16px",
7063
- fontWeight: "600",
7064
- fontFamily: "var(--bw-font-family)",
7065
- display: "flex",
7066
- alignItems: "center",
7067
- gap: "8px",
7068
- cursor: "pointer",
7069
- transition: "all 0.2s ease",
7070
- }, onMouseEnter: (e) => {
7071
- e.currentTarget.style.opacity = "0.9";
7072
- e.currentTarget.style.transform = "translateY(-1px)";
7073
- }, onMouseLeave: (e) => {
7074
- e.currentTarget.style.opacity = "1";
7075
- e.currentTarget.style.transform = "translateY(0)";
7076
- }, children: [u$2(IconWave$1, { size: 20, color: "white" }), "Jetzt buchen"] }))] })] }), !isAvailable && (u$2("div", { style: {
7077
- position: "absolute",
7078
- inset: 0,
7079
- backgroundColor: "rgba(0, 0, 0, 0.3)",
7080
- backdropFilter: "blur(2px)",
6955
+ flexDirection: "column",
6956
+ gap: "3px",
6957
+ }, children: eventType.highlights
6958
+ .filter((highlight) => highlight.trim())
6959
+ .map((highlight, index) => (u$2("li", { style: {
6960
+ display: "flex",
6961
+ alignItems: "flex-start",
6962
+ gap: "10px",
6963
+ fontFamily: "var(--bw-font-family)",
6964
+ fontSize: "16px",
6965
+ lineHeight: "1.6",
6966
+ color: "var(--bw-text-color)",
6967
+ }, children: [u$2("div", { style: { marginTop: "4px", flexShrink: 0 }, children: u$2(IconCheck$1, { size: 16, color: "var(--bw-success-color)" }) }), u$2("span", { children: highlight.trim() })] }, index))) }) }) }))] }), eventType.description && (u$2("div", { style: {
6968
+ marginBottom: "24px",
6969
+ color: "var(--bw-text-muted)",
6970
+ fontSize: "16px",
6971
+ lineHeight: "1.6",
6972
+ fontFamily: "var(--bw-font-family)",
6973
+ padding: "0px 20px",
6974
+ }, children: [u$2("style", { dangerouslySetInnerHTML: {
6975
+ __html: `
6976
+ .bw-markdown-content p {
6977
+ margin: 0 0 12px 0 !important;
6978
+ color: var(--bw-text-muted) !important;
6979
+ font-family: var(--bw-font-family) !important;
6980
+ line-height: 1.6 !important;
6981
+ }
6982
+ .bw-markdown-content p:last-child {
6983
+ margin-bottom: 0 !important;
6984
+ }
6985
+ .bw-markdown-content h2 {
6986
+ font-size: 20px !important;
6987
+ font-weight: 700 !important;
6988
+ color: var(--bw-text-color) !important;
6989
+ margin: 20px 0 8px 0 !important;
6990
+ line-height: 1.3 !important;
6991
+ display: block !important;
6992
+ }
6993
+ .bw-markdown-content h3 {
6994
+ font-size: 18px !important;
6995
+ font-weight: 600 !important;
6996
+ color: var(--bw-text-color) !important;
6997
+ margin: 16px 0 8px 0 !important;
6998
+ line-height: 1.3 !important;
6999
+ display: block !important;
7000
+ }
7001
+ .bw-markdown-content strong {
7002
+ font-weight: 700 !important;
7003
+ color: var(--bw-text-color) !important;
7004
+ }
7005
+ .bw-markdown-content em {
7006
+ font-style: italic !important;
7007
+ }
7008
+ .bw-markdown-content u {
7009
+ text-decoration: underline !important;
7010
+ }
7011
+ .bw-markdown-content ul {
7012
+ margin: 12px 0 !important;
7013
+ padding-left: 24px !important;
7014
+ list-style-type: disc !important;
7015
+ display: block !important;
7016
+ }
7017
+ .bw-markdown-content ol {
7018
+ margin: 12px 0 !important;
7019
+ padding-left: 24px !important;
7020
+ list-style-type: decimal !important;
7021
+ display: block !important;
7022
+ }
7023
+ .bw-markdown-content li {
7024
+ margin-bottom: 4px !important;
7025
+ display: list-item !important;
7026
+ color: var(--bw-text-muted) !important;
7027
+ font-family: var(--bw-font-family) !important;
7028
+ line-height: 1.6 !important;
7029
+ }
7030
+ .bw-markdown-content blockquote {
7031
+ margin: 12px 0 !important;
7032
+ padding-left: 16px !important;
7033
+ border-left: 3px solid var(--bw-border-color) !important;
7034
+ font-style: italic !important;
7035
+ color: var(--bw-text-muted) !important;
7036
+ display: block !important;
7037
+ }
7038
+ .bw-markdown-content a {
7039
+ color: var(--bw-highlight-color) !important;
7040
+ text-decoration: underline !important;
7041
+ }
7042
+ .bw-markdown-content a:hover {
7043
+ text-decoration: none !important;
7044
+ }
7045
+ `,
7046
+ } }), u$2("div", { className: "bw-markdown-content", children: Markdown({ children: preprocessMarkdown$1(eventType.description) }) })] })), u$2("div", { style: {
7047
+ display: "flex",
7048
+ justifyContent: "space-between",
7049
+ alignItems: "center",
7050
+ marginTop: "32px",
7051
+ padding: "20px",
7052
+ backgroundColor: "var(--bw-background-color)",
7053
+ borderRadius: "var(--bw-border-radius)",
7054
+ border: `1px solid var(--bw-border-color)`,
7055
+ }, children: [u$2("div", { children: [u$2("div", { className: "bw-event-type-price", style: {
7056
+ fontWeight: "700",
7057
+ color: "var(--bw-text-color)",
7058
+ fontFamily: "var(--bw-font-family)",
7059
+ textAlign: "left",
7060
+ }, children: eventType.groupedDurations && u$2("span", { children: eventType.groupedDurations }) }), u$2("div", { className: "bw-event-type-price", style: {
7061
+ fontSize: "clamp(1.72rem, 4vw, 32px)",
7062
+ fontWeight: "700",
7063
+ color: "var(--bw-text-color)",
7064
+ fontFamily: "var(--bw-font-family)",
7065
+ textAlign: "right",
7066
+ }, children: u$2("span", { children: ["ab ", formatCurrency(eventType.minPrice)] }) })] }), isAvailable && (u$2("button", { onClick: handleBookingClick, style: {
7067
+ backgroundColor: "var(--bw-highlight-color)",
7068
+ color: "white",
7069
+ padding: "14px 28px",
7070
+ border: "none",
7071
+ borderRadius: "var(--bw-border-radius)",
7072
+ fontSize: "16px",
7073
+ fontWeight: "600",
7074
+ fontFamily: "var(--bw-font-family)",
7081
7075
  display: "flex",
7082
7076
  alignItems: "center",
7083
- justifyContent: "center",
7084
- borderRadius: "var(--bw-border-radius)",
7085
- }, children: u$2("div", { style: {
7086
- backgroundColor: "rgba(255, 255, 255, 0.9)",
7087
- padding: "16px 32px",
7088
- borderRadius: "var(--bw-border-radius)",
7089
- color: "var(--bw-text-color)",
7090
- fontWeight: "600",
7091
- fontSize: "18px",
7092
- fontFamily: "var(--bw-font-family)",
7093
- boxShadow: "var(--bw-shadow-md)",
7094
- }, children: "Ausgebucht" }) }))] }) }) }) }));
7077
+ gap: "8px",
7078
+ cursor: "pointer",
7079
+ transition: "all 0.2s ease",
7080
+ }, onMouseEnter: (e) => {
7081
+ e.currentTarget.style.opacity = "0.9";
7082
+ e.currentTarget.style.transform = "translateY(-1px)";
7083
+ }, onMouseLeave: (e) => {
7084
+ e.currentTarget.style.opacity = "1";
7085
+ e.currentTarget.style.transform = "translateY(0)";
7086
+ }, children: [u$2(IconWave$1, { size: 20, color: "white" }), "Jetzt buchen"] }))] }), !isAvailable && (u$2("div", { style: {
7087
+ position: "absolute",
7088
+ inset: 0,
7089
+ backgroundColor: "rgba(0, 0, 0, 0.3)",
7090
+ backdropFilter: "blur(2px)",
7091
+ display: "flex",
7092
+ alignItems: "center",
7093
+ justifyContent: "center",
7094
+ borderRadius: "var(--bw-border-radius)",
7095
+ }, children: u$2("div", { style: {
7096
+ backgroundColor: "rgba(255, 255, 255, 0.9)",
7097
+ padding: "16px 32px",
7098
+ borderRadius: "var(--bw-border-radius)",
7099
+ color: "var(--bw-text-color)",
7100
+ fontWeight: "600",
7101
+ fontSize: "18px",
7102
+ fontFamily: "var(--bw-font-family)",
7103
+ boxShadow: "var(--bw-shadow-md)",
7104
+ }, children: "Ausgebucht" }) }))] }) }));
7095
7105
  }
7096
7106
 
7097
7107
  // Carousel navigation icons
@@ -7143,7 +7153,7 @@
7143
7153
  if (images.length === 0) {
7144
7154
  return u$2(EventImagePlaceholder, {});
7145
7155
  }
7146
- return (u$2("div", { style: { position: "relative", width: "100%", height: "100%", overflow: "hidden" }, children: [u$2("div", { style: {
7156
+ return (u$2("div", { style: { position: "relative", width: "100%", height: "100%", overflow: "hidden", borderRadius: "inherit" }, children: [u$2("div", { style: {
7147
7157
  display: "flex",
7148
7158
  width: `${images.length * 100}%`,
7149
7159
  height: "100%",
@@ -7155,6 +7165,7 @@
7155
7165
  flexShrink: 0,
7156
7166
  overflow: "hidden",
7157
7167
  position: "relative",
7168
+ borderRadius: "inherit"
7158
7169
  }, children: u$2("img", { src: image, alt: `${eventName} - Bild ${index + 1}`, style: {
7159
7170
  width: "100%",
7160
7171
  height: "100%",
@@ -7163,6 +7174,7 @@
7163
7174
  position: "absolute",
7164
7175
  top: 0,
7165
7176
  left: 0,
7177
+ borderRadius: "inherit"
7166
7178
  } }) }, index))) }), images.length > 1 && (u$2(k$3, { children: [u$2("button", { onClick: prevImage, disabled: isTransitioning, style: {
7167
7179
  position: "absolute",
7168
7180
  left: "12px",
@@ -7639,6 +7651,7 @@
7639
7651
  backgroundColor: "var(--bw-surface-color)",
7640
7652
  border: `1px solid var(--bw-border-color)`,
7641
7653
  borderRadius: "var(--bw-border-radius)",
7654
+ overflow: "hidden",
7642
7655
  transition: "all 0.3s ease",
7643
7656
  cursor: isAvailable ? "pointer" : "not-allowed",
7644
7657
  opacity: isAvailable ? 1 : 0.6,
@@ -9634,6 +9647,7 @@
9634
9647
  position: "absolute",
9635
9648
  inset: 0,
9636
9649
  backgroundColor: "rgba(0, 0, 0, 0.5)",
9650
+ backdropFilter: "blur(10px)",
9637
9651
  opacity: isAnimating ? 1 : 0,
9638
9652
  transition: "opacity 0.25s ease-out",
9639
9653
  }, onClick: onClose }), u$2("div", { style: {
@@ -9980,11 +9994,11 @@
9980
9994
  display: "flex",
9981
9995
  alignItems: "center",
9982
9996
  gap: "4px",
9983
- }, children: [u$2(IconMoney, { size: 20, color: "var(--bw-highlight-color)" }), " Preis:"] }), u$2("span", { style: {
9997
+ }, children: [u$2(IconCalendar, { size: 20, color: "var(--bw-highlight-color)" }), " Uhrzeit:"] }), u$2("span", { style: {
9984
9998
  color: "var(--bw-text-color)",
9985
9999
  fontWeight: "500",
9986
10000
  fontFamily: "var(--bw-font-family)",
9987
- }, children: [formatCurrency(eventDetails.price), " pro Person"] })] }), u$2("div", { style: { display: "flex", alignItems: "center", justifyContent: "space-between" }, children: [u$2("span", { style: {
10001
+ }, children: formatTime(eventDetails.startTime, "Europe/Berlin", "de") })] }), u$2("div", { style: { display: "flex", alignItems: "center", justifyContent: "space-between" }, children: [u$2("span", { style: {
9988
10002
  color: "var(--bw-text-muted)",
9989
10003
  fontFamily: "var(--bw-font-family)",
9990
10004
  display: "flex",
@@ -9994,7 +10008,17 @@
9994
10008
  color: "var(--bw-text-color)",
9995
10009
  fontWeight: "500",
9996
10010
  fontFamily: "var(--bw-font-family)",
9997
- }, children: [eventDetails.durationDays, " Tag", eventDetails.durationDays > 1 ? "e" : ""] })] })] })] }), u$2("div", { style: { display: "flex", flexDirection: "column", gap: "var(--bw-spacing-large)" }, children: [u$2("form", { style: { display: "flex", flexDirection: "column", gap: "var(--bw-spacing-large)" }, children: [u$2("div", { style: {
10011
+ }, children: [eventDetails.durationDays, " Tag", eventDetails.durationDays > 1 ? "e" : ""] })] }), u$2("div", { style: { display: "flex", alignItems: "center", justifyContent: "space-between" }, children: [u$2("span", { style: {
10012
+ color: "var(--bw-text-muted)",
10013
+ fontFamily: "var(--bw-font-family)",
10014
+ display: "flex",
10015
+ alignItems: "center",
10016
+ gap: "4px",
10017
+ }, children: [u$2(IconMoney, { size: 20, color: "var(--bw-highlight-color)" }), " Preis:"] }), u$2("span", { style: {
10018
+ color: "var(--bw-text-color)",
10019
+ fontWeight: "500",
10020
+ fontFamily: "var(--bw-font-family)",
10021
+ }, children: [formatCurrency(eventDetails.price), " pro Person"] })] })] })] }), u$2("div", { style: { display: "flex", flexDirection: "column", gap: "var(--bw-spacing-large)" }, children: [u$2("form", { style: { display: "flex", flexDirection: "column", gap: "var(--bw-spacing-large)" }, children: [u$2("div", { style: {
9998
10022
  backgroundColor: "var(--bw-surface-color)",
9999
10023
  border: `1px solid var(--bw-border-color)`,
10000
10024
  backdropFilter: "blur(4px)",
@@ -10151,9 +10175,10 @@
10151
10175
  height: "20px",
10152
10176
  border: "1px solid var(--bw-border-color)",
10153
10177
  accentColor: "var(--bw-highlight-color)",
10154
- backgroundColor: form.getValues("acceptTerms") === true
10155
- ? "var(--bw-highlight-color)"
10156
- : "var(--bw-surface-color)",
10178
+ cursor: "pointer",
10179
+ appearance: "checkbox",
10180
+ WebkitAppearance: "checkbox",
10181
+ MozAppearance: "checkbox",
10157
10182
  } }), u$2("label", { htmlFor: "acceptTerms", style: {
10158
10183
  fontSize: "var(--bw-font-size)",
10159
10184
  color: "var(--bw-text-muted)",
@@ -10163,7 +10188,7 @@
10163
10188
  }, children: ["Ich akzeptiere die", " ", u$2("a", { href: eventDetails.agbUrl || "/terms", style: {
10164
10189
  color: "var(--bw-highlight-color)",
10165
10190
  textDecoration: "none",
10166
- }, target: "_blank", rel: "noopener noreferrer", children: "Allgemeinen Gesch\u00E4ftsbedingungen" }), "*"] })] }), form.formState.errors.acceptTerms && (u$2("p", { style: {
10191
+ }, target: "_blank", rel: "noopener noreferrer", children: "AGBs" }), "*"] })] }), form.formState.errors.acceptTerms && (u$2("p", { style: {
10167
10192
  color: "var(--bw-error-color)",
10168
10193
  fontSize: "var(--bw-font-size)",
10169
10194
  marginTop: "8px",
@@ -10316,6 +10341,164 @@
10316
10341
  ` })] }) }));
10317
10342
  }
10318
10343
 
10344
+ const BookingSuccessModal = ({ isOpen, onClose, bookingData, eventDetails, formData, config, }) => {
10345
+ if (!isOpen || !bookingData)
10346
+ return null;
10347
+ const booking = bookingData.booking;
10348
+ return (u$2(DialogWrapper, { isOpen: isOpen, onClose: onClose, maxWidth: "700px", children: u$2("div", { style: { padding: "var(--bw-spacing-large)" }, children: [u$2("div", { style: {
10349
+ textAlign: "center",
10350
+ marginBottom: "var(--bw-spacing-large)",
10351
+ }, children: [u$2("div", { style: {
10352
+ width: "64px",
10353
+ height: "64px",
10354
+ backgroundColor: "var(--bw-success-color, #10B981)",
10355
+ borderRadius: "50%",
10356
+ margin: "0 auto var(--bw-spacing)",
10357
+ display: "flex",
10358
+ alignItems: "center",
10359
+ justifyContent: "center",
10360
+ fontSize: "32px",
10361
+ color: "white",
10362
+ }, children: "\u2713" }), u$2("h2", { style: {
10363
+ fontSize: "var(--bw-font-size-xl)",
10364
+ fontWeight: "700",
10365
+ color: "var(--bw-text-color)",
10366
+ margin: "0 0 var(--bw-spacing-small) 0",
10367
+ fontFamily: "var(--bw-font-family)",
10368
+ }, children: "Buchung erfolgreich!" }), u$2("p", { style: {
10369
+ color: "var(--bw-text-muted)",
10370
+ fontFamily: "var(--bw-font-family)",
10371
+ margin: 0,
10372
+ }, children: "Deine Buchung wurde erfolgreich abgeschlossen." })] }), u$2("div", { style: {
10373
+ backgroundColor: "var(--bw-surface-color)",
10374
+ border: `1px solid var(--bw-border-color)`,
10375
+ borderRadius: "var(--bw-border-radius)",
10376
+ padding: "var(--bw-spacing)",
10377
+ marginBottom: "var(--bw-spacing-large)",
10378
+ }, children: [u$2("h3", { style: {
10379
+ fontSize: "var(--bw-font-size-large)",
10380
+ fontWeight: "600",
10381
+ color: "var(--bw-text-color)",
10382
+ margin: "0 0 var(--bw-spacing) 0",
10383
+ fontFamily: "var(--bw-font-family)",
10384
+ }, children: "Buchungsdetails" }), u$2("div", { style: { display: "flex", flexDirection: "column", gap: "var(--bw-spacing)" }, children: [booking.bookingHash && (u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Buchungs-ID:" }), u$2("span", { style: {
10385
+ color: "var(--bw-text-color)",
10386
+ fontWeight: "500",
10387
+ fontFamily: "monospace",
10388
+ fontSize: "var(--bw-font-size-small)",
10389
+ backgroundColor: "var(--bw-background-color)",
10390
+ padding: "4px 8px",
10391
+ borderRadius: "var(--bw-border-radius-small)",
10392
+ }, children: booking.bookingHash })] })), u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Event:" }), u$2("span", { style: {
10393
+ color: "var(--bw-text-color)",
10394
+ fontWeight: "500",
10395
+ fontFamily: "var(--bw-font-family)",
10396
+ textAlign: "right",
10397
+ maxWidth: "60%",
10398
+ }, children: eventDetails.name })] }), u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Datum:" }), u$2("span", { style: {
10399
+ color: "var(--bw-text-color)",
10400
+ fontWeight: "500",
10401
+ fontFamily: "var(--bw-font-family)",
10402
+ textAlign: "right",
10403
+ maxWidth: "60%",
10404
+ }, children: formatEventDate(eventDetails.startTime) })] }), u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Uhrzeit:" }), u$2("span", { style: {
10405
+ color: "var(--bw-text-color)",
10406
+ fontWeight: "500",
10407
+ fontFamily: "var(--bw-font-family)",
10408
+ textAlign: "right",
10409
+ maxWidth: "60%",
10410
+ }, children: formatTime(eventDetails.startTime, "Europe/Berlin", "de") })] }), u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Teilnehmer:" }), u$2("span", { style: {
10411
+ color: "var(--bw-text-color)",
10412
+ fontWeight: "500",
10413
+ fontFamily: "var(--bw-font-family)",
10414
+ }, children: booking.participantCount })] }), u$2("div", { style: {
10415
+ display: "flex",
10416
+ justifyContent: "space-between",
10417
+ alignItems: "center",
10418
+ borderTop: `1px solid var(--bw-border-color)`,
10419
+ paddingTop: "var(--bw-spacing)",
10420
+ marginTop: "var(--bw-spacing)",
10421
+ }, children: [u$2("span", { style: {
10422
+ color: "var(--bw-text-color)",
10423
+ fontWeight: "600",
10424
+ fontFamily: "var(--bw-font-family)",
10425
+ }, children: "Gesamtbetrag:" }), u$2("span", { style: {
10426
+ color: "var(--bw-text-color)",
10427
+ fontWeight: "600",
10428
+ fontSize: "var(--bw-font-size-large)",
10429
+ fontFamily: "var(--bw-font-family)",
10430
+ }, children: formatCurrency(booking.total) })] })] })] }), formData.participants && formData.participants.length > 0 && (u$2("div", { style: {
10431
+ border: `1px solid var(--bw-border-color)`,
10432
+ borderRadius: "var(--bw-border-radius)",
10433
+ padding: "var(--bw-spacing)",
10434
+ marginBottom: "var(--bw-spacing-large)",
10435
+ }, children: [u$2("h3", { style: {
10436
+ fontSize: "var(--bw-font-size-large)",
10437
+ fontWeight: "600",
10438
+ color: "var(--bw-text-color)",
10439
+ margin: "0 0 var(--bw-spacing) 0",
10440
+ fontFamily: "var(--bw-font-family)",
10441
+ }, children: "Teilnehmer" }), u$2("div", { style: { display: "flex", flexDirection: "column", gap: "var(--bw-spacing-small)" }, children: formData.participants
10442
+ .filter((p) => p.name.trim())
10443
+ .map((participant, index) => (u$2("div", { style: {
10444
+ display: "flex",
10445
+ justifyContent: "space-between",
10446
+ alignItems: "center",
10447
+ padding: "var(--bw-spacing-small)",
10448
+ borderRadius: "var(--bw-border-radius-small)",
10449
+ }, children: [u$2("span", { style: {
10450
+ color: "var(--bw-text-color)",
10451
+ fontFamily: "var(--bw-font-family)",
10452
+ }, children: participant.name }), participant.age && (u$2("span", { style: {
10453
+ color: "var(--bw-text-muted)",
10454
+ fontSize: "var(--bw-font-size-small)",
10455
+ fontFamily: "var(--bw-font-family)",
10456
+ }, children: [participant.age, " Jahre"] }))] }, index))) })] })), u$2("div", { style: {
10457
+ backgroundColor: "var(--bw-surface-color)",
10458
+ border: `1px solid var(--bw-border-color)`,
10459
+ borderRadius: "var(--bw-border-radius)",
10460
+ padding: "var(--bw-spacing)",
10461
+ marginBottom: "var(--bw-spacing-large)",
10462
+ }, children: [u$2("h3", { style: {
10463
+ fontSize: "var(--bw-font-size-large)",
10464
+ fontWeight: "600",
10465
+ color: "var(--bw-text-color)",
10466
+ margin: "0 0 var(--bw-spacing) 0",
10467
+ fontFamily: "var(--bw-font-family)",
10468
+ }, children: "Kontaktdaten" }), u$2("div", { style: { display: "flex", flexDirection: "column", gap: "var(--bw-spacing-small)" }, children: [u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Name:" }), u$2("span", { style: { color: "var(--bw-text-color)", fontFamily: "var(--bw-font-family)" }, children: formData.customerName })] }), u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "E-Mail:" }), u$2("span", { style: { color: "var(--bw-text-color)", fontFamily: "var(--bw-font-family)" }, children: formData.customerEmail })] }), formData.customerPhone && (u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Telefon:" }), u$2("span", { style: { color: "var(--bw-text-color)", fontFamily: "var(--bw-font-family)" }, children: formData.customerPhone })] }))] })] }), u$2("div", { style: {
10469
+ backgroundColor: "var(--bw-surface-muted-bg, rgba(59, 130, 246, 0.05))",
10470
+ border: `1px solid var(--bw-border-color)`,
10471
+ borderRadius: "var(--bw-border-radius)",
10472
+ padding: "var(--bw-spacing)",
10473
+ marginBottom: "var(--bw-spacing-large)",
10474
+ textAlign: "center",
10475
+ }, children: [u$2("div", { style: {
10476
+ color: "var(--bw-highlight-color)",
10477
+ fontSize: "24px",
10478
+ marginBottom: "var(--bw-spacing-small)",
10479
+ }, children: "\uD83D\uDCE7" }), u$2("p", { style: {
10480
+ color: "var(--bw-text-muted)",
10481
+ margin: 0,
10482
+ fontFamily: "var(--bw-font-family)",
10483
+ fontSize: "var(--bw-font-size-small)",
10484
+ }, children: ["Eine Best\u00E4tigungs-E-Mail wird in K\u00FCrze an ", formData.customerEmail, " gesendet."] })] }), u$2("div", { style: { textAlign: "center" }, children: u$2("button", { onClick: onClose, style: {
10485
+ backgroundColor: "var(--bw-highlight-color)",
10486
+ color: "white",
10487
+ padding: "12px 32px",
10488
+ border: "none",
10489
+ borderRadius: "var(--bw-border-radius)",
10490
+ fontSize: "var(--bw-font-size)",
10491
+ fontWeight: "600",
10492
+ cursor: "pointer",
10493
+ fontFamily: "var(--bw-font-family)",
10494
+ transition: "all 0.2s ease",
10495
+ }, onMouseEnter: (e) => {
10496
+ e.currentTarget.style.opacity = "0.9";
10497
+ }, onMouseLeave: (e) => {
10498
+ e.currentTarget.style.opacity = "1";
10499
+ }, children: "Schlie\u00DFen" }) })] }) }));
10500
+ };
10501
+
10319
10502
  const months = [
10320
10503
  "Januar",
10321
10504
  "Februar",
@@ -11393,198 +11576,6 @@
11393
11576
  }
11394
11577
 
11395
11578
  // Predefined themes & Style Provider have been moved to ../styles/StyleProvider.tsx
11396
- // Success Modal Component
11397
- const BookingSuccessModal = ({ isOpen, onClose, bookingData, eventDetails, formData, config, }) => {
11398
- if (!isOpen || !bookingData)
11399
- return null;
11400
- const booking = bookingData.booking;
11401
- return (u$2("div", { style: {
11402
- position: "fixed",
11403
- top: 0,
11404
- left: 0,
11405
- right: 0,
11406
- bottom: 0,
11407
- backgroundColor: "rgba(0, 0, 0, 0.5)",
11408
- zIndex: 10000,
11409
- display: "flex",
11410
- alignItems: "center",
11411
- justifyContent: "center",
11412
- padding: "var(--bw-spacing)",
11413
- }, children: u$2("div", { style: {
11414
- backgroundColor: "var(--bw-background-color)",
11415
- borderRadius: "var(--bw-border-radius)",
11416
- padding: "var(--bw-spacing-large)",
11417
- maxWidth: "500px",
11418
- width: "100%",
11419
- maxHeight: "90vh",
11420
- overflow: "auto",
11421
- position: "relative",
11422
- border: `1px solid var(--bw-border-color)`,
11423
- boxShadow: "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)",
11424
- }, children: [u$2("button", { onClick: onClose, style: {
11425
- position: "absolute",
11426
- top: "var(--bw-spacing)",
11427
- right: "var(--bw-spacing)",
11428
- background: "none",
11429
- border: "none",
11430
- fontSize: "24px",
11431
- cursor: "pointer",
11432
- color: "var(--bw-text-muted)",
11433
- width: "32px",
11434
- height: "32px",
11435
- display: "flex",
11436
- alignItems: "center",
11437
- justifyContent: "center",
11438
- borderRadius: "var(--bw-border-radius-small)",
11439
- }, children: "\u00D7" }), u$2("div", { style: {
11440
- textAlign: "center",
11441
- marginBottom: "var(--bw-spacing-large)",
11442
- }, children: [u$2("div", { style: {
11443
- width: "64px",
11444
- height: "64px",
11445
- backgroundColor: "var(--bw-success-color, #10B981)",
11446
- borderRadius: "50%",
11447
- margin: "0 auto var(--bw-spacing)",
11448
- display: "flex",
11449
- alignItems: "center",
11450
- justifyContent: "center",
11451
- fontSize: "32px",
11452
- color: "white",
11453
- }, children: "\u2713" }), u$2("h2", { style: {
11454
- fontSize: "var(--bw-font-size-xl)",
11455
- fontWeight: "700",
11456
- color: "var(--bw-text-color)",
11457
- margin: "0 0 var(--bw-spacing-small) 0",
11458
- fontFamily: "var(--bw-font-family)",
11459
- }, children: "Buchung erfolgreich!" }), u$2("p", { style: {
11460
- color: "var(--bw-text-muted)",
11461
- fontFamily: "var(--bw-font-family)",
11462
- margin: 0,
11463
- }, children: "Deine Buchung wurde erfolgreich abgeschlossen." })] }), u$2("div", { style: {
11464
- backgroundColor: "var(--bw-surface-color)",
11465
- border: `1px solid var(--bw-border-color)`,
11466
- borderRadius: "var(--bw-border-radius)",
11467
- padding: "var(--bw-spacing)",
11468
- marginBottom: "var(--bw-spacing-large)",
11469
- }, children: [u$2("h3", { style: {
11470
- fontSize: "var(--bw-font-size-large)",
11471
- fontWeight: "600",
11472
- color: "var(--bw-text-color)",
11473
- margin: "0 0 var(--bw-spacing) 0",
11474
- fontFamily: "var(--bw-font-family)",
11475
- }, children: "Buchungsdetails" }), u$2("div", { style: { display: "flex", flexDirection: "column", gap: "var(--bw-spacing)" }, children: [booking.bookingHash && (u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Buchungs-ID:" }), u$2("span", { style: {
11476
- color: "var(--bw-text-color)",
11477
- fontWeight: "500",
11478
- fontFamily: "monospace",
11479
- fontSize: "var(--bw-font-size-small)",
11480
- backgroundColor: "var(--bw-background-color)",
11481
- padding: "4px 8px",
11482
- borderRadius: "var(--bw-border-radius-small)",
11483
- }, children: booking.bookingHash })] })), u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Event:" }), u$2("span", { style: {
11484
- color: "var(--bw-text-color)",
11485
- fontWeight: "500",
11486
- fontFamily: "var(--bw-font-family)",
11487
- textAlign: "right",
11488
- maxWidth: "60%",
11489
- }, children: eventDetails.name })] }), u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Datum:" }), u$2("span", { style: {
11490
- color: "var(--bw-text-color)",
11491
- fontWeight: "500",
11492
- fontFamily: "var(--bw-font-family)",
11493
- textAlign: "right",
11494
- maxWidth: "60%",
11495
- }, children: formatDate(eventDetails.startTime) })] }), u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Teilnehmer:" }), u$2("span", { style: {
11496
- color: "var(--bw-text-color)",
11497
- fontWeight: "500",
11498
- fontFamily: "var(--bw-font-family)",
11499
- }, children: booking.participantCount })] }), u$2("div", { style: {
11500
- display: "flex",
11501
- justifyContent: "space-between",
11502
- alignItems: "center",
11503
- borderTop: `1px solid var(--bw-border-color)`,
11504
- paddingTop: "var(--bw-spacing)",
11505
- marginTop: "var(--bw-spacing)",
11506
- }, children: [u$2("span", { style: {
11507
- color: "var(--bw-text-color)",
11508
- fontWeight: "600",
11509
- fontFamily: "var(--bw-font-family)",
11510
- }, children: "Gesamtbetrag:" }), u$2("span", { style: {
11511
- color: "var(--bw-text-color)",
11512
- fontWeight: "600",
11513
- fontSize: "var(--bw-font-size-large)",
11514
- fontFamily: "var(--bw-font-family)",
11515
- }, children: formatCurrency(booking.total) })] })] })] }), formData.participants && formData.participants.length > 0 && (u$2("div", { style: {
11516
- backgroundColor: "var(--bw-surface-color)",
11517
- border: `1px solid var(--bw-border-color)`,
11518
- borderRadius: "var(--bw-border-radius)",
11519
- padding: "var(--bw-spacing)",
11520
- marginBottom: "var(--bw-spacing-large)",
11521
- }, children: [u$2("h3", { style: {
11522
- fontSize: "var(--bw-font-size-large)",
11523
- fontWeight: "600",
11524
- color: "var(--bw-text-color)",
11525
- margin: "0 0 var(--bw-spacing) 0",
11526
- fontFamily: "var(--bw-font-family)",
11527
- }, children: "Teilnehmer" }), u$2("div", { style: { display: "flex", flexDirection: "column", gap: "var(--bw-spacing-small)" }, children: formData.participants
11528
- .filter((p) => p.name.trim())
11529
- .map((participant, index) => (u$2("div", { style: {
11530
- display: "flex",
11531
- justifyContent: "space-between",
11532
- alignItems: "center",
11533
- padding: "var(--bw-spacing-small)",
11534
- backgroundColor: "var(--bw-background-color)",
11535
- borderRadius: "var(--bw-border-radius-small)",
11536
- }, children: [u$2("span", { style: {
11537
- color: "var(--bw-text-color)",
11538
- fontFamily: "var(--bw-font-family)",
11539
- }, children: participant.name }), participant.age && (u$2("span", { style: {
11540
- color: "var(--bw-text-muted)",
11541
- fontSize: "var(--bw-font-size-small)",
11542
- fontFamily: "var(--bw-font-family)",
11543
- }, children: [participant.age, " Jahre"] }))] }, index))) })] })), u$2("div", { style: {
11544
- backgroundColor: "var(--bw-surface-color)",
11545
- border: `1px solid var(--bw-border-color)`,
11546
- borderRadius: "var(--bw-border-radius)",
11547
- padding: "var(--bw-spacing)",
11548
- marginBottom: "var(--bw-spacing-large)",
11549
- }, children: [u$2("h3", { style: {
11550
- fontSize: "var(--bw-font-size-large)",
11551
- fontWeight: "600",
11552
- color: "var(--bw-text-color)",
11553
- margin: "0 0 var(--bw-spacing) 0",
11554
- fontFamily: "var(--bw-font-family)",
11555
- }, children: "Kontaktdaten" }), u$2("div", { style: { display: "flex", flexDirection: "column", gap: "var(--bw-spacing-small)" }, children: [u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Name:" }), u$2("span", { style: { color: "var(--bw-text-color)", fontFamily: "var(--bw-font-family)" }, children: formData.customerName })] }), u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "E-Mail:" }), u$2("span", { style: { color: "var(--bw-text-color)", fontFamily: "var(--bw-font-family)" }, children: formData.customerEmail })] }), formData.customerPhone && (u$2("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center" }, children: [u$2("span", { style: { color: "var(--bw-text-muted)", fontFamily: "var(--bw-font-family)" }, children: "Telefon:" }), u$2("span", { style: { color: "var(--bw-text-color)", fontFamily: "var(--bw-font-family)" }, children: formData.customerPhone })] }))] })] }), u$2("div", { style: {
11556
- backgroundColor: "var(--bw-surface-muted-bg, rgba(59, 130, 246, 0.05))",
11557
- border: `1px solid var(--bw-border-color)`,
11558
- borderRadius: "var(--bw-border-radius)",
11559
- padding: "var(--bw-spacing)",
11560
- marginBottom: "var(--bw-spacing-large)",
11561
- textAlign: "center",
11562
- }, children: [u$2("div", { style: {
11563
- color: "var(--bw-highlight-color)",
11564
- fontSize: "24px",
11565
- marginBottom: "var(--bw-spacing-small)",
11566
- }, children: "\uD83D\uDCE7" }), u$2("p", { style: {
11567
- color: "var(--bw-text-muted)",
11568
- margin: 0,
11569
- fontFamily: "var(--bw-font-family)",
11570
- fontSize: "var(--bw-font-size-small)",
11571
- }, children: ["Eine Best\u00E4tigungs-E-Mail wird in K\u00FCrze an ", formData.customerEmail, " gesendet."] })] }), u$2("div", { style: { textAlign: "center" }, children: u$2("button", { onClick: onClose, style: {
11572
- backgroundColor: "var(--bw-highlight-color)",
11573
- color: "white",
11574
- padding: "12px 32px",
11575
- border: "none",
11576
- borderRadius: "var(--bw-border-radius)",
11577
- fontSize: "var(--bw-font-size)",
11578
- fontWeight: "600",
11579
- cursor: "pointer",
11580
- fontFamily: "var(--bw-font-family)",
11581
- transition: "all 0.2s ease",
11582
- }, onMouseEnter: (e) => {
11583
- e.currentTarget.style.opacity = "0.9";
11584
- }, onMouseLeave: (e) => {
11585
- e.currentTarget.style.opacity = "1";
11586
- }, children: "Schlie\u00DFen" }) })] }) }));
11587
- };
11588
11579
  // Main widget component
11589
11580
  function UniversalBookingWidget({ config: baseConfig }) {
11590
11581
  // Apply URL parameter inference
@@ -11614,7 +11605,6 @@
11614
11605
  // Booking flow state
11615
11606
  const [eventDetails, setEventDetails] = d$1(null);
11616
11607
  const [stripePromise, setStripePromise] = d$1(null);
11617
- const [clientSecret, setClientSecret] = d$1(null);
11618
11608
  // SEPARATED LOADING STATES
11619
11609
  const [isLoading, setIsLoading] = d$1(true); // Only for initial widget load
11620
11610
  const [isLoadingEventInstances, setIsLoadingEventInstances] = d$1(false); // For loading event instances in sidebar
@@ -12075,16 +12065,6 @@
12075
12065
  fontFamily: "var(--bw-font-family)",
12076
12066
  }, children: "Falls das Problem weiterhin besteht, kontaktiere bitte den Support." })] }) }) }));
12077
12067
  }
12078
- // Success state
12079
- if (isSuccess) {
12080
- return (u$2(StyleProvider, { config: config, children: u$2(BookingSuccessModal, { isOpen: isSuccess, onClose: () => {
12081
- setIsSuccess(false);
12082
- setCurrentStep("eventTypes");
12083
- // Reset lazy loading flags
12084
- setShouldRenderInstanceSelection(false);
12085
- setShouldRenderBookingForm(false);
12086
- }, bookingData: successData, eventDetails: eventDetails, formData: successData.formData, config: config }) }));
12087
- }
12088
12068
  // Main view based on view mode
12089
12069
  if (viewMode === "next-events" && showingPreview) {
12090
12070
  // Next events preview mode
@@ -12100,17 +12080,31 @@
12100
12080
  setCurrentStep("eventTypes");
12101
12081
  setShowingPreview(true);
12102
12082
  setEventDetails(null);
12103
- }, systemConfig: systemConfig }))] }));
12083
+ }, systemConfig: systemConfig })), u$2(BookingSuccessModal, { isOpen: isSuccess, onClose: () => {
12084
+ setIsSuccess(false);
12085
+ setCurrentStep("eventTypes");
12086
+ setShowingPreview(true);
12087
+ // Reset lazy loading flags
12088
+ setShouldRenderInstanceSelection(false);
12089
+ setShouldRenderBookingForm(false);
12090
+ }, bookingData: successData, eventDetails: eventDetails, formData: successData?.formData, config: config })] }));
12104
12091
  }
12105
12092
  if (viewMode === "next-events" && !showingPreview && currentStep === "eventInstances") {
12106
12093
  // Show all events for the single event type
12107
- return (u$2(StyleProvider, { config: config, children: shouldRenderInstanceSelection && (u$2(EventInstanceSelection, { eventInstances: eventInstances, selectedEventType: selectedEventType, onEventInstanceSelect: handleEventInstanceSelect, onBackToEventTypes: () => {
12108
- setShowingPreview(true);
12109
- setCurrentStep("eventTypes");
12110
- }, isOpen: currentStep === "eventInstances", onClose: () => {
12111
- setShowingPreview(true);
12112
- setCurrentStep("eventTypes");
12113
- }, isLoadingEventInstances: isLoadingEventInstances, isLoadingEventDetails: isLoadingEventDetails })) }));
12094
+ return (u$2(StyleProvider, { config: config, children: [shouldRenderInstanceSelection && (u$2(EventInstanceSelection, { eventInstances: eventInstances, selectedEventType: selectedEventType, onEventInstanceSelect: handleEventInstanceSelect, onBackToEventTypes: () => {
12095
+ setShowingPreview(true);
12096
+ setCurrentStep("eventTypes");
12097
+ }, isOpen: currentStep === "eventInstances", onClose: () => {
12098
+ setShowingPreview(true);
12099
+ setCurrentStep("eventTypes");
12100
+ }, isLoadingEventInstances: isLoadingEventInstances, isLoadingEventDetails: isLoadingEventDetails })), u$2(BookingSuccessModal, { isOpen: isSuccess, onClose: () => {
12101
+ setIsSuccess(false);
12102
+ setCurrentStep("eventTypes");
12103
+ setShowingPreview(true);
12104
+ // Reset lazy loading flags
12105
+ setShouldRenderInstanceSelection(false);
12106
+ setShouldRenderBookingForm(false);
12107
+ }, bookingData: successData, eventDetails: eventDetails, formData: successData?.formData, config: config })] }));
12114
12108
  }
12115
12109
  if (viewMode === "button" && (isSingleEventTypeMode || isDirectInstanceMode)) {
12116
12110
  // Button mode - show button that opens sidebar/booking directly
@@ -12140,7 +12134,14 @@
12140
12134
  setShouldRenderInstanceSelection(true);
12141
12135
  }
12142
12136
  }, children: config.buttonText ||
12143
- (isDirectInstanceMode ? "Jetzt buchen" : "Jetzt Termin auswählen") }), shouldRenderInstanceSelection && (u$2(EventInstanceSelection, { eventInstances: eventInstances, selectedEventType: selectedEventType, onEventInstanceSelect: handleEventInstanceSelect, onBackToEventTypes: () => setSidebarOpen(false), isOpen: sidebarOpen, onClose: () => setSidebarOpen(false), isLoadingEventInstances: isLoadingEventInstances, isLoadingEventDetails: isLoadingEventDetails })), shouldRenderBookingForm && eventDetails && (u$2(BookingForm, { config: config, eventDetails: eventDetails, stripePromise: stripePromise, onSuccess: handleBookingSuccess, onError: handleBookingError, onBackToEventInstances: () => setCurrentStep(isDirectInstanceMode ? "eventTypes" : "eventInstances"), onBackToEventTypes: () => setSidebarOpen(false), selectedEventType: selectedEventType, selectedEventInstance: selectedEventInstance, isOpen: currentStep === "booking" && !!eventDetails, onClose: () => setCurrentStep(isDirectInstanceMode ? "eventTypes" : "eventInstances"), systemConfig: systemConfig }))] }) }));
12137
+ (isDirectInstanceMode ? "Jetzt buchen" : "Jetzt Termin auswählen") }), shouldRenderInstanceSelection && (u$2(EventInstanceSelection, { eventInstances: eventInstances, selectedEventType: selectedEventType, onEventInstanceSelect: handleEventInstanceSelect, onBackToEventTypes: () => setSidebarOpen(false), isOpen: sidebarOpen, onClose: () => setSidebarOpen(false), isLoadingEventInstances: isLoadingEventInstances, isLoadingEventDetails: isLoadingEventDetails })), shouldRenderBookingForm && eventDetails && (u$2(BookingForm, { config: config, eventDetails: eventDetails, stripePromise: stripePromise, onSuccess: handleBookingSuccess, onError: handleBookingError, onBackToEventInstances: () => setCurrentStep(isDirectInstanceMode ? "eventTypes" : "eventInstances"), onBackToEventTypes: () => setSidebarOpen(false), selectedEventType: selectedEventType, selectedEventInstance: selectedEventInstance, isOpen: currentStep === "booking" && !!eventDetails, onClose: () => setCurrentStep(isDirectInstanceMode ? "eventTypes" : "eventInstances"), systemConfig: systemConfig })), u$2(BookingSuccessModal, { isOpen: isSuccess, onClose: () => {
12138
+ setIsSuccess(false);
12139
+ setCurrentStep("eventTypes");
12140
+ setSidebarOpen(false);
12141
+ // Reset lazy loading flags
12142
+ setShouldRenderInstanceSelection(false);
12143
+ setShouldRenderBookingForm(false);
12144
+ }, bookingData: successData, eventDetails: eventDetails, formData: successData?.formData, config: config })] }) }));
12144
12145
  }
12145
12146
  // Cards mode (default) - show event type selection
12146
12147
  const cardsView = (u$2(EventTypeSelection, { eventTypes: eventTypes, onEventTypeSelect: handleEventTypeSelect, isLoading: isLoading, skeletonCount: getSkeletonCount() }));
@@ -12173,7 +12174,13 @@
12173
12174
  };
12174
12175
  };
12175
12176
  const backHandlers = getBackHandlers();
12176
- return (u$2(StyleProvider, { config: config, children: [cardsView, shouldRenderInstanceSelection && (u$2(EventInstanceSelection, { eventInstances: eventInstances, selectedEventType: selectedEventType, onEventInstanceSelect: handleEventInstanceSelect, onBackToEventTypes: handleBackToEventTypes, isOpen: currentStep === "eventInstances", onClose: handleBackToEventTypes, isLoadingEventInstances: isLoadingEventInstances, isLoadingEventDetails: isLoadingEventDetails })), shouldRenderBookingForm && eventDetails && (u$2(BookingForm, { config: config, eventDetails: eventDetails, stripePromise: stripePromise, onSuccess: handleBookingSuccess, onError: handleBookingError, onBackToEventInstances: backHandlers.onBackToEventInstances, onBackToEventTypes: backHandlers.onBackToEventTypes, selectedEventType: selectedEventType, selectedEventInstance: selectedEventInstance, isOpen: currentStep === "booking" && !!eventDetails, onClose: backHandlers.onClose, systemConfig: systemConfig }))] }));
12177
+ return (u$2(StyleProvider, { config: config, children: [cardsView, shouldRenderInstanceSelection && (u$2(EventInstanceSelection, { eventInstances: eventInstances, selectedEventType: selectedEventType, onEventInstanceSelect: handleEventInstanceSelect, onBackToEventTypes: handleBackToEventTypes, isOpen: currentStep === "eventInstances", onClose: handleBackToEventTypes, isLoadingEventInstances: isLoadingEventInstances, isLoadingEventDetails: isLoadingEventDetails })), shouldRenderBookingForm && eventDetails && (u$2(BookingForm, { config: config, eventDetails: eventDetails, stripePromise: stripePromise, onSuccess: handleBookingSuccess, onError: handleBookingError, onBackToEventInstances: backHandlers.onBackToEventInstances, onBackToEventTypes: backHandlers.onBackToEventTypes, selectedEventType: selectedEventType, selectedEventInstance: selectedEventInstance, isOpen: currentStep === "booking" && !!eventDetails, onClose: backHandlers.onClose, systemConfig: systemConfig })), u$2(BookingSuccessModal, { isOpen: isSuccess, onClose: () => {
12178
+ setIsSuccess(false);
12179
+ setCurrentStep("eventTypes");
12180
+ // Reset lazy loading flags
12181
+ setShouldRenderInstanceSelection(false);
12182
+ setShouldRenderBookingForm(false);
12183
+ }, bookingData: successData, eventDetails: eventDetails, formData: successData?.formData, config: config })] }));
12177
12184
  }
12178
12185
 
12179
12186
  // Export init function for vanilla JS usage with Preact