!function(e){function t(t){for(var o,r,s=t[0],i=t[1],a=0,c=[];a{if(te&&performance.mark){const o=`st:${e}:${t}:${xe++}`;return performance.mark(o),()=>performance.measure(`[Stencil] ${e}() <${t}>`,o)}return()=>{}},Ne="http://www.w3.org/1999/xlink",Be={},Pe=e=>"object"===(e=typeof e)||"function"===e,Te=(e,t,...o)=>{let n=null,r=null,s=null,i=!1,a=!1;const l=[],c=t=>{for(let o=0;oe[t]).join(" "))}if(J&&l.some(Le)&&Jt("The must be the single root component. Make sure:\n- You are NOT using hostData() and in the same component.\n- is used once, and it's the single root component of the render() function."),z&&"function"==typeof e)return e(null===t?{}:t,l,ze);const d=Ae(e,null);return d.$attrs$=t,l.length>0&&(d.$children$=l),R&&(d.$key$=r),oe&&(d.$name$=s),d},Ae=(e,t)=>{const o={$flags$:0,$tag$:e,$text$:t,$elm$:null,$children$:null};return A&&(o.$attrs$=null),R&&(o.$key$=null),oe&&(o.$name$=null),o},Ce={},Le=e=>e&&e.$tag$===Ce,ze={forEach:(e,t)=>e.map(Re).forEach(t),map:(e,t)=>e.map(Re).map(t).map(Ie)},Re=e=>({vattrs:e.$attrs$,vchildren:e.$children$,vkey:e.$key$,vname:e.$name$,vtag:e.$tag$,vtext:e.$text$}),Ie=e=>{if("function"==typeof e.vtag){const t=Object.assign({},e.vattrs);return e.vkey&&(t.key=e.vkey),e.vname&&(t.name=e.vname),Te(e.vtag,t,...e.vchildren||[])}const t=Ae(e.vtag,e.vtext);return t.$attrs$=e.vattrs,t.$children$=e.vchildren,t.$key$=e.vkey,t.$name$=e.vname,t},Me=e=>{const t=Object.keys(e),o=t.indexOf("value");if(-1===o)return;const n=t.indexOf("type"),r=t.indexOf("min"),s=t.indexOf("max"),i=t.indexOf("step");(o should be set after "min", "max", "type" and "step"')},De=(e,t,o,n,r,s,i)=>{let a,l,c,d;if(1===s.nodeType){for(a=s.getAttribute("c-id"),a&&(l=a.split("."),l[0]!==i&&"0"!==l[0]||(c={$flags$:0,$hostId$:l[0],$nodeId$:l[1],$depth$:l[2],$index$:l[3],$tag$:s.tagName.toLowerCase(),$elm$:s,$attrs$:null,$children$:null,$key$:null,$name$:null,$text$:null},t.push(c),s.removeAttribute("c-id"),e.$children$||(e.$children$=[]),e.$children$[c.$index$]=c,e=c,n&&"0"===c.$depth$&&(n[c.$index$]=c.$elm$))),d=s.childNodes.length-1;d>=0;d--)De(e,t,o,n,r,s.childNodes[d],i);if(s.shadowRoot)for(d=s.shadowRoot.childNodes.length-1;d>=0;d--)De(e,t,o,n,r,s.shadowRoot.childNodes[d],i)}else if(8===s.nodeType)l=s.nodeValue.split("."),l[1]!==i&&"0"!==l[1]||(a=l[0],c={$flags$:0,$hostId$:l[1],$nodeId$:l[2],$depth$:l[3],$index$:l[4],$elm$:s,$attrs$:null,$children$:null,$key$:null,$name$:null,$tag$:null,$text$:null},"t"===a?(c.$elm$=s.nextSibling,c.$elm$&&3===c.$elm$.nodeType&&(c.$text$=c.$elm$.textContent,t.push(c),s.remove(),e.$children$||(e.$children$=[]),e.$children$[c.$index$]=c,n&&"0"===c.$depth$&&(n[c.$index$]=c.$elm$))):c.$hostId$===i&&("s"===a?(c.$tag$="slot",l[5]?s["s-sn"]=c.$name$=l[5]:s["s-sn"]="",s["s-sr"]=!0,O&&n&&(c.$elm$=oo.createElement(c.$tag$),c.$name$&&c.$elm$.setAttribute("name",c.$name$),s.parentNode.insertBefore(c.$elm$,s),s.remove(),"0"===c.$depth$&&(n[c.$index$]=c.$elm$)),o.push(c),e.$children$||(e.$children$=[]),e.$children$[c.$index$]=c):"r"===a&&(O&&n?s.remove():oe&&(r["s-cr"]=s,s["s-cn"]=!0))));else if(e&&"style"===e.$tag$){const t=Ae(null,s.textContent);t.$elm$=s,t.$index$="0",e.$children$=[t]}},He=(e,t)=>{if(1===e.nodeType){let o=0;for(;oeo.map(t=>t(e)).find(e=>!!e),Ue=(e,t,o)=>{const n=(e=>ee?Ut(e).$hostElement$:e)(e);return{emit:e=>(J&&!n.isConnected&&Zt(`The "${t}" event was emitted, but the dispatcher node is no longer connected to the dom.`),We(n,t,{bubbles:!!(4&o),composed:!!(2&o),cancelable:!!(1&o),detail:e}))}},We=(e,t,o)=>{const n=no.ce(t,o);return e.dispatchEvent(n),n},Ve=new WeakMap,Ke=(e,t,o)=>{let n=Qt.get(e);io&&o?(n=n||new CSSStyleSheet,"string"==typeof n?n=t:n.replaceSync(t)):n=t,Qt.set(e,n)},Ye=(e,t,o,n)=>{let r=Ze(t,o);const s=Qt.get(r);if(!be)return r;if(e=11===e.nodeType?e:oo,s)if("string"==typeof s){e=e.head||e;let o,i=Ve.get(e);if(i||Ve.set(e,i=new Set),!i.has(r)){if(G&&e.host&&(o=e.querySelector(`[sty-id="${r}"]`)))o.innerHTML=s;else{if(ce&&no.$cssShim$){o=no.$cssShim$.createHostStyle(n,r,s,!!(10&t.$flags$));const e=o["s-sc"];e&&(r=e,i=null)}else o=oo.createElement("style"),o.innerHTML=s;(X||K)&&o.setAttribute("sty-id",r),e.insertBefore(o,e.querySelector("link"))}i&&i.add(r)}}else de&&!e.adoptedStyleSheets.includes(s)&&(e.adoptedStyleSheets=[...e.adoptedStyleSheets,s]);return r},Je=e=>{const t=e.$cmpMeta$,o=e.$hostElement$,n=t.$flags$,r=_e("attachStyles",t.$tagName$),s=Ye(O&&ro&&o.shadowRoot?o.shadowRoot:o.getRootNode(),t,e.$modeName$,o);(O||E)&&_&&10&n&&(o["s-sc"]=s,o.classList.add(s+"-h"),E&&2&n&&o.classList.add(s+"-s")),r()},Ze=(e,t)=>"sc-"+(w&&t&&32&e.$flags$?e.$tagName$+"-"+t:e.$tagName$),Xe=(e,t,o,n,r,s)=>{if(o!==n){let i=Vt(e,t),a=t.toLowerCase();if(L&&"class"===t){const t=e.classList,r=Qe(o),s=Qe(n);t.remove(...r.filter(e=>e&&!s.includes(e))),t.add(...s.filter(e=>e&&!r.includes(e)))}else if(q&&"style"===t){if(T)for(const t in o)n&&null!=n[t]||(!X&&t.includes("-")?e.style.removeProperty(t):e.style[t]="");for(const t in n)o&&n[t]===o[t]||(!X&&t.includes("-")?e.style.setProperty(t,n[t]):e.style[t]=n[t])}else if(R&&"key"===t);else if(M&&"ref"===t)n&&n(e);else if(!I||(ee?i:e.__lookupSetter__(t))||"o"!==t[0]||"n"!==t[1]){if(D){const l=Pe(n);if((i||l&&null!==n)&&!r)try{if(e.tagName.includes("-"))e[t]=n;else{const r=null==n?"":n;"list"===t?i=!1:null!=o&&e[t]==r||(e[t]=r)}}catch(e){}let c=!1;C&&a!==(a=a.replace(/^xlink\:?/,""))&&(t=a,c=!0),null==n||!1===n?!1===n&&""!==e.getAttribute(t)||(C&&c?e.removeAttributeNS(Ne,t):e.removeAttribute(t)):(!i||4&s||r)&&!l&&(n=!0===n?"":n,C&&c?e.setAttributeNS(Ne,t,n):e.setAttribute(t,n))}}else t="-"===t[2]?t.slice(3):Vt(to,a)?a.slice(2):a[2]+t.slice(3),o&&no.rel(e,t,o,!1),n&&no.ael(e,t,n,!1)}},Ge=/\s/,Qe=e=>e?e.split(Ge):[],et=(e,t,o,n)=>{const r=11===t.$elm$.nodeType&&t.$elm$.host?t.$elm$.host:t.$elm$,s=e&&e.$attrs$||Be,i=t.$attrs$||Be;if(T)for(n in s)n in i||Xe(r,n,s[n],void 0,o,t.$flags$);for(n in i)Xe(r,n,s[n],i[n],o,t.$flags$)},tt=(e,t,o,n)=>{const r=t.$children$[o];let s,i,a,l=0;if(oe&&!we&&(Se=!0,"slot"===r.$tag$&&($e&&n.classList.add($e+"-s"),r.$flags$|=r.$children$?2:1)),J&&r.$elm$&&Jt(`The JSX ${null!==r.$text$?`"${r.$text$}" text`:`"${r.$tag$}" element`} node should not be shared within the same renderer. The renderer caches element lookups in order to improve performance. However, a side effect from this is that the exact same JSX node should not be reused. For more information please see https://stenciljs.com/docs/templating-jsx#avoid-shared-jsx-nodes`),U&&null!==r.$text$)s=r.$elm$=oo.createTextNode(r.$text$);else if(oe&&1&r.$flags$)s=r.$elm$=Y||X?ft(r):oo.createTextNode("");else{if(P&&!Fe&&(Fe="svg"===r.$tag$),s=r.$elm$=P?oo.createElementNS(Fe?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",oe&&2&r.$flags$?"slot-fb":r.$tag$):oo.createElement(oe&&2&r.$flags$?"slot-fb":r.$tag$),P&&Fe&&"foreignObject"===r.$tag$&&(Fe=!1),A&&et(null,r,Fe),(O||E)&&null!=$e&&s["s-si"]!==$e&&s.classList.add(s["s-si"]=$e),r.$children$)for(l=0;l{no.$flags$|=1;const o=e.childNodes;for(let e=o.length-1;e>=0;e--){const n=o[e];n["s-hn"]!==ye&&n["s-ol"]&&(at(n).insertBefore(n,it(n)),n["s-ol"].remove(),n["s-ol"]=void 0,Se=!0),t&&ot(n,t)}no.$flags$&=-2},nt=(e,t,o,n,r,s)=>{let i,a=oe&&e["s-cr"]&&e["s-cr"].parentNode||e;for(O&&a.shadowRoot&&a.tagName===ye&&(a=a.shadowRoot);r<=s;++r)n[r]&&(i=tt(null,o,r,e),i&&(n[r].$elm$=i,a.insertBefore(i,oe?it(t):t)))},rt=(e,t,o,n,r)=>{for(;t<=o;++t)(n=e[t])&&(r=n.$elm$,ht(n),oe&&(ke=!0,r["s-ol"]?r["s-ol"].remove():ot(r,!0)),r.remove())},st=(e,t)=>e.$tag$===t.$tag$&&(oe&&"slot"===e.$tag$?e.$name$===t.$name$:!R||e.$key$===t.$key$),it=e=>e&&e["s-ol"]||e,at=e=>(e["s-ol"]?e["s-ol"]:e).parentNode,lt=(e,t)=>{const o=t.$elm$=e.$elm$,n=e.$children$,r=t.$children$,s=t.$tag$,i=t.$text$;let a;U&&null!==i?U&&oe&&(a=o["s-cr"])?a.parentNode.textContent=i:U&&e.$text$!==i&&(o.data=i):(P&&(Fe="svg"===s||"foreignObject"!==s&&Fe),(A||F)&&(j&&"slot"===s||et(e,t,Fe)),T&&null!==n&&null!==r?((e,t,o,n)=>{let r,s,i=0,a=0,l=0,c=0,d=t.length-1,u=t[0],p=t[d],h=n.length-1,m=n[0],f=n[h];for(;i<=d&&a<=h;)if(null==u)u=t[++i];else if(null==p)p=t[--d];else if(null==m)m=n[++a];else if(null==f)f=n[--h];else if(st(u,m))lt(u,m),u=t[++i],m=n[++a];else if(st(p,f))lt(p,f),p=t[--d],f=n[--h];else if(st(u,f))!oe||"slot"!==u.$tag$&&"slot"!==f.$tag$||ot(u.$elm$.parentNode,!1),lt(u,f),e.insertBefore(u.$elm$,p.$elm$.nextSibling),u=t[++i],f=n[--h];else if(st(p,m))!oe||"slot"!==u.$tag$&&"slot"!==f.$tag$||ot(p.$elm$.parentNode,!1),lt(p,m),e.insertBefore(p.$elm$,u.$elm$),p=t[--d],m=n[++a];else{if(l=-1,R)for(c=i;c<=d;++c)if(t[c]&&null!==t[c].$key$&&t[c].$key$===m.$key$){l=c;break}R&&l>=0?(s=t[l],s.$tag$!==m.$tag$?r=tt(t&&t[a],o,l,e):(lt(s,m),t[l]=void 0,r=s.$elm$),m=n[++a]):(r=tt(t&&t[a],o,a,e),m=n[++a]),r&&(oe?at(u.$elm$).insertBefore(r,it(u.$elm$)):u.$elm$.parentNode.insertBefore(r,u.$elm$))}i>d?nt(e,null==n[h+1]?null:n[h+1].$elm$,o,n,a,h):T&&a>h&&rt(t,i,d)})(o,n,t,r):null!==r?(T&&U&&null!==e.$text$&&(o.textContent=""),nt(o,null,t,r,0,r.length-1)):T&&null!==n&&rt(n,0,n.length-1),P&&Fe&&"svg"===s&&(Fe=!1))},ct=e=>{const t=e.childNodes;let o,n,r,s,i,a;for(n=0,r=t.length;n{let t,o,n,r,s,i,a=0;const l=e.childNodes,c=l.length;for(;a=0;i--)o=n[i],o["s-cn"]||o["s-nr"]||o["s-hn"]===t["s-hn"]||(pt(o,r)?(s=dt.find(e=>e.$nodeToRelocate$===o),ke=!0,o["s-sn"]=o["s-sn"]||r,s?s.$slotRefNode$=t:dt.push({$slotRefNode$:t,$nodeToRelocate$:o}),o["s-sr"]&&dt.map(e=>{pt(e.$nodeToRelocate$,o["s-sn"])&&(s=dt.find(e=>e.$nodeToRelocate$===o),s&&!e.$slotRefNode$&&(e.$slotRefNode$=s.$slotRefNode$))})):dt.some(e=>e.$nodeToRelocate$===o)||dt.push({$nodeToRelocate$:o}));1===t.nodeType&&ut(t)}},pt=(e,t)=>1===e.nodeType?null===e.getAttribute("slot")&&""===t||e.getAttribute("slot")===t:e["s-sn"]===t||""===t,ht=e=>{M&&(e.$attrs$&&e.$attrs$.ref&&e.$attrs$.ref(null),e.$children$&&e.$children$.map(ht))},mt=(e,t)=>{const o=e.$hostElement$,n=e.$cmpMeta$,r=e.$vnode$||Ae(null,null),s=Le(t)?t:Te(null,null,t);if(ye=o.tagName,J&&Array.isArray(t)&&t.some(Le))throw new Error(`The must be the single root component.\nLooks like the render() function of "${ye.toLowerCase()}" is returning an array that contains the .\n\nThe render() function should look like this instead:\n\nrender() {\n // Do not return an array\n return (\n {content}\n );\n}\n `);if(F&&n.$attrsToReflect$&&(s.$attrs$=s.$attrs$||{},n.$attrsToReflect$.map(([e,t])=>s.$attrs$[t]=o[e])),s.$tag$=null,s.$flags$|=4,e.$vnode$=s,s.$elm$=r.$elm$=O&&o.shadowRoot||o,(E||O)&&($e=o["s-sc"]),oe&&(ge=o["s-cr"],we=ro&&0!=(1&n.$flags$),ke=!1),lt(r,s),oe){if(no.$flags$|=1,Se){let e,t,o,n,r,i;ut(s.$elm$);let a=0;for(;aoo.createComment(` (host=${ye.toLowerCase()})`),bt=e=>oo.createComment("org-location for "+(e.localName?`<${e.localName}> (host=${e["s-hn"]})`:`[${e.textContent}]`)),$t=(e,t)=>{me&&t&&!e.$onRenderResolve$&&t["s-p"]&&t["s-p"].push(new Promise(t=>e.$onRenderResolve$=t))},gt=(e,t)=>{if(V&&T&&(e.$flags$|=16),me&&4&e.$flags$)return void(e.$flags$|=512);$t(e,e.$ancestorComponent$);const o=()=>yt(e,t);return V?bo(o):o()},yt=(e,t)=>{const o=e.$hostElement$,n=_e("scheduleUpdate",e.$cmpMeta$.$tagName$),r=ee?e.$lazyInstance$:o;let s;return t?(ee&&m&&(e.$flags$|=256,e.$queuedListeners$&&(e.$queuedListeners$.map(([e,t])=>Et(r,e,t)),e.$queuedListeners$=null)),jt(o,"componentWillLoad"),l&&(s=Et(r,"componentWillLoad"))):(jt(o,"componentWillUpdate"),c&&(s=Et(r,"componentWillUpdate"))),jt(o,"componentWillRender"),d&&(s=Ot(s,()=>Et(r,"componentWillRender"))),n(),Ot(s,()=>vt(e,r,t))},vt=async(e,t,o)=>{const n=e.$hostElement$,r=_e("update",e.$cmpMeta$.$tagName$),s=n["s-rc"];B&&o&&Je(e);const i=_e("render",e.$cmpMeta$.$tagName$);if(J&&(e.$flags$|=1024),X?await xt(e,t,n):xt(e,t,n),ce&&no.$cssShim$&&no.$cssShim$.updateHost(n),J&&(e.$renderCount$++,e.$flags$&=-1025),X)try{Nt(n),o&&(1&e.$cmpMeta$.$flags$?n["s-en"]="":2&e.$cmpMeta$.$flags$&&(n["s-en"]="c"))}catch(e){Kt(e,n)}if(me&&s&&(s.map(e=>e()),n["s-rc"]=void 0),i(),r(),me){const t=n["s-p"],o=()=>kt(e);0===t.length?o():(Promise.all(t).then(o),e.$flags$|=4,t.length=0)}else kt(e)},xt=(e,t,o)=>{const r=!!n,s=!!ee,i=!!V,a=!!T;try{if(Ee=t,t=(r||t.render)&&t.render(),a&&i&&(e.$flags$&=-17),(a||s)&&(e.$flags$|=2),h||F)if(H||F){if(X)return Promise.resolve(t).then(t=>mt(e,t));mt(e,t)}else o.textContent=t}catch(t){Kt(t,e.$hostElement$)}return Ee=null,null},wt=()=>Ee,kt=e=>{const t=e.$cmpMeta$.$tagName$,o=e.$hostElement$,n=_e("postUpdate",t),s=ee?e.$lazyInstance$:o,l=e.$ancestorComponent$;a&&(J&&(e.$flags$|=1024),Et(s,"componentDidRender"),J&&(e.$flags$&=-1025)),jt(o,"componentDidRender"),64&e.$flags$?(i&&(J&&(e.$flags$|=1024),Et(s,"componentDidUpdate"),J&&(e.$flags$&=-1025)),jt(o,"componentDidUpdate"),n()):(e.$flags$|=64,me&&_&&_t(o),r&&(J&&(e.$flags$|=2048),Et(s,"componentDidLoad"),J&&(e.$flags$&=-2049)),jt(o,"componentDidLoad"),n(),me&&(e.$onReadyResolve$(o),l||Ft(t))),K&&o["s-hmr-load"]&&o["s-hmr-load"](),x&&ee&&e.$onInstanceResolve$(o),me&&(e.$onRenderResolve$&&(e.$onRenderResolve$(),e.$onRenderResolve$=void 0),512&e.$flags$&&fo(()=>gt(e,!1)),e.$flags$&=-517)},St=e=>{if(T){const t=Ut(e),o=t.$hostElement$.isConnected;return o&&2==(18&t.$flags$)&>(t,!1),o}return!1},Ft=e=>{_&&_t(oo.documentElement),fe&&(no.$flags$|=2),fo(()=>We(to,"appload",{detail:{namespace:"app"}})),te&&performance.measure&&performance.measure(`[Stencil] app initial load (by ${e})`,"st:app:start")},Et=(e,t,o)=>{if(e&&e[t])try{return e[t](o)}catch(e){Kt(e)}},Ot=(e,t)=>e&&e.then?e.then(t):t(),jt=(e,t)=>{Q&&We(e,"stencil_"+t,{bubbles:!0,composed:!0,detail:{namespace:"app"}})},_t=e=>re?e.classList.add("hydrated"):ne?e.setAttribute("hydrated",""):void 0,Nt=e=>{const t=e.children;if(null!=t)for(let e=0,o=t.length;e{const r=Ut(e),s=ee?r.$hostElement$:e,i=r.$instanceValues$.get(t),a=r.$flags$,l=ee?r.$lazyInstance$:s;var c,d;c=o,d=n.$members$[t][0],o=null==c||Pe(c)?c:ie&&4&d?"false"!==c&&(""===c||!!c):ae&&2&d?parseFloat(c):le&&1&d?String(c):c;const u=Number.isNaN(i)&&Number.isNaN(o);if((!ee||!(8&a)||void 0===i)&&(o!==i&&!u)&&(r.$instanceValues$.set(t,o),J&&(1024&r.$flags$?Zt(`The state/prop "${t}" changed during rendering. This can potentially lead to infinite-loops and other bugs.`,"\nElement",s,"\nNew value",o,"\nOld value",i):2048&r.$flags$&&Zt(`The state/prop "${t}" changed during "componentDidLoad()", this triggers extra re-renders, try to setup on "componentWillLoad()"`,"\nElement",s,"\nNew value",o,"\nOld value",i)),!ee||l)){if(W&&n.$watchers$&&128&a){const e=n.$watchers$[t];e&&e.map(e=>{try{l[e](o,i,t)}catch(e){Kt(e,s)}})}if(T&&2==(18&a)){if(ue&&l.componentShouldUpdate&&!1===l.componentShouldUpdate(o,i,t))return;gt(r,!1)}}},Pt=(e,t,o)=>{if(v&&t.$members$){W&&e.watchers&&(t.$watchers$=e.watchers);const n=Object.entries(t.$members$),r=e.prototype;if(n.map(([e,[n]])=>{(S||N)&&(31&n||(!ee||2&o)&&32&n)?Object.defineProperty(r,e,{get(){return t=e,Ut(this).$instanceValues$.get(t);var t},set(r){if(J){const r=Ut(this);0==(1&o)&&0==(8&r.$flags$)&&0!=(31&n)&&0==(1024&n)&&Zt(`@Prop() "${e}" on <${t.$tagName$}> is immutable but was modified from within the component.\nMore information: https://stenciljs.com/docs/properties#prop-mutability`)}Bt(this,e,r,t)},configurable:!0,enumerable:!0}):ee&&x&&1&o&&64&n&&Object.defineProperty(r,e,{value(...t){const o=Ut(this);return o.$onInstancePromise$.then(()=>o.$lazyInstance$[e](...t))}})}),k&&(!ee||1&o)){const o=new Map;r.attributeChangedCallback=function(e,t,n){no.jmp(()=>{const t=o.get(e);if(this.hasOwnProperty(t))n=this[t],delete this[t];else if(r.hasOwnProperty(t)&&"number"==typeof this[t]&&this[t]==n)return;this[t]=(null!==n||"boolean"!=typeof this[t])&&n})},e.observedAttributes=n.filter(([e,t])=>15&t[0]).map(([e,n])=>{const r=n[1]||e;return o.set(r,e),F&&512&n[0]&&t.$attrsToReflect$.push([e,r]),r})}}return e},Tt=async(e,t,n,r,s)=>{if((ee||X||B)&&0==(32&t.$flags$)){if(ee||G){if(t.$flags$|=32,(s=Gt(n,t,r)).then){const e=(i=`st:load:${n.$tagName$}:${t.$modeName$}`,a=`[Stencil] Load module for <${n.$tagName$}>`,te&&performance.mark?(0===performance.getEntriesByName(i).length&&performance.mark(i),()=>{0===performance.getEntriesByName(a).length&&performance.measure(a,i)}):()=>{});s=await s,e()}if((J||Y)&&!s)throw new Error(`Constructor for "${n.$tagName$}#${t.$modeName$}" was not found`);v&&!s.isProxied&&(W&&(n.$watchers$=s.watchers),Pt(s,n,2),s.isProxied=!0);const e=_e("createInstance",n.$tagName$);v&&(t.$flags$|=8);try{new s(t)}catch(e){Kt(e)}v&&(t.$flags$&=-9),W&&(t.$flags$|=128),e(),At(t.$lazyInstance$)}else s=e.constructor,t.$flags$|=32,customElements.whenDefined(n.$tagName$).then(()=>t.$flags$|=128);if(B&&s.style){let r=s.style;w&&"string"!=typeof r&&(r=r[t.$modeName$=qe(e)],X&&t.$modeName$&&e.setAttribute("s-mode",t.$modeName$));const i=Ze(n,t.$modeName$);if(!Qt.has(i)){const e=_e("registerStyles",n.$tagName$);!X&&O&&se&&8&n.$flags$&&(r=await o.e(29).then(o.bind(null,101)).then(e=>e.scopeCss(r,i,!1))),Ke(i,r,!!(1&n.$flags$)),e()}}}var i,a;const l=t.$ancestorComponent$,c=()=>gt(t,!0);me&&l&&l["s-rc"]?l["s-rc"].push(c):c()},At=e=>{ee&&u&&Et(e,"connectedCallback")},Ct=e=>{if(0==(1&no.$flags$)){const t=Ut(e),o=t.$cmpMeta$,n=_e("connectedCallback",o.$tagName$);if(g&&It(e,t,o.$listeners$,!0),1&t.$flags$)It(e,t,o.$listeners$,!1),At(t.$lazyInstance$);else{let n;if(t.$flags$|=1,G&&(n=e.getAttribute("s-id"),n)){if(O&&ro&&1&o.$flags$){const t=w?Ye(e.shadowRoot,o,e.getAttribute("s-mode")):Ye(e.shadowRoot,o);e.classList.remove(t+"-h",t+"-s")}((e,t,o,n)=>{const r=_e("hydrateClient",t),s=e.shadowRoot,i=[],a=O&&s?[]:null,l=n.$vnode$=Ae(t,null);no.$orgLocNodes$||He(oo.body,no.$orgLocNodes$=new Map),e["s-id"]=o,e.removeAttribute("s-id"),De(l,i,[],a,e,e,o),i.map(e=>{const o=e.$hostId$+"."+e.$nodeId$,n=no.$orgLocNodes$.get(o),r=e.$elm$;n&&ro&&""===n["s-en"]&&n.parentNode.insertBefore(r,n.nextSibling),s||(r["s-hn"]=t,n&&(r["s-ol"]=n,r["s-ol"]["s-nr"]=r)),no.$orgLocNodes$.delete(o)}),O&&s&&a.map(e=>{e&&s.appendChild(e)}),r()})(e,o.$tagName$,n,t)}if(oe&&!n&&(X||(j||O)&&12&o.$flags$)&&Lt(e),me){let o=e;for(;o=o.parentNode||o.host;)if(G&&1===o.nodeType&&o.hasAttribute("s-id")&&o["s-p"]||o["s-p"]){$t(t,t.$ancestorComponent$=o);break}}S&&!X&&o.$members$&&Object.entries(o.$members$).map(([t,[o]])=>{if(31&o&&e.hasOwnProperty(t)){const o=e[t];delete e[t],e[t]=o}}),he?fo(()=>Tt(e,t,o)):Tt(e,t,o)}n()}},Lt=e=>{const t=e["s-cr"]=oo.createComment(Y?`content-ref (host=${e.localName})`:"");t["s-cn"]=!0,e.insertBefore(t,e.firstChild)},zt=e=>{if(0==(1&no.$flags$)){const t=Ut(e),o=ee?t.$lazyInstance$:e;m&&t.$rmListeners$&&(t.$rmListeners$.map(e=>e()),t.$rmListeners$=void 0),ce&&no.$cssShim$&&no.$cssShim$.removeHost(e),ee&&p&&Et(o,"disconnectedCallback"),s&&Et(o,"componentDidUnload")}},Rt=(e,t)=>{const o={$flags$:t[0],$tagName$:t[1]};v&&(o.$members$=t[2]),m&&(o.$listeners$=t[3]),W&&(o.$watchers$=e.$watchers$),F&&(o.$attrsToReflect$=[]),O&&!ro&&1&o.$flags$&&(o.$flags$|=8);const n=e.prototype.connectedCallback,r=e.prototype.disconnectedCallback;return Object.assign(e.prototype,{__registerHost(){Wt(this,o)},connectedCallback(){Ct(this),u&&n&&n.call(this)},disconnectedCallback(){zt(this),p&&r&&r.call(this)},__attachShadow(){ro?pe?this.attachShadow({mode:"open",delegatesFocus:!!(16&o.$flags$)}):this.attachShadow({mode:"open"}):this.shadowRoot=this}}),e.is=o.$tagName$,Pt(e,o,3)},It=(e,t,o,n)=>{m&&o&&(g&&(o=n?o.filter(([e])=>32&e):o.filter(([e])=>!(32&e))),o.map(([o,n,r])=>{const s=y?Dt(e,o):e,i=Mt(t,r),a=Ht(o);no.ael(s,n,i,a),(t.$rmListeners$=t.$rmListeners$||[]).push(()=>no.rel(s,n,i,a))}))},Mt=(e,t)=>o=>{try{ee?256&e.$flags$?e.$lazyInstance$[t](o):(e.$queuedListeners$=e.$queuedListeners$||[]).push([t,o]):e.$hostElement$[t](o)}catch(e){Kt(e)}},Dt=(e,t)=>b&&4&t?oo:f&&8&t?to:$&&16&t?oo.body:g&&32&t?e.parentElement:e,Ht=e=>so?{passive:0!=(1&e),capture:0!=(2&e)}:0!=(2&e),qt=new WeakMap,Ut=e=>qt.get(e),Wt=(e,t)=>{const o={$flags$:0,$hostElement$:e,$cmpMeta$:t,$instanceValues$:new Map};return J&&(o.$renderCount$=0),x&&ee&&(o.$onInstancePromise$=new Promise(e=>o.$onInstanceResolve$=e)),me&&(o.$onReadyPromise$=new Promise(e=>o.$onReadyResolve$=e),e["s-p"]=[],e["s-rc"]=[]),It(e,o,t.$listeners$,!1),qt.set(e,o)},Vt=(e,t)=>t in e,Kt=(e,t)=>(ve||console.error)(e,t),Yt=Z?["STENCIL:"]:["%cstencil","color: white;background:#4c47ff;font-weight: bold; font-size:10px; padding:2px 6px; border-radius: 5px"],Jt=(...e)=>console.error(...Yt,...e),Zt=(...e)=>console.warn(...Yt,...e),Xt=new Map,Gt=(e,t,n)=>{const r=e.$tagName$.replace(/-/g,"_"),s=e.$lazyBundleId$;if(J&&"string"!=typeof s)return void Jt(`Trying to lazily load component <${e.$tagName$}> with style mode "${t.$modeName$}", but it does not exist.`);const i=!K&&Xt.get(s);return i?i[r]:o(20)(`./${s}.entry.js${K&&n?"?s-hmr="+n:""}`).then(e=>(K||Xt.set(s,e),e[r]),Kt) /*!__STENCIL_STATIC_IMPORT_SWITCH__*/},Qt=new Map,eo=[],to="undefined"!=typeof window?window:{},oo=(ce&&to.CSS,to.document||{head:{}}),no=(to.HTMLElement,{$flags$:0,$resourcesUrl$:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,o,n)=>e.addEventListener(t,o,n),rel:(e,t,o,n)=>e.removeEventListener(t,o,n),ce:(e,t)=>new CustomEvent(e,t)}),ro=!se||!O||(()=>(oo.head.attachShadow+"").indexOf("[native")>-1)(),so=(()=>{let e=!1;try{oo.addEventListener("e",null,Object.defineProperty({},"passive",{get(){e=!0}}))}catch(e){}return e})(),io=!!de&&(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(e){}return!1})(),ao=[],lo=[],co=[],uo=(e,t)=>o=>{e.push(o),je||(je=!0,t&&4&no.$flags$?fo(mo):no.raf(mo))},po=e=>{for(let t=0;t{let o=0,n=0;for(;o{if(fe&&Oe++,po(ao),fe){const e=2==(6&no.$flags$)?performance.now()+14*Math.ceil(.1*Oe):1/0;ho(lo,e),ho(co,e),lo.length>0&&(co.push(...lo),lo.length=0),(je=ao.length+lo.length+co.length>0)?no.raf(mo):Oe=0}else po(lo),(je=ao.length>0)&&no.raf(mo)},fo=e=>{return Promise.resolve(t).then(e);var t},bo=uo(lo,!0)},20:function(e,t){function o(e){return Promise.resolve().then((function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}))}o.keys=function(){return[]},o.resolve=o,e.exports=o,o.id=20},58:function(e,t,o){e.exports=o(97)},97:function(e,t,o){"use strict";o.r(t);var n=o(2);const r=(e,t,o,n="")=>{const r="string"==typeof o?s(o):o,i=document.createElement(e);Object.keys(t).map(e=>{i[e]=t[e]}),"insertAfter"===n&&r.parentNode?r.parentNode.insertBefore(i,r.nextSibling):"insertBefore"===n&&r?r.insertBefore(i,r.firstChild):r.appendChild(i)},s=e=>document.querySelector(e),i=e=>!("isConnected"in e)||e.isConnected,a=((e,t)=>{let o;return(...n)=>{o&&clearTimeout(o),o=setTimeout(()=>{o=0,e(...n)},t)}})(e=>{for(let t of e.keys())e.set(t,e.get(t).filter(i))},2e3),l=(e,t)=>{const o=e.indexOf(t);o>=0&&(e[o]=e[e.length-1],e.length--)},c=((e,t)=>{const o=((e,t=((e,t)=>e!==t))=>{let o=new Map(Object.entries(null!=e?e:{}));const n={dispose:[],get:[],set:[],reset:[]},r=()=>{o=new Map(Object.entries(null!=e?e:{})),n.reset.forEach(e=>e())},s=e=>(n.get.forEach(t=>t(e)),o.get(e)),i=(e,r)=>{const s=o.get(e);t(r,s,e)&&(o.set(e,r),n.set.forEach(t=>t(e,r,s)))},a="undefined"==typeof Proxy?{}:new Proxy(e,{get:(e,t)=>s(t),ownKeys:e=>Array.from(o.keys()),getOwnPropertyDescriptor:()=>({enumerable:!0,configurable:!0}),has:(e,t)=>o.has(t),set:(e,t,o)=>(i(t,o),!0)}),c=(e,t)=>(n[e].push(t),()=>{l(n[e],t)});return{state:a,get:s,set:i,on:c,onChange:(t,o)=>{const n=c("set",(e,n)=>{e===t&&o(n)}),r=c("reset",()=>o(e[t]));return()=>{n(),r()}},use:(...e)=>e.forEach(e=>{e.set&&c("set",e.set),e.get&&c("get",e.get),e.reset&&c("reset",e.reset)}),dispose:()=>{n.dispose.forEach(e=>e()),r()},reset:r}})(e,t);return(({on:e})=>{const t=new Map;"function"==typeof n.e&&(e("dispose",()=>{t.clear()}),e("get",e=>{const o=Object(n.e)();o&&((e,t,o)=>{const n=e.get(t);n?n.includes(o)||n.push(o):e.set(t,[o])})(t,e,o)}),e("set",e=>{const o=t.get(e);o&&t.set(e,o.filter(n.d)),a(t)}),e("reset",()=>{t.forEach(e=>e.forEach(n.d)),a(t)}))})(o),o})({travelPerson:null,holidayType:null,holidayActivity:null,day:null,time:null,name:null,email:null,number:null,captcha:null}),d=class extends HTMLElement{constructor(){super(),this.__registerHost(),Object(n.attachShadow)(this),this.captchaVerified=!1}componentDidLoad(){((e,t=(()=>{}),o=document.body,n=!1,s=!1)=>{r("script",{type:"text/javascript",src:e,onload:t,async:n,defer:s},o)})(this.captchaUrl,()=>{this.initReCaptcha()},this.element,!0,!0)}initReCaptcha(){setTimeout(()=>{const e=window.grecaptcha;return void 0===e||void 0===e.render?this.initReCaptcha():e.render(document.querySelector("#captcha"),{sitekey:this.captchaKey,callback:e=>c.state.captcha=!!e,"expired-callback":()=>c.state.captcha=!1})},100)}render(){return Object(n.f)(n.a,null,Object(n.f)("div",{class:"title"},"Please check the box below to proceed."),Object(n.f)("div",{class:{slot:!0,invalid:this.submitted&&!c.state.captcha}},Object(n.f)("slot",null)))}get element(){return this}static get style(){return'@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro&display=swap");@keyframes rotateSpinner{100%{transform:rotate(360deg)}}body{font-family:"Source Sans Pro", sans-serif;font-weight:normal;font-size:16px;line-height:24px;color:#262626}button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}button.primary,button.secondary{font-size:22px;line-height:30px;font-weight:600;font-family:"Source Sans Pro", Arial, sans-serif;letter-spacing:1.2px;margin:0;text-transform:uppercase;border-radius:1000px;text-align:center;padding:12px 36px}button.primary:hover,button.primary:disabled,button.secondary:hover,button.secondary:disabled{opacity:0.8}button.primary:hover:not(:disabled),button.secondary:hover:not(:disabled){cursor:pointer}button.primary:focus,button.secondary:focus{outline:none}button.primary{color:#FFFFFF;background-color:#E86942;border:none}button.primary:hover,button.primary:focus{background-color:#BF3E18}button.secondary{color:#E86942;border:1.5px solid #E86942;box-sizing:border-box;background-color:#FFFFFF}button.secondary:hover,button.secondary:focus{color:#BF3E18;background-color:#faeeea;border-color:#BF3E18}:host{display:block}.title{margin-bottom:10px;font-size:14px;color:#7B7B7B}.invalid{border:1px solid #970202;width:fit-content;border-radius:3px}'}},u=class extends HTMLElement{constructor(){super(),this.__registerHost(),Object(n.attachShadow)(this)}render(){return Object(n.f)(n.a,null)}static get style(){return'@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro&display=swap");@keyframes rotateSpinner{100%{transform:rotate(360deg)}}body{font-family:"Source Sans Pro", sans-serif;font-weight:normal;font-size:16px;line-height:24px;color:#262626}button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}button.primary,button.secondary{font-size:22px;line-height:30px;font-weight:600;font-family:"Source Sans Pro", Arial, sans-serif;letter-spacing:1.2px;margin:0;text-transform:uppercase;border-radius:1000px;text-align:center;padding:12px 36px}button.primary:hover,button.primary:disabled,button.secondary:hover,button.secondary:disabled{opacity:0.8}button.primary:hover:not(:disabled),button.secondary:hover:not(:disabled){cursor:pointer}button.primary:focus,button.secondary:focus{outline:none}button.primary{color:#FFFFFF;background-color:#E86942;border:none}button.primary:hover,button.primary:focus{background-color:#BF3E18}button.secondary{color:#E86942;border:1.5px solid #E86942;box-sizing:border-box;background-color:#FFFFFF}button.secondary:hover,button.secondary:focus{color:#BF3E18;background-color:#faeeea;border-color:#BF3E18}:host{display:block;height:1px;background-color:#E9E9E9;width:100%;margin:24px 0}'}},p=class extends HTMLElement{constructor(){super(),this.__registerHost(),Object(n.attachShadow)(this),this.close=Object(n.c)(this,"close",7)}closeEvent(e){e.preventDefault(),this.close.emit()}render(){return Object(n.f)(n.a,null,Object(n.f)("div",{class:"title"},"Book an appointment"),Object(n.f)("a",{onClick:e=>this.closeEvent(e),href:"#",class:"close"}))}static get style(){return'@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro&display=swap");@keyframes rotateSpinner{100%{transform:rotate(360deg)}}body{font-family:"Source Sans Pro", sans-serif;font-weight:normal;font-size:16px;line-height:24px;color:#262626}button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}button.primary,button.secondary{font-size:22px;line-height:30px;font-weight:600;font-family:"Source Sans Pro", Arial, sans-serif;letter-spacing:1.2px;margin:0;text-transform:uppercase;border-radius:1000px;text-align:center;padding:12px 36px}button.primary:hover,button.primary:disabled,button.secondary:hover,button.secondary:disabled{opacity:0.8}button.primary:hover:not(:disabled),button.secondary:hover:not(:disabled){cursor:pointer}button.primary:focus,button.secondary:focus{outline:none}button.primary{color:#FFFFFF;background-color:#E86942;border:none}button.primary:hover,button.primary:focus{background-color:#BF3E18}button.secondary{color:#E86942;border:1.5px solid #E86942;box-sizing:border-box;background-color:#FFFFFF}button.secondary:hover,button.secondary:focus{color:#BF3E18;background-color:#faeeea;border-color:#BF3E18}:host{display:flex;justify-content:space-between;align-items:center;padding:16px 40px;box-shadow:0px 2px 8px rgba(0, 0, 0, 0.1);color:#262626;position:sticky;top:0px;z-index:100;background-color:#FFFFFF}.title{font-family:Source Sans Pro;font-style:normal;font-weight:600;font-size:20px;line-height:28px;color:#262626}.close{position:relative;display:block;width:16px;height:16px}.close:before,.close:after{position:absolute;left:8px;content:" ";height:20px;width:1px;background-color:#7B7B7B}.close:before{transform:rotate(45deg)}.close:after{transform:rotate(-45deg)}'}},h=class extends HTMLElement{constructor(){super(),this.__registerHost(),Object(n.attachShadow)(this)}render(){return Object(n.f)(n.a,null,Object(n.f)("div",{class:"sub-header"},Object(n.f)("img",{src:"/assets/images/appointment-creator.png"}),Object(n.f)("div",{class:"text"},Object(n.f)("div",{class:"subtitle"},"Want to speak to someone about organising your holiday?"),Object(n.f)("div",{class:"info"},"Book a personalised appointment with one of our travel experts, who will help you find and plan your perfect holiday."),Object(n.f)("div",{class:"item"},Object(n.f)("div",{class:"icon"}),Object(n.f)("div",null,"Pick a preferred time and date")),Object(n.f)("div",{class:"item"},Object(n.f)("div",{class:"icon"}),Object(n.f)("div",null,"Find out about Covid-19 measures in place in your destination")),Object(n.f)("div",{class:"item"},Object(n.f)("div",{class:"icon"}),Object(n.f)("div",null,"Get help putting together the perfect trip")))))}static get assetsDirs(){return["assets"]}static get style(){return'@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro&display=swap");@keyframes rotateSpinner{100%{transform:rotate(360deg)}}body{font-family:"Source Sans Pro", sans-serif;font-weight:normal;font-size:16px;line-height:24px;color:#262626}button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}button.primary,button.secondary{font-size:22px;line-height:30px;font-weight:600;font-family:"Source Sans Pro", Arial, sans-serif;letter-spacing:1.2px;margin:0;text-transform:uppercase;border-radius:1000px;text-align:center;padding:12px 36px}button.primary:hover,button.primary:disabled,button.secondary:hover,button.secondary:disabled{opacity:0.8}button.primary:hover:not(:disabled),button.secondary:hover:not(:disabled){cursor:pointer}button.primary:focus,button.secondary:focus{outline:none}button.primary{color:#FFFFFF;background-color:#E86942;border:none}button.primary:hover,button.primary:focus{background-color:#BF3E18}button.secondary{color:#E86942;border:1.5px solid #E86942;box-sizing:border-box;background-color:#FFFFFF}button.secondary:hover,button.secondary:focus{color:#BF3E18;background-color:#faeeea;border-color:#BF3E18}:host{display:block;color:#262626}.sub-header{display:flex}@media (max-width: 959px){.sub-header{flex-direction:column}}.sub-header .subtitle{font-family:Source Sans Pro;font-style:normal;font-weight:600;font-size:20px;line-height:28px;margin-bottom:5px}.sub-header .info{margin-bottom:16px;line-height:24px}.sub-header img{margin-right:24px;max-height:230px;width:100%}@media (max-width: 959px){.sub-header img{margin:0;margin-bottom:10px;object-fit:fill;max-height:100%}}.sub-header .item{display:flex;margin-bottom:16px;align-items:center;line-height:24px}.sub-header .item .icon{flex-shrink:0;margin-right:12px;width:14px;height:7px;border:2px solid #59A498;border-top:none;border-right:none;transform:rotate(-45deg)}'}};var m,f;!function(e){e.Enter="Enter",e.Escape="Escape",e.Tab="Tab",e.ArrowDown="ArrowDown",e.ArrowUp="ArrowUp",e.ArrowLeft="ArrowLeft",e.ArrowRight="ArrowRight",e.Backspace="Backspace",e.Space=""}(m||(m={})),function(e){e.Name="name",e.Email="email",e.Phone="number"}(f||(f={}));const b=class extends HTMLElement{constructor(){super(),this.__registerHost(),Object(n.attachShadow)(this),this.change=Object(n.c)(this,"change",7),this.invalid=Object(n.c)(this,"invalid",7)}validate(){var e,t;this.touched||(this.markTouched(),this.removeSpaces()),(null===(e=this.config)||void 0===e?void 0:e.pattern.test(this.inputEl.value))?(this.inputEl.setCustomValidity(""),this.change.emit(null===(t=this.inputEl)||void 0===t?void 0:t.value)):(this.inputEl.setCustomValidity("Invalid field"),this.change.emit(""))}get inputEl(){return this.element.shadowRoot.querySelector("input")}get touched(){return this.inputEl.classList.contains("touched")}get dirty(){return this.inputEl.classList.contains("dirty")}get valid(){return this.inputEl.checkValidity()}get config(){let e,t="Please enter a valid ",o="text";switch(this.type){case f.Name:e=/^[a-zA-Z]+(\s|\'|\-|\.)?[a-zA-Z]+(\s|\'|\-)?[a-zA-Z]+$/,t=t.concat("name");break;case f.Email:e=/^([a-zA-Z0-9_\\-\\.]+)@([a-zA-Z0-9_\\-\\.]+)\.([a-zA-Z]{2,5})$/,t=t.concat("email");break;case f.Phone:e=/^[0-9]*$/,o="decimal",t=t.concat("phone number")}return{pattern:e,error:t,type:"text",inputmode:o}}inputChanged(){var e;if(this.inputEl.value?this.dirty||this.markDirty():this.removeDirty(),this.touched&&this.validate(),!this.valid)return;(null===(e=this.inputEl)||void 0===e?void 0:e.value)||this.removeDirty()}markDirty(){this.inputEl.classList.add("dirty")}removeDirty(){this.inputEl.classList.remove("dirty")}markTouched(){this.inputEl.classList.add("touched")}onBlur(){this.validate()}removeSpaces(){var e;this.inputEl.value=null===(e=this.inputEl.value)||void 0===e?void 0:e.trim()}onStartTyping(e){const t=e.key.trim();t&&(this.isControlKey(t)||this.isNumber(t)||e.metaKey)||e.preventDefault()}isNumber(e){return Number(e)>=0&&Number(e)<=9}isControlKey(e){return Object.values(m).includes(e)}render(){var e;return Object(n.f)("div",{class:"container"},Object(n.f)("input",{onKeyUp:()=>this.inputChanged(),onKeyDown:e=>this.type===f.Phone&&this.onStartTyping(e),onBlur:()=>this.onBlur(),type:this.config.type,value:this.value,inputMode:this.config.inputmode,required:!0}),Object(n.f)("div",{class:"actions"},Object(n.f)("label",{htmlFor:"name",class:"content"},this.label),Object(n.f)("div",{class:"error"},Object(n.f)("div",{class:"message"},null===(e=this.config)||void 0===e?void 0:e.error))))}get element(){return this}static get watchers(){return{submitted:["validate"]}}static get style(){return'@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro&display=swap");@keyframes rotateSpinner{100%{transform:rotate(360deg)}}body{font-family:"Source Sans Pro", sans-serif;font-weight:normal;font-size:16px;line-height:24px;color:#262626}button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}button.primary,button.secondary{font-size:22px;line-height:30px;font-weight:600;font-family:"Source Sans Pro", Arial, sans-serif;letter-spacing:1.2px;margin:0;text-transform:uppercase;border-radius:1000px;text-align:center;padding:12px 36px}button.primary:hover,button.primary:disabled,button.secondary:hover,button.secondary:disabled{opacity:0.8}button.primary:hover:not(:disabled),button.secondary:hover:not(:disabled){cursor:pointer}button.primary:focus,button.secondary:focus{outline:none}button.primary{color:#FFFFFF;background-color:#E86942;border:none}button.primary:hover,button.primary:focus{background-color:#BF3E18}button.secondary{color:#E86942;border:1.5px solid #E86942;box-sizing:border-box;background-color:#FFFFFF}button.secondary:hover,button.secondary:focus{color:#BF3E18;background-color:#faeeea;border-color:#BF3E18}:host{display:block}.container{position:relative;height:60px;font-size:16px;line-height:16px;font-weight:normal;margin-bottom:30px}.container input{width:100%;height:100%;font-size:inherit;display:inline-block;padding:18px 16px 0;box-sizing:border-box;border-radius:3px;border:1px solid #7B7B7B;transition:transform 0.1s ease;outline:none !important}.container input:focus:not(.touched){border-color:#59A498;box-shadow:inset 0 0 0 1px #59A498}.container input:hover:not(:focus){box-shadow:inset 0 0 0 1px #262626}.container input:hover:focus:valid{border-color:#59A498;box-shadow:inset 0 0 0 1px #59A498}.container input:focus:valid+.actions .content{color:#59A498}.container input.dirty:invalid+.actions .content,.container input.touched:invalid+.actions .content{color:#970202}.container input:focus+.actions .content,.container input:valid+.actions .content,.container input.dirty+.actions .content{transform:translateY(-100%) scale(0.8)}.container input:focus:not(.touched)+.actions label{color:#59A498}.container input:invalid.touched+.actions .error .message{transition:transform 0.3s ease;transform:translateY(0)}.container input:invalid.dirty,.container input:invalid.touched{border-color:#970202;box-shadow:inset 0 0 0 1px #970202}.container .actions{position:absolute;bottom:0;left:0;width:100%;height:100%;font-size:inherit;pointer-events:none}.container .content{position:absolute;left:16px;bottom:20px;transition:transform 0.3s ease-in-out;color:#7B7B7B;transform-origin:0 0}.container .error{position:absolute;bottom:-24px;overflow:hidden;width:100%}.container .error .message{color:#970202;transform:translateY(calc(-1em - 1px));overflow:hidden;white-space:nowrap;text-overflow:ellipsis}@media (max-width: 320px){.container .error .message{transform:translateY(-50px)}}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}'}},$=class extends HTMLElement{constructor(){super(),this.__registerHost(),Object(n.attachShadow)(this),this.close=Object(n.c)(this,"close",7)}render(){return Object(n.f)(n.a,null,Object(n.f)("div",{class:"result-modal-title"},"success"===this.result?"Thanks, we’ve received your appointment request":"Something went wrong"),Object(n.f)("div",{class:"result-modal-text"},"success"===this.result?"A member of our customer operations team will be in touch with you shortly.":"Our mail system is currently down. Please try again later."),Object(n.f)("button",{class:"primary",onClick:()=>this.close.emit(),type:"submit"},"Back to ThomasCook.com"))}static get style(){return'@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro&display=swap");@keyframes rotateSpinner{100%{transform:rotate(360deg)}}body{font-family:"Source Sans Pro", sans-serif;font-weight:normal;font-size:16px;line-height:24px;color:#262626}button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}button.primary,button.secondary{font-size:22px;line-height:30px;font-weight:600;font-family:"Source Sans Pro", Arial, sans-serif;letter-spacing:1.2px;margin:0;text-transform:uppercase;border-radius:1000px;text-align:center;padding:12px 36px}button.primary:hover,button.primary:disabled,button.secondary:hover,button.secondary:disabled{opacity:0.8}button.primary:hover:not(:disabled),button.secondary:hover:not(:disabled){cursor:pointer}button.primary:focus,button.secondary:focus{outline:none}button.primary{color:#FFFFFF;background-color:#E86942;border:none}button.primary:hover,button.primary:focus{background-color:#BF3E18}button.secondary{color:#E86942;border:1.5px solid #E86942;box-sizing:border-box;background-color:#FFFFFF}button.secondary:hover,button.secondary:focus{color:#BF3E18;background-color:#faeeea;border-color:#BF3E18}:host{display:block}.result-modal-title{font-size:24px;line-height:32px;font-weight:600;font-family:"Source Sans Pro", Arial, sans-serif;letter-spacing:normal;margin:0}.result-modal-text{font-size:16px;line-height:24px;font-weight:400;font-family:"Source Sans Pro", Arial, sans-serif;letter-spacing:normal;margin:0;margin:20px 0}button{max-width:100%}'}},g=class extends HTMLElement{constructor(){super(),this.__registerHost(),Object(n.attachShadow)(this),this.change=Object(n.c)(this,"change",7),this.selectedItems=[],this.focusedIndex=0}validate(){return!this.touched&&this.markTouched()}keyDown(e){var t,o,n;switch(null===(t=e.key)||void 0===t?void 0:t.trim()){case m.Enter:case m.Space:if(e.preventDefault(),!this.isOpen){this.open(),null===(o=this.items[0])||void 0===o||o.focus();break}return this.selectItem(this.options[this.focusedIndex]);case m.Escape:case m.Tab:return this.isOpen&&this.close();case m.ArrowDown:if(e.preventDefault(),this.isOpen)return this.focusedIndex<(null===(n=this.items)||void 0===n?void 0:n.length)-1&&this.focusItem(++this.focusedIndex);case m.ArrowUp:if(e.preventDefault(),this.isOpen)return this.focusedIndex>0&&this.focusItem(--this.focusedIndex)}}focusListener(){this.onBlur()}get focusedItem(){return this.items[this.focusedIndex]}get firstItem(){return this.items[0]}get touched(){return this.selectEl.classList.contains("touched")}get selectEl(){var e,t;return null===(t=null===(e=this.element)||void 0===e?void 0:e.shadowRoot)||void 0===t?void 0:t.querySelector(".select")}get inputEl(){var e,t;return null===(t=null===(e=this.element)||void 0===e?void 0:e.shadowRoot)||void 0===t?void 0:t.querySelector(".select__input")}get arrowEl(){var e,t;return null===(t=null===(e=this.element)||void 0===e?void 0:e.shadowRoot)||void 0===t?void 0:t.querySelector(".arrow")}get placeholderEl(){var e,t;return null===(t=null===(e=this.element)||void 0===e?void 0:e.shadowRoot)||void 0===t?void 0:t.querySelector(".placeholder")}get items(){var e,t;return null===(t=null===(e=this.element)||void 0===e?void 0:e.shadowRoot)||void 0===t?void 0:t.querySelectorAll(".item")}get isOpen(){var e,t;return null===(t=null===(e=this.selectEl)||void 0===e?void 0:e.classList)||void 0===t?void 0:t.contains("open")}get valid(){var e,t;return null===(t=null===(e=this.selectEl)||void 0===e?void 0:e.classList)||void 0===t?void 0:t.contains(".valid")}get selected(){var e;const t=(null===(e=this.selectedItems)||void 0===e?void 0:e.length)-1;return t>=0?this.selectedItems[0]+" "+(t>0?`(+ ${t} other${t>1?"s":""})`:""):this.placeholder}focusItem(e){var t;null===(t=this.items[e])||void 0===t||t.focus()}inputClick(){this.isOpen?this.close():this.open()}selectItem(e){return e&&!this.valid&&this.selectEl.classList.add("valid"),this.selectedItems=this.selectedItems.includes(e)?this.selectedItems.filter(t=>t!==e):[...this.selectedItems,e]}open(){var e,t,o,n;null===(t=null===(e=this.selectEl)||void 0===e?void 0:e.classList)||void 0===t||t.add("open"),null===(n=null===(o=this.arrowEl)||void 0===o?void 0:o.classList)||void 0===n||n.add("arrow__up")}close(){var e,t,o,n,r;null===(t=null===(e=this.selectEl)||void 0===e?void 0:e.classList)||void 0===t||t.remove("open"),null===(n=null===(o=this.arrowEl)||void 0===o?void 0:o.classList)||void 0===n||n.remove("arrow__up"),this.inputEl.focus(),(null===(r=this.selectItem)||void 0===r?void 0:r.length)&&this.change.emit(this.selectedItems)}getItemEl(e){return Object(n.f)("li",{tabindex:"-1",class:"select__item item "+(this.selectedItems.includes(e)?"selected":""),onClick:()=>this.selectItem(e)},e)}onBlur(){var e;this.touched||this.markTouched(),(null===(e=this.selectedItems)||void 0===e?void 0:e.length)||this.selectEl.classList.remove("valid"),this.close()}markTouched(){this.selectEl.classList.add("touched")}render(){return Object(n.f)("div",{class:"select",tabindex:"0"},Object(n.f)("div",{class:"select__input arrow",onClick:()=>this.inputClick()},Object(n.f)("span",{class:"select__placeholder placeholder"},this.selected)),Object(n.f)("div",{class:"select__dropdown"},Object(n.f)("ul",{class:"select__list"},this.options.map(e=>this.getItemEl(e)))),Object(n.f)("div",{class:"select__error"},Object(n.f)("div",{class:"message"},"Please select an option")))}get element(){return this}static get watchers(){return{submitted:["validate"]}}static get style(){return'@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro&display=swap");@keyframes rotateSpinner{100%{transform:rotate(360deg)}}body{font-family:"Source Sans Pro", sans-serif;font-weight:normal;font-size:16px;line-height:24px;color:#262626}button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}button.primary,button.secondary{font-size:22px;line-height:30px;font-weight:600;font-family:"Source Sans Pro", Arial, sans-serif;letter-spacing:1.2px;margin:0;text-transform:uppercase;border-radius:1000px;text-align:center;padding:12px 36px}button.primary:hover,button.primary:disabled,button.secondary:hover,button.secondary:disabled{opacity:0.8}button.primary:hover:not(:disabled),button.secondary:hover:not(:disabled){cursor:pointer}button.primary:focus,button.secondary:focus{outline:none}button.primary{color:#FFFFFF;background-color:#E86942;border:none}button.primary:hover,button.primary:focus{background-color:#BF3E18}button.secondary{color:#E86942;border:1.5px solid #E86942;box-sizing:border-box;background-color:#FFFFFF}button.secondary:hover,button.secondary:focus{color:#BF3E18;background-color:#faeeea;border-color:#BF3E18}:host{display:block;outline:none}.select{width:100%;position:relative}.select:focus{outline:none}.select:focus:not(.touched){outline:none}.select:focus:not(.touched) .select__input{border-color:#59A498;box-shadow:inset 0 0 0 1px #59A498}.select:focus:not(.touched) .select__input .placeholder{color:#59A498}.select:focus:not(.touched) .select__input:after{border-top-color:#59A498}.select__backdrop{display:none;position:fixed;top:0;right:0;left:0;bottom:0;background:transparent;z-index:1000}.select.valid .select__input:focus{border-color:#59A498;box-shadow:inset 0 0 0 1px #59A498}.select.valid .placeholder{color:#262626}.select:not(.valid).touched .select__input{border-color:#970202;box-shadow:inset 0 0 0 1px #970202}.select:not(.valid).touched .select__input:hover{border-color:#970202;box-shadow:inset 0 0 0 2px #970202}.select:not(.valid).touched .select__input:after{border-top-color:#970202}.select:not(.valid).touched .placeholder{color:#970202}.select.touched:not(.valid) .message{transition:transform 0.3s ease;transform:translateY(0)}.select.open .select__dropdown{max-height:300px;transition:max-height 0.3s ease-in-out}.select.open .select__backdrop{display:block}.select.open .select__input{border-color:#59A498;box-shadow:inset 0 0 0 1px #59A498}.select__input{position:relative;border:1px solid #7B7B7B;border-radius:3px;height:60px;display:flex;align-items:center;padding:0 1rem;cursor:pointer;margin-bottom:8px;transition:all 0.2s ease-in-out;outline:none !important}.select__input:hover:not(:focus){box-shadow:inset 0 0 0 1px #7B7B7B}.select__input:hover:focus.valid{border-color:#59A498;box-shadow:inset 0 0 0 1px #59A498}.select .arrow:after{content:"";position:absolute;right:1rem;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #7B7B7B;transition:transform 0.3s ease-in-out}.select .arrow__up:after{transform:rotate(180deg)}.select__dropdown{overflow:hidden;max-height:0;transition:max-height 0.3s cubic-bezier(0, 1, 0, 1);position:absolute;background:#FFFFFF;border-radius:0px 0px 12px 12px;filter:drop-shadow(0px 2px 8px rgba(0, 0, 0, 0.3));top:calc(60px + 2 * 1px + 1px);left:0;right:0;overflow-y:auto;z-index:1000}.select__list{padding:0;margin:0;list-style:none}.select__item{padding:1rem;box-sizing:border-box;height:60px;display:flex;align-items:center}.select__item:hover{background:rgba(0, 0, 0, 0.04);cursor:pointer}.select__item.selected{background:#E3F2F0;position:relative}.select__item.selected:after{content:"";position:absolute;right:1rem;width:20px;height:14px;border:1px solid #59A498;border-top:none;border-right:none;transform:rotate(-45deg)}.select__item.selected:hover,.select__item.selected:focus{background-color:#BBDED9}.select__placeholder{color:#7B7B7B}.select__placeholder.selected{color:#262626}.select__error{overflow:hidden;width:100%}.select__error .message{font-size:16px;line-height:16px;color:#970202;transform:translateY(-50px)}.item:focus{outline:none}.item:focus:not(.selected){outline:none;background-color:rgba(0, 0, 0, 0.04)}'}},y=class extends HTMLElement{constructor(){super(),this.__registerHost(),Object(n.attachShadow)(this),this.change=Object(n.c)(this,"change",7),this.counter=0,this.pattern=/^[a-zA-Z]+[a-zA-Z0-9,\s\.\-\\(\\)\'\"\\\/]+$/}submit(){this.markTouched()}focusEvent(){this.innerPlaceholder="",this.container.classList.add("focused")}onBlur(){var e;this.markTouched();const t=null===(e=this.textarea)||void 0===e?void 0:e.value.trim();this.textarea.value=t,t||(this.innerPlaceholder=this.placeholder),this.validate(),this.container.classList.remove("focused")}get touched(){return this.textarea.classList.contains("touched")}get dirty(){return this.textarea.classList.contains("dirty")}get valid(){return this.textarea.checkValidity()}get value(){var e;return null===(e=this.textarea)||void 0===e?void 0:e.value.trim()}validate(){this.pattern.test(this.value)?(this.textarea.setCustomValidity(""),this.change.emit(this.value)):(this.textarea.setCustomValidity("Field invalid"),this.change.emit(""))}componentWillLoad(){this.innerPlaceholder=this.placeholder}get container(){return this.element.shadowRoot.querySelector(".container")}get textarea(){return this.element.shadowRoot.querySelector(".textarea")}componentWillUnmount(){clearTimeout(this.timer)}markDirty(){this.textarea.classList.add("dirty")}removeDirty(){this.textarea.classList.remove("dirty")}markTouched(){return!this.touched&&this.textarea.classList.add("touched")}onKeyUp(){var e;this.counter=null===(e=this.value)||void 0===e?void 0:e.length,this.touched&&(clearTimeout(this.timer),this.timer=setTimeout(()=>this.validate(),100))}render(){return Object(n.f)("div",{class:"container"},Object(n.f)("textarea",{required:!0,class:"textarea",onKeyUp:()=>this.onKeyUp(),maxlength:"200",placeholder:this.innerPlaceholder}),Object(n.f)("div",{class:"error"},Object(n.f)("div",{class:"message"},"Please enter a valid text")),Object(n.f)("div",{class:"counter"},this.counter+"/200"))}get element(){return this}static get watchers(){return{submitted:["submit"]}}static get style(){return'@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro&display=swap");@keyframes rotateSpinner{100%{transform:rotate(360deg)}}body{font-family:"Source Sans Pro", sans-serif;font-weight:normal;font-size:16px;line-height:24px;color:#262626}button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}button.primary,button.secondary{font-size:22px;line-height:30px;font-weight:600;font-family:"Source Sans Pro", Arial, sans-serif;letter-spacing:1.2px;margin:0;text-transform:uppercase;border-radius:1000px;text-align:center;padding:12px 36px}button.primary:hover,button.primary:disabled,button.secondary:hover,button.secondary:disabled{opacity:0.8}button.primary:hover:not(:disabled),button.secondary:hover:not(:disabled){cursor:pointer}button.primary:focus,button.secondary:focus{outline:none}button.primary{color:#FFFFFF;background-color:#E86942;border:none}button.primary:hover,button.primary:focus{background-color:#BF3E18}button.secondary{color:#E86942;border:1.5px solid #E86942;box-sizing:border-box;background-color:#FFFFFF}button.secondary:hover,button.secondary:focus{color:#BF3E18;background-color:#faeeea;border-color:#BF3E18}:host{display:block}.container{position:relative;width:100%}.container .backdrop{display:none;position:fixed;top:0;right:0;left:0;bottom:0;background:transparent;z-index:1000}.container.focused .backdrop{display:block}textarea{font-family:Source Sans Pro;font-weight:normal;font-size:16px;line-height:24px;resize:none;height:72px;border:1px solid #262626;border-radius:3px;outline:none;width:calc(100% - 2 * 16px);padding:1rem;transition:box-shadow 0.3s ease-in-out}textarea:focus{border-color:#59A498;box-shadow:inset 0 0 0 1px #59A498}textarea:hover:not(:focus){box-shadow:inset 0 0 1px 1px #262626}textarea.touched:invalid{border-color:#970202;box-shadow:inset 0 0 0 1px #970202}textarea.touched:invalid::placeholder{color:#970202}textarea.touched:invalid+.counter{color:#970202}textarea:invalid.touched+.error .message{transition:transform 0.3s ease;transform:translateY(0)}.counter{position:absolute;bottom:30px;right:8px;font-size:12px;line-height:12px;color:#7B7B7B}@media (max-width: 320px){.counter{bottom:20px}}.error{overflow:hidden;width:100%}.error .message{font-size:16px;line-height:16px;color:#970202;transform:translateY(-50px)}'}},v=class extends HTMLElement{constructor(){super(),this.__registerHost(),Object(n.attachShadow)(this)}render(){return Object(n.f)(n.a,null,Object(n.f)("div",{class:"title"},this.title),Object(n.f)("div",{class:"subtitle"},this.subtitle))}static get style(){return'@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro&display=swap");@keyframes rotateSpinner{100%{transform:rotate(360deg)}}body{font-family:"Source Sans Pro", sans-serif;font-weight:normal;font-size:16px;line-height:24px;color:#262626}button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}button.primary,button.secondary{font-size:22px;line-height:30px;font-weight:600;font-family:"Source Sans Pro", Arial, sans-serif;letter-spacing:1.2px;margin:0;text-transform:uppercase;border-radius:1000px;text-align:center;padding:12px 36px}button.primary:hover,button.primary:disabled,button.secondary:hover,button.secondary:disabled{opacity:0.8}button.primary:hover:not(:disabled),button.secondary:hover:not(:disabled){cursor:pointer}button.primary:focus,button.secondary:focus{outline:none}button.primary{color:#FFFFFF;background-color:#E86942;border:none}button.primary:hover,button.primary:focus{background-color:#BF3E18}button.secondary{color:#E86942;border:1.5px solid #E86942;box-sizing:border-box;background-color:#FFFFFF}button.secondary:hover,button.secondary:focus{color:#BF3E18;background-color:#faeeea;border-color:#BF3E18}:host{display:block;margin-bottom:12px}.title{color:#262626;font-family:Source Sans Pro;font-style:normal;font-weight:600;font-size:20px;line-height:28px}.subtitle{color:#7B7B7B;font-weight:normal;font-size:14px;line-height:22px}'}},x=e=>{var t,o;return`Who’s going? \n${null==e?void 0:e.travelPerson} \nWhat type of holiday would you like? \n${null==e?void 0:e.holidayType} \nWhat do you like to do on holiday? \n${null==e?void 0:e.holidayActivity} \nPreferred day(s): ${null===(t=null==e?void 0:e.day)||void 0===t?void 0:t.join(", ")} \nPreferred time slot(s): ${null===(o=null==e?void 0:e.time)||void 0===o?void 0:o.join(", ")} \n${w(null==e?void 0:e.email,null==e?void 0:e.number,null==e?void 0:e.name)}`},w=(e,t,o)=>`Email: ${e} \nPhone: ${t} \nName: ${o}`,k=e=>{let t;switch(e){case 1:t="st";break;case 2:t="nd";break;case 3:t="rd";break;default:t="th"}return`${e}${t}`},S=class extends HTMLElement{constructor(){super(),this.__registerHost(),this.close=Object(n.c)(this,"close",7),this.submitted=!1,this.loading=!1,this.dayOptions=(()=>{const e=["January","February","March","April","May","June","July","August","September","October","November","December"],t=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],o=[];for(let n=0;n<7;n++){let r=new Date;r.setDate(r.getDate()+n),o.push(`${t[r.getDay()]}, ${e[r.getMonth()]} ${k(r.getDate())}`)}return o})(),this.timeOptions=["Morning (10am - 12pm)","Afternoon (12pm - 4pm)","Evening (4pm - 8pm)"],this.selectedDayDefault="Preferred day",this.selectedTimeDefault="Preferred time"}keyDown(e){var t,o,n;const r=null===(t=e.key)||void 0===t?void 0:t.trim();r===m.ArrowLeft&&document.activeElement===this.primaryBtn?null===(o=this.secondaryBtn)||void 0===o||o.focus():r===m.ArrowRight&&document.activeElement===this.secondaryBtn&&(null===(n=this.primaryBtn)||void 0===n||n.focus())}closeModal(){this.close.emit()}get valid(){var e;return!(null===(e=this.invalidFields)||void 0===e?void 0:e.length)&&c.state.captcha}get invalidFields(){return Object.keys(c.state).filter(e=>!c.state[e])}get firstInvalidEl(){return this.element.querySelector(`[data-type="${this.invalidFields[0]}"]`)}async send(){try{return(await fetch("/email/send",{method:"POST",body:(e=c.state,JSON.stringify({subject:"Book an appointment",text:x(e),email:null==e?void 0:e.email})),headers:{"Content-Type":"application/json"}})).json()}catch(e){throw this.mailResult="failed",new Error("Mail server error")}var e}async handleSubmit(e){var t,o;if(null===(o=null===(t=this.form)||void 0===t?void 0:t.classList)||void 0===o||o.add("submitted"),e.preventDefault(),this.submitted=!0,!this.valid)return void this.firstInvalidEl.scrollIntoView({block:"center",behavior:"smooth"});this.loading=!0;const n=await this.send();this.mailResult=null==n?void 0:n.message,this.loading=!1}getContacts(){return Object.keys(f).map(e=>{const t=f[e];return Object(n.f)("app-input",{"data-type":f[e],submitted:this.submitted,onChange:e=>c.state[t]=e.detail,type:t,label:"Your "+t})})}onChange(e){console.log("Captcha response:",e)}get content(){return this.mailResult?Object(n.f)("app-result",{result:this.mailResult,onClose:()=>this.closeModal()}):[Object(n.f)("app-info",null),Object(n.f)("app-divider",null),Object(n.f)("form",{ref:e=>this.form=e,onSubmit:e=>this.handleSubmit(e)},Object(n.f)("app-title",{class:"main",title:"Share a little info on your perfect holiday",subtitle:"This helps our advisors plan for your appointment"}),Object(n.f)("div",{class:"title"},"Who’s going?"),Object(n.f)("app-textarea",{"data-type":"travelPerson",submitted:this.submitted,onChange:e=>c.state.travelPerson=e.detail,placeholder:"Example: myself, my husband, our three kids and the dog"}),Object(n.f)("div",{class:"title"},"What type of holiday would you like?"),Object(n.f)("app-textarea",{"data-type":"holidayType",submitted:this.submitted,onChange:e=>c.state.holidayType=e.detail,placeholder:"Example: A winter ski holiday suitable for families"}),Object(n.f)("div",{class:"title"},"What do you like to do on holiday?"),Object(n.f)("app-textarea",{"data-type":"holidayActivity",submitted:this.submitted,onChange:e=>c.state.holidayActivity=e.detail,placeholder:"Example: We love to explore the culture and history behind a place, climb mountains and drink tequila"}),Object(n.f)("app-divider",null),Object(n.f)("app-title",{title:"Pick your preferred day",subtitle:"You’re able to select multiple options if they are suitable"}),Object(n.f)("app-select",{"data-type":"day",placeholder:"Preferred day",submitted:this.submitted,onChange:e=>c.state.day=e.detail,options:this.dayOptions}),Object(n.f)("app-title",{title:"Pick your preferred time",subtitle:"You’re able to select multiple options if they are suitable"}),Object(n.f)("app-select",{"data-type":"time",placeholder:"Preferred time",submitted:this.submitted,onChange:e=>c.state.time=e.detail,options:this.timeOptions}),Object(n.f)("app-divider",null),Object(n.f)("app-title",{class:"contacts",title:"Your contact details"}),Object(n.f)("div",{class:"contacts-text"},"We’ll try our best to get in touch with you at your chosen time. Your information will only be used for the appointment and you won’t be opted in to any marketing emails."),this.getContacts(),Object(n.f)("app-captcha",{"data-type":"captcha",submitted:this.submitted,captchaUrl:this.captchaUrl,captchaKey:this.captchaKey},Object(n.f)("slot",null)),Object(n.f)("div",{class:"button-container"},Object(n.f)("button",{ref:e=>this.secondaryBtn=e,class:"secondary",type:"button",onClick:()=>this.closeModal()},"Cancel"),Object(n.f)("button",{ref:e=>this.primaryBtn=e,disabled:this.loading,class:"primary "+(this.loading?"loading":""),type:"submit"},this.loading?"":"Submit")))]}get submitButton(){return this.element.querySelector('button[type="submit"]')}render(){return Object(n.f)(n.a,null,Object(n.f)("app-header",{onClose:()=>this.closeModal()}),Object(n.f)("div",{class:"concierge-component-content"},this.content))}get element(){return this}static get style(){return'@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro&display=swap");@keyframes rotateSpinner{100%{transform:rotate(360deg)}}body{font-family:"Source Sans Pro", sans-serif;font-weight:normal;font-size:16px;line-height:24px;color:#262626}button{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}button.primary,button.secondary{font-size:22px;line-height:30px;font-weight:600;font-family:"Source Sans Pro", Arial, sans-serif;letter-spacing:1.2px;margin:0;text-transform:uppercase;border-radius:1000px;text-align:center;padding:12px 36px}button.primary:hover,button.primary:disabled,button.secondary:hover,button.secondary:disabled{opacity:0.8}button.primary:hover:not(:disabled),button.secondary:hover:not(:disabled){cursor:pointer}button.primary:focus,button.secondary:focus{outline:none}button.primary{color:#FFFFFF;background-color:#E86942;border:none}button.primary:hover,button.primary:focus{background-color:#BF3E18}button.secondary{color:#E86942;border:1.5px solid #E86942;box-sizing:border-box;background-color:#FFFFFF}button.secondary:hover,button.secondary:focus{color:#BF3E18;background-color:#faeeea;border-color:#BF3E18}concierge-component{display:block;height:100%}.concierge-component-content{height:100%;overflow:auto;padding:40px 40px 24px 40px}.subtitle{font-family:Source Sans Pro;font-style:normal;font-weight:600;font-size:20px;line-height:28px}input,select,textarea{width:100%}select{height:60px;padding:12px}textarea{height:130px;padding:12px;width:calc(100% - 24px)}.checkbox-container{display:flex;justify-content:space-between;margin-bottom:10px;align-items:center}.info-title,.pick-title,.contact-title{margin-bottom:10px}.info-title,.pick-title,.question-title,.contact-title{font-family:Source Sans Pro;font-style:normal;font-weight:600;font-size:20px;line-height:28px}.question-subtitle{color:#7B7B7B;font-weight:normal;font-size:14px;line-height:22px}.question-select,.sub-header,.additional-info,.contact-container,.button-container,.select-container,.footer-title{margin-bottom:24px}.contact-container input{height:60px;margin:10px 0;padding:0 12px}.button-container{display:flex;justify-content:center}@media (max-width: 599px){.button-container{flex-direction:column}}.button-container button{margin:10px;min-width:152px}.contacts,.contacts-text{margin-bottom:16px;line-height:24px}app-captcha{margin-bottom:32px}.title{margin-bottom:12px}app-title{margin-bottom:12px}app-title.main{margin-bottom:24px}app-textarea{margin-bottom:24px}.loading:after{display:block;content:"";margin:auto;box-sizing:border-box;border-radius:50%;height:30px;width:30px;border:3px solid #FFFFFF;border-top-color:transparent;animation:rotateSpinner 1.5s linear infinite}'}};var F;"undefined"!=typeof customElements&&[Object(n.g)(d,[1,"app-captcha",{submitted:[4],captchaUrl:[1,"captcha-url"],captchaKey:[1,"captcha-key"],captchaVerified:[32]}]),Object(n.g)(u,[1,"app-divider"]),Object(n.g)(p,[1,"app-header"]),Object(n.g)(h,[1,"app-info"]),Object(n.g)(b,[1,"app-input",{label:[1],submitted:[4],type:[1],value:[8],error:[32]}]),Object(n.g)($,[1,"app-result",{result:[1]}]),Object(n.g)(g,[1,"app-select",{options:[16],submitted:[4],placeholder:[1],selectedItems:[32]},[[0,"keydown","keyDown"],[2,"focusout","focusListener"]]]),Object(n.g)(y,[1,"app-textarea",{placeholder:[1],submitted:[4],innerPlaceholder:[32],counter:[32]},[[0,"focus","focusEvent"],[0,"click","focusEvent"],[0,"blur","onBlur"]]]),Object(n.g)(v,[1,"app-title",{title:[1],subtitle:[1]}]),Object(n.g)(S,[4,"concierge-component",{captchaKey:[1,"captcha-key"],captchaUrl:[1,"captcha-url"],submitted:[32],mailResult:[32],loading:[32]},[[0,"keydown","keyDown"]]])].forEach(e=>{customElements.get(e.is)||customElements.define(e.is,e,F)})}});