@bigz-app/booking-widget 0.1.23 → 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.
- package/dist/booking-widget.js +627 -612
- package/dist/booking-widget.js.map +1 -1
- package/dist/components/BookingForm.d.ts.map +1 -1
- package/dist/components/BookingSuccessModal.d.ts +11 -0
- package/dist/components/BookingSuccessModal.d.ts.map +1 -0
- package/dist/components/EventInstanceSelection.d.ts.map +1 -1
- package/dist/components/EventTypeDetailsDialog.d.ts.map +1 -1
- package/dist/components/EventTypeSelection.d.ts.map +1 -1
- package/dist/components/ImageCarousel.d.ts.map +1 -1
- package/dist/components/Sidebar.d.ts.map +1 -1
- package/dist/components/UniversalBookingWidget.d.ts.map +1 -1
- package/dist/components/shared/DialogPortal.d.ts +15 -0
- package/dist/components/shared/DialogPortal.d.ts.map +1 -0
- package/dist/index.cjs +627 -612
- package/dist/index.cjs.map +1 -1
- package/dist/index.esm.js +627 -612
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
package/dist/booking-widget.js
CHANGED
|
@@ -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:
|
|
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
|
-
|
|
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
|
|
6864
|
+
}, [isOpen, onClose]);
|
|
6865
|
+
if (!isOpen)
|
|
6869
6866
|
return null;
|
|
6870
|
-
|
|
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:
|
|
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
|
|
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" }),
|
|
6921
|
-
|
|
6922
|
-
|
|
6923
|
-
|
|
6924
|
-
|
|
6925
|
-
|
|
6926
|
-
|
|
6927
|
-
|
|
6928
|
-
|
|
6929
|
-
|
|
6930
|
-
|
|
6931
|
-
|
|
6932
|
-
|
|
6933
|
-
|
|
6934
|
-
|
|
6935
|
-
|
|
6936
|
-
|
|
6937
|
-
|
|
6938
|
-
|
|
6939
|
-
|
|
6940
|
-
|
|
6941
|
-
|
|
6942
|
-
|
|
6943
|
-
|
|
6944
|
-
|
|
6945
|
-
|
|
6946
|
-
|
|
6947
|
-
|
|
6948
|
-
|
|
6949
|
-
|
|
6950
|
-
|
|
6951
|
-
|
|
6952
|
-
|
|
6953
|
-
|
|
6954
|
-
|
|
6955
|
-
|
|
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",
|
|
6941
|
+
fontFamily: "var(--bw-font-family)",
|
|
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",
|
|
6962
6948
|
fontFamily: "var(--bw-font-family)",
|
|
6963
|
-
|
|
6964
|
-
}, children:
|
|
6965
|
-
|
|
6966
|
-
|
|
6967
|
-
|
|
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: {
|
|
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
|
-
|
|
7039
|
-
|
|
7040
|
-
|
|
7041
|
-
|
|
7042
|
-
|
|
7043
|
-
|
|
7044
|
-
|
|
7045
|
-
|
|
7046
|
-
|
|
7047
|
-
|
|
7048
|
-
|
|
7049
|
-
|
|
7050
|
-
|
|
7051
|
-
|
|
7052
|
-
|
|
7053
|
-
|
|
7054
|
-
|
|
7055
|
-
|
|
7056
|
-
|
|
7057
|
-
|
|
7058
|
-
|
|
7059
|
-
|
|
7060
|
-
|
|
7061
|
-
|
|
7062
|
-
|
|
7063
|
-
|
|
7064
|
-
|
|
7065
|
-
|
|
7066
|
-
|
|
7067
|
-
|
|
7068
|
-
|
|
7069
|
-
|
|
7070
|
-
|
|
7071
|
-
|
|
7072
|
-
|
|
7073
|
-
|
|
7074
|
-
|
|
7075
|
-
|
|
7076
|
-
|
|
7077
|
-
|
|
7078
|
-
|
|
7079
|
-
|
|
7080
|
-
|
|
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
|
-
|
|
7084
|
-
|
|
7085
|
-
|
|
7086
|
-
|
|
7087
|
-
|
|
7088
|
-
|
|
7089
|
-
|
|
7090
|
-
|
|
7091
|
-
|
|
7092
|
-
|
|
7093
|
-
|
|
7094
|
-
|
|
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,
|
|
@@ -7675,153 +7688,154 @@
|
|
|
7675
7688
|
display: "flex",
|
|
7676
7689
|
flexDirection: "column",
|
|
7677
7690
|
justifyContent: "space-between",
|
|
7678
|
-
|
|
7679
|
-
|
|
7680
|
-
|
|
7681
|
-
color: "var(--bw-text-color)",
|
|
7682
|
-
lineHeight: "1.3",
|
|
7683
|
-
fontFamily: "var(--bw-font-family)",
|
|
7684
|
-
margin: "0 0 12px 0",
|
|
7685
|
-
}, children: eventType.name }), u$2("div", { style: {
|
|
7686
|
-
display: "flex",
|
|
7687
|
-
alignItems: "center",
|
|
7688
|
-
gap: "6px",
|
|
7689
|
-
}, children: [u$2(IconCalendar, { size: 17, color: "var(--bw-text-color)" }), u$2("span", { style: {
|
|
7690
|
-
fontFamily: "var(--bw-font-family)",
|
|
7691
|
-
fontSize: "14px",
|
|
7692
|
-
color: "var(--bw-text-muted)",
|
|
7693
|
-
}, children: eventType.nextAvailableDate
|
|
7694
|
-
? `Freie Plätze ab ${formatDate(eventType.nextAvailableDate)}`
|
|
7695
|
-
: "Keine Termine frei" })] }), u$2("div", { style: { cursor: "pointer" }, onClick: (e) => {
|
|
7696
|
-
e.stopPropagation();
|
|
7697
|
-
handleShowDetails(eventType);
|
|
7698
|
-
}, children: eventType.highlights && eventType.highlights.length > 0 ? (
|
|
7699
|
-
// Show highlights as list
|
|
7700
|
-
u$2("div", { className: "bw-event-type-highlights", style: {
|
|
7701
|
-
margin: "10px 0px 10px 0px",
|
|
7702
|
-
minHeight: "128px",
|
|
7703
|
-
fontSize: "clamp(0.95rem, 2vw, 16px)",
|
|
7704
|
-
}, children: u$2("ul", { style: {
|
|
7705
|
-
listStyle: "none",
|
|
7706
|
-
display: "-webkit-box",
|
|
7707
|
-
WebkitLineClamp: 5,
|
|
7708
|
-
WebkitBoxOrient: "vertical",
|
|
7709
|
-
maxHeight: "128px",
|
|
7710
|
-
padding: "0",
|
|
7711
|
-
margin: "0",
|
|
7712
|
-
flexDirection: "column",
|
|
7713
|
-
gap: "3px",
|
|
7714
|
-
position: "relative",
|
|
7715
|
-
}, children: eventType.highlights
|
|
7716
|
-
.filter((highlight) => highlight.trim())
|
|
7717
|
-
.map((highlight, index) => (u$2("li", { style: {
|
|
7718
|
-
display: "flex",
|
|
7719
|
-
alignItems: "flex-start",
|
|
7720
|
-
gap: "8px",
|
|
7721
|
-
fontFamily: "var(--bw-font-family)",
|
|
7722
|
-
lineHeight: "1.55",
|
|
7723
|
-
color: "var(--bw-text-muted)",
|
|
7724
|
-
position: "relative",
|
|
7725
|
-
maxWidth: "100%",
|
|
7726
|
-
}, children: [u$2("div", { style: { marginTop: "4px", flexShrink: 0 }, children: u$2(IconCheck, { size: 16, color: "var(--bw-success-color)" }) }), u$2("span", { style: {
|
|
7727
|
-
textOverflow: "ellipsis",
|
|
7728
|
-
overflow: "hidden",
|
|
7729
|
-
whiteSpace: "nowrap",
|
|
7730
|
-
flex: "1",
|
|
7731
|
-
}, children: highlight.trim() })] }, index))) }) })) : eventType.description ? (u$2("div", { className: "bw-event-type-desc", style: {
|
|
7732
|
-
color: "var(--bw-text-muted)",
|
|
7733
|
-
fontSize: "clamp(0.95rem, 2vw, 16px)",
|
|
7734
|
-
lineHeight: "1.6",
|
|
7735
|
-
fontFamily: "var(--bw-font-family)",
|
|
7736
|
-
margin: "10px 0 10px 0",
|
|
7737
|
-
minHeight: "128px",
|
|
7738
|
-
maxHeight: "128px",
|
|
7739
|
-
overflow: "hidden",
|
|
7740
|
-
textAlign: "left",
|
|
7741
|
-
}, children: u$2("div", { className: "bw-event-type-markdown", style: {
|
|
7742
|
-
display: "-webkit-box",
|
|
7743
|
-
WebkitLineClamp: 5,
|
|
7744
|
-
WebkitBoxOrient: "vertical",
|
|
7745
|
-
overflow: "hidden",
|
|
7746
|
-
}, children: Markdown({
|
|
7747
|
-
children: preprocessMarkdown(eventType.description),
|
|
7748
|
-
}) }) })) : (u$2("div", { className: "bw-event-type-desc", style: {
|
|
7749
|
-
color: "var(--bw-text-muted)",
|
|
7750
|
-
fontSize: "clamp(0.95rem, 2vw, 16px)",
|
|
7751
|
-
lineHeight: "1.6",
|
|
7752
|
-
fontFamily: "var(--bw-font-family)",
|
|
7753
|
-
margin: "10px 0 10px 0",
|
|
7754
|
-
minHeight: "128px",
|
|
7755
|
-
maxHeight: "128px",
|
|
7756
|
-
overflow: "hidden",
|
|
7757
|
-
textAlign: "left",
|
|
7758
|
-
}, children: "\u00A0" })) }), u$2("div", { children: [u$2("div", { className: "bw-event-type-price", style: {
|
|
7759
|
-
fontWeight: "700",
|
|
7760
|
-
color: "var(--bw-text-color)",
|
|
7761
|
-
fontFamily: "var(--bw-font-family)",
|
|
7762
|
-
textAlign: "right",
|
|
7763
|
-
}, children: eventType.groupedDurations.length > 1 ? (u$2("span", { children: eventType.groupedDurations })) : (u$2("span", { children: eventType.cheapestDurationPerDay % 60 === 0
|
|
7764
|
-
? `${eventType.cheapestDurationPerDay / 60} Stunde${eventType.cheapestDurationPerDay / 60 > 1 ? "n" : ""}`
|
|
7765
|
-
: `${eventType.cheapestDurationPerDay} Minuten` })) }), u$2("div", { className: "bw-event-type-price", style: {
|
|
7766
|
-
fontSize: "clamp(1.72rem, 4vw, 32px)",
|
|
7691
|
+
height: "400px",
|
|
7692
|
+
}, children: [u$2("div", { children: [u$2("h2", { className: "bw-event-type-title", style: {
|
|
7693
|
+
fontSize: "clamp(1.1rem, 2.5vw, 24px)",
|
|
7767
7694
|
fontWeight: "700",
|
|
7768
7695
|
color: "var(--bw-text-color)",
|
|
7696
|
+
lineHeight: "1.3",
|
|
7769
7697
|
fontFamily: "var(--bw-font-family)",
|
|
7770
|
-
|
|
7771
|
-
}, children:
|
|
7772
|
-
display: "flex",
|
|
7773
|
-
justifyContent: "flex-end",
|
|
7774
|
-
alignItems: "center",
|
|
7775
|
-
marginTop: "10px",
|
|
7776
|
-
gap: "12px",
|
|
7777
|
-
}, children: [(eventType.description ||
|
|
7778
|
-
(eventType.highlights && eventType.highlights.length > 0)) && (u$2("button", { onClick: (e) => {
|
|
7779
|
-
e.stopPropagation();
|
|
7780
|
-
handleShowDetails(eventType);
|
|
7781
|
-
}, style: {
|
|
7782
|
-
color: "var(--bw-highlight-color)",
|
|
7783
|
-
background: "var(--bw-surface-color)",
|
|
7784
|
-
padding: "12px 12px",
|
|
7785
|
-
borderRadius: "var(--bw-border-radius)",
|
|
7786
|
-
fontSize: "clamp(0.8rem, 2vw, 16px)",
|
|
7787
|
-
fontWeight: "600",
|
|
7788
|
-
fontFamily: "var(--bw-font-family)",
|
|
7698
|
+
margin: "0 0 12px 0",
|
|
7699
|
+
}, children: eventType.name }), u$2("div", { style: {
|
|
7789
7700
|
display: "flex",
|
|
7790
7701
|
alignItems: "center",
|
|
7791
|
-
gap: "
|
|
7792
|
-
|
|
7793
|
-
|
|
7794
|
-
|
|
7795
|
-
|
|
7796
|
-
|
|
7797
|
-
|
|
7798
|
-
|
|
7799
|
-
|
|
7800
|
-
|
|
7801
|
-
|
|
7802
|
-
|
|
7803
|
-
|
|
7804
|
-
|
|
7805
|
-
|
|
7806
|
-
|
|
7807
|
-
|
|
7808
|
-
|
|
7809
|
-
|
|
7702
|
+
gap: "6px",
|
|
7703
|
+
}, children: [u$2(IconCalendar, { size: 17, color: "var(--bw-text-color)" }), u$2("span", { style: {
|
|
7704
|
+
fontFamily: "var(--bw-font-family)",
|
|
7705
|
+
fontSize: "14px",
|
|
7706
|
+
color: "var(--bw-text-muted)",
|
|
7707
|
+
}, children: eventType.nextAvailableDate
|
|
7708
|
+
? `Freie Plätze ab ${formatDate(eventType.nextAvailableDate)}`
|
|
7709
|
+
: "Keine Termine frei" })] }), u$2("div", { style: { cursor: "pointer" }, onClick: (e) => {
|
|
7710
|
+
e.stopPropagation();
|
|
7711
|
+
handleShowDetails(eventType);
|
|
7712
|
+
}, children: eventType.highlights && eventType.highlights.length > 0 ? (
|
|
7713
|
+
// Show highlights as list
|
|
7714
|
+
u$2("div", { className: "bw-event-type-highlights", style: {
|
|
7715
|
+
margin: "10px 0px 10px 0px",
|
|
7716
|
+
minHeight: "128px",
|
|
7717
|
+
fontSize: "clamp(0.95rem, 2vw, 16px)",
|
|
7718
|
+
}, children: u$2("ul", { style: {
|
|
7719
|
+
listStyle: "none",
|
|
7720
|
+
display: "-webkit-box",
|
|
7721
|
+
WebkitLineClamp: 5,
|
|
7722
|
+
WebkitBoxOrient: "vertical",
|
|
7723
|
+
maxHeight: "128px",
|
|
7724
|
+
padding: "0",
|
|
7725
|
+
margin: "0",
|
|
7726
|
+
flexDirection: "column",
|
|
7727
|
+
gap: "3px",
|
|
7728
|
+
position: "relative",
|
|
7729
|
+
}, children: eventType.highlights
|
|
7730
|
+
.filter((highlight) => highlight.trim())
|
|
7731
|
+
.map((highlight, index) => (u$2("li", { style: {
|
|
7732
|
+
display: "flex",
|
|
7733
|
+
alignItems: "flex-start",
|
|
7734
|
+
gap: "8px",
|
|
7735
|
+
fontFamily: "var(--bw-font-family)",
|
|
7736
|
+
lineHeight: "1.55",
|
|
7737
|
+
color: "var(--bw-text-muted)",
|
|
7738
|
+
position: "relative",
|
|
7739
|
+
maxWidth: "100%",
|
|
7740
|
+
}, children: [u$2("div", { style: { marginTop: "4px", flexShrink: 0 }, children: u$2(IconCheck, { size: 16, color: "var(--bw-success-color)" }) }), u$2("span", { style: {
|
|
7741
|
+
textOverflow: "ellipsis",
|
|
7742
|
+
overflow: "hidden",
|
|
7743
|
+
whiteSpace: "nowrap",
|
|
7744
|
+
flex: "1",
|
|
7745
|
+
}, children: highlight.trim() })] }, index))) }) })) : eventType.description ? (u$2("div", { className: "bw-event-type-desc", style: {
|
|
7746
|
+
color: "var(--bw-text-muted)",
|
|
7747
|
+
fontSize: "clamp(0.95rem, 2vw, 16px)",
|
|
7748
|
+
lineHeight: "1.6",
|
|
7749
|
+
fontFamily: "var(--bw-font-family)",
|
|
7750
|
+
margin: "10px 0 10px 0",
|
|
7751
|
+
minHeight: "128px",
|
|
7752
|
+
maxHeight: "128px",
|
|
7753
|
+
overflow: "hidden",
|
|
7754
|
+
textAlign: "left",
|
|
7755
|
+
}, children: u$2("div", { className: "bw-event-type-markdown", style: {
|
|
7756
|
+
display: "-webkit-box",
|
|
7757
|
+
WebkitLineClamp: 5,
|
|
7758
|
+
WebkitBoxOrient: "vertical",
|
|
7759
|
+
overflow: "hidden",
|
|
7760
|
+
}, children: Markdown({
|
|
7761
|
+
children: preprocessMarkdown(eventType.description),
|
|
7762
|
+
}) }) })) : (u$2("div", { className: "bw-event-type-desc", style: {
|
|
7763
|
+
color: "var(--bw-text-muted)",
|
|
7764
|
+
fontSize: "clamp(0.95rem, 2vw, 16px)",
|
|
7765
|
+
lineHeight: "1.6",
|
|
7766
|
+
fontFamily: "var(--bw-font-family)",
|
|
7767
|
+
margin: "10px 0 10px 0",
|
|
7768
|
+
minHeight: "128px",
|
|
7769
|
+
maxHeight: "128px",
|
|
7770
|
+
overflow: "hidden",
|
|
7771
|
+
textAlign: "left",
|
|
7772
|
+
}, children: "\u00A0" })) })] }), u$2("div", { children: [u$2("div", { children: [u$2("div", { className: "bw-event-type-price", style: {
|
|
7773
|
+
fontWeight: "700",
|
|
7774
|
+
color: "var(--bw-text-color)",
|
|
7775
|
+
fontFamily: "var(--bw-font-family)",
|
|
7776
|
+
textAlign: "right",
|
|
7777
|
+
}, children: eventType.groupedDurations.length > 1 ? (u$2("span", { children: eventType.groupedDurations })) : (u$2("span", { children: eventType.cheapestDurationPerDay % 60 === 0
|
|
7778
|
+
? `${eventType.cheapestDurationPerDay / 60} Stunde${eventType.cheapestDurationPerDay / 60 > 1 ? "n" : ""}`
|
|
7779
|
+
: `${eventType.cheapestDurationPerDay} Minuten` })) }), u$2("div", { className: "bw-event-type-price", style: {
|
|
7780
|
+
fontSize: "clamp(1.72rem, 4vw, 32px)",
|
|
7781
|
+
fontWeight: "700",
|
|
7782
|
+
color: "var(--bw-text-color)",
|
|
7783
|
+
fontFamily: "var(--bw-font-family)",
|
|
7784
|
+
textAlign: "right",
|
|
7785
|
+
}, children: u$2("span", { children: ["ab ", formatCurrency(eventType.minPrice)] }) })] }), u$2("div", { style: {
|
|
7810
7786
|
display: "flex",
|
|
7787
|
+
justifyContent: "flex-end",
|
|
7811
7788
|
alignItems: "center",
|
|
7812
|
-
|
|
7813
|
-
|
|
7814
|
-
|
|
7815
|
-
|
|
7816
|
-
|
|
7817
|
-
|
|
7818
|
-
|
|
7819
|
-
|
|
7820
|
-
|
|
7821
|
-
|
|
7822
|
-
|
|
7823
|
-
|
|
7824
|
-
|
|
7789
|
+
marginTop: "10px",
|
|
7790
|
+
gap: "12px",
|
|
7791
|
+
}, children: [(eventType.description ||
|
|
7792
|
+
(eventType.highlights && eventType.highlights.length > 0)) && (u$2("button", { onClick: (e) => {
|
|
7793
|
+
e.stopPropagation();
|
|
7794
|
+
handleShowDetails(eventType);
|
|
7795
|
+
}, style: {
|
|
7796
|
+
color: "var(--bw-highlight-color)",
|
|
7797
|
+
background: "var(--bw-surface-color)",
|
|
7798
|
+
padding: "12px 12px",
|
|
7799
|
+
borderRadius: "var(--bw-border-radius)",
|
|
7800
|
+
fontSize: "clamp(0.8rem, 2vw, 16px)",
|
|
7801
|
+
fontWeight: "600",
|
|
7802
|
+
fontFamily: "var(--bw-font-family)",
|
|
7803
|
+
display: "flex",
|
|
7804
|
+
alignItems: "center",
|
|
7805
|
+
gap: "8px",
|
|
7806
|
+
border: "2px solid var(--bw-highlight-color)",
|
|
7807
|
+
cursor: "pointer",
|
|
7808
|
+
opacity: "0.6",
|
|
7809
|
+
transition: "all 0.2s ease",
|
|
7810
|
+
}, onMouseEnter: (e) => {
|
|
7811
|
+
e.currentTarget.style.opacity = "1";
|
|
7812
|
+
e.currentTarget.style.transform = "translateY(-1px)";
|
|
7813
|
+
}, onMouseLeave: (e) => {
|
|
7814
|
+
e.currentTarget.style.opacity = "0.6";
|
|
7815
|
+
e.currentTarget.style.transform = "translateY(0)";
|
|
7816
|
+
}, children: "Mehr Details" })), isAvailable && (u$2("div", { style: {
|
|
7817
|
+
backgroundColor: "var(--bw-highlight-color)",
|
|
7818
|
+
color: "var(--bw-surface-color)",
|
|
7819
|
+
padding: "12px 24px",
|
|
7820
|
+
borderRadius: "var(--bw-border-radius)",
|
|
7821
|
+
fontSize: "clamp(1rem, 2vw, 16px)",
|
|
7822
|
+
fontWeight: "600",
|
|
7823
|
+
fontFamily: "var(--bw-font-family)",
|
|
7824
|
+
display: "flex",
|
|
7825
|
+
alignItems: "center",
|
|
7826
|
+
justifyContent: "center",
|
|
7827
|
+
textAlign: "center",
|
|
7828
|
+
gap: "8px",
|
|
7829
|
+
border: "none",
|
|
7830
|
+
cursor: "pointer",
|
|
7831
|
+
transition: "all 0.2s ease",
|
|
7832
|
+
}, onMouseEnter: (e) => {
|
|
7833
|
+
e.currentTarget.style.opacity = "0.8";
|
|
7834
|
+
e.currentTarget.style.transform = "translateY(-1px)";
|
|
7835
|
+
}, onMouseLeave: (e) => {
|
|
7836
|
+
e.currentTarget.style.opacity = "1";
|
|
7837
|
+
e.currentTarget.style.transform = "translateY(0)";
|
|
7838
|
+
}, children: [u$2(IconWave, { size: 15, color: "var(--bw-surface-color)" }), " Jetzt buchen"] }))] })] })] }), !isAvailable && (u$2("div", { style: {
|
|
7825
7839
|
position: "absolute",
|
|
7826
7840
|
inset: 0,
|
|
7827
7841
|
backgroundColor: "rgba(0, 0, 0, 0.3)",
|
|
@@ -9633,6 +9647,7 @@
|
|
|
9633
9647
|
position: "absolute",
|
|
9634
9648
|
inset: 0,
|
|
9635
9649
|
backgroundColor: "rgba(0, 0, 0, 0.5)",
|
|
9650
|
+
backdropFilter: "blur(10px)",
|
|
9636
9651
|
opacity: isAnimating ? 1 : 0,
|
|
9637
9652
|
transition: "opacity 0.25s ease-out",
|
|
9638
9653
|
}, onClick: onClose }), u$2("div", { style: {
|
|
@@ -9979,11 +9994,11 @@
|
|
|
9979
9994
|
display: "flex",
|
|
9980
9995
|
alignItems: "center",
|
|
9981
9996
|
gap: "4px",
|
|
9982
|
-
}, children: [u$2(
|
|
9997
|
+
}, children: [u$2(IconCalendar, { size: 20, color: "var(--bw-highlight-color)" }), " Uhrzeit:"] }), u$2("span", { style: {
|
|
9983
9998
|
color: "var(--bw-text-color)",
|
|
9984
9999
|
fontWeight: "500",
|
|
9985
10000
|
fontFamily: "var(--bw-font-family)",
|
|
9986
|
-
}, children:
|
|
10001
|
+
}, children: formatTime(eventDetails.startTime, "Europe/Berlin", "de") })] }), u$2("div", { style: { display: "flex", alignItems: "center", justifyContent: "space-between" }, children: [u$2("span", { style: {
|
|
9987
10002
|
color: "var(--bw-text-muted)",
|
|
9988
10003
|
fontFamily: "var(--bw-font-family)",
|
|
9989
10004
|
display: "flex",
|
|
@@ -9993,7 +10008,17 @@
|
|
|
9993
10008
|
color: "var(--bw-text-color)",
|
|
9994
10009
|
fontWeight: "500",
|
|
9995
10010
|
fontFamily: "var(--bw-font-family)",
|
|
9996
|
-
}, children: [eventDetails.durationDays, " Tag", eventDetails.durationDays > 1 ? "e" : ""] })] })
|
|
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: {
|
|
9997
10022
|
backgroundColor: "var(--bw-surface-color)",
|
|
9998
10023
|
border: `1px solid var(--bw-border-color)`,
|
|
9999
10024
|
backdropFilter: "blur(4px)",
|
|
@@ -10150,9 +10175,10 @@
|
|
|
10150
10175
|
height: "20px",
|
|
10151
10176
|
border: "1px solid var(--bw-border-color)",
|
|
10152
10177
|
accentColor: "var(--bw-highlight-color)",
|
|
10153
|
-
|
|
10154
|
-
|
|
10155
|
-
|
|
10178
|
+
cursor: "pointer",
|
|
10179
|
+
appearance: "checkbox",
|
|
10180
|
+
WebkitAppearance: "checkbox",
|
|
10181
|
+
MozAppearance: "checkbox",
|
|
10156
10182
|
} }), u$2("label", { htmlFor: "acceptTerms", style: {
|
|
10157
10183
|
fontSize: "var(--bw-font-size)",
|
|
10158
10184
|
color: "var(--bw-text-muted)",
|
|
@@ -10162,7 +10188,7 @@
|
|
|
10162
10188
|
}, children: ["Ich akzeptiere die", " ", u$2("a", { href: eventDetails.agbUrl || "/terms", style: {
|
|
10163
10189
|
color: "var(--bw-highlight-color)",
|
|
10164
10190
|
textDecoration: "none",
|
|
10165
|
-
}, target: "_blank", rel: "noopener noreferrer", children: "
|
|
10191
|
+
}, target: "_blank", rel: "noopener noreferrer", children: "AGBs" }), "*"] })] }), form.formState.errors.acceptTerms && (u$2("p", { style: {
|
|
10166
10192
|
color: "var(--bw-error-color)",
|
|
10167
10193
|
fontSize: "var(--bw-font-size)",
|
|
10168
10194
|
marginTop: "8px",
|
|
@@ -10315,65 +10341,230 @@
|
|
|
10315
10341
|
` })] }) }));
|
|
10316
10342
|
}
|
|
10317
10343
|
|
|
10318
|
-
const
|
|
10319
|
-
|
|
10320
|
-
"Februar",
|
|
10321
|
-
"März",
|
|
10322
|
-
"April",
|
|
10323
|
-
"Mai",
|
|
10324
|
-
"Juni",
|
|
10325
|
-
"Juli",
|
|
10326
|
-
"August",
|
|
10327
|
-
"September",
|
|
10328
|
-
"Oktober",
|
|
10329
|
-
"November",
|
|
10330
|
-
"Dezember",
|
|
10331
|
-
];
|
|
10332
|
-
// Helper function to get allocation badge info based on availability
|
|
10333
|
-
const getAllocationBadgeInfo = (availableSpots, maxParticipants) => {
|
|
10334
|
-
const availabilityRatio = availableSpots / maxParticipants;
|
|
10335
|
-
// Only show badge for low availability (less than 60%)
|
|
10336
|
-
if (availabilityRatio >= 0.6)
|
|
10337
|
-
return null;
|
|
10338
|
-
// Very low availability (30% or less) - "fast ausgebucht"
|
|
10339
|
-
if (availabilityRatio <= 0.3) {
|
|
10340
|
-
return {
|
|
10341
|
-
text: "fast ausgebucht",
|
|
10342
|
-
backgroundColor: "#7f1d1d", // Dark red
|
|
10343
|
-
textColor: "#fca5a5", // Bright red
|
|
10344
|
-
};
|
|
10345
|
-
}
|
|
10346
|
-
// Low availability (30-60%) - "wenige Plätze"
|
|
10347
|
-
return {
|
|
10348
|
-
text: "beliebter Termin",
|
|
10349
|
-
backgroundColor: "#b45309", // Dark orange/yellow
|
|
10350
|
-
textColor: "#fbbf24", // Bright yellow
|
|
10351
|
-
};
|
|
10352
|
-
};
|
|
10353
|
-
// Helper function to get price badge info for special prices
|
|
10354
|
-
const getPriceBadgeInfo = (price, yearPrices) => {
|
|
10355
|
-
if (yearPrices.length <= 1)
|
|
10356
|
-
return null;
|
|
10357
|
-
const sortedPrices = [...new Set(yearPrices)].sort((a, b) => a - b); // Remove duplicates and sort
|
|
10358
|
-
// Need at least 2 different prices to show badges
|
|
10359
|
-
if (sortedPrices.length < 2)
|
|
10344
|
+
const BookingSuccessModal = ({ isOpen, onClose, bookingData, eventDetails, formData, config, }) => {
|
|
10345
|
+
if (!isOpen || !bookingData)
|
|
10360
10346
|
return null;
|
|
10361
|
-
const
|
|
10362
|
-
|
|
10363
|
-
|
|
10364
|
-
|
|
10365
|
-
|
|
10366
|
-
|
|
10367
|
-
|
|
10368
|
-
|
|
10369
|
-
|
|
10370
|
-
|
|
10371
|
-
|
|
10372
|
-
|
|
10373
|
-
|
|
10374
|
-
|
|
10375
|
-
|
|
10376
|
-
|
|
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
|
+
|
|
10502
|
+
const months = [
|
|
10503
|
+
"Januar",
|
|
10504
|
+
"Februar",
|
|
10505
|
+
"März",
|
|
10506
|
+
"April",
|
|
10507
|
+
"Mai",
|
|
10508
|
+
"Juni",
|
|
10509
|
+
"Juli",
|
|
10510
|
+
"August",
|
|
10511
|
+
"September",
|
|
10512
|
+
"Oktober",
|
|
10513
|
+
"November",
|
|
10514
|
+
"Dezember",
|
|
10515
|
+
];
|
|
10516
|
+
// Helper function to get allocation badge info based on availability
|
|
10517
|
+
const getAllocationBadgeInfo = (availableSpots, maxParticipants) => {
|
|
10518
|
+
const availabilityRatio = availableSpots / maxParticipants;
|
|
10519
|
+
// Only show badge for low availability (less than 60%)
|
|
10520
|
+
if (availabilityRatio >= 0.6)
|
|
10521
|
+
return null;
|
|
10522
|
+
if (availabilityRatio === 0) {
|
|
10523
|
+
return {
|
|
10524
|
+
text: "ausgebucht",
|
|
10525
|
+
backgroundColor: "#7f1d1d", // Dark red
|
|
10526
|
+
textColor: "#fca5a5", // Bright red
|
|
10527
|
+
};
|
|
10528
|
+
}
|
|
10529
|
+
// Very low availability (30% or less) - "fast ausgebucht"
|
|
10530
|
+
if (availabilityRatio <= 0.3) {
|
|
10531
|
+
return {
|
|
10532
|
+
text: "fast ausgebucht",
|
|
10533
|
+
backgroundColor: "#7f1d1d", // Dark red
|
|
10534
|
+
textColor: "#fca5a5", // Bright red
|
|
10535
|
+
};
|
|
10536
|
+
}
|
|
10537
|
+
// Low availability (30-60%) - "wenige Plätze"
|
|
10538
|
+
return {
|
|
10539
|
+
text: "beliebter Termin",
|
|
10540
|
+
backgroundColor: "#b45309", // Dark orange/yellow
|
|
10541
|
+
textColor: "#fbbf24", // Bright yellow
|
|
10542
|
+
};
|
|
10543
|
+
};
|
|
10544
|
+
// Helper function to get price badge info for special prices
|
|
10545
|
+
const getPriceBadgeInfo = (price, yearPrices) => {
|
|
10546
|
+
if (yearPrices.length <= 1)
|
|
10547
|
+
return null;
|
|
10548
|
+
const sortedPrices = [...new Set(yearPrices)].sort((a, b) => a - b); // Remove duplicates and sort
|
|
10549
|
+
// Need at least 2 different prices to show badges
|
|
10550
|
+
if (sortedPrices.length < 2)
|
|
10551
|
+
return null;
|
|
10552
|
+
const lowestPrice = sortedPrices[0];
|
|
10553
|
+
const secondLowestPrice = sortedPrices[1];
|
|
10554
|
+
// Show "am günstigsten" for the lowest price
|
|
10555
|
+
if (price === lowestPrice) {
|
|
10556
|
+
return {
|
|
10557
|
+
text: "bester Preis !!!",
|
|
10558
|
+
backgroundColor: "#14532d", // Dark green
|
|
10559
|
+
textColor: "#4ade80", // Bright green
|
|
10560
|
+
};
|
|
10561
|
+
}
|
|
10562
|
+
// Show "günstig" for second lowest price, but only if it's not the same as most other prices
|
|
10563
|
+
if (price === secondLowestPrice && sortedPrices.length > 2) {
|
|
10564
|
+
return {
|
|
10565
|
+
text: "günstiger Preis",
|
|
10566
|
+
backgroundColor: "#0e7490", // Turquoise
|
|
10567
|
+
textColor: "#67e8f9", // Light Turquoise
|
|
10377
10568
|
};
|
|
10378
10569
|
}
|
|
10379
10570
|
return null;
|
|
@@ -10891,7 +11082,7 @@
|
|
|
10891
11082
|
padding: "16px 20px",
|
|
10892
11083
|
transition: "all 0.2s ease",
|
|
10893
11084
|
opacity: isFullyBooked || isPastEvent ? 0.3 : 1,
|
|
10894
|
-
filter: isFullyBooked || isPastEvent ? "grayscale(
|
|
11085
|
+
filter: isFullyBooked || isPastEvent ? "grayscale(40%)" : "none",
|
|
10895
11086
|
fontFamily: "var(--bw-font-family)",
|
|
10896
11087
|
}, onClick: () => {
|
|
10897
11088
|
if (!isFullyBooked && !isPastEvent && event.bookingOpen) {
|
|
@@ -11385,198 +11576,6 @@
|
|
|
11385
11576
|
}
|
|
11386
11577
|
|
|
11387
11578
|
// Predefined themes & Style Provider have been moved to ../styles/StyleProvider.tsx
|
|
11388
|
-
// Success Modal Component
|
|
11389
|
-
const BookingSuccessModal = ({ isOpen, onClose, bookingData, eventDetails, formData, config, }) => {
|
|
11390
|
-
if (!isOpen || !bookingData)
|
|
11391
|
-
return null;
|
|
11392
|
-
const booking = bookingData.booking;
|
|
11393
|
-
return (u$2("div", { style: {
|
|
11394
|
-
position: "fixed",
|
|
11395
|
-
top: 0,
|
|
11396
|
-
left: 0,
|
|
11397
|
-
right: 0,
|
|
11398
|
-
bottom: 0,
|
|
11399
|
-
backgroundColor: "rgba(0, 0, 0, 0.5)",
|
|
11400
|
-
zIndex: 10000,
|
|
11401
|
-
display: "flex",
|
|
11402
|
-
alignItems: "center",
|
|
11403
|
-
justifyContent: "center",
|
|
11404
|
-
padding: "var(--bw-spacing)",
|
|
11405
|
-
}, children: u$2("div", { style: {
|
|
11406
|
-
backgroundColor: "var(--bw-background-color)",
|
|
11407
|
-
borderRadius: "var(--bw-border-radius)",
|
|
11408
|
-
padding: "var(--bw-spacing-large)",
|
|
11409
|
-
maxWidth: "500px",
|
|
11410
|
-
width: "100%",
|
|
11411
|
-
maxHeight: "90vh",
|
|
11412
|
-
overflow: "auto",
|
|
11413
|
-
position: "relative",
|
|
11414
|
-
border: `1px solid var(--bw-border-color)`,
|
|
11415
|
-
boxShadow: "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)",
|
|
11416
|
-
}, children: [u$2("button", { onClick: onClose, style: {
|
|
11417
|
-
position: "absolute",
|
|
11418
|
-
top: "var(--bw-spacing)",
|
|
11419
|
-
right: "var(--bw-spacing)",
|
|
11420
|
-
background: "none",
|
|
11421
|
-
border: "none",
|
|
11422
|
-
fontSize: "24px",
|
|
11423
|
-
cursor: "pointer",
|
|
11424
|
-
color: "var(--bw-text-muted)",
|
|
11425
|
-
width: "32px",
|
|
11426
|
-
height: "32px",
|
|
11427
|
-
display: "flex",
|
|
11428
|
-
alignItems: "center",
|
|
11429
|
-
justifyContent: "center",
|
|
11430
|
-
borderRadius: "var(--bw-border-radius-small)",
|
|
11431
|
-
}, children: "\u00D7" }), u$2("div", { style: {
|
|
11432
|
-
textAlign: "center",
|
|
11433
|
-
marginBottom: "var(--bw-spacing-large)",
|
|
11434
|
-
}, children: [u$2("div", { style: {
|
|
11435
|
-
width: "64px",
|
|
11436
|
-
height: "64px",
|
|
11437
|
-
backgroundColor: "var(--bw-success-color, #10B981)",
|
|
11438
|
-
borderRadius: "50%",
|
|
11439
|
-
margin: "0 auto var(--bw-spacing)",
|
|
11440
|
-
display: "flex",
|
|
11441
|
-
alignItems: "center",
|
|
11442
|
-
justifyContent: "center",
|
|
11443
|
-
fontSize: "32px",
|
|
11444
|
-
color: "white",
|
|
11445
|
-
}, children: "\u2713" }), u$2("h2", { style: {
|
|
11446
|
-
fontSize: "var(--bw-font-size-xl)",
|
|
11447
|
-
fontWeight: "700",
|
|
11448
|
-
color: "var(--bw-text-color)",
|
|
11449
|
-
margin: "0 0 var(--bw-spacing-small) 0",
|
|
11450
|
-
fontFamily: "var(--bw-font-family)",
|
|
11451
|
-
}, children: "Buchung erfolgreich!" }), u$2("p", { style: {
|
|
11452
|
-
color: "var(--bw-text-muted)",
|
|
11453
|
-
fontFamily: "var(--bw-font-family)",
|
|
11454
|
-
margin: 0,
|
|
11455
|
-
}, children: "Deine Buchung wurde erfolgreich abgeschlossen." })] }), u$2("div", { style: {
|
|
11456
|
-
backgroundColor: "var(--bw-surface-color)",
|
|
11457
|
-
border: `1px solid var(--bw-border-color)`,
|
|
11458
|
-
borderRadius: "var(--bw-border-radius)",
|
|
11459
|
-
padding: "var(--bw-spacing)",
|
|
11460
|
-
marginBottom: "var(--bw-spacing-large)",
|
|
11461
|
-
}, children: [u$2("h3", { style: {
|
|
11462
|
-
fontSize: "var(--bw-font-size-large)",
|
|
11463
|
-
fontWeight: "600",
|
|
11464
|
-
color: "var(--bw-text-color)",
|
|
11465
|
-
margin: "0 0 var(--bw-spacing) 0",
|
|
11466
|
-
fontFamily: "var(--bw-font-family)",
|
|
11467
|
-
}, 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: {
|
|
11468
|
-
color: "var(--bw-text-color)",
|
|
11469
|
-
fontWeight: "500",
|
|
11470
|
-
fontFamily: "monospace",
|
|
11471
|
-
fontSize: "var(--bw-font-size-small)",
|
|
11472
|
-
backgroundColor: "var(--bw-background-color)",
|
|
11473
|
-
padding: "4px 8px",
|
|
11474
|
-
borderRadius: "var(--bw-border-radius-small)",
|
|
11475
|
-
}, 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: {
|
|
11476
|
-
color: "var(--bw-text-color)",
|
|
11477
|
-
fontWeight: "500",
|
|
11478
|
-
fontFamily: "var(--bw-font-family)",
|
|
11479
|
-
textAlign: "right",
|
|
11480
|
-
maxWidth: "60%",
|
|
11481
|
-
}, 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: {
|
|
11482
|
-
color: "var(--bw-text-color)",
|
|
11483
|
-
fontWeight: "500",
|
|
11484
|
-
fontFamily: "var(--bw-font-family)",
|
|
11485
|
-
textAlign: "right",
|
|
11486
|
-
maxWidth: "60%",
|
|
11487
|
-
}, 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: {
|
|
11488
|
-
color: "var(--bw-text-color)",
|
|
11489
|
-
fontWeight: "500",
|
|
11490
|
-
fontFamily: "var(--bw-font-family)",
|
|
11491
|
-
}, children: booking.participantCount })] }), u$2("div", { style: {
|
|
11492
|
-
display: "flex",
|
|
11493
|
-
justifyContent: "space-between",
|
|
11494
|
-
alignItems: "center",
|
|
11495
|
-
borderTop: `1px solid var(--bw-border-color)`,
|
|
11496
|
-
paddingTop: "var(--bw-spacing)",
|
|
11497
|
-
marginTop: "var(--bw-spacing)",
|
|
11498
|
-
}, children: [u$2("span", { style: {
|
|
11499
|
-
color: "var(--bw-text-color)",
|
|
11500
|
-
fontWeight: "600",
|
|
11501
|
-
fontFamily: "var(--bw-font-family)",
|
|
11502
|
-
}, children: "Gesamtbetrag:" }), u$2("span", { style: {
|
|
11503
|
-
color: "var(--bw-text-color)",
|
|
11504
|
-
fontWeight: "600",
|
|
11505
|
-
fontSize: "var(--bw-font-size-large)",
|
|
11506
|
-
fontFamily: "var(--bw-font-family)",
|
|
11507
|
-
}, children: formatCurrency(booking.total) })] })] })] }), formData.participants && formData.participants.length > 0 && (u$2("div", { style: {
|
|
11508
|
-
backgroundColor: "var(--bw-surface-color)",
|
|
11509
|
-
border: `1px solid var(--bw-border-color)`,
|
|
11510
|
-
borderRadius: "var(--bw-border-radius)",
|
|
11511
|
-
padding: "var(--bw-spacing)",
|
|
11512
|
-
marginBottom: "var(--bw-spacing-large)",
|
|
11513
|
-
}, children: [u$2("h3", { style: {
|
|
11514
|
-
fontSize: "var(--bw-font-size-large)",
|
|
11515
|
-
fontWeight: "600",
|
|
11516
|
-
color: "var(--bw-text-color)",
|
|
11517
|
-
margin: "0 0 var(--bw-spacing) 0",
|
|
11518
|
-
fontFamily: "var(--bw-font-family)",
|
|
11519
|
-
}, children: "Teilnehmer" }), u$2("div", { style: { display: "flex", flexDirection: "column", gap: "var(--bw-spacing-small)" }, children: formData.participants
|
|
11520
|
-
.filter((p) => p.name.trim())
|
|
11521
|
-
.map((participant, index) => (u$2("div", { style: {
|
|
11522
|
-
display: "flex",
|
|
11523
|
-
justifyContent: "space-between",
|
|
11524
|
-
alignItems: "center",
|
|
11525
|
-
padding: "var(--bw-spacing-small)",
|
|
11526
|
-
backgroundColor: "var(--bw-background-color)",
|
|
11527
|
-
borderRadius: "var(--bw-border-radius-small)",
|
|
11528
|
-
}, children: [u$2("span", { style: {
|
|
11529
|
-
color: "var(--bw-text-color)",
|
|
11530
|
-
fontFamily: "var(--bw-font-family)",
|
|
11531
|
-
}, children: participant.name }), participant.age && (u$2("span", { style: {
|
|
11532
|
-
color: "var(--bw-text-muted)",
|
|
11533
|
-
fontSize: "var(--bw-font-size-small)",
|
|
11534
|
-
fontFamily: "var(--bw-font-family)",
|
|
11535
|
-
}, children: [participant.age, " Jahre"] }))] }, index))) })] })), u$2("div", { style: {
|
|
11536
|
-
backgroundColor: "var(--bw-surface-color)",
|
|
11537
|
-
border: `1px solid var(--bw-border-color)`,
|
|
11538
|
-
borderRadius: "var(--bw-border-radius)",
|
|
11539
|
-
padding: "var(--bw-spacing)",
|
|
11540
|
-
marginBottom: "var(--bw-spacing-large)",
|
|
11541
|
-
}, children: [u$2("h3", { style: {
|
|
11542
|
-
fontSize: "var(--bw-font-size-large)",
|
|
11543
|
-
fontWeight: "600",
|
|
11544
|
-
color: "var(--bw-text-color)",
|
|
11545
|
-
margin: "0 0 var(--bw-spacing) 0",
|
|
11546
|
-
fontFamily: "var(--bw-font-family)",
|
|
11547
|
-
}, 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: {
|
|
11548
|
-
backgroundColor: "var(--bw-surface-muted-bg, rgba(59, 130, 246, 0.05))",
|
|
11549
|
-
border: `1px solid var(--bw-border-color)`,
|
|
11550
|
-
borderRadius: "var(--bw-border-radius)",
|
|
11551
|
-
padding: "var(--bw-spacing)",
|
|
11552
|
-
marginBottom: "var(--bw-spacing-large)",
|
|
11553
|
-
textAlign: "center",
|
|
11554
|
-
}, children: [u$2("div", { style: {
|
|
11555
|
-
color: "var(--bw-highlight-color)",
|
|
11556
|
-
fontSize: "24px",
|
|
11557
|
-
marginBottom: "var(--bw-spacing-small)",
|
|
11558
|
-
}, children: "\uD83D\uDCE7" }), u$2("p", { style: {
|
|
11559
|
-
color: "var(--bw-text-muted)",
|
|
11560
|
-
margin: 0,
|
|
11561
|
-
fontFamily: "var(--bw-font-family)",
|
|
11562
|
-
fontSize: "var(--bw-font-size-small)",
|
|
11563
|
-
}, 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: {
|
|
11564
|
-
backgroundColor: "var(--bw-highlight-color)",
|
|
11565
|
-
color: "white",
|
|
11566
|
-
padding: "12px 32px",
|
|
11567
|
-
border: "none",
|
|
11568
|
-
borderRadius: "var(--bw-border-radius)",
|
|
11569
|
-
fontSize: "var(--bw-font-size)",
|
|
11570
|
-
fontWeight: "600",
|
|
11571
|
-
cursor: "pointer",
|
|
11572
|
-
fontFamily: "var(--bw-font-family)",
|
|
11573
|
-
transition: "all 0.2s ease",
|
|
11574
|
-
}, onMouseEnter: (e) => {
|
|
11575
|
-
e.currentTarget.style.opacity = "0.9";
|
|
11576
|
-
}, onMouseLeave: (e) => {
|
|
11577
|
-
e.currentTarget.style.opacity = "1";
|
|
11578
|
-
}, children: "Schlie\u00DFen" }) })] }) }));
|
|
11579
|
-
};
|
|
11580
11579
|
// Main widget component
|
|
11581
11580
|
function UniversalBookingWidget({ config: baseConfig }) {
|
|
11582
11581
|
// Apply URL parameter inference
|
|
@@ -11606,7 +11605,6 @@
|
|
|
11606
11605
|
// Booking flow state
|
|
11607
11606
|
const [eventDetails, setEventDetails] = d$1(null);
|
|
11608
11607
|
const [stripePromise, setStripePromise] = d$1(null);
|
|
11609
|
-
const [clientSecret, setClientSecret] = d$1(null);
|
|
11610
11608
|
// SEPARATED LOADING STATES
|
|
11611
11609
|
const [isLoading, setIsLoading] = d$1(true); // Only for initial widget load
|
|
11612
11610
|
const [isLoadingEventInstances, setIsLoadingEventInstances] = d$1(false); // For loading event instances in sidebar
|
|
@@ -12067,16 +12065,6 @@
|
|
|
12067
12065
|
fontFamily: "var(--bw-font-family)",
|
|
12068
12066
|
}, children: "Falls das Problem weiterhin besteht, kontaktiere bitte den Support." })] }) }) }));
|
|
12069
12067
|
}
|
|
12070
|
-
// Success state
|
|
12071
|
-
if (isSuccess) {
|
|
12072
|
-
return (u$2(StyleProvider, { config: config, children: u$2(BookingSuccessModal, { isOpen: isSuccess, onClose: () => {
|
|
12073
|
-
setIsSuccess(false);
|
|
12074
|
-
setCurrentStep("eventTypes");
|
|
12075
|
-
// Reset lazy loading flags
|
|
12076
|
-
setShouldRenderInstanceSelection(false);
|
|
12077
|
-
setShouldRenderBookingForm(false);
|
|
12078
|
-
}, bookingData: successData, eventDetails: eventDetails, formData: successData.formData, config: config }) }));
|
|
12079
|
-
}
|
|
12080
12068
|
// Main view based on view mode
|
|
12081
12069
|
if (viewMode === "next-events" && showingPreview) {
|
|
12082
12070
|
// Next events preview mode
|
|
@@ -12092,17 +12080,31 @@
|
|
|
12092
12080
|
setCurrentStep("eventTypes");
|
|
12093
12081
|
setShowingPreview(true);
|
|
12094
12082
|
setEventDetails(null);
|
|
12095
|
-
}, 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 })] }));
|
|
12096
12091
|
}
|
|
12097
12092
|
if (viewMode === "next-events" && !showingPreview && currentStep === "eventInstances") {
|
|
12098
12093
|
// Show all events for the single event type
|
|
12099
|
-
return (u$2(StyleProvider, { config: config, children: shouldRenderInstanceSelection && (u$2(EventInstanceSelection, { eventInstances: eventInstances, selectedEventType: selectedEventType, onEventInstanceSelect: handleEventInstanceSelect, onBackToEventTypes: () => {
|
|
12100
|
-
|
|
12101
|
-
|
|
12102
|
-
|
|
12103
|
-
|
|
12104
|
-
|
|
12105
|
-
|
|
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 })] }));
|
|
12106
12108
|
}
|
|
12107
12109
|
if (viewMode === "button" && (isSingleEventTypeMode || isDirectInstanceMode)) {
|
|
12108
12110
|
// Button mode - show button that opens sidebar/booking directly
|
|
@@ -12132,7 +12134,14 @@
|
|
|
12132
12134
|
setShouldRenderInstanceSelection(true);
|
|
12133
12135
|
}
|
|
12134
12136
|
}, children: config.buttonText ||
|
|
12135
|
-
(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 })] }) }));
|
|
12136
12145
|
}
|
|
12137
12146
|
// Cards mode (default) - show event type selection
|
|
12138
12147
|
const cardsView = (u$2(EventTypeSelection, { eventTypes: eventTypes, onEventTypeSelect: handleEventTypeSelect, isLoading: isLoading, skeletonCount: getSkeletonCount() }));
|
|
@@ -12165,7 +12174,13 @@
|
|
|
12165
12174
|
};
|
|
12166
12175
|
};
|
|
12167
12176
|
const backHandlers = getBackHandlers();
|
|
12168
|
-
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 })] }));
|
|
12169
12184
|
}
|
|
12170
12185
|
|
|
12171
12186
|
// Export init function for vanilla JS usage with Preact
|