@influence-society-web/deshotelsetdesiles 4.2.2 → 4.2.4

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.
@@ -1,4 +1,4 @@
1
- "use strict";(()=>{var Dn=Object.defineProperty;var Tn=(e,r,t)=>r in e?Dn(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t;var Se=(e,r,t)=>(Tn(e,typeof r!="symbol"?r+"":r,t),t);var $="data",G={startingPriceList:`[${$}=starting-price-list]`,price:`[${$}=price]`,discount:`[${$}=discount]`,discountContainer:`[${$}=discount-container]`,currency:`[${$}=currency]`,beHid:`[${$}-be-hid]`,destination:`[${$}=destination]`,offersList:`[${$}=offers-list]`,offerSlugDetail:`[${$}=offer-slug-detail], [data-offer-slug-detail]`,offerSlugOthersList:`[${$}=offer-slug-others-list], [data-offer-slug-others-list]`,offerSlugOthersList2:`[${$}=offer-slug-others-list2], [data-offer-slug-others-list2]`,offerSlugOthersListItem:".offer-others_item",offersMoreWrapper:`[${$}=offers-more-wrapper]`,offersListContainer:`[${$}=offers-list-container]`,listItem:`[${$}=list-item]`,image:`[${$}=image]`,name:`[${$}=name]`,description:`[${$}=description]`,hotelName:`[${$}=hotel-name]`,hotelLink:`[${$}=hotel-link]`,hotelStartingPriceContainer:`[${$}=hotel-starting-price-container]`,moreDetails:`[${$}=more-details]`,offersPopup:`[${$}=offers-popup]`,offersPopupClose:`[${$}=close-btn]`,hotelReserveLink:`[${$}=hotel-reserve-link]`,hotelVillaReserveLink:`[${$}=hotel-villa-reserve-link]`,hotelURLS:`[${$}=hotel-urls]`,languageDropdown:`[${$}=language-dropdown]`,selectedLanguage:`[${$}=selected-language]`,loadingSpinner:`[${$}=loading-spinner]`,cmsFilterEmptyState:"[fs-cmsfilter-element=empty]",startingfromItem:e=>`[${$}-be-hid=${e}]`,popupOverlay:"[fs-smartlightbox-element=trigger-close]"};var Be={en:"Guadeloupe Islands",fr:"Les \xCEles de Guadeloupe",es:"Las islas de Guadalupe",it:"Le isole della Guadalupa"},hr={en:"La Dominique",fr:"La Dominique",es:"Dominica",it:"Dominica"},ht={en:"Saint Lucia",fr:"Sainte-Lucie",es:"Santa Luc\xEDa",it:"Santa Lucia"},An={en:"Martinique",fr:"Martinique",es:"Martinica",it:"Martinica"},qe={en:"Mauritius",fr:"\xCEle Maurice",es:"Mauricio",it:"Mauritius"},mr={en:"Saint Martin",fr:"Saint-Martin",es:"Saint-Martin",it:"Saint Martin"},pr={en:"Antigua",fr:"Antigua",es:"Antigua",it:"Antigua"},Cn={en:"Anguilla",fr:"Anguilla",es:"Anguila",it:"Anguilla"},we={gpgos12767:{destination:Be,slug:"/hotels-et-villas/creole-beach-hotel-spa",codeIPlanet:"FRAN414",cmsId:"67c809b5f63deab8a71cf8e9"},gptro12772:{destination:Be,slug:"/hotels-et-villas/le-jardin-malanga",codeIPlanet:"FRAN416",cmsId:"67c809b5f63deab8a71cf90d"},gpsai12770:{destination:Be,slug:"/hotels-et-villas/la-toubana-hotel-spa",codeIPlanet:"FRAN411",cmsId:"67c809b5f63deab8a71cf8ef"},gpgos12769:{destination:Be,slug:"/hotels-et-villas/mahogany-hotel-residence-spa",codeIPlanet:"FRAN423",cmsId:"67c809b5f63deab8a71cf91f"},gpgua27143:{destination:Be,slug:"/hotels-et-villas/langley-resort-fort-royal",codeIPlanet:"GPAN32",cmsId:"67c809b5f63deab8a71cf8f0"},mqros18592:{destination:hr,slug:"/hotels-et-villas/jungle-bay-dominica",codeIPlanet:"DMAN1",cmsId:"67c809b5f63deab8a71cf8ed"},dmtib00001:{destination:hr,slug:"/hotels-et-villas/secret-bay-dominique",codeIPlanet:"DMAN2",cmsId:"67c809b5f63deab8a71cfefd"},agste21689:{destination:ht,slug:"/hotels-et-villas/jade-mountain",codeIPlanet:"AGAN6",cmsId:"67c809b5f63deab8a71cf92a"},zzzzz25376:{destination:ht,slug:"/hotels-et-villas/windjammer-landing",codeIPlanet:"LCAN4",cmsId:"67c809b5f63deab8a71cf92b"},lcgro30400:{destination:ht,slug:"/hotels-et-villas/cap-maison",codeIPlanet:"LCLC8",cmsId:"67c809b5f63deab8a71cf929"},agste21688:{destination:ht,slug:"/hotels-et-villas/anse-chastanet",codeIPlanet:"AGAN5",cmsId:"67c809b5f63deab8a71cf928"},mqsai18593:{destination:An,slug:"/hotels-et-villas/plein-soleil",codeIPlanet:"MQAN16",cmsId:"67c809b5f63deab8a71cf925"},zzzzz25378:{destination:qe,slug:"/hotels-et-villas/shanti-maurice",codeIPlanet:"MUAN22",cmsId:"67c809b5f63deab8a71cf933"},zzzzz25377:{destination:qe,slug:"/hotels-et-villas/lux-le-morne",codeIPlanet:"MUAN21",cmsId:"67c809b5f63deab8a71cf931"},zzzzz25379:{destination:qe,slug:"/hotels-et-villas/constance-belle-mare-plage",codeIPlanet:"MUAN20",cmsId:"67c809b5f63deab8a71cf92f"},mupos25678:{destination:qe,slug:"/hotels-et-villas/constance-le-prince-maurice",codeIPlanet:"MUAN24",cmsId:"67c809b5f63deab8a71cf930"},zzzzz25380:{destination:qe,slug:"/hotels-et-villas/anahita-the-resort",codeIPlanet:"MUAN19",cmsId:"67c809b5f63deab8a71cf92e"},agstm21687:{destination:mr,slug:"/hotels-et-villas/la-samanna",codeIPlanet:"FRAN2350",cmsId:"67c809b5f63deab8a71cf926"},frsai31536:{destination:mr,slug:"/hotels-et-villas/le-grand-case-beach-club",codeIPlanet:"FRFRA3",cmsId:"67c809b5f63deab8a71cf927"},ageng20433:{destination:pr,slug:"/hotels-et-villas/the-inn-at-english-harbour",codeIPlanet:"AGAN4",cmsId:"67c809b5f63deab8a71cf8ec"},agcro20496:{destination:pr,slug:"/hotels-et-villas/blue-waters",codeIPlanet:"AGAN1",cmsId:"67c809b5f63deab8a71cf8eb"},gpang25884:{destination:Cn,slug:"/hotels-et-villas/aurora-anguilla-resort-golf-club",codeIPlanet:"GPAN30",cmsId:"67c809b5f63deab8a71cf8ea"}},Er={AED:"\u062F.\u0625.",AFN:"Af",ALL:"L",AMD:"\u058F",ANG:"\u0192",AOA:"Kz",ARS:"AR$",AUD:"AU$",AWG:"\u0192",AZN:"\u043C\u0430\u043D",BAM:"KM",BBD:"BBD$",BDT:"\u09F3",BGN:"\u043B\u0432.",BHD:"BD",BIF:"FBu",BMD:"$",BND:"B$",BOB:"Bs.",BRL:"R$",BSD:"$",BTN:"Nu.",BWP:"P",BYN:"Br",BZD:"BZ$",CAD:"CA$",CDF:"FC",CHF:"Fr.",CKD:"$",CLP:"CL$",CNY:"CN\xA5",COP:"CO$",CRC:"\u20A1",CUC:"CUC$",CUP:"$MN",CVE:"CV$",CZK:"K\u010D",DJF:"Fdj",DKK:"kr.",DOP:"RD$",DZD:"DA",EGP:"E\xA3",EHP:"Ptas.",ERN:"Nkf",ETB:"Br",EUR:"\u20AC",FJD:"FJ$",FKP:"FK\xA3",FOK:"kr",GBP:"\xA3",GEL:"\u20BE",GGP:"\xA3",GHS:"GH\u20B5",GIP:"\xA3",GMD:"D",GNF:"FG",GTQ:"Q",GYD:"G$",HKD:"HK$",HNL:"L",HRK:"kn",HTG:"G",HUF:"Ft",IDR:"Rp",ILS:"\u20AA",IMP:"\xA3",INR:"Rs.",IQD:"\u062F.\u0639.",IRR:"\uFDFC",ISK:"kr",JEP:"\xA3",JMD:"J$",JOD:"JD",JPY:"\xA5",KES:"KSh",KGS:"\u0441",KHR:"\u17DB",KID:"$",KMF:"CF",KPW:"\u20A9",KRW:"\u20A9",KWD:"KD",KYD:"CI$",KZT:"\u20B8",LAK:"\u20ADN",LBP:"LL.",LKR:"Rs.",LRD:"L$",LSL:"L",LYD:"LD",MAD:"DH",MDL:"L",MGA:"Ar",MKD:"den",MMK:"Ks",MNT:"\u20AE",MOP:"MOP$",MRU:"UM",MUR:"Rs.",MVR:"MRf",MWK:"MK",MXN:"MX$",MYR:"RM",MZN:"MTn",NAD:"N$",NGN:"\u20A6",NIO:"C$",NOK:"kr",NPR:"Rs.",NZD:"NZ$",OMR:"OR",PAB:"B/.",PEN:"S/.",PGK:"K",PHP:"\u20B1",PKR:"Rs.",PLN:"z\u0142",PND:"$",PRB:"\u0440.",PYG:"\u20B2",QAR:"QR",RON:"L",RSD:"din",RUB:"\u20BD",RWF:"FRw",SAR:"SR",SBD:"SI$",SCR:"Rs.",SDG:"\xA3SD",SEK:"kr",SGD:"S$",SHP:"\xA3",SLL:"Le",SLS:"Sl",SOS:"Sh.So.",SRD:"Sr$",SSP:"SS\xA3",STN:"Db",SVC:"\u20A1",SYP:"LS",SZL:"L",THB:"\u0E3F",TJS:"SM",TMT:"m.",TND:"DT",TOP:"T$",TRY:"TL",TTD:"TT$",TVD:"$",TWD:"NT$",TZS:"TSh",UAH:"\u20B4",UGX:"USh",USD:"$",UYU:"$U",UZS:"\u0441\u0443\u043C",VED:"Bs.",VES:"Bs.F",VND:"\u20AB",VUV:"VT",WST:"T",XAF:"Fr",XCD:"$",XOF:"\u20A3",XPF:"\u20A3",YER:"YR",ZAR:"R",ZMW:"ZK",ZWB:"",ZWL:"Z$",Abkhazia:"",Artsakh:"\u0564\u0580."},Sr={it:"it_IT",es:"es_ES",fr:"fr_FR",en:"en_GB"},kt={"DERNI\xC8RE MINUTE":"735fe5e0858671cf3a5c14cbcc2470fe","R\xC9SERVEZ T\xD4T":"c5abb23caf056891f3902ff42ae2f9e0"};var We="https://deshotelsetdesiles.ccordier.workers.dev/v2/",yr="https://deshotelsetdesiles.i-planet.fr/dhdi-public/searchform.cgi",mt="FR",Lr="1*q1lzz9*_gcl_au*MTMyMzcyMDY5NC4xNzM5Mjg5MzYx*_ga*NTAxMzI1MzMwLjE3MzkyODkzNjE.*_ga_Q0RXHLR7D4*MTczOTI5NzEzNC4zLjAuMTczOTI5NzE3Mi4yMi4wLjA.";var Ft=async()=>new Promise(e=>{geoip2.country(r=>{e(r.country.iso_code)},()=>{e(mt)})});var xt=e=>{let r="?";for(let[t,n]of Object.entries(e))n&&(r+=`${t}=${n}&`);return r};var Ke=class{async getGroupOffersData(r){let t=We+"groupOffers"+xt(r),i=await(await fetch(t)).json();return i.error||!i.data?null:i}async getSingleHotelOffersData(r){let t=We+"offers"+xt(r),i=await(await fetch(t)).json();return i.error||!i.data?null:i}async getCMSOffers(){let r=We+"cmsOffers",n=await(await fetch(r)).json();return n.items?n:null}async getCountries(){let r=We+"cmsCountries",n=await(await fetch(r)).json();return n.items?n:null}};var Dr=()=>{let e=Tr();if(!e){let r=localStorage.getItem("wglang")||"fr";window.Weglot.switchTo(r)}window.Weglot.on("languageChanged",()=>{if(e)window.location.reload();else{let r=window.Weglot.getCurrentLang();localStorage.setItem("wglang",r),window.loadFromServer&&window.loadFromServer()}})},Tr=()=>window.location.hostname!=="deshotelsetdesiles.webflow.io",Gt=()=>{let e=Ye();return Sr[e]},Ye=()=>{if(!Tr())return localStorage.getItem("wglang")||"fr";try{let e=window.Weglot.getCurrentLang();if(e)return e}catch(e){return console.error("Error getting language",e),"fr"}return"fr"},zt=()=>{let e={};return Object.entries(we).forEach(([r,t])=>{e[t.cmsId]=r}),e},j=(e,r)=>`${e.toLowerCase().trim()}-${r.toLowerCase().trim()}`,Ar=(e,r,t)=>{let n=Ye().toUpperCase(),i=we[r].codeIPlanet.toUpperCase(),s=`${yr}?Lang=${n}&currency=${e.toUpperCase()}&HotelCode=${i}`,a=br("_ga"),o=Lr,l=br("_gcl_au");return s+=`&_ga=${a}&_gl=${o}&_gcl_au=${l}`,t&&(s=`${s}&HotelPromo=${t}`),s},br=e=>{let r=document.cookie.match(new RegExp("(^| )"+e+"=([^;]+)"));return r?r[2]:null};var $t=(e,r,t,n)=>{let{quotation:i,rate:{distribution:s}}=r,{pricePerNight:a,currency:o,plainBookLink:l}=i,{accessCode:c}=s||{},u="";c&&c.length>0&&([u]=c),In(e,a,o);let h=e.querySelector(G.hotelReserveLink);h&&h.addEventListener("click",d=>{d.preventDefault(),d.stopPropagation(),window.open(l,"_blank")});let v=e.querySelector(G.hotelVillaReserveLink);if(v&&v.addEventListener("click",d=>{d.preventDefault(),d.stopPropagation(),window.open(Ar(o,t,u),"_blank")}),n){let{fieldData:{"discount-percentage":d}}=n,f=e.querySelector(G.discount);f&&d&&(f.innerHTML=`-${d}%`);let g=e.querySelector(G.discountContainer);g&&!d&&(g.style.display="none")}},In=(e,r,t)=>{let n=e.querySelector(G.price);n&&(n.innerHTML=Math.floor(r).toString());let i=e.querySelector(G.currency);i&&(i.innerHTML=Er[t])};var pt=class{constructor(r,t){this.listInstance=r;this.itemTemplateElement=t;Se(this,"loadingSpinner");Se(this,"cmsFilterEmptyState");Se(this,"offerLookup",{});Se(this,"apiClient",new Ke);Se(this,"countryCode");Se(this,"availableCountries",{});Se(this,"countryCodeFilter",r=>{let{fieldData:t}=r;return!t["supported-countries"]||t["supported-countries"].length===0?!0:t["supported-countries"].map(i=>this.availableCountries[i]).includes(this.countryCode)});this.cmsFilterEmptyState=document.querySelector(G.cmsFilterEmptyState),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.add("hide-empty-state"),r.clearItems(),Dr(),this.loadingSpinner=document.querySelector(G.loadingSpinner),this.countryCode=mt}async getGroupOffers(r){let{clearItems:t=!0,filter:n}=r||{};t&&this.listInstance.clearItems();let i=await this.apiClient.getCMSOffers();if(!i)return;let s=await this.apiClient.getCountries();if(!s)return;s.items.forEach(f=>{this.availableCountries[f.id]=f.fieldData.title?.trim()}),this.countryCode=await Ft();let a=i.items.filter(n).filter(this.countryCodeFilter),o=this.generateHotelIds(a),l=this.generateHotelIds(a).join(","),c=o.length===1;c&&(l=[l,l].join(","));let{offerMetaData:u}=this.generateOfferData(a),h=Gt(),v=await this.apiClient.getGroupOffersData({hids:l,locale:h});if(!v||v.error||!v.data){this.hideSpinnerAndShowFilter();return}c&&(v.data=[v.data[0]]);let d=this.getAllOffers(v,u);this.addHotelToCollection(d),this.hideSpinnerAndShowFilter()}async getGroupCategoryOffers(r,t=!1){let n=i=>{let{isArchived:s,isDraft:a,fieldData:o}=i;return s||a?!1:t?(!o.thematiques||o.thematiques.length===0)&&!o.slug.includes("derniere-minute")&&!o.slug.includes("reservez-tot"):o.category===r};await this.getGroupOffers({filter:n})}async getGroupThemeOffers(r){let t=n=>{let{isArchived:i,isDraft:s,fieldData:a}=n;return i||s||!a.thematiques?!1:a.thematiques.includes(r)};await this.getGroupOffers({filter:t})}async getGroupSlugOffers(r){let t=n=>{let{isArchived:i,isDraft:s,fieldData:a}=n;return i||s?!1:a.slug===r};await this.getGroupOffers({filter:t})}async getGroupOtherOffers(r,t){let n=i=>{let{isArchived:s,isDraft:a,fieldData:o}=i;return s||a||o.slug===r?!1:t?o.category===t:(!o.thematiques||o.thematiques.length===0)&&!o.slug.includes("derniere-minute")&&!o.slug.includes("reservez-tot")};await this.getGroupOffers({filter:n})}hideSpinnerAndShowFilter(){this.loadingSpinner&&(this.loadingSpinner.style.display="none"),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.remove("hide-empty-state")}generateHotelIds(r){let t=[],n=zt();return r.forEach(i=>{let{fieldData:{"hotel-villa":s}}=i;t.push(n[s])}),Array.from(new Set(t))}getAllOffers(r,t){let n=[];return r.data.forEach(i=>{let{prop:{hid:s},rates:a}=i;a.forEach(o=>{let{name:l,title:c}=o.rate;(t.includes(j(s,l))||t.includes(j(s,c)))&&n.push({...i,rates:[o]})})}),n.sort((i,s)=>{let a=this.offerLookup[j(i.prop.hid,i.rates[0].rate.title)]||this.offerLookup[j(i.prop.hid,i.rates[0].rate.name)],o=this.offerLookup[j(s.prop.hid,s.rates[0].rate.title)]||this.offerLookup[j(s.prop.hid,s.rates[0].rate.name)],l=Number(a.fieldData.order)||0,c=Number(o.fieldData.order)||0;return l-c}),n}generateOfferData(r){let t=[];return r.forEach(n=>{let{fieldData:{"hotel-or-property-api-id":i,"offer-api-name":s}}=n,a=j(i,s);t.push(a),this.offerLookup[a]=n}),{offerMetaData:t}}addHotelToCollection(r){for(let{prop:t,rates:n}of r){let i=n.map(s=>this.createItem(t,s,this.itemTemplateElement));this.listInstance.addItems(i)}}createItem(r,t,n){let{rate:i}=t,{hid:s,title:a,property:o}=r,{image:l,title:c,name:u}=i,h=this.offerLookup[j(s||o,c)]||this.offerLookup[j(s||o,u)],v=n.cloneNode(!0),d=we[s||o];if(!d)return v;let{destination:f,slug:g}=d;this.bindOffersMetaData(v,{destination:f,image:l,hotelName:a,title:c,slug:g}),$t(v,t,s,h);let m=v.querySelector(G.moreDetails);return m&&m.addEventListener("click",()=>{let y=this.getOffersCmsSlug(s,o,u);window.location.href=`/offers/${y}`}),v.style.display="flex",v}getOffersCmsSlug(r,t,n){return this.offerLookup[j(r||t,n)]?.fieldData.slug}bindOffersMetaData(r,{destination:t,image:n,hotelName:i,title:s,slug:a,description:o}){let l=r.querySelector(G.destination),c=r.querySelector(G.image),u=r.querySelector(G.hotelName),h=r.querySelector(G.name),v=r.querySelector(G.description),d=r.querySelector(G.hotelLink),f=Ye();l&&(l.textContent=t[f]),c&&(c.src=n?.url),u&&(u.innerHTML=i),h&&(h.innerHTML=s),v&&o&&(v.innerHTML=o),d&&a&&d.addEventListener("click",()=>{window.location.href=a})}};function _n(e,{destination:r,image:t,hotelName:n,title:i,slug:s,description:a}){let o=e.querySelectorAll(G.destination),l=e.querySelectorAll(G.hotelName),c=e.querySelectorAll(G.name),u=e.querySelectorAll(G.description),h=e.querySelectorAll(G.hotelLink),v=Ye();o&&o.forEach(d=>{d.textContent=r[v]}),t?.url&&e.querySelectorAll(G.image).forEach(f=>{f.src=t.url}),l&&l.forEach(d=>{d.innerHTML=n}),c&&c.forEach(d=>{d.innerHTML=i}),u&&a&&u.forEach(d=>{d.innerHTML=a}),h&&s&&h.forEach(d=>{d.addEventListener("click",f=>{f.preventDefault(),window.location.href=s})})}async function Cr(e,r){let t=new Ke,n=await t.getCMSOffers();if(!n)return;let i=await t.getCountries();if(!i)return;let s={};i.items.forEach(A=>{s[A.id]=A.fieldData.title?.trim()});let a=await Ft(),o=A=>{let{fieldData:C}=A;return!C["supported-countries"]||C["supported-countries"].length===0?!0:C["supported-countries"].map(b=>s[b]).includes(a)},l=A=>{let{isArchived:C,isDraft:L,fieldData:b}=A;return C||L?!1:b.slug===e},c=n.items.filter(l).filter(o);if(c.length===0)return;let u=zt(),h=Array.from(new Set(c.map(A=>u[A.fieldData["hotel-villa"]]).filter(A=>A!=null)));if(h.length===0)return;let v=h.join(",");h.length===1&&(v=[v,v].join(","));let d={},f=[];c.forEach(A=>{let{fieldData:{"hotel-or-property-api-id":C,"offer-api-name":L}}=A,b=j(C,L);f.push(b),d[b]=A});let g=Gt(),m=await t.getGroupOffersData({hids:v,locale:g});if(!m?.data||m.error)return;let y=h.length===1?[m.data[0]]:m.data,p=[];y.forEach(A=>{let{prop:{hid:C},rates:L}=A;L.forEach(b=>{let{name:I,title:H}=b.rate;(f.includes(j(C,I))||f.includes(j(C,H)))&&p.push({...A,rates:[b]})})}),p.sort((A,C)=>{let L=d[j(A.prop.hid,A.rates[0].rate.title)]||d[j(A.prop.hid,A.rates[0].rate.name)],b=d[j(C.prop.hid,C.rates[0].rate.title)]||d[j(C.prop.hid,C.rates[0].rate.name)];return(Number(L?.fieldData.order)||0)-(Number(b?.fieldData.order)||0)});let E=p[0];if(!E?.rates?.[0])return;let{prop:N,rates:O}=E,P=N.hid||N.property,S=O[0],M=d[j(P,S.rate.title)]||d[j(P,S.rate.name)];try{let A=we[P];A&&_n(r,{destination:A.destination,image:S.rate.image,hotelName:N.title,title:S.rate.title,slug:A.slug,description:S.rate.html_description}),$t(r,S,P,M)}catch{}}function Ut(e){let r=e.querySelector(G.listItem);return!r&&(e.matches(G.offerSlugOthersList)||e.matches(G.offerSlugOthersList2))&&(r=e.querySelector(G.offerSlugOthersListItem)),r?On({items:[{element:r}],clearItems(n=!0){n&&(e.innerHTML="")},addItems(n){for(let i of n)e.appendChild(i);return Promise.resolve()}}):null}var On=e=>{let[r]=e.items;if(!r)throw new Error("No items found in the list instance");let t=r.element;return new pt(e,t)};function Ir(e,r){for(var t=0;t<r.length;t++){var n=r[t];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function Mn(e,r,t){return r&&Ir(e.prototype,r),t&&Ir(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e}var _r="(prefers-reduced-motion: reduce)",He=1,Rn=2,xe=3,ze=4,at=5,St=6,Dt=7,wn={CREATED:He,MOUNTED:Rn,IDLE:xe,MOVING:ze,SCROLLING:at,DRAGGING:St,DESTROYED:Dt};function me(e){e.length=0}function Te(e,r,t){return Array.prototype.slice.call(e,r,t)}function V(e){return e.bind.apply(e,[null].concat(Te(arguments,1)))}var Ur=setTimeout,Kt=function(){};function Or(e){return requestAnimationFrame(e)}function It(e,r){return typeof r===e}function Ze(e){return!er(e)&&It("object",e)}var Jt=Array.isArray,Vr=V(It,"function"),Le=V(It,"string"),st=V(It,"undefined");function er(e){return e===null}function Br(e){try{return e instanceof(e.ownerDocument.defaultView||window).HTMLElement}catch{return!1}}function ot(e){return Jt(e)?e:[e]}function ae(e,r){ot(e).forEach(r)}function tr(e,r){return e.indexOf(r)>-1}function yt(e,r){return e.push.apply(e,ot(r)),e}function ve(e,r,t){e&&ae(r,function(n){n&&e.classList[t?"add":"remove"](n)})}function ce(e,r){ve(e,Le(r)?r.split(" "):r,!0)}function lt(e,r){ae(r,e.appendChild.bind(e))}function rr(e,r){ae(e,function(t){var n=(r||t).parentNode;n&&n.insertBefore(t,r)})}function Qe(e,r){return Br(e)&&(e.msMatchesSelector||e.matches).call(e,r)}function qr(e,r){var t=e?Te(e.children):[];return r?t.filter(function(n){return Qe(n,r)}):t}function ct(e,r){return r?qr(e,r)[0]:e.firstElementChild}var Je=Object.keys;function _e(e,r,t){return e&&(t?Je(e).reverse():Je(e)).forEach(function(n){n!=="__proto__"&&r(e[n],n)}),e}function et(e){return Te(arguments,1).forEach(function(r){_e(r,function(t,n){e[n]=r[n]})}),e}function ye(e){return Te(arguments,1).forEach(function(r){_e(r,function(t,n){Jt(t)?e[n]=t.slice():Ze(t)?e[n]=ye({},Ze(e[n])?e[n]:{},t):e[n]=t})}),e}function Mr(e,r){ae(r||Je(e),function(t){delete e[t]})}function ue(e,r){ae(e,function(t){ae(r,function(n){t&&t.removeAttribute(n)})})}function F(e,r,t){Ze(r)?_e(r,function(n,i){F(e,i,n)}):ae(e,function(n){er(t)||t===""?ue(n,r):n.setAttribute(r,String(t))})}function ke(e,r,t){var n=document.createElement(e);return r&&(Le(r)?ce(n,r):F(n,r)),t&&lt(t,n),n}function se(e,r,t){if(st(t))return getComputedStyle(e)[r];er(t)||(e.style[r]=""+t)}function tt(e,r){se(e,"display",r)}function Wr(e){e.setActive&&e.setActive()||e.focus({preventScroll:!0})}function oe(e,r){return e.getAttribute(r)}function Rr(e,r){return e&&e.classList.contains(r)}function ne(e){return e.getBoundingClientRect()}function Oe(e){ae(e,function(r){r&&r.parentNode&&r.parentNode.removeChild(r)})}function Kr(e){return ct(new DOMParser().parseFromString(e,"text/html").body)}function de(e,r){e.preventDefault(),r&&(e.stopPropagation(),e.stopImmediatePropagation())}function Yr(e,r){return e&&e.querySelector(r)}function nr(e,r){return r?Te(e.querySelectorAll(r)):[]}function ge(e,r){ve(e,r,!1)}function Yt(e){return e.timeStamp}function Ie(e){return Le(e)?e:e?e+"px":""}var ut="splide",ir="data-"+ut;function je(e,r){if(!e)throw new Error("["+ut+"] "+(r||""))}var be=Math.min,Tt=Math.max,At=Math.floor,rt=Math.ceil,te=Math.abs;function jr(e,r,t){return te(e-r)<t}function Lt(e,r,t,n){var i=be(r,t),s=Tt(r,t);return n?i<e&&e<s:i<=e&&e<=s}function Ne(e,r,t){var n=be(r,t),i=Tt(r,t);return be(Tt(n,e),i)}function jt(e){return+(e>0)-+(e<0)}function Xt(e,r){return ae(r,function(t){e=e.replace("%s",""+t)}),e}function ar(e){return e<10?"0"+e:""+e}var wr={};function Nn(e){return""+e+ar(wr[e]=(wr[e]||0)+1)}function Xr(){var e=[];function r(a,o,l,c){i(a,o,function(u,h,v){var d="addEventListener"in u,f=d?u.removeEventListener.bind(u,h,l,c):u.removeListener.bind(u,l);d?u.addEventListener(h,l,c):u.addListener(l),e.push([u,h,v,l,f])})}function t(a,o,l){i(a,o,function(c,u,h){e=e.filter(function(v){return v[0]===c&&v[1]===u&&v[2]===h&&(!l||v[3]===l)?(v[4](),!1):!0})})}function n(a,o,l){var c,u=!0;return typeof CustomEvent=="function"?c=new CustomEvent(o,{bubbles:u,detail:l}):(c=document.createEvent("CustomEvent"),c.initCustomEvent(o,u,!1,l)),a.dispatchEvent(c),c}function i(a,o,l){ae(a,function(c){c&&ae(o,function(u){u.split(" ").forEach(function(h){var v=h.split(".");l(c,v[0],v[1])})})})}function s(){e.forEach(function(a){a[4]()}),me(e)}return{bind:r,unbind:t,dispatch:n,destroy:s}}var Re="mounted",Nr="ready",De="move",ft="moved",Zr="click",Pn="active",Hn="inactive",kn="visible",Fn="hidden",X="refresh",re="updated",nt="resize",sr="resized",xn="drag",Gn="dragging",zn="dragged",or="scroll",$e="scrolled",$n="overflow",Qr="destroy",Un="arrows:mounted",Vn="arrows:updated",Bn="pagination:mounted",qn="pagination:updated",Jr="navigation:mounted",en="autoplay:play",Wn="autoplay:playing",tn="autoplay:pause",rn="lazyload:loaded",nn="sk",an="sh",Ct="ei";function W(e){var r=e?e.event.bus:document.createDocumentFragment(),t=Xr();function n(s,a){t.bind(r,ot(s).join(" "),function(o){a.apply(a,Jt(o.detail)?o.detail:[])})}function i(s){t.dispatch(r,s,Te(arguments,1))}return e&&e.event.on(Qr,t.destroy),et(t,{bus:r,on:n,off:V(t.unbind,r),emit:i})}function _t(e,r,t,n){var i=Date.now,s,a=0,o,l=!0,c=0;function u(){if(!l){if(a=e?be((i()-s)/e,1):1,t&&t(a),a>=1&&(r(),s=i(),n&&++c>=n))return v();o=Or(u)}}function h(y){y||f(),s=i()-(y?a*e:0),l=!1,o=Or(u)}function v(){l=!0}function d(){s=i(),a=0,t&&t(a)}function f(){o&&cancelAnimationFrame(o),a=0,o=0,l=!0}function g(y){e=y}function m(){return l}return{start:h,rewind:d,pause:v,cancel:f,set:g,isPaused:m}}function Kn(e){var r=e;function t(i){r=i}function n(i){return tr(ot(i),r)}return{set:t,is:n}}function Yn(e,r){var t=_t(r||0,e,null,1);return function(){t.isPaused()&&t.start()}}function jn(e,r,t){var n=e.state,i=t.breakpoints||{},s=t.reducedMotion||{},a=Xr(),o=[];function l(){var f=t.mediaQuery==="min";Je(i).sort(function(g,m){return f?+g-+m:+m-+g}).forEach(function(g){u(i[g],"("+(f?"min":"max")+"-width:"+g+"px)")}),u(s,_r),h()}function c(f){f&&a.destroy()}function u(f,g){var m=matchMedia(g);a.bind(m,"change",h),o.push([f,m])}function h(){var f=n.is(Dt),g=t.direction,m=o.reduce(function(y,p){return ye(y,p[1].matches?p[0]:{})},{});Mr(t),d(m),t.destroy?e.destroy(t.destroy==="completely"):f?(c(!0),e.mount()):g!==t.direction&&e.refresh()}function v(f){matchMedia(_r).matches&&(f?ye(t,s):Mr(t,Je(s)))}function d(f,g,m){ye(t,f),g&&ye(Object.getPrototypeOf(t),f),(m||!n.is(He))&&e.emit(re,t)}return{setup:l,destroy:c,reduce:v,set:d}}var Ot="Arrow",Mt=Ot+"Left",Rt=Ot+"Right",sn=Ot+"Up",on=Ot+"Down";var Pr="rtl",wt="ttb",Vt={width:["height"],left:["top","right"],right:["bottom","left"],x:["y"],X:["Y"],Y:["X"],ArrowLeft:[sn,Rt],ArrowRight:[on,Mt]};function Xn(e,r,t){function n(s,a,o){o=o||t.direction;var l=o===Pr&&!a?1:o===wt?0:-1;return Vt[s]&&Vt[s][l]||s.replace(/width|left|right/i,function(c,u){var h=Vt[c.toLowerCase()][l]||c;return u>0?h.charAt(0).toUpperCase()+h.slice(1):h})}function i(s){return s*(t.direction===Pr?1:-1)}return{resolve:n,orient:i}}var he="role",Fe="tabindex",Zn="disabled",le="aria-",dt=le+"controls",ln=le+"current",Hr=le+"selected",ie=le+"label",lr=le+"labelledby",cn=le+"hidden",cr=le+"orientation",it=le+"roledescription",kr=le+"live",Fr=le+"busy",xr=le+"atomic",ur=[he,Fe,Zn,dt,ln,ie,lr,cn,cr,it],fe=ut+"__",Ae="is-",Bt=ut,Gr=fe+"track",Qn=fe+"list",Nt=fe+"slide",un=Nt+"--clone",Jn=Nt+"__container",fr=fe+"arrows",Pt=fe+"arrow",fn=Pt+"--prev",dn=Pt+"--next",Ht=fe+"pagination",vn=Ht+"__page",ei=fe+"progress",ti=ei+"__bar",dr=fe+"toggle",La=dr+"__play",ba=dr+"__pause",ri=fe+"spinner",ni=fe+"sr",ii=Ae+"initialized",Me=Ae+"active",gn=Ae+"prev",hn=Ae+"next",Zt=Ae+"visible",Qt=Ae+"loading",mn=Ae+"focus-in",pn=Ae+"overflow",ai=[Me,Zt,gn,hn,Qt,mn,pn],si={slide:Nt,clone:un,arrows:fr,arrow:Pt,prev:fn,next:dn,pagination:Ht,page:vn,spinner:ri};function oi(e,r){if(Vr(e.closest))return e.closest(r);for(var t=e;t&&t.nodeType===1&&!Qe(t,r);)t=t.parentElement;return t}var li=5,zr=200,En="touchstart mousedown",qt="touchmove mousemove",Wt="touchend touchcancel mouseup click";function ci(e,r,t){var n=W(e),i=n.on,s=n.bind,a=e.root,o=t.i18n,l={},c=[],u=[],h=[],v,d,f;function g(){E(),N(),p()}function m(){i(X,y),i(X,g),i(re,p),s(document,En+" keydown",function(S){f=S.type==="keydown"},{capture:!0}),s(a,"focusin",function(){ve(a,mn,!!f)})}function y(S){var M=ur.concat("style");me(c),ge(a,u),ge(v,h),ue([v,d],M),ue(a,S?M:["style",it])}function p(){ge(a,u),ge(v,h),u=P(Bt),h=P(Gr),ce(a,u),ce(v,h),F(a,ie,t.label),F(a,lr,t.labelledby)}function E(){v=O("."+Gr),d=ct(v,"."+Qn),je(v&&d,"A track/list element is missing."),yt(c,qr(d,"."+Nt+":not(."+un+")")),_e({arrows:fr,pagination:Ht,prev:fn,next:dn,bar:ti,toggle:dr},function(S,M){l[M]=O("."+S)}),et(l,{root:a,track:v,list:d,slides:c})}function N(){var S=a.id||Nn(ut),M=t.role;a.id=S,v.id=v.id||S+"-track",d.id=d.id||S+"-list",!oe(a,he)&&a.tagName!=="SECTION"&&M&&F(a,he,M),F(a,it,o.carousel),F(d,he,"presentation")}function O(S){var M=Yr(a,S);return M&&oi(M,"."+Bt)===a?M:void 0}function P(S){return[S+"--"+t.type,S+"--"+t.direction,t.drag&&S+"--draggable",t.isNavigation&&S+"--nav",S===Bt&&Me]}return et(l,{setup:g,mount:m,destroy:y})}var Ge="slide",Ue="loop",vt="fade";function ui(e,r,t,n){var i=W(e),s=i.on,a=i.emit,o=i.bind,l=e.Components,c=e.root,u=e.options,h=u.isNavigation,v=u.updateOnMove,d=u.i18n,f=u.pagination,g=u.slideFocus,m=l.Direction.resolve,y=oe(n,"style"),p=oe(n,ie),E=t>-1,N=ct(n,"."+Jn),O;function P(){E||(n.id=c.id+"-slide"+ar(r+1),F(n,he,f?"tabpanel":"group"),F(n,it,d.slide),F(n,ie,p||Xt(d.slideLabel,[r+1,e.length]))),S()}function S(){o(n,"click",V(a,Zr,k)),o(n,"keydown",V(a,nn,k)),s([ft,an,$e],L),s(Jr,A),v&&s(De,C)}function M(){O=!0,i.destroy(),ge(n,ai),ue(n,ur),F(n,"style",y),F(n,ie,p||"")}function A(){var w=e.splides.map(function(T){var R=T.splide.Components.Slides.getAt(r);return R?R.slide.id:""}).join(" ");F(n,ie,Xt(d.slideX,(E?t:r)+1)),F(n,dt,w),F(n,he,g?"button":""),g&&ue(n,it)}function C(){O||L()}function L(){if(!O){var w=e.index;b(),I(),ve(n,gn,r===w-1),ve(n,hn,r===w+1)}}function b(){var w=x();w!==Rr(n,Me)&&(ve(n,Me,w),F(n,ln,h&&w||""),a(w?Pn:Hn,k))}function I(){var w=K(),T=!w&&(!x()||E);if(e.state.is([ze,at])||F(n,cn,T||""),F(nr(n,u.focusableNodes||""),Fe,T?-1:""),g&&F(n,Fe,T?-1:0),w!==Rr(n,Zt)&&(ve(n,Zt,w),a(w?kn:Fn,k)),!w&&document.activeElement===n){var R=l.Slides.getAt(e.index);R&&Wr(R.slide)}}function H(w,T,R){se(R&&N||n,w,T)}function x(){var w=e.index;return w===r||u.cloneStatus&&w===t}function K(){if(e.is(vt))return x();var w=ne(l.Elements.track),T=ne(n),R=m("left",!0),z=m("right",!0);return At(w[R])<=rt(T[R])&&At(T[z])<=rt(w[z])}function q(w,T){var R=te(w-r);return!E&&(u.rewind||e.is(Ue))&&(R=be(R,e.length-R)),R<=T}var k={index:r,slideIndex:t,slide:n,container:N,isClone:E,mount:P,destroy:M,update:L,style:H,isWithin:q};return k}function fi(e,r,t){var n=W(e),i=n.on,s=n.emit,a=n.bind,o=r.Elements,l=o.slides,c=o.list,u=[];function h(){v(),i(X,d),i(X,v)}function v(){l.forEach(function(L,b){g(L,b,-1)})}function d(){O(function(L){L.destroy()}),me(u)}function f(){O(function(L){L.update()})}function g(L,b,I){var H=ui(e,b,I,L);H.mount(),u.push(H),u.sort(function(x,K){return x.index-K.index})}function m(L){return L?P(function(b){return!b.isClone}):u}function y(L){var b=r.Controller,I=b.toIndex(L),H=b.hasFocus()?1:t.perPage;return P(function(x){return Lt(x.index,I,I+H-1)})}function p(L){return P(L)[0]}function E(L,b){ae(L,function(I){if(Le(I)&&(I=Kr(I)),Br(I)){var H=l[b];H?rr(I,H):lt(c,I),ce(I,t.classes.slide),M(I,V(s,nt))}}),s(X)}function N(L){Oe(P(L).map(function(b){return b.slide})),s(X)}function O(L,b){m(b).forEach(L)}function P(L){return u.filter(Vr(L)?L:function(b){return Le(L)?Qe(b.slide,L):tr(ot(L),b.index)})}function S(L,b,I){O(function(H){H.style(L,b,I)})}function M(L,b){var I=nr(L,"img"),H=I.length;H?I.forEach(function(x){a(x,"load error",function(){--H||b()})}):b()}function A(L){return L?l.length:u.length}function C(){return u.length>t.perPage}return{mount:h,destroy:d,update:f,register:g,get:m,getIn:y,getAt:p,add:E,remove:N,forEach:O,filter:P,style:S,getLength:A,isEnough:C}}function di(e,r,t){var n=W(e),i=n.on,s=n.bind,a=n.emit,o=r.Slides,l=r.Direction.resolve,c=r.Elements,u=c.root,h=c.track,v=c.list,d=o.getAt,f=o.style,g,m,y;function p(){E(),s(window,"resize load",Yn(V(a,nt))),i([re,X],E),i(nt,N)}function E(){g=t.direction===wt,se(u,"maxWidth",Ie(t.width)),se(h,l("paddingLeft"),O(!1)),se(h,l("paddingRight"),O(!0)),N(!0)}function N(k){var w=ne(u);(k||m.width!==w.width||m.height!==w.height)&&(se(h,"height",P()),f(l("marginRight"),Ie(t.gap)),f("width",M()),f("height",A(),!0),m=w,a(sr),y!==(y=q())&&(ve(u,pn,y),a($n,y)))}function O(k){var w=t.padding,T=l(k?"right":"left");return w&&Ie(w[T]||(Ze(w)?0:w))||"0px"}function P(){var k="";return g&&(k=S(),je(k,"height or heightRatio is missing."),k="calc("+k+" - "+O(!1)+" - "+O(!0)+")"),k}function S(){return Ie(t.height||ne(v).width*t.heightRatio)}function M(){return t.autoWidth?null:Ie(t.fixedWidth)||(g?"":C())}function A(){return Ie(t.fixedHeight)||(g?t.autoHeight?null:C():S())}function C(){var k=Ie(t.gap);return"calc((100%"+(k&&" + "+k)+")/"+(t.perPage||1)+(k&&" - "+k)+")"}function L(){return ne(v)[l("width")]}function b(k,w){var T=d(k||0);return T?ne(T.slide)[l("width")]+(w?0:x()):0}function I(k,w){var T=d(k);if(T){var R=ne(T.slide)[l("right")],z=ne(v)[l("left")];return te(R-z)+(w?0:x())}return 0}function H(k){return I(e.length-1)-I(0)+b(0,k)}function x(){var k=d(0);return k&&parseFloat(se(k.slide,l("marginRight")))||0}function K(k){return parseFloat(se(h,l("padding"+(k?"Right":"Left"))))||0}function q(){return e.is(vt)||H(!0)>L()}return{mount:p,resize:N,listSize:L,slideSize:b,sliderSize:H,totalSize:I,getPadding:K,isOverflow:q}}var vi=2;function gi(e,r,t){var n=W(e),i=n.on,s=r.Elements,a=r.Slides,o=r.Direction.resolve,l=[],c;function u(){i(X,h),i([re,nt],d),(c=m())&&(f(c),r.Layout.resize(!0))}function h(){v(),u()}function v(){Oe(l),me(l),n.destroy()}function d(){var y=m();c!==y&&(c<y||!y)&&n.emit(X)}function f(y){var p=a.get().slice(),E=p.length;if(E){for(;p.length<y;)yt(p,p);yt(p.slice(-y),p.slice(0,y)).forEach(function(N,O){var P=O<y,S=g(N.slide,O);P?rr(S,p[0].slide):lt(s.list,S),yt(l,S),a.register(S,O-y+(P?0:E),N.index)})}}function g(y,p){var E=y.cloneNode(!0);return ce(E,t.classes.clone),E.id=e.root.id+"-clone"+ar(p+1),E}function m(){var y=t.clones;if(!e.is(Ue))y=0;else if(st(y)){var p=t[o("fixedWidth")]&&r.Layout.slideSize(0),E=p&&rt(ne(s.track)[o("width")]/p);y=E||t[o("autoWidth")]&&e.length||t.perPage*vi}return y}return{mount:u,destroy:v}}function hi(e,r,t){var n=W(e),i=n.on,s=n.emit,a=e.state.set,o=r.Layout,l=o.slideSize,c=o.getPadding,u=o.totalSize,h=o.listSize,v=o.sliderSize,d=r.Direction,f=d.resolve,g=d.orient,m=r.Elements,y=m.list,p=m.track,E;function N(){E=r.Transition,i([Re,sr,re,X],O)}function O(){r.Controller.isBusy()||(r.Scroll.cancel(),S(e.index),r.Slides.update())}function P(T,R,z,Q){T!==R&&k(T>z)&&(L(),M(C(H(),T>z),!0)),a(ze),s(De,R,z,T),E.start(R,function(){a(xe),s(ft,R,z,T),Q&&Q()})}function S(T){M(I(T,!0))}function M(T,R){if(!e.is(vt)){var z=R?T:A(T);se(y,"transform","translate"+f("X")+"("+z+"px)"),T!==z&&s(an)}}function A(T){if(e.is(Ue)){var R=b(T),z=R>r.Controller.getEnd(),Q=R<0;(Q||z)&&(T=C(T,z))}return T}function C(T,R){var z=T-q(R),Q=v();return T-=g(Q*(rt(te(z)/Q)||1))*(R?1:-1),T}function L(){M(H(),!0),E.cancel()}function b(T){for(var R=r.Slides.get(),z=0,Q=1/0,Z=0;Z<R.length;Z++){var Ee=R[Z].index,D=te(I(Ee,!0)-T);if(D<=Q)Q=D,z=Ee;else break}return z}function I(T,R){var z=g(u(T-1)-K(T));return R?x(z):z}function H(){var T=f("left");return ne(y)[T]-ne(p)[T]+g(c(!1))}function x(T){return t.trimSpace&&e.is(Ge)&&(T=Ne(T,0,g(v(!0)-h()))),T}function K(T){var R=t.focus;return R==="center"?(h()-l(T,!0))/2:+R*l(T)||0}function q(T){return I(T?r.Controller.getEnd():0,!!t.trimSpace)}function k(T){var R=g(C(H(),T));return T?R>=0:R<=y[f("scrollWidth")]-ne(p)[f("width")]}function w(T,R){R=st(R)?H():R;var z=T!==!0&&g(R)<g(q(!1)),Q=T!==!1&&g(R)>g(q(!0));return z||Q}return{mount:N,move:P,jump:S,translate:M,shift:C,cancel:L,toIndex:b,toPosition:I,getPosition:H,getLimit:q,exceededLimit:w,reposition:O}}function mi(e,r,t){var n=W(e),i=n.on,s=n.emit,a=r.Move,o=a.getPosition,l=a.getLimit,c=a.toPosition,u=r.Slides,h=u.isEnough,v=u.getLength,d=t.omitEnd,f=e.is(Ue),g=e.is(Ge),m=V(H,!1),y=V(H,!0),p=t.start||0,E,N=p,O,P,S;function M(){A(),i([re,X,Ct],A),i(sr,C)}function A(){O=v(!0),P=t.perMove,S=t.perPage,E=k();var D=Ne(p,0,d?E:O-1);D!==p&&(p=D,a.reposition())}function C(){E!==k()&&s(Ct)}function L(D,U,ee){if(!Ee()){var Y=I(D),J=q(Y);J>-1&&(U||J!==p)&&(z(J),a.move(Y,J,N,ee))}}function b(D,U,ee,Y){r.Scroll.scroll(D,U,ee,function(){var J=q(a.toIndex(o()));z(d?be(J,E):J),Y&&Y()})}function I(D){var U=p;if(Le(D)){var ee=D.match(/([+\-<>])(\d+)?/)||[],Y=ee[1],J=ee[2];Y==="+"||Y==="-"?U=x(p+ +(""+Y+(+J||1)),p):Y===">"?U=J?w(+J):m(!0):Y==="<"&&(U=y(!0))}else U=f?D:Ne(D,0,E);return U}function H(D,U){var ee=P||(Z()?1:S),Y=x(p+ee*(D?-1:1),p,!(P||Z()));return Y===-1&&g&&!jr(o(),l(!D),1)?D?0:E:U?Y:q(Y)}function x(D,U,ee){if(h()||Z()){var Y=K(D);Y!==D&&(U=D,D=Y,ee=!1),D<0||D>E?!P&&(Lt(0,D,U,!0)||Lt(E,U,D,!0))?D=w(T(D)):f?D=ee?D<0?-(O%S||S):O:D:t.rewind?D=D<0?E:0:D=-1:ee&&D!==U&&(D=w(T(U)+(D<U?-1:1)))}else D=-1;return D}function K(D){if(g&&t.trimSpace==="move"&&D!==p)for(var U=o();U===c(D,!0)&&Lt(D,0,e.length-1,!t.rewind);)D<p?--D:++D;return D}function q(D){return f?(D+O)%O||0:D}function k(){for(var D=O-(Z()||f&&P?1:S);d&&D-- >0;)if(c(O-1,!0)!==c(D,!0)){D++;break}return Ne(D,0,O-1)}function w(D){return Ne(Z()?D:S*D,0,E)}function T(D){return Z()?be(D,E):At((D>=E?O-1:D)/S)}function R(D){var U=a.toIndex(D);return g?Ne(U,0,E):U}function z(D){D!==p&&(N=p,p=D)}function Q(D){return D?N:p}function Z(){return!st(t.focus)||t.isNavigation}function Ee(){return e.state.is([ze,at])&&!!t.waitForTransition}return{mount:M,go:L,scroll:b,getNext:m,getPrev:y,getAdjacent:H,getEnd:k,setIndex:z,getIndex:Q,toIndex:w,toPage:T,toDest:R,hasFocus:Z,isBusy:Ee}}var pi="http://www.w3.org/2000/svg",Ei="m15.5 0.932-4.3 4.38 14.5 14.6-14.5 14.5 4.3 4.4 14.6-14.6 4.4-4.3-4.4-4.4-14.6-14.6z",Et=40;function Si(e,r,t){var n=W(e),i=n.on,s=n.bind,a=n.emit,o=t.classes,l=t.i18n,c=r.Elements,u=r.Controller,h=c.arrows,v=c.track,d=h,f=c.prev,g=c.next,m,y,p={};function E(){O(),i(re,N)}function N(){P(),E()}function O(){var b=t.arrows;b&&!(f&&g)&&A(),f&&g&&(et(p,{prev:f,next:g}),tt(d,b?"":"none"),ce(d,y=fr+"--"+t.direction),b&&(S(),L(),F([f,g],dt,v.id),a(Un,f,g)))}function P(){n.destroy(),ge(d,y),m?(Oe(h?[f,g]:d),f=g=null):ue([f,g],ur)}function S(){i([Re,ft,X,$e,Ct],L),s(g,"click",V(M,">")),s(f,"click",V(M,"<"))}function M(b){u.go(b,!0)}function A(){d=h||ke("div",o.arrows),f=C(!0),g=C(!1),m=!0,lt(d,[f,g]),!h&&rr(d,v)}function C(b){var I='<button class="'+o.arrow+" "+(b?o.prev:o.next)+'" type="button"><svg xmlns="'+pi+'" viewBox="0 0 '+Et+" "+Et+'" width="'+Et+'" height="'+Et+'" focusable="false"><path d="'+(t.arrowPath||Ei)+'" />';return Kr(I)}function L(){if(f&&g){var b=e.index,I=u.getPrev(),H=u.getNext(),x=I>-1&&b<I?l.last:l.prev,K=H>-1&&b>H?l.first:l.next;f.disabled=I<0,g.disabled=H<0,F(f,ie,x),F(g,ie,K),a(Vn,f,g,I,H)}}return{arrows:p,mount:E,destroy:P,update:L}}var yi=ir+"-interval";function Li(e,r,t){var n=W(e),i=n.on,s=n.bind,a=n.emit,o=_t(t.interval,e.go.bind(e,">"),S),l=o.isPaused,c=r.Elements,u=r.Elements,h=u.root,v=u.toggle,d=t.autoplay,f,g,m=d==="pause";function y(){d&&(p(),v&&F(v,dt,c.track.id),m||E(),P())}function p(){t.pauseOnHover&&s(h,"mouseenter mouseleave",function(A){f=A.type==="mouseenter",O()}),t.pauseOnFocus&&s(h,"focusin focusout",function(A){g=A.type==="focusin",O()}),v&&s(v,"click",function(){m?E():N(!0)}),i([De,or,X],o.rewind),i(De,M)}function E(){l()&&r.Slides.isEnough()&&(o.start(!t.resetProgress),g=f=m=!1,P(),a(en))}function N(A){A===void 0&&(A=!0),m=!!A,P(),l()||(o.pause(),a(tn))}function O(){m||(f||g?N(!1):E())}function P(){v&&(ve(v,Me,!m),F(v,ie,t.i18n[m?"play":"pause"]))}function S(A){var C=c.bar;C&&se(C,"width",A*100+"%"),a(Wn,A)}function M(A){var C=r.Slides.getAt(A);o.set(C&&+oe(C.slide,yi)||t.interval)}return{mount:y,destroy:o.cancel,play:E,pause:N,isPaused:l}}function bi(e,r,t){var n=W(e),i=n.on;function s(){t.cover&&(i(rn,V(o,!0)),i([Re,re,X],V(a,!0)))}function a(l){r.Slides.forEach(function(c){var u=ct(c.container||c.slide,"img");u&&u.src&&o(l,u,c)})}function o(l,c,u){u.style("background",l?'center/cover no-repeat url("'+c.src+'")':"",!0),tt(c,l?"none":"")}return{mount:s,destroy:V(a,!1)}}var Di=10,Ti=600,Ai=.6,Ci=1.5,Ii=800;function _i(e,r,t){var n=W(e),i=n.on,s=n.emit,a=e.state.set,o=r.Move,l=o.getPosition,c=o.getLimit,u=o.exceededLimit,h=o.translate,v=e.is(Ge),d,f,g=1;function m(){i(De,N),i([re,X],O)}function y(S,M,A,C,L){var b=l();if(N(),A&&(!v||!u())){var I=r.Layout.sliderSize(),H=jt(S)*I*At(te(S)/I)||0;S=o.toPosition(r.Controller.toDest(S%I))+H}var x=jr(b,S,1);g=1,M=x?0:M||Tt(te(S-b)/Ci,Ii),f=C,d=_t(M,p,V(E,b,S,L),1),a(at),s(or),d.start()}function p(){a(xe),f&&f(),s($e)}function E(S,M,A,C){var L=l(),b=S+(M-S)*P(C),I=(b-L)*g;h(L+I),v&&!A&&u()&&(g*=Ai,te(I)<Di&&y(c(u(!0)),Ti,!1,f,!0))}function N(){d&&d.cancel()}function O(){d&&!d.isPaused()&&(N(),p())}function P(S){var M=t.easingFunc;return M?M(S):1-Math.pow(1-S,4)}return{mount:m,destroy:N,scroll:y,cancel:O}}var Pe={passive:!1,capture:!0};function Oi(e,r,t){var n=W(e),i=n.on,s=n.emit,a=n.bind,o=n.unbind,l=e.state,c=r.Move,u=r.Scroll,h=r.Controller,v=r.Elements.track,d=r.Media.reduce,f=r.Direction,g=f.resolve,m=f.orient,y=c.getPosition,p=c.exceededLimit,E,N,O,P,S,M=!1,A,C,L;function b(){a(v,qt,Kt,Pe),a(v,Wt,Kt,Pe),a(v,En,H,Pe),a(v,"click",q,{capture:!0}),a(v,"dragstart",de),i([Re,re],I)}function I(){var _=t.drag;gr(!_),P=_==="free"}function H(_){if(A=!1,!C){var B=J(_);Y(_.target)&&(B||!_.button)&&(h.isBusy()?de(_,!0):(L=B?v:window,S=l.is([ze,at]),O=null,a(L,qt,x,Pe),a(L,Wt,K,Pe),c.cancel(),u.cancel(),k(_)))}}function x(_){if(l.is(St)||(l.set(St),s(xn)),_.cancelable)if(S){c.translate(E+ee(Z(_)));var B=Ee(_)>zr,Ce=M!==(M=p());(B||Ce)&&k(_),A=!0,s(Gn),de(_)}else R(_)&&(S=T(_),de(_))}function K(_){l.is(St)&&(l.set(xe),s(zn)),S&&(w(_),de(_)),o(L,qt,x),o(L,Wt,K),S=!1}function q(_){!C&&A&&de(_,!0)}function k(_){O=N,N=_,E=y()}function w(_){var B=z(_),Ce=Q(B),Ve=t.rewind&&t.rewindByDrag;d(!1),P?h.scroll(Ce,0,t.snap):e.is(vt)?h.go(m(jt(B))<0?Ve?"<":"-":Ve?">":"+"):e.is(Ge)&&M&&Ve?h.go(p(!0)?">":"<"):h.go(h.toDest(Ce),!0),d(!0)}function T(_){var B=t.dragMinThreshold,Ce=Ze(B),Ve=Ce&&B.mouse||0,bn=(Ce?B.touch:+B)||10;return te(Z(_))>(J(_)?bn:Ve)}function R(_){return te(Z(_))>te(Z(_,!0))}function z(_){if(e.is(Ue)||!M){var B=Ee(_);if(B&&B<zr)return Z(_)/B}return 0}function Q(_){return y()+jt(_)*be(te(_)*(t.flickPower||600),P?1/0:r.Layout.listSize()*(t.flickMaxPages||1))}function Z(_,B){return U(_,B)-U(D(_),B)}function Ee(_){return Yt(_)-Yt(D(_))}function D(_){return N===_&&O||N}function U(_,B){return(J(_)?_.changedTouches[0]:_)["page"+g(B?"Y":"X")]}function ee(_){return _/(M&&e.is(Ge)?li:1)}function Y(_){var B=t.noDrag;return!Qe(_,"."+vn+", ."+Pt)&&(!B||!Qe(_,B))}function J(_){return typeof TouchEvent<"u"&&_ instanceof TouchEvent}function Ln(){return S}function gr(_){C=_}return{mount:b,disable:gr,isDragging:Ln}}var Mi={Spacebar:" ",Right:Rt,Left:Mt,Up:sn,Down:on};function vr(e){return e=Le(e)?e:e.key,Mi[e]||e}var $r="keydown";function Ri(e,r,t){var n=W(e),i=n.on,s=n.bind,a=n.unbind,o=e.root,l=r.Direction.resolve,c,u;function h(){v(),i(re,d),i(re,v),i(De,g)}function v(){var y=t.keyboard;y&&(c=y==="global"?window:o,s(c,$r,m))}function d(){a(c,$r)}function f(y){u=y}function g(){var y=u;u=!0,Ur(function(){u=y})}function m(y){if(!u){var p=vr(y);p===l(Mt)?e.go("<"):p===l(Rt)&&e.go(">")}}return{mount:h,destroy:d,disable:f}}var Xe=ir+"-lazy",bt=Xe+"-srcset",wi="["+Xe+"], ["+bt+"]";function Ni(e,r,t){var n=W(e),i=n.on,s=n.off,a=n.bind,o=n.emit,l=t.lazyLoad==="sequential",c=[ft,$e],u=[];function h(){t.lazyLoad&&(v(),i(X,v))}function v(){me(u),d(),l?y():(s(c),i(c,f),f())}function d(){r.Slides.forEach(function(p){nr(p.slide,wi).forEach(function(E){var N=oe(E,Xe),O=oe(E,bt);if(N!==E.src||O!==E.srcset){var P=t.classes.spinner,S=E.parentElement,M=ct(S,"."+P)||ke("span",P,S);u.push([E,p,M]),E.src||tt(E,"none")}})})}function f(){u=u.filter(function(p){var E=t.perPage*((t.preloadPages||1)+1)-1;return p[1].isWithin(e.index,E)?g(p):!0}),u.length||s(c)}function g(p){var E=p[0];ce(p[1].slide,Qt),a(E,"load error",V(m,p)),F(E,"src",oe(E,Xe)),F(E,"srcset",oe(E,bt)),ue(E,Xe),ue(E,bt)}function m(p,E){var N=p[0],O=p[1];ge(O.slide,Qt),E.type!=="error"&&(Oe(p[2]),tt(N,""),o(rn,N,O),o(nt)),l&&y()}function y(){u.length&&g(u.shift())}return{mount:h,destroy:V(me,u),check:f}}function Pi(e,r,t){var n=W(e),i=n.on,s=n.emit,a=n.bind,o=r.Slides,l=r.Elements,c=r.Controller,u=c.hasFocus,h=c.getIndex,v=c.go,d=r.Direction.resolve,f=l.pagination,g=[],m,y;function p(){E(),i([re,X,Ct],p);var C=t.pagination;f&&tt(f,C?"":"none"),C&&(i([De,or,$e],A),N(),A(),s(Bn,{list:m,items:g},M(e.index)))}function E(){m&&(Oe(f?Te(m.children):m),ge(m,y),me(g),m=null),n.destroy()}function N(){var C=e.length,L=t.classes,b=t.i18n,I=t.perPage,H=u()?c.getEnd()+1:rt(C/I);m=f||ke("ul",L.pagination,l.track.parentElement),ce(m,y=Ht+"--"+S()),F(m,he,"tablist"),F(m,ie,b.select),F(m,cr,S()===wt?"vertical":"");for(var x=0;x<H;x++){var K=ke("li",null,m),q=ke("button",{class:L.page,type:"button"},K),k=o.getIn(x).map(function(T){return T.slide.id}),w=!u()&&I>1?b.pageX:b.slideX;a(q,"click",V(O,x)),t.paginationKeyboard&&a(q,"keydown",V(P,x)),F(K,he,"presentation"),F(q,he,"tab"),F(q,dt,k.join(" ")),F(q,ie,Xt(w,x+1)),F(q,Fe,-1),g.push({li:K,button:q,page:x})}}function O(C){v(">"+C,!0)}function P(C,L){var b=g.length,I=vr(L),H=S(),x=-1;I===d(Rt,!1,H)?x=++C%b:I===d(Mt,!1,H)?x=(--C+b)%b:I==="Home"?x=0:I==="End"&&(x=b-1);var K=g[x];K&&(Wr(K.button),v(">"+x),de(L,!0))}function S(){return t.paginationDirection||t.direction}function M(C){return g[c.toPage(C)]}function A(){var C=M(h(!0)),L=M(h());if(C){var b=C.button;ge(b,Me),ue(b,Hr),F(b,Fe,-1)}if(L){var I=L.button;ce(I,Me),F(I,Hr,!0),F(I,Fe,"")}s(qn,{list:m,items:g},C,L)}return{items:g,mount:p,destroy:E,getAt:M,update:A}}var Hi=[" ","Enter"];function ki(e,r,t){var n=t.isNavigation,i=t.slideFocus,s=[];function a(){e.splides.forEach(function(f){f.isParent||(c(e,f.splide),c(f.splide,e))}),n&&u()}function o(){s.forEach(function(f){f.destroy()}),me(s)}function l(){o(),a()}function c(f,g){var m=W(f);m.on(De,function(y,p,E){g.go(g.is(Ue)?E:y)}),s.push(m)}function u(){var f=W(e),g=f.on;g(Zr,v),g(nn,d),g([Re,re],h),s.push(f),f.emit(Jr,e.splides)}function h(){F(r.Elements.list,cr,t.direction===wt?"vertical":"")}function v(f){e.go(f.index)}function d(f,g){tr(Hi,vr(g))&&(v(f),de(g))}return{setup:V(r.Media.set,{slideFocus:st(i)?n:i},!0),mount:a,destroy:o,remount:l}}function Fi(e,r,t){var n=W(e),i=n.bind,s=0;function a(){t.wheel&&i(r.Elements.track,"wheel",o,Pe)}function o(c){if(c.cancelable){var u=c.deltaY,h=u<0,v=Yt(c),d=t.wheelMinThreshold||0,f=t.wheelSleep||0;te(u)>d&&v-s>f&&(e.go(h?"<":">"),s=v),l(h)&&de(c)}}function l(c){return!t.releaseWheel||e.state.is(ze)||r.Controller.getAdjacent(c)!==-1}return{mount:a}}var xi=90;function Gi(e,r,t){var n=W(e),i=n.on,s=r.Elements.track,a=t.live&&!t.isNavigation,o=ke("span",ni),l=_t(xi,V(u,!1));function c(){a&&(v(!r.Autoplay.isPaused()),F(s,xr,!0),o.textContent="\u2026",i(en,V(v,!0)),i(tn,V(v,!1)),i([ft,$e],V(u,!0)))}function u(d){F(s,Fr,d),d?(lt(s,o),l.start()):(Oe(o),l.cancel())}function h(){ue(s,[kr,xr,Fr]),Oe(o)}function v(d){a&&F(s,kr,d?"off":"polite")}return{mount:c,disable:v,destroy:h}}var zi=Object.freeze({__proto__:null,Media:jn,Direction:Xn,Elements:ci,Slides:fi,Layout:di,Clones:gi,Move:hi,Controller:mi,Arrows:Si,Autoplay:Li,Cover:bi,Scroll:_i,Drag:Oi,Keyboard:Ri,LazyLoad:Ni,Pagination:Pi,Sync:ki,Wheel:Fi,Live:Gi}),$i={prev:"Previous slide",next:"Next slide",first:"Go to first slide",last:"Go to last slide",slideX:"Go to slide %s",pageX:"Go to page %s",play:"Start autoplay",pause:"Pause autoplay",carousel:"carousel",slide:"slide",select:"Select a slide to show",slideLabel:"%s of %s"},Ui={type:"slide",role:"region",speed:400,perPage:1,cloneStatus:!0,arrows:!0,pagination:!0,paginationKeyboard:!0,interval:5e3,pauseOnHover:!0,pauseOnFocus:!0,resetProgress:!0,easing:"cubic-bezier(0.25, 1, 0.5, 1)",drag:!0,direction:"ltr",trimSpace:!0,focusableNodes:"a, button, textarea, input, select, iframe",live:!0,classes:si,i18n:$i,reducedMotion:{speed:0,rewindSpeed:0,autoplay:"pause"}};function Vi(e,r,t){var n=r.Slides;function i(){W(e).on([Re,X],s)}function s(){n.forEach(function(o){o.style("transform","translateX(-"+100*o.index+"%)")})}function a(o,l){n.style("transition","opacity "+t.speed+"ms "+t.easing),Ur(l)}return{mount:i,start:a,cancel:Kt}}function Bi(e,r,t){var n=r.Move,i=r.Controller,s=r.Scroll,a=r.Elements.list,o=V(se,a,"transition"),l;function c(){W(e).bind(a,"transitionend",function(d){d.target===a&&l&&(h(),l())})}function u(d,f){var g=n.toPosition(d,!0),m=n.getPosition(),y=v(d);te(g-m)>=1&&y>=1?t.useScroll?s.scroll(g,y,!1,f):(o("transform "+y+"ms "+t.easing),n.translate(g,!0),l=f):(n.jump(d),f())}function h(){o(""),s.cancel()}function v(d){var f=t.rewindSpeed;if(e.is(Ge)&&f){var g=i.getIndex(!0),m=i.getEnd();if(g===0&&d>=m||g>=m&&d===0)return f}return t.speed}return{mount:c,start:u,cancel:h}}var qi=function(){function e(t,n){this.event=W(),this.Components={},this.state=Kn(He),this.splides=[],this._o={},this._E={};var i=Le(t)?Yr(document,t):t;je(i,i+" is invalid."),this.root=i,n=ye({label:oe(i,ie)||"",labelledby:oe(i,lr)||""},Ui,e.defaults,n||{});try{ye(n,JSON.parse(oe(i,ir)))}catch{je(!1,"Invalid JSON")}this._o=Object.create(ye({},n))}var r=e.prototype;return r.mount=function(n,i){var s=this,a=this.state,o=this.Components;je(a.is([He,Dt]),"Already mounted!"),a.set(He),this._C=o,this._T=i||this._T||(this.is(vt)?Vi:Bi),this._E=n||this._E;var l=et({},zi,this._E,{Transition:this._T});return _e(l,function(c,u){var h=c(s,o,s._o);o[u]=h,h.setup&&h.setup()}),_e(o,function(c){c.mount&&c.mount()}),this.emit(Re),ce(this.root,ii),a.set(xe),this.emit(Nr),this},r.sync=function(n){return this.splides.push({splide:n}),n.splides.push({splide:this,isParent:!0}),this.state.is(xe)&&(this._C.Sync.remount(),n.Components.Sync.remount()),this},r.go=function(n){return this._C.Controller.go(n),this},r.on=function(n,i){return this.event.on(n,i),this},r.off=function(n){return this.event.off(n),this},r.emit=function(n){var i;return(i=this.event).emit.apply(i,[n].concat(Te(arguments,1))),this},r.add=function(n,i){return this._C.Slides.add(n,i),this},r.remove=function(n){return this._C.Slides.remove(n),this},r.is=function(n){return this._o.type===n},r.refresh=function(){return this.emit(X),this},r.destroy=function(n){n===void 0&&(n=!0);var i=this.event,s=this.state;return s.is(He)?W(this).on(Nr,this.destroy.bind(this,n)):(_e(this._C,function(a){a.destroy&&a.destroy(n)},!0),i.emit(Qr),i.destroy(),n&&me(this.splides),s.set(Dt)),this},Mn(e,[{key:"options",get:function(){return this._o},set:function(n){this._C.Media.set(n,!0,!0)}},{key:"length",get:function(){return this._C.Slides.getLength(!0)}},{key:"index",get:function(){return this._C.Controller.getIndex()}}]),e}(),gt=qi;gt.defaults={};gt.STATES=wn;var Sn='[custom="images-slider"]',Wi='[custom="offers-slider"]';function Ki(){Array.isArray(window.offersSplides)&&(window.offersSplides.forEach(r=>{try{r.destroy()}catch{}}),window.offersSplides=[]);let e=document.querySelector(Sn);if(e&&e.splide)try{e.splide.destroy()}catch{}}function Yi(){let e=document.querySelector(Sn);e&&new gt(e,{type:"loop",pagination:!0,speed:600,easing:"ease",gap:"0rem",perPage:1,arrows:!1,destroy:!0,breakpoints:{766:{destroy:!1}}}).mount()}function ji(){let e=document.querySelectorAll(Wi);window.offersSplides=[],e.forEach(r=>{let t=new gt(r,{autoWidth:!0,type:"loop",gap:"1.25rem",speed:600,easing:"ease",pagination:!1,breakpoints:{766:{gap:"0.625rem"}}}),n=r.querySelector(".splide__progress-bar");t.on("mounted move",()=>{let i=t.Components.Controller.getEnd()+1,s=i>0?Math.min((t.index+1)/i,1):0;n&&(n.style.width=`${100*s}%`)}),t.on("mounted",()=>{let i=t.root.querySelector(".splide__progress"),{length:s}=t;i&&s>0&&i.addEventListener("click",a=>{a.preventDefault(),a.stopPropagation();let{width:o,left:l}=i.getBoundingClientRect();if(o<=0)return;let c=a.clientX-l,u=Math.min(s-1,Math.max(0,Math.floor(c/o*s)));t.go(u)})}),t.mount(),window.offersSplides||(window.offersSplides=[]),window.offersSplides.push(t)})}function yn(){try{Ki(),Yi(),ji()}catch{}}window.fsAttributes=window.fsAttributes||[];function Xi(){let r=window.location.pathname.replace(/\/$/,"").match(/^\/offers\/?(.*)$/);return(r?r[1]?.trim():null)||null}function pe(e,r){e&&(e.style.display=r?"":"none")}async function Zi(){let e=Xi();if(!e)return;let r=document.querySelector(G.loadingSpinner),t=document.querySelector(G.offerSlugDetail),n=document.querySelector(G.offersMoreWrapper);pe(r,!0),pe(t,!1),pe(n,!1);try{let i=document.querySelector(G.offerSlugDetail);i&&await Cr(e,i),pe(t,!0);let s=document.querySelector(G.offerSlugOthersList),a=document.querySelector(G.offerSlugOthersList2),o=[];if(s){let l=Ut(s);l&&o.push(l.getGroupOtherOffers(e,kt["R\xC9SERVEZ T\xD4T"]))}if(a){let l=Ut(a);l&&o.push(l.getGroupOtherOffers(e,kt["DERNI\xC8RE MINUTE"]))}o.length>0&&await Promise.all(o),pe(n,!0),requestAnimationFrame(()=>{yn()})}catch{pe(t,!0),pe(n,!0)}finally{pe(r,!1)}}window.loadFromServer=()=>{let e=()=>{Zi()};document.readyState==="complete"?setTimeout(e,0):window.addEventListener("load",()=>setTimeout(e,0))};window.addEventListener("load",()=>{window.loadFromServer()});})();
1
+ "use strict";(()=>{var In=Object.defineProperty;var Cn=(e,t,r)=>t in e?In(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var Se=(e,t,r)=>(Cn(e,typeof t!="symbol"?t+"":t,r),r);var $="data",H={startingPriceList:`[${$}=starting-price-list]`,price:`[${$}=price]`,discount:`[${$}=discount]`,discountContainer:`[${$}=discount-container]`,currency:`[${$}=currency]`,beHid:`[${$}-be-hid]`,destination:`[${$}=destination]`,offersList:`[${$}=offers-list]`,offerSlugDetail:`[${$}=offer-slug-detail], [data-offer-slug-detail]`,offerSlugOthersList:`[${$}=offer-slug-others-list], [data-offer-slug-others-list]`,offerSlugOthersList2:`[${$}=offer-slug-others-list2], [data-offer-slug-others-list2]`,offerSlugOthersList3:`[${$}=offer-slug-others-list3], [data-offer-slug-others-list3]`,offerSlugOthersListItem:".offer-others_item",offersMoreWrapper:`[${$}=offers-more-wrapper]`,offerOthersTabsMenu:".offer-others_tabs-menu",offerOthersTabLink:".offer-others_tab-link",offerOthersTabPane:".offer-others_tab-pane",offersListContainer:`[${$}=offers-list-container]`,listItem:`[${$}=list-item]`,image:`[${$}=image]`,name:`[${$}=name]`,description:`[${$}=description]`,hotelName:`[${$}=hotel-name]`,hotelLink:`[${$}=hotel-link]`,hotelStartingPriceContainer:`[${$}=hotel-starting-price-container]`,moreDetails:`[${$}=more-details]`,offersPopup:`[${$}=offers-popup]`,offersPopupClose:`[${$}=close-btn]`,hotelReserveLink:`[${$}=hotel-reserve-link]`,hotelVillaReserveLink:`[${$}=hotel-villa-reserve-link]`,hotelURLS:`[${$}=hotel-urls]`,languageDropdown:`[${$}=language-dropdown]`,selectedLanguage:`[${$}=selected-language]`,loadingSpinner:`[${$}=loading-spinner]`,cmsFilterEmptyState:"[fs-cmsfilter-element=empty]",startingfromItem:e=>`[${$}-be-hid=${e}]`,popupOverlay:"[fs-smartlightbox-element=trigger-close]"};var qe={en:"Guadeloupe Islands",fr:"Les \xCEles de Guadeloupe",es:"Las islas de Guadalupe",it:"Le isole della Guadalupa"},Er={en:"La Dominique",fr:"La Dominique",es:"Dominica",it:"Dominica"},pt={en:"Saint Lucia",fr:"Sainte-Lucie",es:"Santa Luc\xEDa",it:"Santa Lucia"},On={en:"Martinique",fr:"Martinique",es:"Martinica",it:"Martinica"},We={en:"Mauritius",fr:"\xCEle Maurice",es:"Mauricio",it:"Mauritius"},Sr={en:"Saint Martin",fr:"Saint-Martin",es:"Saint-Martin",it:"Saint Martin"},br={en:"Antigua",fr:"Antigua",es:"Antigua",it:"Antigua"},_n={en:"Anguilla",fr:"Anguilla",es:"Anguila",it:"Anguilla"},Ne={gpgos12767:{destination:qe,slug:"/hotels-et-villas/creole-beach-hotel-spa",codeIPlanet:"FRAN414",cmsId:"67c809b5f63deab8a71cf8e9"},gptro12772:{destination:qe,slug:"/hotels-et-villas/le-jardin-malanga",codeIPlanet:"FRAN416",cmsId:"67c809b5f63deab8a71cf90d"},gpsai12770:{destination:qe,slug:"/hotels-et-villas/la-toubana-hotel-spa",codeIPlanet:"FRAN411",cmsId:"67c809b5f63deab8a71cf8ef"},gpgos12769:{destination:qe,slug:"/hotels-et-villas/mahogany-hotel-residence-spa",codeIPlanet:"FRAN423",cmsId:"67c809b5f63deab8a71cf91f"},gpgua27143:{destination:qe,slug:"/hotels-et-villas/langley-resort-fort-royal",codeIPlanet:"GPAN32",cmsId:"67c809b5f63deab8a71cf8f0"},mqros18592:{destination:Er,slug:"/hotels-et-villas/jungle-bay-dominica",codeIPlanet:"DMAN1",cmsId:"67c809b5f63deab8a71cf8ed"},dmtib00001:{destination:Er,slug:"/hotels-et-villas/secret-bay-dominique",codeIPlanet:"DMAN2",cmsId:"67c809b5f63deab8a71cfefd"},agste21689:{destination:pt,slug:"/hotels-et-villas/jade-mountain",codeIPlanet:"AGAN6",cmsId:"67c809b5f63deab8a71cf92a"},zzzzz25376:{destination:pt,slug:"/hotels-et-villas/windjammer-landing",codeIPlanet:"LCAN4",cmsId:"67c809b5f63deab8a71cf92b"},lcgro30400:{destination:pt,slug:"/hotels-et-villas/cap-maison",codeIPlanet:"LCLC8",cmsId:"67c809b5f63deab8a71cf929"},agste21688:{destination:pt,slug:"/hotels-et-villas/anse-chastanet",codeIPlanet:"AGAN5",cmsId:"67c809b5f63deab8a71cf928"},mqsai18593:{destination:On,slug:"/hotels-et-villas/plein-soleil",codeIPlanet:"MQAN16",cmsId:"67c809b5f63deab8a71cf925"},zzzzz25378:{destination:We,slug:"/hotels-et-villas/shanti-maurice",codeIPlanet:"MUAN22",cmsId:"67c809b5f63deab8a71cf933"},zzzzz25377:{destination:We,slug:"/hotels-et-villas/lux-le-morne",codeIPlanet:"MUAN21",cmsId:"67c809b5f63deab8a71cf931"},zzzzz25379:{destination:We,slug:"/hotels-et-villas/constance-belle-mare-plage",codeIPlanet:"MUAN20",cmsId:"67c809b5f63deab8a71cf92f"},mupos25678:{destination:We,slug:"/hotels-et-villas/constance-le-prince-maurice",codeIPlanet:"MUAN24",cmsId:"67c809b5f63deab8a71cf930"},zzzzz25380:{destination:We,slug:"/hotels-et-villas/anahita-the-resort",codeIPlanet:"MUAN19",cmsId:"67c809b5f63deab8a71cf92e"},agstm21687:{destination:Sr,slug:"/hotels-et-villas/la-samanna",codeIPlanet:"FRAN2350",cmsId:"67c809b5f63deab8a71cf926"},frsai31536:{destination:Sr,slug:"/hotels-et-villas/le-grand-case-beach-club",codeIPlanet:"FRFRA3",cmsId:"67c809b5f63deab8a71cf927"},ageng20433:{destination:br,slug:"/hotels-et-villas/the-inn-at-english-harbour",codeIPlanet:"AGAN4",cmsId:"67c809b5f63deab8a71cf8ec"},agcro20496:{destination:br,slug:"/hotels-et-villas/blue-waters",codeIPlanet:"AGAN1",cmsId:"67c809b5f63deab8a71cf8eb"},gpang25884:{destination:_n,slug:"/hotels-et-villas/aurora-anguilla-resort-golf-club",codeIPlanet:"GPAN30",cmsId:"67c809b5f63deab8a71cf8ea"}},Lr={AED:"\u062F.\u0625.",AFN:"Af",ALL:"L",AMD:"\u058F",ANG:"\u0192",AOA:"Kz",ARS:"AR$",AUD:"AU$",AWG:"\u0192",AZN:"\u043C\u0430\u043D",BAM:"KM",BBD:"BBD$",BDT:"\u09F3",BGN:"\u043B\u0432.",BHD:"BD",BIF:"FBu",BMD:"$",BND:"B$",BOB:"Bs.",BRL:"R$",BSD:"$",BTN:"Nu.",BWP:"P",BYN:"Br",BZD:"BZ$",CAD:"CA$",CDF:"FC",CHF:"Fr.",CKD:"$",CLP:"CL$",CNY:"CN\xA5",COP:"CO$",CRC:"\u20A1",CUC:"CUC$",CUP:"$MN",CVE:"CV$",CZK:"K\u010D",DJF:"Fdj",DKK:"kr.",DOP:"RD$",DZD:"DA",EGP:"E\xA3",EHP:"Ptas.",ERN:"Nkf",ETB:"Br",EUR:"\u20AC",FJD:"FJ$",FKP:"FK\xA3",FOK:"kr",GBP:"\xA3",GEL:"\u20BE",GGP:"\xA3",GHS:"GH\u20B5",GIP:"\xA3",GMD:"D",GNF:"FG",GTQ:"Q",GYD:"G$",HKD:"HK$",HNL:"L",HRK:"kn",HTG:"G",HUF:"Ft",IDR:"Rp",ILS:"\u20AA",IMP:"\xA3",INR:"Rs.",IQD:"\u062F.\u0639.",IRR:"\uFDFC",ISK:"kr",JEP:"\xA3",JMD:"J$",JOD:"JD",JPY:"\xA5",KES:"KSh",KGS:"\u0441",KHR:"\u17DB",KID:"$",KMF:"CF",KPW:"\u20A9",KRW:"\u20A9",KWD:"KD",KYD:"CI$",KZT:"\u20B8",LAK:"\u20ADN",LBP:"LL.",LKR:"Rs.",LRD:"L$",LSL:"L",LYD:"LD",MAD:"DH",MDL:"L",MGA:"Ar",MKD:"den",MMK:"Ks",MNT:"\u20AE",MOP:"MOP$",MRU:"UM",MUR:"Rs.",MVR:"MRf",MWK:"MK",MXN:"MX$",MYR:"RM",MZN:"MTn",NAD:"N$",NGN:"\u20A6",NIO:"C$",NOK:"kr",NPR:"Rs.",NZD:"NZ$",OMR:"OR",PAB:"B/.",PEN:"S/.",PGK:"K",PHP:"\u20B1",PKR:"Rs.",PLN:"z\u0142",PND:"$",PRB:"\u0440.",PYG:"\u20B2",QAR:"QR",RON:"L",RSD:"din",RUB:"\u20BD",RWF:"FRw",SAR:"SR",SBD:"SI$",SCR:"Rs.",SDG:"\xA3SD",SEK:"kr",SGD:"S$",SHP:"\xA3",SLL:"Le",SLS:"Sl",SOS:"Sh.So.",SRD:"Sr$",SSP:"SS\xA3",STN:"Db",SVC:"\u20A1",SYP:"LS",SZL:"L",THB:"\u0E3F",TJS:"SM",TMT:"m.",TND:"DT",TOP:"T$",TRY:"TL",TTD:"TT$",TVD:"$",TWD:"NT$",TZS:"TSh",UAH:"\u20B4",UGX:"USh",USD:"$",UYU:"$U",UZS:"\u0441\u0443\u043C",VED:"Bs.",VES:"Bs.F",VND:"\u20AB",VUV:"VT",WST:"T",XAF:"Fr",XCD:"$",XOF:"\u20A3",XPF:"\u20A3",YER:"YR",ZAR:"R",ZMW:"ZK",ZWB:"",ZWL:"Z$",Abkhazia:"",Artsakh:"\u0564\u0580."},yr={it:"it_IT",es:"es_ES",fr:"fr_FR",en:"en_GB"},Ke={"DERNI\xC8RE MINUTE":"735fe5e0858671cf3a5c14cbcc2470fe","R\xC9SERVEZ T\xD4T":"c5abb23caf056891f3902ff42ae2f9e0"};var Ye="https://deshotelsetdesiles.ccordier.workers.dev/v2/",Tr="https://deshotelsetdesiles.i-planet.fr/dhdi-public/searchform.cgi",Et="FR",Dr="1*q1lzz9*_gcl_au*MTMyMzcyMDY5NC4xNzM5Mjg5MzYx*_ga*NTAxMzI1MzMwLjE3MzkyODkzNjE.*_ga_Q0RXHLR7D4*MTczOTI5NzEzNC4zLjAuMTczOTI5NzE3Mi4yMi4wLjA.";var zt=async()=>new Promise(e=>{geoip2.country(t=>{e(t.country.iso_code)},()=>{e(Et)})});var $t=e=>{let t="?";for(let[r,n]of Object.entries(e))n&&(t+=`${r}=${n}&`);return t};var je=class{async getGroupOffersData(t){let r=Ye+"groupOffers"+$t(t),i=await(await fetch(r)).json();return i.error||!i.data?null:i}async getSingleHotelOffersData(t){let r=Ye+"offers"+$t(t),i=await(await fetch(r)).json();return i.error||!i.data?null:i}async getCMSOffers(){let t=Ye+"cmsOffers",n=await(await fetch(t)).json();return n.items?n:null}async getCountries(){let t=Ye+"cmsCountries",n=await(await fetch(t)).json();return n.items?n:null}};var Ir=()=>{let e=Cr();if(!e){let t=localStorage.getItem("wglang")||"fr";window.Weglot.switchTo(t)}window.Weglot.on("languageChanged",()=>{if(e)window.location.reload();else{let t=window.Weglot.getCurrentLang();localStorage.setItem("wglang",t),window.loadFromServer&&window.loadFromServer()}})},Cr=()=>window.location.hostname!=="deshotelsetdesiles.webflow.io",Ut=()=>{let e=Xe();return yr[e]},Xe=()=>{if(!Cr())return localStorage.getItem("wglang")||"fr";try{let e=window.Weglot.getCurrentLang();if(e)return e}catch(e){return console.error("Error getting language",e),"fr"}return"fr"},Vt=()=>{let e={};return Object.entries(Ne).forEach(([t,r])=>{e[r.cmsId]=t}),e},j=(e,t)=>`${e.toLowerCase().trim()}-${t.toLowerCase().trim()}`,Or=(e,t,r)=>{let n=Xe().toUpperCase(),i=Ne[t].codeIPlanet.toUpperCase(),s=`${Tr}?Lang=${n}&currency=${e.toUpperCase()}&HotelCode=${i}`,a=Ar("_ga"),o=Dr,u=Ar("_gcl_au");return s+=`&_ga=${a}&_gl=${o}&_gcl_au=${u}`,r&&(s=`${s}&HotelPromo=${r}`),s},Ar=e=>{let t=document.cookie.match(new RegExp("(^| )"+e+"=([^;]+)"));return t?t[2]:null};var Bt=(e,t,r,n)=>{let{quotation:i,rate:{distribution:s}}=t,{pricePerNight:a,currency:o,plainBookLink:u}=i,{accessCode:c}=s||{},d="";c&&c.length>0&&([d]=c),Mn(e,a,o);let g=e.querySelector(H.hotelReserveLink);g&&g.addEventListener("click",v=>{v.preventDefault(),v.stopPropagation(),window.open(u,"_blank")});let h=e.querySelector(H.hotelVillaReserveLink);if(h&&h.addEventListener("click",v=>{v.preventDefault(),v.stopPropagation(),window.open(Or(o,r,d),"_blank")}),n){let{fieldData:{"discount-percentage":v}}=n,l=e.querySelector(H.discount);l&&v&&(l.innerHTML=`-${v}%`);let f=e.querySelector(H.discountContainer);f&&!v&&(f.style.display="none")}},Mn=(e,t,r)=>{let n=e.querySelector(H.price);n&&(n.innerHTML=Math.floor(t).toString());let i=e.querySelector(H.currency);i&&(i.innerHTML=Lr[r])};var St=class{constructor(t,r){this.listInstance=t;this.itemTemplateElement=r;Se(this,"loadingSpinner");Se(this,"cmsFilterEmptyState");Se(this,"offerLookup",{});Se(this,"apiClient",new je);Se(this,"countryCode");Se(this,"availableCountries",{});Se(this,"countryCodeFilter",t=>{let{fieldData:r}=t;return!r["supported-countries"]||r["supported-countries"].length===0?!0:r["supported-countries"].map(i=>this.availableCountries[i]).includes(this.countryCode)});this.cmsFilterEmptyState=document.querySelector(H.cmsFilterEmptyState),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.add("hide-empty-state"),t.clearItems(),Ir(),this.loadingSpinner=document.querySelector(H.loadingSpinner),this.countryCode=Et}async getGroupOffers(t){let{clearItems:r=!0,filter:n}=t||{};r&&this.listInstance.clearItems();let i=await this.apiClient.getCMSOffers();if(!i)return;let s=await this.apiClient.getCountries();if(!s)return;s.items.forEach(l=>{this.availableCountries[l.id]=l.fieldData.title?.trim()}),this.countryCode=await zt();let a=i.items.filter(n).filter(this.countryCodeFilter),o=this.generateHotelIds(a),u=this.generateHotelIds(a).join(","),c=o.length===1;c&&(u=[u,u].join(","));let{offerMetaData:d}=this.generateOfferData(a),g=Ut(),h=await this.apiClient.getGroupOffersData({hids:u,locale:g});if(!h||h.error||!h.data){this.hideSpinnerAndShowFilter();return}c&&(h.data=[h.data[0]]);let v=this.getAllOffers(h,d);this.addHotelToCollection(v),this.hideSpinnerAndShowFilter()}async getGroupCategoryOffers(t,r=!1){let n=i=>{let{isArchived:s,isDraft:a,fieldData:o}=i;return s||a?!1:r?(!o.thematiques||o.thematiques.length===0)&&!o.slug.includes("derniere-minute")&&!o.slug.includes("reservez-tot"):o.category===t};await this.getGroupOffers({filter:n})}async getGroupThemeOffers(t){let r=n=>{let{isArchived:i,isDraft:s,fieldData:a}=n;return i||s||!a.thematiques?!1:a.thematiques.includes(t)};await this.getGroupOffers({filter:r})}async getGroupOtherThemedOffers(t){let r=n=>{let{isArchived:i,isDraft:s,fieldData:a}=n;return i||s||a.slug===t?!1:Array.isArray(a.thematiques)&&a.thematiques.length>0};await this.getGroupOffers({filter:r})}async getGroupSlugOffers(t){let r=n=>{let{isArchived:i,isDraft:s,fieldData:a}=n;return i||s?!1:a.slug===t};await this.getGroupOffers({filter:r})}async getGroupOtherOffers(t,r){let n=i=>{let{isArchived:s,isDraft:a,fieldData:o}=i;return s||a||o.slug===t?!1:r?o.category===r:(!o.thematiques||o.thematiques.length===0)&&!o.slug.includes("derniere-minute")&&!o.slug.includes("reservez-tot")};await this.getGroupOffers({filter:n})}hideSpinnerAndShowFilter(){this.loadingSpinner&&(this.loadingSpinner.style.display="none"),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.remove("hide-empty-state")}generateHotelIds(t){let r=[],n=Vt();return t.forEach(i=>{let{fieldData:{"hotel-villa":s}}=i;r.push(n[s])}),Array.from(new Set(r))}getAllOffers(t,r){let n=[];return t.data.forEach(i=>{let{prop:{hid:s},rates:a}=i;a.forEach(o=>{let{name:u,title:c}=o.rate;(r.includes(j(s,u))||r.includes(j(s,c)))&&n.push({...i,rates:[o]})})}),n.sort((i,s)=>{let a=this.offerLookup[j(i.prop.hid,i.rates[0].rate.title)]||this.offerLookup[j(i.prop.hid,i.rates[0].rate.name)],o=this.offerLookup[j(s.prop.hid,s.rates[0].rate.title)]||this.offerLookup[j(s.prop.hid,s.rates[0].rate.name)],u=Number(a.fieldData.order)||0,c=Number(o.fieldData.order)||0;return u-c}),n}generateOfferData(t){let r=[];return t.forEach(n=>{let{fieldData:{"hotel-or-property-api-id":i,"offer-api-name":s}}=n,a=j(i,s);r.push(a),this.offerLookup[a]=n}),{offerMetaData:r}}addHotelToCollection(t){for(let{prop:r,rates:n}of t){let i=n.map(s=>this.createItem(r,s,this.itemTemplateElement));this.listInstance.addItems(i)}}createItem(t,r,n){let{rate:i}=r,{hid:s,title:a,property:o}=t,{image:u,title:c,name:d}=i,g=this.offerLookup[j(s||o,c)]||this.offerLookup[j(s||o,d)],h=n.cloneNode(!0),v=Ne[s||o];if(!v)return h;let{destination:l,slug:f}=v;this.bindOffersMetaData(h,{destination:l,image:u,hotelName:a,title:c,slug:f}),Bt(h,r,s,g);let m=h.querySelector(H.moreDetails);return m&&m.addEventListener("click",()=>{let b=this.getOffersCmsSlug(s,o,d);window.location.href=`/offers/${b}`}),h.style.display="flex",h}getOffersCmsSlug(t,r,n){return this.offerLookup[j(t||r,n)]?.fieldData.slug}bindOffersMetaData(t,{destination:r,image:n,hotelName:i,title:s,slug:a,description:o}){let u=t.querySelector(H.destination),c=t.querySelector(H.image),d=t.querySelector(H.hotelName),g=t.querySelector(H.name),h=t.querySelector(H.description),v=t.querySelector(H.hotelLink),l=Xe();u&&(u.textContent=r[l]),c&&(c.src=n?.url),d&&(d.innerHTML=i),g&&(g.innerHTML=s),h&&o&&(h.innerHTML=o),v&&a&&v.addEventListener("click",()=>{window.location.href=a})}};function Rn(e,{destination:t,image:r,hotelName:n,title:i,slug:s,description:a}){let o=e.querySelectorAll(H.destination),u=e.querySelectorAll(H.hotelName),c=e.querySelectorAll(H.name),d=e.querySelectorAll(H.description),g=e.querySelectorAll(H.hotelLink),h=Xe();o&&o.forEach(v=>{v.textContent=t[h]}),r?.url&&e.querySelectorAll(H.image).forEach(l=>{l.src=r.url}),u&&u.forEach(v=>{v.innerHTML=n}),c&&c.forEach(v=>{v.innerHTML=i}),d&&a&&d.forEach(v=>{v.innerHTML=a}),g&&s&&g.forEach(v=>{v.addEventListener("click",l=>{l.preventDefault(),window.location.href=s})})}async function _r(e,t){let r=new je,n=await r.getCMSOffers();if(!n)return;let i=await r.getCountries();if(!i)return;let s={};i.items.forEach(A=>{s[A.id]=A.fieldData.title?.trim()});let a=await zt(),o=A=>{let{fieldData:I}=A;return!I["supported-countries"]||I["supported-countries"].length===0?!0:I["supported-countries"].map(y=>s[y]).includes(a)},u=A=>{let{isArchived:I,isDraft:L,fieldData:y}=A;return I||L?!1:y.slug===e},c=n.items.filter(u).filter(o);if(c.length===0)return;let d=Vt(),g=Array.from(new Set(c.map(A=>d[A.fieldData["hotel-villa"]]).filter(A=>A!=null)));if(g.length===0)return;let h=g.join(",");g.length===1&&(h=[h,h].join(","));let v={},l=[];c.forEach(A=>{let{fieldData:{"hotel-or-property-api-id":I,"offer-api-name":L}}=A,y=j(I,L);l.push(y),v[y]=A});let f=Ut(),m=await r.getGroupOffersData({hids:h,locale:f});if(!m?.data||m.error)return;let b=g.length===1?[m.data[0]]:m.data,p=[];b.forEach(A=>{let{prop:{hid:I},rates:L}=A;L.forEach(y=>{let{name:C,title:k}=y.rate;(l.includes(j(I,C))||l.includes(j(I,k)))&&p.push({...A,rates:[y]})})}),p.sort((A,I)=>{let L=v[j(A.prop.hid,A.rates[0].rate.title)]||v[j(A.prop.hid,A.rates[0].rate.name)],y=v[j(I.prop.hid,I.rates[0].rate.title)]||v[j(I.prop.hid,I.rates[0].rate.name)];return(Number(L?.fieldData.order)||0)-(Number(y?.fieldData.order)||0)});let E=p[0];if(!E?.rates?.[0])return;let{prop:N,rates:_}=E,P=N.hid||N.property,S=_[0],M=v[j(P,S.rate.title)]||v[j(P,S.rate.name)];try{let A=Ne[P];A&&Rn(t,{destination:A.destination,image:S.rate.image,hotelName:N.title,title:S.rate.title,slug:A.slug,description:S.rate.html_description}),Bt(t,S,P,M)}catch{}}function Ce(e){let t=e.querySelector(H.listItem);return!t&&(e.matches(H.offerSlugOthersList)||e.matches(H.offerSlugOthersList2)||e.matches(H.offerSlugOthersList3))&&(t=e.querySelector(H.offerSlugOthersListItem)),t?wn({items:[{element:t}],clearItems(n=!0){n&&(e.innerHTML="")},addItems(n){for(let i of n)e.appendChild(i);return Promise.resolve()}}):null}var wn=e=>{let[t]=e.items;if(!t)throw new Error("No items found in the list instance");let r=t.element;return new St(e,r)};function Mr(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function Nn(e,t,r){return t&&Mr(e.prototype,t),r&&Mr(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}var Rr="(prefers-reduced-motion: reduce)",ke=1,Pn=2,xe=3,$e=4,ot=5,Lt=6,At=7,Hn={CREATED:ke,MOUNTED:Pn,IDLE:xe,MOVING:$e,SCROLLING:ot,DRAGGING:Lt,DESTROYED:At};function pe(e){e.length=0}function De(e,t,r){return Array.prototype.slice.call(e,t,r)}function V(e){return e.bind.apply(e,[null].concat(De(arguments,1)))}var qr=setTimeout,jt=function(){};function wr(e){return requestAnimationFrame(e)}function _t(e,t){return typeof t===e}function Je(e){return!rr(e)&&_t("object",e)}var tr=Array.isArray,Wr=V(_t,"function"),Le=V(_t,"string"),lt=V(_t,"undefined");function rr(e){return e===null}function Kr(e){try{return e instanceof(e.ownerDocument.defaultView||window).HTMLElement}catch{return!1}}function ut(e){return tr(e)?e:[e]}function ae(e,t){ut(e).forEach(t)}function nr(e,t){return e.indexOf(t)>-1}function yt(e,t){return e.push.apply(e,ut(t)),e}function he(e,t,r){e&&ae(t,function(n){n&&e.classList[r?"add":"remove"](n)})}function ce(e,t){he(e,Le(t)?t.split(" "):t,!0)}function ct(e,t){ae(t,e.appendChild.bind(e))}function ir(e,t){ae(e,function(r){var n=(t||r).parentNode;n&&n.insertBefore(r,t)})}function et(e,t){return Kr(e)&&(e.msMatchesSelector||e.matches).call(e,t)}function Yr(e,t){var r=e?De(e.children):[];return t?r.filter(function(n){return et(n,t)}):r}function ft(e,t){return t?Yr(e,t)[0]:e.firstElementChild}var tt=Object.keys;function _e(e,t,r){return e&&(r?tt(e).reverse():tt(e)).forEach(function(n){n!=="__proto__"&&t(e[n],n)}),e}function rt(e){return De(arguments,1).forEach(function(t){_e(t,function(r,n){e[n]=t[n]})}),e}function be(e){return De(arguments,1).forEach(function(t){_e(t,function(r,n){tr(r)?e[n]=r.slice():Je(r)?e[n]=be({},Je(e[n])?e[n]:{},r):e[n]=r})}),e}function Nr(e,t){ae(t||tt(e),function(r){delete e[r]})}function fe(e,t){ae(e,function(r){ae(t,function(n){r&&r.removeAttribute(n)})})}function G(e,t,r){Je(t)?_e(t,function(n,i){G(e,i,n)}):ae(e,function(n){rr(r)||r===""?fe(n,t):n.setAttribute(t,String(r))})}function Fe(e,t,r){var n=document.createElement(e);return t&&(Le(t)?ce(n,t):G(n,t)),r&&ct(r,n),n}function oe(e,t,r){if(lt(r))return getComputedStyle(e)[t];rr(r)||(e.style[t]=""+r)}function nt(e,t){oe(e,"display",t)}function jr(e){e.setActive&&e.setActive()||e.focus({preventScroll:!0})}function le(e,t){return e.getAttribute(t)}function Pr(e,t){return e&&e.classList.contains(t)}function ie(e){return e.getBoundingClientRect()}function Me(e){ae(e,function(t){t&&t.parentNode&&t.parentNode.removeChild(t)})}function Xr(e){return ft(new DOMParser().parseFromString(e,"text/html").body)}function ve(e,t){e.preventDefault(),t&&(e.stopPropagation(),e.stopImmediatePropagation())}function Zr(e,t){return e&&e.querySelector(t)}function sr(e,t){return t?De(e.querySelectorAll(t)):[]}function ge(e,t){he(e,t,!1)}function Xt(e){return e.timeStamp}function Oe(e){return Le(e)?e:e?e+"px":""}var dt="splide",ar="data-"+dt;function Ze(e,t){if(!e)throw new Error("["+dt+"] "+(t||""))}var ye=Math.min,It=Math.max,Ct=Math.floor,it=Math.ceil,re=Math.abs;function Qr(e,t,r){return re(e-t)<r}function Tt(e,t,r,n){var i=ye(t,r),s=It(t,r);return n?i<e&&e<s:i<=e&&e<=s}function Pe(e,t,r){var n=ye(t,r),i=It(t,r);return ye(It(n,e),i)}function Zt(e){return+(e>0)-+(e<0)}function Qt(e,t){return ae(t,function(r){e=e.replace("%s",""+r)}),e}function or(e){return e<10?"0"+e:""+e}var Hr={};function kn(e){return""+e+or(Hr[e]=(Hr[e]||0)+1)}function Jr(){var e=[];function t(a,o,u,c){i(a,o,function(d,g,h){var v="addEventListener"in d,l=v?d.removeEventListener.bind(d,g,u,c):d.removeListener.bind(d,u);v?d.addEventListener(g,u,c):d.addListener(u),e.push([d,g,h,u,l])})}function r(a,o,u){i(a,o,function(c,d,g){e=e.filter(function(h){return h[0]===c&&h[1]===d&&h[2]===g&&(!u||h[3]===u)?(h[4](),!1):!0})})}function n(a,o,u){var c,d=!0;return typeof CustomEvent=="function"?c=new CustomEvent(o,{bubbles:d,detail:u}):(c=document.createEvent("CustomEvent"),c.initCustomEvent(o,d,!1,u)),a.dispatchEvent(c),c}function i(a,o,u){ae(a,function(c){c&&ae(o,function(d){d.split(" ").forEach(function(g){var h=g.split(".");u(c,h[0],h[1])})})})}function s(){e.forEach(function(a){a[4]()}),pe(e)}return{bind:t,unbind:r,dispatch:n,destroy:s}}var we="mounted",kr="ready",Te="move",vt="moved",en="click",Fn="active",Gn="inactive",xn="visible",zn="hidden",X="refresh",ne="updated",st="resize",lr="resized",$n="drag",Un="dragging",Vn="dragged",ur="scroll",Ue="scrolled",Bn="overflow",tn="destroy",qn="arrows:mounted",Wn="arrows:updated",Kn="pagination:mounted",Yn="pagination:updated",rn="navigation:mounted",nn="autoplay:play",jn="autoplay:playing",sn="autoplay:pause",an="lazyload:loaded",on="sk",ln="sh",Ot="ei";function W(e){var t=e?e.event.bus:document.createDocumentFragment(),r=Jr();function n(s,a){r.bind(t,ut(s).join(" "),function(o){a.apply(a,tr(o.detail)?o.detail:[])})}function i(s){r.dispatch(t,s,De(arguments,1))}return e&&e.event.on(tn,r.destroy),rt(r,{bus:t,on:n,off:V(r.unbind,t),emit:i})}function Mt(e,t,r,n){var i=Date.now,s,a=0,o,u=!0,c=0;function d(){if(!u){if(a=e?ye((i()-s)/e,1):1,r&&r(a),a>=1&&(t(),s=i(),n&&++c>=n))return h();o=wr(d)}}function g(b){b||l(),s=i()-(b?a*e:0),u=!1,o=wr(d)}function h(){u=!0}function v(){s=i(),a=0,r&&r(a)}function l(){o&&cancelAnimationFrame(o),a=0,o=0,u=!0}function f(b){e=b}function m(){return u}return{start:g,rewind:v,pause:h,cancel:l,set:f,isPaused:m}}function Xn(e){var t=e;function r(i){t=i}function n(i){return nr(ut(i),t)}return{set:r,is:n}}function Zn(e,t){var r=Mt(t||0,e,null,1);return function(){r.isPaused()&&r.start()}}function Qn(e,t,r){var n=e.state,i=r.breakpoints||{},s=r.reducedMotion||{},a=Jr(),o=[];function u(){var l=r.mediaQuery==="min";tt(i).sort(function(f,m){return l?+f-+m:+m-+f}).forEach(function(f){d(i[f],"("+(l?"min":"max")+"-width:"+f+"px)")}),d(s,Rr),g()}function c(l){l&&a.destroy()}function d(l,f){var m=matchMedia(f);a.bind(m,"change",g),o.push([l,m])}function g(){var l=n.is(At),f=r.direction,m=o.reduce(function(b,p){return be(b,p[1].matches?p[0]:{})},{});Nr(r),v(m),r.destroy?e.destroy(r.destroy==="completely"):l?(c(!0),e.mount()):f!==r.direction&&e.refresh()}function h(l){matchMedia(Rr).matches&&(l?be(r,s):Nr(r,tt(s)))}function v(l,f,m){be(r,l),f&&be(Object.getPrototypeOf(r),l),(m||!n.is(ke))&&e.emit(ne,r)}return{setup:u,destroy:c,reduce:h,set:v}}var Rt="Arrow",wt=Rt+"Left",Nt=Rt+"Right",un=Rt+"Up",cn=Rt+"Down";var Fr="rtl",Pt="ttb",qt={width:["height"],left:["top","right"],right:["bottom","left"],x:["y"],X:["Y"],Y:["X"],ArrowLeft:[un,Nt],ArrowRight:[cn,wt]};function Jn(e,t,r){function n(s,a,o){o=o||r.direction;var u=o===Fr&&!a?1:o===Pt?0:-1;return qt[s]&&qt[s][u]||s.replace(/width|left|right/i,function(c,d){var g=qt[c.toLowerCase()][u]||c;return d>0?g.charAt(0).toUpperCase()+g.slice(1):g})}function i(s){return s*(r.direction===Fr?1:-1)}return{resolve:n,orient:i}}var me="role",Ge="tabindex",ei="disabled",ue="aria-",ht=ue+"controls",fn=ue+"current",Gr=ue+"selected",se=ue+"label",cr=ue+"labelledby",dn=ue+"hidden",fr=ue+"orientation",at=ue+"roledescription",xr=ue+"live",zr=ue+"busy",$r=ue+"atomic",dr=[me,Ge,ei,ht,fn,se,cr,dn,fr,at],de=dt+"__",Ae="is-",Wt=dt,Ur=de+"track",ti=de+"list",Ht=de+"slide",vn=Ht+"--clone",ri=Ht+"__container",vr=de+"arrows",kt=de+"arrow",hn=kt+"--prev",gn=kt+"--next",Ft=de+"pagination",mn=Ft+"__page",ni=de+"progress",ii=ni+"__bar",hr=de+"toggle",Os=hr+"__play",_s=hr+"__pause",si=de+"spinner",ai=de+"sr",oi=Ae+"initialized",Re=Ae+"active",pn=Ae+"prev",En=Ae+"next",Jt=Ae+"visible",er=Ae+"loading",Sn=Ae+"focus-in",bn=Ae+"overflow",li=[Re,Jt,pn,En,er,Sn,bn],ui={slide:Ht,clone:vn,arrows:vr,arrow:kt,prev:hn,next:gn,pagination:Ft,page:mn,spinner:si};function ci(e,t){if(Wr(e.closest))return e.closest(t);for(var r=e;r&&r.nodeType===1&&!et(r,t);)r=r.parentElement;return r}var fi=5,Vr=200,Ln="touchstart mousedown",Kt="touchmove mousemove",Yt="touchend touchcancel mouseup click";function di(e,t,r){var n=W(e),i=n.on,s=n.bind,a=e.root,o=r.i18n,u={},c=[],d=[],g=[],h,v,l;function f(){E(),N(),p()}function m(){i(X,b),i(X,f),i(ne,p),s(document,Ln+" keydown",function(S){l=S.type==="keydown"},{capture:!0}),s(a,"focusin",function(){he(a,Sn,!!l)})}function b(S){var M=dr.concat("style");pe(c),ge(a,d),ge(h,g),fe([h,v],M),fe(a,S?M:["style",at])}function p(){ge(a,d),ge(h,g),d=P(Wt),g=P(Ur),ce(a,d),ce(h,g),G(a,se,r.label),G(a,cr,r.labelledby)}function E(){h=_("."+Ur),v=ft(h,"."+ti),Ze(h&&v,"A track/list element is missing."),yt(c,Yr(v,"."+Ht+":not(."+vn+")")),_e({arrows:vr,pagination:Ft,prev:hn,next:gn,bar:ii,toggle:hr},function(S,M){u[M]=_("."+S)}),rt(u,{root:a,track:h,list:v,slides:c})}function N(){var S=a.id||kn(dt),M=r.role;a.id=S,h.id=h.id||S+"-track",v.id=v.id||S+"-list",!le(a,me)&&a.tagName!=="SECTION"&&M&&G(a,me,M),G(a,at,o.carousel),G(v,me,"presentation")}function _(S){var M=Zr(a,S);return M&&ci(M,"."+Wt)===a?M:void 0}function P(S){return[S+"--"+r.type,S+"--"+r.direction,r.drag&&S+"--draggable",r.isNavigation&&S+"--nav",S===Wt&&Re]}return rt(u,{setup:f,mount:m,destroy:b})}var ze="slide",Ve="loop",gt="fade";function vi(e,t,r,n){var i=W(e),s=i.on,a=i.emit,o=i.bind,u=e.Components,c=e.root,d=e.options,g=d.isNavigation,h=d.updateOnMove,v=d.i18n,l=d.pagination,f=d.slideFocus,m=u.Direction.resolve,b=le(n,"style"),p=le(n,se),E=r>-1,N=ft(n,"."+ri),_;function P(){E||(n.id=c.id+"-slide"+or(t+1),G(n,me,l?"tabpanel":"group"),G(n,at,v.slide),G(n,se,p||Qt(v.slideLabel,[t+1,e.length]))),S()}function S(){o(n,"click",V(a,en,F)),o(n,"keydown",V(a,on,F)),s([vt,ln,Ue],L),s(rn,A),h&&s(Te,I)}function M(){_=!0,i.destroy(),ge(n,li),fe(n,dr),G(n,"style",b),G(n,se,p||"")}function A(){var w=e.splides.map(function(D){var R=D.splide.Components.Slides.getAt(t);return R?R.slide.id:""}).join(" ");G(n,se,Qt(v.slideX,(E?r:t)+1)),G(n,ht,w),G(n,me,f?"button":""),f&&fe(n,at)}function I(){_||L()}function L(){if(!_){var w=e.index;y(),C(),he(n,pn,t===w-1),he(n,En,t===w+1)}}function y(){var w=x();w!==Pr(n,Re)&&(he(n,Re,w),G(n,fn,g&&w||""),a(w?Fn:Gn,F))}function C(){var w=K(),D=!w&&(!x()||E);if(e.state.is([$e,ot])||G(n,dn,D||""),G(sr(n,d.focusableNodes||""),Ge,D?-1:""),f&&G(n,Ge,D?-1:0),w!==Pr(n,Jt)&&(he(n,Jt,w),a(w?xn:zn,F)),!w&&document.activeElement===n){var R=u.Slides.getAt(e.index);R&&jr(R.slide)}}function k(w,D,R){oe(R&&N||n,w,D)}function x(){var w=e.index;return w===t||d.cloneStatus&&w===r}function K(){if(e.is(gt))return x();var w=ie(u.Elements.track),D=ie(n),R=m("left",!0),z=m("right",!0);return Ct(w[R])<=it(D[R])&&Ct(D[z])<=it(w[z])}function q(w,D){var R=re(w-t);return!E&&(d.rewind||e.is(Ve))&&(R=ye(R,e.length-R)),R<=D}var F={index:t,slideIndex:r,slide:n,container:N,isClone:E,mount:P,destroy:M,update:L,style:k,isWithin:q};return F}function hi(e,t,r){var n=W(e),i=n.on,s=n.emit,a=n.bind,o=t.Elements,u=o.slides,c=o.list,d=[];function g(){h(),i(X,v),i(X,h)}function h(){u.forEach(function(L,y){f(L,y,-1)})}function v(){_(function(L){L.destroy()}),pe(d)}function l(){_(function(L){L.update()})}function f(L,y,C){var k=vi(e,y,C,L);k.mount(),d.push(k),d.sort(function(x,K){return x.index-K.index})}function m(L){return L?P(function(y){return!y.isClone}):d}function b(L){var y=t.Controller,C=y.toIndex(L),k=y.hasFocus()?1:r.perPage;return P(function(x){return Tt(x.index,C,C+k-1)})}function p(L){return P(L)[0]}function E(L,y){ae(L,function(C){if(Le(C)&&(C=Xr(C)),Kr(C)){var k=u[y];k?ir(C,k):ct(c,C),ce(C,r.classes.slide),M(C,V(s,st))}}),s(X)}function N(L){Me(P(L).map(function(y){return y.slide})),s(X)}function _(L,y){m(y).forEach(L)}function P(L){return d.filter(Wr(L)?L:function(y){return Le(L)?et(y.slide,L):nr(ut(L),y.index)})}function S(L,y,C){_(function(k){k.style(L,y,C)})}function M(L,y){var C=sr(L,"img"),k=C.length;k?C.forEach(function(x){a(x,"load error",function(){--k||y()})}):y()}function A(L){return L?u.length:d.length}function I(){return d.length>r.perPage}return{mount:g,destroy:v,update:l,register:f,get:m,getIn:b,getAt:p,add:E,remove:N,forEach:_,filter:P,style:S,getLength:A,isEnough:I}}function gi(e,t,r){var n=W(e),i=n.on,s=n.bind,a=n.emit,o=t.Slides,u=t.Direction.resolve,c=t.Elements,d=c.root,g=c.track,h=c.list,v=o.getAt,l=o.style,f,m,b;function p(){E(),s(window,"resize load",Zn(V(a,st))),i([ne,X],E),i(st,N)}function E(){f=r.direction===Pt,oe(d,"maxWidth",Oe(r.width)),oe(g,u("paddingLeft"),_(!1)),oe(g,u("paddingRight"),_(!0)),N(!0)}function N(F){var w=ie(d);(F||m.width!==w.width||m.height!==w.height)&&(oe(g,"height",P()),l(u("marginRight"),Oe(r.gap)),l("width",M()),l("height",A(),!0),m=w,a(lr),b!==(b=q())&&(he(d,bn,b),a(Bn,b)))}function _(F){var w=r.padding,D=u(F?"right":"left");return w&&Oe(w[D]||(Je(w)?0:w))||"0px"}function P(){var F="";return f&&(F=S(),Ze(F,"height or heightRatio is missing."),F="calc("+F+" - "+_(!1)+" - "+_(!0)+")"),F}function S(){return Oe(r.height||ie(h).width*r.heightRatio)}function M(){return r.autoWidth?null:Oe(r.fixedWidth)||(f?"":I())}function A(){return Oe(r.fixedHeight)||(f?r.autoHeight?null:I():S())}function I(){var F=Oe(r.gap);return"calc((100%"+(F&&" + "+F)+")/"+(r.perPage||1)+(F&&" - "+F)+")"}function L(){return ie(h)[u("width")]}function y(F,w){var D=v(F||0);return D?ie(D.slide)[u("width")]+(w?0:x()):0}function C(F,w){var D=v(F);if(D){var R=ie(D.slide)[u("right")],z=ie(h)[u("left")];return re(R-z)+(w?0:x())}return 0}function k(F){return C(e.length-1)-C(0)+y(0,F)}function x(){var F=v(0);return F&&parseFloat(oe(F.slide,u("marginRight")))||0}function K(F){return parseFloat(oe(g,u("padding"+(F?"Right":"Left"))))||0}function q(){return e.is(gt)||k(!0)>L()}return{mount:p,resize:N,listSize:L,slideSize:y,sliderSize:k,totalSize:C,getPadding:K,isOverflow:q}}var mi=2;function pi(e,t,r){var n=W(e),i=n.on,s=t.Elements,a=t.Slides,o=t.Direction.resolve,u=[],c;function d(){i(X,g),i([ne,st],v),(c=m())&&(l(c),t.Layout.resize(!0))}function g(){h(),d()}function h(){Me(u),pe(u),n.destroy()}function v(){var b=m();c!==b&&(c<b||!b)&&n.emit(X)}function l(b){var p=a.get().slice(),E=p.length;if(E){for(;p.length<b;)yt(p,p);yt(p.slice(-b),p.slice(0,b)).forEach(function(N,_){var P=_<b,S=f(N.slide,_);P?ir(S,p[0].slide):ct(s.list,S),yt(u,S),a.register(S,_-b+(P?0:E),N.index)})}}function f(b,p){var E=b.cloneNode(!0);return ce(E,r.classes.clone),E.id=e.root.id+"-clone"+or(p+1),E}function m(){var b=r.clones;if(!e.is(Ve))b=0;else if(lt(b)){var p=r[o("fixedWidth")]&&t.Layout.slideSize(0),E=p&&it(ie(s.track)[o("width")]/p);b=E||r[o("autoWidth")]&&e.length||r.perPage*mi}return b}return{mount:d,destroy:h}}function Ei(e,t,r){var n=W(e),i=n.on,s=n.emit,a=e.state.set,o=t.Layout,u=o.slideSize,c=o.getPadding,d=o.totalSize,g=o.listSize,h=o.sliderSize,v=t.Direction,l=v.resolve,f=v.orient,m=t.Elements,b=m.list,p=m.track,E;function N(){E=t.Transition,i([we,lr,ne,X],_)}function _(){t.Controller.isBusy()||(t.Scroll.cancel(),S(e.index),t.Slides.update())}function P(D,R,z,J){D!==R&&F(D>z)&&(L(),M(I(k(),D>z),!0)),a($e),s(Te,R,z,D),E.start(R,function(){a(xe),s(vt,R,z,D),J&&J()})}function S(D){M(C(D,!0))}function M(D,R){if(!e.is(gt)){var z=R?D:A(D);oe(b,"transform","translate"+l("X")+"("+z+"px)"),D!==z&&s(ln)}}function A(D){if(e.is(Ve)){var R=y(D),z=R>t.Controller.getEnd(),J=R<0;(J||z)&&(D=I(D,z))}return D}function I(D,R){var z=D-q(R),J=h();return D-=f(J*(it(re(z)/J)||1))*(R?1:-1),D}function L(){M(k(),!0),E.cancel()}function y(D){for(var R=t.Slides.get(),z=0,J=1/0,Q=0;Q<R.length;Q++){var Ee=R[Q].index,T=re(C(Ee,!0)-D);if(T<=J)J=T,z=Ee;else break}return z}function C(D,R){var z=f(d(D-1)-K(D));return R?x(z):z}function k(){var D=l("left");return ie(b)[D]-ie(p)[D]+f(c(!1))}function x(D){return r.trimSpace&&e.is(ze)&&(D=Pe(D,0,f(h(!0)-g()))),D}function K(D){var R=r.focus;return R==="center"?(g()-u(D,!0))/2:+R*u(D)||0}function q(D){return C(D?t.Controller.getEnd():0,!!r.trimSpace)}function F(D){var R=f(I(k(),D));return D?R>=0:R<=b[l("scrollWidth")]-ie(p)[l("width")]}function w(D,R){R=lt(R)?k():R;var z=D!==!0&&f(R)<f(q(!1)),J=D!==!1&&f(R)>f(q(!0));return z||J}return{mount:N,move:P,jump:S,translate:M,shift:I,cancel:L,toIndex:y,toPosition:C,getPosition:k,getLimit:q,exceededLimit:w,reposition:_}}function Si(e,t,r){var n=W(e),i=n.on,s=n.emit,a=t.Move,o=a.getPosition,u=a.getLimit,c=a.toPosition,d=t.Slides,g=d.isEnough,h=d.getLength,v=r.omitEnd,l=e.is(Ve),f=e.is(ze),m=V(k,!1),b=V(k,!0),p=r.start||0,E,N=p,_,P,S;function M(){A(),i([ne,X,Ot],A),i(lr,I)}function A(){_=h(!0),P=r.perMove,S=r.perPage,E=F();var T=Pe(p,0,v?E:_-1);T!==p&&(p=T,a.reposition())}function I(){E!==F()&&s(Ot)}function L(T,U,te){if(!Ee()){var Y=C(T),ee=q(Y);ee>-1&&(U||ee!==p)&&(z(ee),a.move(Y,ee,N,te))}}function y(T,U,te,Y){t.Scroll.scroll(T,U,te,function(){var ee=q(a.toIndex(o()));z(v?ye(ee,E):ee),Y&&Y()})}function C(T){var U=p;if(Le(T)){var te=T.match(/([+\-<>])(\d+)?/)||[],Y=te[1],ee=te[2];Y==="+"||Y==="-"?U=x(p+ +(""+Y+(+ee||1)),p):Y===">"?U=ee?w(+ee):m(!0):Y==="<"&&(U=b(!0))}else U=l?T:Pe(T,0,E);return U}function k(T,U){var te=P||(Q()?1:S),Y=x(p+te*(T?-1:1),p,!(P||Q()));return Y===-1&&f&&!Qr(o(),u(!T),1)?T?0:E:U?Y:q(Y)}function x(T,U,te){if(g()||Q()){var Y=K(T);Y!==T&&(U=T,T=Y,te=!1),T<0||T>E?!P&&(Tt(0,T,U,!0)||Tt(E,U,T,!0))?T=w(D(T)):l?T=te?T<0?-(_%S||S):_:T:r.rewind?T=T<0?E:0:T=-1:te&&T!==U&&(T=w(D(U)+(T<U?-1:1)))}else T=-1;return T}function K(T){if(f&&r.trimSpace==="move"&&T!==p)for(var U=o();U===c(T,!0)&&Tt(T,0,e.length-1,!r.rewind);)T<p?--T:++T;return T}function q(T){return l?(T+_)%_||0:T}function F(){for(var T=_-(Q()||l&&P?1:S);v&&T-- >0;)if(c(_-1,!0)!==c(T,!0)){T++;break}return Pe(T,0,_-1)}function w(T){return Pe(Q()?T:S*T,0,E)}function D(T){return Q()?ye(T,E):Ct((T>=E?_-1:T)/S)}function R(T){var U=a.toIndex(T);return f?Pe(U,0,E):U}function z(T){T!==p&&(N=p,p=T)}function J(T){return T?N:p}function Q(){return!lt(r.focus)||r.isNavigation}function Ee(){return e.state.is([$e,ot])&&!!r.waitForTransition}return{mount:M,go:L,scroll:y,getNext:m,getPrev:b,getAdjacent:k,getEnd:F,setIndex:z,getIndex:J,toIndex:w,toPage:D,toDest:R,hasFocus:Q,isBusy:Ee}}var bi="http://www.w3.org/2000/svg",Li="m15.5 0.932-4.3 4.38 14.5 14.6-14.5 14.5 4.3 4.4 14.6-14.6 4.4-4.3-4.4-4.4-14.6-14.6z",bt=40;function yi(e,t,r){var n=W(e),i=n.on,s=n.bind,a=n.emit,o=r.classes,u=r.i18n,c=t.Elements,d=t.Controller,g=c.arrows,h=c.track,v=g,l=c.prev,f=c.next,m,b,p={};function E(){_(),i(ne,N)}function N(){P(),E()}function _(){var y=r.arrows;y&&!(l&&f)&&A(),l&&f&&(rt(p,{prev:l,next:f}),nt(v,y?"":"none"),ce(v,b=vr+"--"+r.direction),y&&(S(),L(),G([l,f],ht,h.id),a(qn,l,f)))}function P(){n.destroy(),ge(v,b),m?(Me(g?[l,f]:v),l=f=null):fe([l,f],dr)}function S(){i([we,vt,X,Ue,Ot],L),s(f,"click",V(M,">")),s(l,"click",V(M,"<"))}function M(y){d.go(y,!0)}function A(){v=g||Fe("div",o.arrows),l=I(!0),f=I(!1),m=!0,ct(v,[l,f]),!g&&ir(v,h)}function I(y){var C='<button class="'+o.arrow+" "+(y?o.prev:o.next)+'" type="button"><svg xmlns="'+bi+'" viewBox="0 0 '+bt+" "+bt+'" width="'+bt+'" height="'+bt+'" focusable="false"><path d="'+(r.arrowPath||Li)+'" />';return Xr(C)}function L(){if(l&&f){var y=e.index,C=d.getPrev(),k=d.getNext(),x=C>-1&&y<C?u.last:u.prev,K=k>-1&&y>k?u.first:u.next;l.disabled=C<0,f.disabled=k<0,G(l,se,x),G(f,se,K),a(Wn,l,f,C,k)}}return{arrows:p,mount:E,destroy:P,update:L}}var Ti=ar+"-interval";function Di(e,t,r){var n=W(e),i=n.on,s=n.bind,a=n.emit,o=Mt(r.interval,e.go.bind(e,">"),S),u=o.isPaused,c=t.Elements,d=t.Elements,g=d.root,h=d.toggle,v=r.autoplay,l,f,m=v==="pause";function b(){v&&(p(),h&&G(h,ht,c.track.id),m||E(),P())}function p(){r.pauseOnHover&&s(g,"mouseenter mouseleave",function(A){l=A.type==="mouseenter",_()}),r.pauseOnFocus&&s(g,"focusin focusout",function(A){f=A.type==="focusin",_()}),h&&s(h,"click",function(){m?E():N(!0)}),i([Te,ur,X],o.rewind),i(Te,M)}function E(){u()&&t.Slides.isEnough()&&(o.start(!r.resetProgress),f=l=m=!1,P(),a(nn))}function N(A){A===void 0&&(A=!0),m=!!A,P(),u()||(o.pause(),a(sn))}function _(){m||(l||f?N(!1):E())}function P(){h&&(he(h,Re,!m),G(h,se,r.i18n[m?"play":"pause"]))}function S(A){var I=c.bar;I&&oe(I,"width",A*100+"%"),a(jn,A)}function M(A){var I=t.Slides.getAt(A);o.set(I&&+le(I.slide,Ti)||r.interval)}return{mount:b,destroy:o.cancel,play:E,pause:N,isPaused:u}}function Ai(e,t,r){var n=W(e),i=n.on;function s(){r.cover&&(i(an,V(o,!0)),i([we,ne,X],V(a,!0)))}function a(u){t.Slides.forEach(function(c){var d=ft(c.container||c.slide,"img");d&&d.src&&o(u,d,c)})}function o(u,c,d){d.style("background",u?'center/cover no-repeat url("'+c.src+'")':"",!0),nt(c,u?"none":"")}return{mount:s,destroy:V(a,!1)}}var Ii=10,Ci=600,Oi=.6,_i=1.5,Mi=800;function Ri(e,t,r){var n=W(e),i=n.on,s=n.emit,a=e.state.set,o=t.Move,u=o.getPosition,c=o.getLimit,d=o.exceededLimit,g=o.translate,h=e.is(ze),v,l,f=1;function m(){i(Te,N),i([ne,X],_)}function b(S,M,A,I,L){var y=u();if(N(),A&&(!h||!d())){var C=t.Layout.sliderSize(),k=Zt(S)*C*Ct(re(S)/C)||0;S=o.toPosition(t.Controller.toDest(S%C))+k}var x=Qr(y,S,1);f=1,M=x?0:M||It(re(S-y)/_i,Mi),l=I,v=Mt(M,p,V(E,y,S,L),1),a(ot),s(ur),v.start()}function p(){a(xe),l&&l(),s(Ue)}function E(S,M,A,I){var L=u(),y=S+(M-S)*P(I),C=(y-L)*f;g(L+C),h&&!A&&d()&&(f*=Oi,re(C)<Ii&&b(c(d(!0)),Ci,!1,l,!0))}function N(){v&&v.cancel()}function _(){v&&!v.isPaused()&&(N(),p())}function P(S){var M=r.easingFunc;return M?M(S):1-Math.pow(1-S,4)}return{mount:m,destroy:N,scroll:b,cancel:_}}var He={passive:!1,capture:!0};function wi(e,t,r){var n=W(e),i=n.on,s=n.emit,a=n.bind,o=n.unbind,u=e.state,c=t.Move,d=t.Scroll,g=t.Controller,h=t.Elements.track,v=t.Media.reduce,l=t.Direction,f=l.resolve,m=l.orient,b=c.getPosition,p=c.exceededLimit,E,N,_,P,S,M=!1,A,I,L;function y(){a(h,Kt,jt,He),a(h,Yt,jt,He),a(h,Ln,k,He),a(h,"click",q,{capture:!0}),a(h,"dragstart",ve),i([we,ne],C)}function C(){var O=r.drag;pr(!O),P=O==="free"}function k(O){if(A=!1,!I){var B=ee(O);Y(O.target)&&(B||!O.button)&&(g.isBusy()?ve(O,!0):(L=B?h:window,S=u.is([$e,ot]),_=null,a(L,Kt,x,He),a(L,Yt,K,He),c.cancel(),d.cancel(),F(O)))}}function x(O){if(u.is(Lt)||(u.set(Lt),s($n)),O.cancelable)if(S){c.translate(E+te(Q(O)));var B=Ee(O)>Vr,Ie=M!==(M=p());(B||Ie)&&F(O),A=!0,s(Un),ve(O)}else R(O)&&(S=D(O),ve(O))}function K(O){u.is(Lt)&&(u.set(xe),s(Vn)),S&&(w(O),ve(O)),o(L,Kt,x),o(L,Yt,K),S=!1}function q(O){!I&&A&&ve(O,!0)}function F(O){_=N,N=O,E=b()}function w(O){var B=z(O),Ie=J(B),Be=r.rewind&&r.rewindByDrag;v(!1),P?g.scroll(Ie,0,r.snap):e.is(gt)?g.go(m(Zt(B))<0?Be?"<":"-":Be?">":"+"):e.is(ze)&&M&&Be?g.go(p(!0)?">":"<"):g.go(g.toDest(Ie),!0),v(!0)}function D(O){var B=r.dragMinThreshold,Ie=Je(B),Be=Ie&&B.mouse||0,An=(Ie?B.touch:+B)||10;return re(Q(O))>(ee(O)?An:Be)}function R(O){return re(Q(O))>re(Q(O,!0))}function z(O){if(e.is(Ve)||!M){var B=Ee(O);if(B&&B<Vr)return Q(O)/B}return 0}function J(O){return b()+Zt(O)*ye(re(O)*(r.flickPower||600),P?1/0:t.Layout.listSize()*(r.flickMaxPages||1))}function Q(O,B){return U(O,B)-U(T(O),B)}function Ee(O){return Xt(O)-Xt(T(O))}function T(O){return N===O&&_||N}function U(O,B){return(ee(O)?O.changedTouches[0]:O)["page"+f(B?"Y":"X")]}function te(O){return O/(M&&e.is(ze)?fi:1)}function Y(O){var B=r.noDrag;return!et(O,"."+mn+", ."+kt)&&(!B||!et(O,B))}function ee(O){return typeof TouchEvent<"u"&&O instanceof TouchEvent}function Dn(){return S}function pr(O){I=O}return{mount:y,disable:pr,isDragging:Dn}}var Ni={Spacebar:" ",Right:Nt,Left:wt,Up:un,Down:cn};function gr(e){return e=Le(e)?e:e.key,Ni[e]||e}var Br="keydown";function Pi(e,t,r){var n=W(e),i=n.on,s=n.bind,a=n.unbind,o=e.root,u=t.Direction.resolve,c,d;function g(){h(),i(ne,v),i(ne,h),i(Te,f)}function h(){var b=r.keyboard;b&&(c=b==="global"?window:o,s(c,Br,m))}function v(){a(c,Br)}function l(b){d=b}function f(){var b=d;d=!0,qr(function(){d=b})}function m(b){if(!d){var p=gr(b);p===u(wt)?e.go("<"):p===u(Nt)&&e.go(">")}}return{mount:g,destroy:v,disable:l}}var Qe=ar+"-lazy",Dt=Qe+"-srcset",Hi="["+Qe+"], ["+Dt+"]";function ki(e,t,r){var n=W(e),i=n.on,s=n.off,a=n.bind,o=n.emit,u=r.lazyLoad==="sequential",c=[vt,Ue],d=[];function g(){r.lazyLoad&&(h(),i(X,h))}function h(){pe(d),v(),u?b():(s(c),i(c,l),l())}function v(){t.Slides.forEach(function(p){sr(p.slide,Hi).forEach(function(E){var N=le(E,Qe),_=le(E,Dt);if(N!==E.src||_!==E.srcset){var P=r.classes.spinner,S=E.parentElement,M=ft(S,"."+P)||Fe("span",P,S);d.push([E,p,M]),E.src||nt(E,"none")}})})}function l(){d=d.filter(function(p){var E=r.perPage*((r.preloadPages||1)+1)-1;return p[1].isWithin(e.index,E)?f(p):!0}),d.length||s(c)}function f(p){var E=p[0];ce(p[1].slide,er),a(E,"load error",V(m,p)),G(E,"src",le(E,Qe)),G(E,"srcset",le(E,Dt)),fe(E,Qe),fe(E,Dt)}function m(p,E){var N=p[0],_=p[1];ge(_.slide,er),E.type!=="error"&&(Me(p[2]),nt(N,""),o(an,N,_),o(st)),u&&b()}function b(){d.length&&f(d.shift())}return{mount:g,destroy:V(pe,d),check:l}}function Fi(e,t,r){var n=W(e),i=n.on,s=n.emit,a=n.bind,o=t.Slides,u=t.Elements,c=t.Controller,d=c.hasFocus,g=c.getIndex,h=c.go,v=t.Direction.resolve,l=u.pagination,f=[],m,b;function p(){E(),i([ne,X,Ot],p);var I=r.pagination;l&&nt(l,I?"":"none"),I&&(i([Te,ur,Ue],A),N(),A(),s(Kn,{list:m,items:f},M(e.index)))}function E(){m&&(Me(l?De(m.children):m),ge(m,b),pe(f),m=null),n.destroy()}function N(){var I=e.length,L=r.classes,y=r.i18n,C=r.perPage,k=d()?c.getEnd()+1:it(I/C);m=l||Fe("ul",L.pagination,u.track.parentElement),ce(m,b=Ft+"--"+S()),G(m,me,"tablist"),G(m,se,y.select),G(m,fr,S()===Pt?"vertical":"");for(var x=0;x<k;x++){var K=Fe("li",null,m),q=Fe("button",{class:L.page,type:"button"},K),F=o.getIn(x).map(function(D){return D.slide.id}),w=!d()&&C>1?y.pageX:y.slideX;a(q,"click",V(_,x)),r.paginationKeyboard&&a(q,"keydown",V(P,x)),G(K,me,"presentation"),G(q,me,"tab"),G(q,ht,F.join(" ")),G(q,se,Qt(w,x+1)),G(q,Ge,-1),f.push({li:K,button:q,page:x})}}function _(I){h(">"+I,!0)}function P(I,L){var y=f.length,C=gr(L),k=S(),x=-1;C===v(Nt,!1,k)?x=++I%y:C===v(wt,!1,k)?x=(--I+y)%y:C==="Home"?x=0:C==="End"&&(x=y-1);var K=f[x];K&&(jr(K.button),h(">"+x),ve(L,!0))}function S(){return r.paginationDirection||r.direction}function M(I){return f[c.toPage(I)]}function A(){var I=M(g(!0)),L=M(g());if(I){var y=I.button;ge(y,Re),fe(y,Gr),G(y,Ge,-1)}if(L){var C=L.button;ce(C,Re),G(C,Gr,!0),G(C,Ge,"")}s(Yn,{list:m,items:f},I,L)}return{items:f,mount:p,destroy:E,getAt:M,update:A}}var Gi=[" ","Enter"];function xi(e,t,r){var n=r.isNavigation,i=r.slideFocus,s=[];function a(){e.splides.forEach(function(l){l.isParent||(c(e,l.splide),c(l.splide,e))}),n&&d()}function o(){s.forEach(function(l){l.destroy()}),pe(s)}function u(){o(),a()}function c(l,f){var m=W(l);m.on(Te,function(b,p,E){f.go(f.is(Ve)?E:b)}),s.push(m)}function d(){var l=W(e),f=l.on;f(en,h),f(on,v),f([we,ne],g),s.push(l),l.emit(rn,e.splides)}function g(){G(t.Elements.list,fr,r.direction===Pt?"vertical":"")}function h(l){e.go(l.index)}function v(l,f){nr(Gi,gr(f))&&(h(l),ve(f))}return{setup:V(t.Media.set,{slideFocus:lt(i)?n:i},!0),mount:a,destroy:o,remount:u}}function zi(e,t,r){var n=W(e),i=n.bind,s=0;function a(){r.wheel&&i(t.Elements.track,"wheel",o,He)}function o(c){if(c.cancelable){var d=c.deltaY,g=d<0,h=Xt(c),v=r.wheelMinThreshold||0,l=r.wheelSleep||0;re(d)>v&&h-s>l&&(e.go(g?"<":">"),s=h),u(g)&&ve(c)}}function u(c){return!r.releaseWheel||e.state.is($e)||t.Controller.getAdjacent(c)!==-1}return{mount:a}}var $i=90;function Ui(e,t,r){var n=W(e),i=n.on,s=t.Elements.track,a=r.live&&!r.isNavigation,o=Fe("span",ai),u=Mt($i,V(d,!1));function c(){a&&(h(!t.Autoplay.isPaused()),G(s,$r,!0),o.textContent="\u2026",i(nn,V(h,!0)),i(sn,V(h,!1)),i([vt,Ue],V(d,!0)))}function d(v){G(s,zr,v),v?(ct(s,o),u.start()):(Me(o),u.cancel())}function g(){fe(s,[xr,$r,zr]),Me(o)}function h(v){a&&G(s,xr,v?"off":"polite")}return{mount:c,disable:h,destroy:g}}var Vi=Object.freeze({__proto__:null,Media:Qn,Direction:Jn,Elements:di,Slides:hi,Layout:gi,Clones:pi,Move:Ei,Controller:Si,Arrows:yi,Autoplay:Di,Cover:Ai,Scroll:Ri,Drag:wi,Keyboard:Pi,LazyLoad:ki,Pagination:Fi,Sync:xi,Wheel:zi,Live:Ui}),Bi={prev:"Previous slide",next:"Next slide",first:"Go to first slide",last:"Go to last slide",slideX:"Go to slide %s",pageX:"Go to page %s",play:"Start autoplay",pause:"Pause autoplay",carousel:"carousel",slide:"slide",select:"Select a slide to show",slideLabel:"%s of %s"},qi={type:"slide",role:"region",speed:400,perPage:1,cloneStatus:!0,arrows:!0,pagination:!0,paginationKeyboard:!0,interval:5e3,pauseOnHover:!0,pauseOnFocus:!0,resetProgress:!0,easing:"cubic-bezier(0.25, 1, 0.5, 1)",drag:!0,direction:"ltr",trimSpace:!0,focusableNodes:"a, button, textarea, input, select, iframe",live:!0,classes:ui,i18n:Bi,reducedMotion:{speed:0,rewindSpeed:0,autoplay:"pause"}};function Wi(e,t,r){var n=t.Slides;function i(){W(e).on([we,X],s)}function s(){n.forEach(function(o){o.style("transform","translateX(-"+100*o.index+"%)")})}function a(o,u){n.style("transition","opacity "+r.speed+"ms "+r.easing),qr(u)}return{mount:i,start:a,cancel:jt}}function Ki(e,t,r){var n=t.Move,i=t.Controller,s=t.Scroll,a=t.Elements.list,o=V(oe,a,"transition"),u;function c(){W(e).bind(a,"transitionend",function(v){v.target===a&&u&&(g(),u())})}function d(v,l){var f=n.toPosition(v,!0),m=n.getPosition(),b=h(v);re(f-m)>=1&&b>=1?r.useScroll?s.scroll(f,b,!1,l):(o("transform "+b+"ms "+r.easing),n.translate(f,!0),u=l):(n.jump(v),l())}function g(){o(""),s.cancel()}function h(v){var l=r.rewindSpeed;if(e.is(ze)&&l){var f=i.getIndex(!0),m=i.getEnd();if(f===0&&v>=m||f>=m&&v===0)return l}return r.speed}return{mount:c,start:d,cancel:g}}var Yi=function(){function e(r,n){this.event=W(),this.Components={},this.state=Xn(ke),this.splides=[],this._o={},this._E={};var i=Le(r)?Zr(document,r):r;Ze(i,i+" is invalid."),this.root=i,n=be({label:le(i,se)||"",labelledby:le(i,cr)||""},qi,e.defaults,n||{});try{be(n,JSON.parse(le(i,ar)))}catch{Ze(!1,"Invalid JSON")}this._o=Object.create(be({},n))}var t=e.prototype;return t.mount=function(n,i){var s=this,a=this.state,o=this.Components;Ze(a.is([ke,At]),"Already mounted!"),a.set(ke),this._C=o,this._T=i||this._T||(this.is(gt)?Wi:Ki),this._E=n||this._E;var u=rt({},Vi,this._E,{Transition:this._T});return _e(u,function(c,d){var g=c(s,o,s._o);o[d]=g,g.setup&&g.setup()}),_e(o,function(c){c.mount&&c.mount()}),this.emit(we),ce(this.root,oi),a.set(xe),this.emit(kr),this},t.sync=function(n){return this.splides.push({splide:n}),n.splides.push({splide:this,isParent:!0}),this.state.is(xe)&&(this._C.Sync.remount(),n.Components.Sync.remount()),this},t.go=function(n){return this._C.Controller.go(n),this},t.on=function(n,i){return this.event.on(n,i),this},t.off=function(n){return this.event.off(n),this},t.emit=function(n){var i;return(i=this.event).emit.apply(i,[n].concat(De(arguments,1))),this},t.add=function(n,i){return this._C.Slides.add(n,i),this},t.remove=function(n){return this._C.Slides.remove(n),this},t.is=function(n){return this._o.type===n},t.refresh=function(){return this.emit(X),this},t.destroy=function(n){n===void 0&&(n=!0);var i=this.event,s=this.state;return s.is(ke)?W(this).on(kr,this.destroy.bind(this,n)):(_e(this._C,function(a){a.destroy&&a.destroy(n)},!0),i.emit(tn),i.destroy(),n&&pe(this.splides),s.set(At)),this},Nn(e,[{key:"options",get:function(){return this._o},set:function(n){this._C.Media.set(n,!0,!0)}},{key:"length",get:function(){return this._C.Slides.getLength(!0)}},{key:"index",get:function(){return this._C.Controller.getIndex()}}]),e}(),mt=Yi;mt.defaults={};mt.STATES=Hn;var yn='[custom="images-slider"]',ji='[custom="offers-slider"]';function Xi(){Array.isArray(window.offersSplides)&&(window.offersSplides.forEach(t=>{try{t.destroy()}catch{}}),window.offersSplides=[]);let e=document.querySelector(yn);if(e&&e.splide)try{e.splide.destroy()}catch{}}function Zi(){let e=document.querySelector(yn);e&&new mt(e,{type:"loop",pagination:!0,speed:600,easing:"ease",gap:"0rem",perPage:1,arrows:!1,destroy:!0,breakpoints:{766:{destroy:!1}}}).mount()}function Qi(e){let t=e.querySelector(".splide__list");return t&&t.children.length>0?!0:e.querySelectorAll(".splide__slide").length>0}function Ji(){let e=document.querySelectorAll(ji);window.offersSplides=[],e.forEach(t=>{if(!Qi(t))return;let r=new mt(t,{autoWidth:!0,type:"loop",gap:"1.25rem",speed:600,easing:"ease",pagination:!1,breakpoints:{766:{gap:"0.625rem"}}}),n=t.querySelector(".splide__progress-bar");r.on("mounted move",()=>{let i=r.Components.Controller.getEnd()+1,s=i>0?Math.min((r.index+1)/i,1):0;n&&(n.style.width=`${100*s}%`)}),r.on("mounted",()=>{let i=r.root.querySelector(".splide__progress"),{length:s}=r;i&&s>0&&i.addEventListener("click",a=>{a.preventDefault(),a.stopPropagation();let{width:o,left:u}=i.getBoundingClientRect();if(o<=0)return;let c=a.clientX-u,d=Math.min(s-1,Math.max(0,Math.floor(c/o*s)));r.go(d)})}),r.mount(),window.offersSplides||(window.offersSplides=[]),window.offersSplides.push(r)})}function mr(){try{Xi(),Zi(),Ji()}catch{}}window.fsAttributes=window.fsAttributes||[];function es(){let t=window.location.pathname.replace(/\/$/,"").match(/^\/offers\/?(.*)$/);return(t?t[1]?.trim():null)||null}function Z(e,t){e&&(e.style.display=t?"":"none")}function ts(e,t,r){let n=[];for(let i of[e,t,r]){if(!i)continue;let s=i.closest(H.offerOthersTabPane);n.push({listEl:i,pane:s,rendered:!1})}return n}function rs(e){let t=e.querySelector(H.offerOthersTabsMenu);if(!t)return null;let r=[...e.querySelectorAll(H.offerOthersTabPane)],i=[...t.querySelectorAll(H.offerOthersTabLink)].findIndex(s=>s.classList.contains("w--current")||s.getAttribute("aria-selected")==="true");return i>=0&&r[i]?r[i]:r[0]??null}function xt(e,t,r){let n=rs(e);if(!n)return;let i=!1;for(let s of t)s.pane===n&&(s.rendered?(Z(r,!1),Z(s.listEl,!0),i=!0):(Z(r,!0),Z(s.listEl,!1)));for(let s of t)!s.pane&&s.rendered&&Z(s.listEl,!0);i&&Tn()}function ns(e,t,r){let n=e.querySelector(H.offerOthersTabsMenu);if(!n)return;let i=()=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>xt(e,t,r))})};n.addEventListener("click",s=>{let a=s.target.closest(H.offerOthersTabLink);!a||!n.contains(a)||i()}),n.querySelectorAll(H.offerOthersTabLink).forEach(s=>{new MutationObserver(()=>i()).observe(s,{attributes:!0,attributeFilter:["class","aria-selected"]})}),xt(e,t,r)}var Gt=null;function Tn(){Gt&&clearTimeout(Gt),Gt=setTimeout(()=>{Gt=null,requestAnimationFrame(()=>mr())},80)}async function is(){let e=es();if(!e)return;let t=document.querySelector(H.loadingSpinner),r=document.querySelector(H.offerSlugDetail),n=document.querySelector(H.offersMoreWrapper),i=!1;Z(t,!0),Z(r,!1),Z(n,!1);try{let s=document.querySelector(H.offerSlugDetail);s&&await _r(e,s),Z(r,!0);let a=document.querySelector(H.offerSlugOthersList),o=document.querySelector(H.offerSlugOthersList2),u=document.querySelector(H.offerSlugOthersList3),c=ts(a,o,u),d=!!n?.querySelector(H.offerOthersTabsMenu)&&c.length>0&&c.every(l=>l.pane!==null);d&&Z(t,!1);let g=new Map;for(let l of c)g.set(l.listEl,l);let h=l=>{if(!l)return;let f=g.get(l);f&&(f.rendered=!0),d&&n&&xt(n,c,t)},v=async(l,f)=>{if(l)try{await f()}finally{h(l)}};if(d&&n){i=!0;for(let f of c)Z(f.listEl,!1);Z(n,!0),ns(n,c,t);let l=[];if(a){let f=Ce(a);l.push(v(a,()=>f?f.getGroupOtherOffers(e,Ke["R\xC9SERVEZ T\xD4T"]):Promise.resolve()))}if(o){let f=Ce(o);l.push(v(o,()=>f?f.getGroupOtherOffers(e,Ke["DERNI\xC8RE MINUTE"]):Promise.resolve()))}if(u){let f=Ce(u);l.push(v(u,()=>f?f.getGroupOtherThemedOffers(e):Promise.resolve()))}Promise.all(l).catch(()=>{}).finally(()=>{n&&xt(n,c,t),Tn()})}else{let l=[];if(a){let f=Ce(a);f&&l.push(f.getGroupOtherOffers(e,Ke["R\xC9SERVEZ T\xD4T"]))}if(o){let f=Ce(o);f&&l.push(f.getGroupOtherOffers(e,Ke["DERNI\xC8RE MINUTE"]))}if(u){let f=Ce(u);f&&l.push(f.getGroupOtherThemedOffers(e))}l.length>0&&await Promise.all(l),Z(n,!0),requestAnimationFrame(()=>{mr()})}}catch{Z(t,!1),Z(r,!0),Z(n,!0)}finally{i||Z(t,!1)}}window.loadFromServer=()=>{let e=()=>{is()};document.readyState==="complete"?setTimeout(e,0):window.addEventListener("load",()=>setTimeout(e,0))};window.addEventListener("load",()=>{window.loadFromServer()});})();
2
2
  /*! Bundled license information:
3
3
 
4
4
  @splidejs/splide/dist/js/splide.esm.js:
@@ -1 +1 @@
1
- "use strict";(()=>{var W=Object.defineProperty;var Z=(s,e,t)=>e in s?W(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var b=(s,e,t)=>(Z(s,typeof e!="symbol"?e+"":e,t),t);var o="data",f={startingPriceList:`[${o}=starting-price-list]`,price:`[${o}=price]`,discount:`[${o}=discount]`,discountContainer:`[${o}=discount-container]`,currency:`[${o}=currency]`,beHid:`[${o}-be-hid]`,destination:`[${o}=destination]`,offersList:`[${o}=offers-list]`,offerSlugDetail:`[${o}=offer-slug-detail], [data-offer-slug-detail]`,offerSlugOthersList:`[${o}=offer-slug-others-list], [data-offer-slug-others-list]`,offerSlugOthersList2:`[${o}=offer-slug-others-list2], [data-offer-slug-others-list2]`,offerSlugOthersListItem:".offer-others_item",offersMoreWrapper:`[${o}=offers-more-wrapper]`,offersListContainer:`[${o}=offers-list-container]`,listItem:`[${o}=list-item]`,image:`[${o}=image]`,name:`[${o}=name]`,description:`[${o}=description]`,hotelName:`[${o}=hotel-name]`,hotelLink:`[${o}=hotel-link]`,hotelStartingPriceContainer:`[${o}=hotel-starting-price-container]`,moreDetails:`[${o}=more-details]`,offersPopup:`[${o}=offers-popup]`,offersPopupClose:`[${o}=close-btn]`,hotelReserveLink:`[${o}=hotel-reserve-link]`,hotelVillaReserveLink:`[${o}=hotel-villa-reserve-link]`,hotelURLS:`[${o}=hotel-urls]`,languageDropdown:`[${o}=language-dropdown]`,selectedLanguage:`[${o}=selected-language]`,loadingSpinner:`[${o}=loading-spinner]`,cmsFilterEmptyState:"[fs-cmsfilter-element=empty]",startingfromItem:s=>`[${o}-be-hid=${s}]`,popupOverlay:"[fs-smartlightbox-element=trigger-close]"};var L={en:"Guadeloupe Islands",fr:"Les \xCEles de Guadeloupe",es:"Las islas de Guadalupe",it:"Le isole della Guadalupa"},N={en:"La Dominique",fr:"La Dominique",es:"Dominica",it:"Dominica"},C={en:"Saint Lucia",fr:"Sainte-Lucie",es:"Santa Luc\xEDa",it:"Santa Lucia"},Q={en:"Martinique",fr:"Martinique",es:"Martinica",it:"Martinica"},S={en:"Mauritius",fr:"\xCEle Maurice",es:"Mauricio",it:"Mauritius"},R={en:"Saint Martin",fr:"Saint-Martin",es:"Saint-Martin",it:"Saint Martin"},P={en:"Antigua",fr:"Antigua",es:"Antigua",it:"Antigua"},V={en:"Anguilla",fr:"Anguilla",es:"Anguila",it:"Anguilla"},M={gpgos12767:{destination:L,slug:"/hotels-et-villas/creole-beach-hotel-spa",codeIPlanet:"FRAN414",cmsId:"67c809b5f63deab8a71cf8e9"},gptro12772:{destination:L,slug:"/hotels-et-villas/le-jardin-malanga",codeIPlanet:"FRAN416",cmsId:"67c809b5f63deab8a71cf90d"},gpsai12770:{destination:L,slug:"/hotels-et-villas/la-toubana-hotel-spa",codeIPlanet:"FRAN411",cmsId:"67c809b5f63deab8a71cf8ef"},gpgos12769:{destination:L,slug:"/hotels-et-villas/mahogany-hotel-residence-spa",codeIPlanet:"FRAN423",cmsId:"67c809b5f63deab8a71cf91f"},gpgua27143:{destination:L,slug:"/hotels-et-villas/langley-resort-fort-royal",codeIPlanet:"GPAN32",cmsId:"67c809b5f63deab8a71cf8f0"},mqros18592:{destination:N,slug:"/hotels-et-villas/jungle-bay-dominica",codeIPlanet:"DMAN1",cmsId:"67c809b5f63deab8a71cf8ed"},dmtib00001:{destination:N,slug:"/hotels-et-villas/secret-bay-dominique",codeIPlanet:"DMAN2",cmsId:"67c809b5f63deab8a71cfefd"},agste21689:{destination:C,slug:"/hotels-et-villas/jade-mountain",codeIPlanet:"AGAN6",cmsId:"67c809b5f63deab8a71cf92a"},zzzzz25376:{destination:C,slug:"/hotels-et-villas/windjammer-landing",codeIPlanet:"LCAN4",cmsId:"67c809b5f63deab8a71cf92b"},lcgro30400:{destination:C,slug:"/hotels-et-villas/cap-maison",codeIPlanet:"LCLC8",cmsId:"67c809b5f63deab8a71cf929"},agste21688:{destination:C,slug:"/hotels-et-villas/anse-chastanet",codeIPlanet:"AGAN5",cmsId:"67c809b5f63deab8a71cf928"},mqsai18593:{destination:Q,slug:"/hotels-et-villas/plein-soleil",codeIPlanet:"MQAN16",cmsId:"67c809b5f63deab8a71cf925"},zzzzz25378:{destination:S,slug:"/hotels-et-villas/shanti-maurice",codeIPlanet:"MUAN22",cmsId:"67c809b5f63deab8a71cf933"},zzzzz25377:{destination:S,slug:"/hotels-et-villas/lux-le-morne",codeIPlanet:"MUAN21",cmsId:"67c809b5f63deab8a71cf931"},zzzzz25379:{destination:S,slug:"/hotels-et-villas/constance-belle-mare-plage",codeIPlanet:"MUAN20",cmsId:"67c809b5f63deab8a71cf92f"},mupos25678:{destination:S,slug:"/hotels-et-villas/constance-le-prince-maurice",codeIPlanet:"MUAN24",cmsId:"67c809b5f63deab8a71cf930"},zzzzz25380:{destination:S,slug:"/hotels-et-villas/anahita-the-resort",codeIPlanet:"MUAN19",cmsId:"67c809b5f63deab8a71cf92e"},agstm21687:{destination:R,slug:"/hotels-et-villas/la-samanna",codeIPlanet:"FRAN2350",cmsId:"67c809b5f63deab8a71cf926"},frsai31536:{destination:R,slug:"/hotels-et-villas/le-grand-case-beach-club",codeIPlanet:"FRFRA3",cmsId:"67c809b5f63deab8a71cf927"},ageng20433:{destination:P,slug:"/hotels-et-villas/the-inn-at-english-harbour",codeIPlanet:"AGAN4",cmsId:"67c809b5f63deab8a71cf8ec"},agcro20496:{destination:P,slug:"/hotels-et-villas/blue-waters",codeIPlanet:"AGAN1",cmsId:"67c809b5f63deab8a71cf8eb"},gpang25884:{destination:V,slug:"/hotels-et-villas/aurora-anguilla-resort-golf-club",codeIPlanet:"GPAN30",cmsId:"67c809b5f63deab8a71cf8ea"}},w={AED:"\u062F.\u0625.",AFN:"Af",ALL:"L",AMD:"\u058F",ANG:"\u0192",AOA:"Kz",ARS:"AR$",AUD:"AU$",AWG:"\u0192",AZN:"\u043C\u0430\u043D",BAM:"KM",BBD:"BBD$",BDT:"\u09F3",BGN:"\u043B\u0432.",BHD:"BD",BIF:"FBu",BMD:"$",BND:"B$",BOB:"Bs.",BRL:"R$",BSD:"$",BTN:"Nu.",BWP:"P",BYN:"Br",BZD:"BZ$",CAD:"CA$",CDF:"FC",CHF:"Fr.",CKD:"$",CLP:"CL$",CNY:"CN\xA5",COP:"CO$",CRC:"\u20A1",CUC:"CUC$",CUP:"$MN",CVE:"CV$",CZK:"K\u010D",DJF:"Fdj",DKK:"kr.",DOP:"RD$",DZD:"DA",EGP:"E\xA3",EHP:"Ptas.",ERN:"Nkf",ETB:"Br",EUR:"\u20AC",FJD:"FJ$",FKP:"FK\xA3",FOK:"kr",GBP:"\xA3",GEL:"\u20BE",GGP:"\xA3",GHS:"GH\u20B5",GIP:"\xA3",GMD:"D",GNF:"FG",GTQ:"Q",GYD:"G$",HKD:"HK$",HNL:"L",HRK:"kn",HTG:"G",HUF:"Ft",IDR:"Rp",ILS:"\u20AA",IMP:"\xA3",INR:"Rs.",IQD:"\u062F.\u0639.",IRR:"\uFDFC",ISK:"kr",JEP:"\xA3",JMD:"J$",JOD:"JD",JPY:"\xA5",KES:"KSh",KGS:"\u0441",KHR:"\u17DB",KID:"$",KMF:"CF",KPW:"\u20A9",KRW:"\u20A9",KWD:"KD",KYD:"CI$",KZT:"\u20B8",LAK:"\u20ADN",LBP:"LL.",LKR:"Rs.",LRD:"L$",LSL:"L",LYD:"LD",MAD:"DH",MDL:"L",MGA:"Ar",MKD:"den",MMK:"Ks",MNT:"\u20AE",MOP:"MOP$",MRU:"UM",MUR:"Rs.",MVR:"MRf",MWK:"MK",MXN:"MX$",MYR:"RM",MZN:"MTn",NAD:"N$",NGN:"\u20A6",NIO:"C$",NOK:"kr",NPR:"Rs.",NZD:"NZ$",OMR:"OR",PAB:"B/.",PEN:"S/.",PGK:"K",PHP:"\u20B1",PKR:"Rs.",PLN:"z\u0142",PND:"$",PRB:"\u0440.",PYG:"\u20B2",QAR:"QR",RON:"L",RSD:"din",RUB:"\u20BD",RWF:"FRw",SAR:"SR",SBD:"SI$",SCR:"Rs.",SDG:"\xA3SD",SEK:"kr",SGD:"S$",SHP:"\xA3",SLL:"Le",SLS:"Sl",SOS:"Sh.So.",SRD:"Sr$",SSP:"SS\xA3",STN:"Db",SVC:"\u20A1",SYP:"LS",SZL:"L",THB:"\u0E3F",TJS:"SM",TMT:"m.",TND:"DT",TOP:"T$",TRY:"TL",TTD:"TT$",TVD:"$",TWD:"NT$",TZS:"TSh",UAH:"\u20B4",UGX:"USh",USD:"$",UYU:"$U",UZS:"\u0441\u0443\u043C",VED:"Bs.",VES:"Bs.F",VND:"\u20AB",VUV:"VT",WST:"T",XAF:"Fr",XCD:"$",XOF:"\u20A3",XPF:"\u20A3",YER:"YR",ZAR:"R",ZMW:"ZK",ZWB:"",ZWL:"Z$",Abkhazia:"",Artsakh:"\u0564\u0580."},$={it:"it_IT",es:"es_ES",fr:"fr_FR",en:"en_GB"};var I="https://deshotelsetdesiles.ccordier.workers.dev/v2/",F="https://deshotelsetdesiles.i-planet.fr/dhdi-public/searchform.cgi",T="FR",z="1*q1lzz9*_gcl_au*MTMyMzcyMDY5NC4xNzM5Mjg5MzYx*_ga*NTAxMzI1MzMwLjE3MzkyODkzNjE.*_ga_Q0RXHLR7D4*MTczOTI5NzEzNC4zLjAuMTczOTI5NzE3Mi4yMi4wLjA.";var G=async()=>new Promise(s=>{geoip2.country(e=>{s(e.country.iso_code)},()=>{s(T)})});var v=s=>{let e="?";for(let[t,r]of Object.entries(s))r&&(e+=`${t}=${r}&`);return e};var y=class{async getGroupOffersData(e){let t=I+"groupOffers"+v(e),a=await(await fetch(t)).json();return a.error||!a.data?null:a}async getSingleHotelOffersData(e){let t=I+"offers"+v(e),a=await(await fetch(t)).json();return a.error||!a.data?null:a}async getCMSOffers(){let e=I+"cmsOffers",r=await(await fetch(e)).json();return r.items?r:null}async getCountries(){let e=I+"cmsCountries",r=await(await fetch(e)).json();return r.items?r:null}};var _=()=>{let s=U();if(!s){let e=localStorage.getItem("wglang")||"fr";window.Weglot.switchTo(e)}window.Weglot.on("languageChanged",()=>{if(s)window.location.reload();else{let e=window.Weglot.getCurrentLang();localStorage.setItem("wglang",e),window.loadFromServer&&window.loadFromServer()}})},U=()=>window.location.hostname!=="deshotelsetdesiles.webflow.io",B=()=>{let s=O();return $[s]},O=()=>{if(!U())return localStorage.getItem("wglang")||"fr";try{let s=window.Weglot.getCurrentLang();if(s)return s}catch(s){return console.error("Error getting language",s),"fr"}return"fr"},q=()=>{let s={};return Object.entries(M).forEach(([e,t])=>{s[t.cmsId]=e}),s},p=(s,e)=>`${s.toLowerCase().trim()}-${e.toLowerCase().trim()}`,x=(s,e,t)=>{let r=O().toUpperCase(),a=M[e].codeIPlanet.toUpperCase(),i=`${F}?Lang=${r}&currency=${s.toUpperCase()}&HotelCode=${a}`,l=k("_ga"),n=z,d=k("_gcl_au");return i+=`&_ga=${l}&_gl=${n}&_gcl_au=${d}`,t&&(i=`${i}&HotelPromo=${t}`),i},k=s=>{let e=document.cookie.match(new RegExp("(^| )"+s+"=([^;]+)"));return e?e[2]:null};var K=(s,e,t,r)=>{let{quotation:a,rate:{distribution:i}}=e,{pricePerNight:l,currency:n,plainBookLink:d}=a,{accessCode:m}=i||{},g="";m&&m.length>0&&([g]=m),J(s,l,n);let h=s.querySelector(f.hotelReserveLink);h&&h.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),window.open(d,"_blank")});let c=s.querySelector(f.hotelVillaReserveLink);if(c&&c.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),window.open(x(n,t,g),"_blank")}),r){let{fieldData:{"discount-percentage":u}}=r,D=s.querySelector(f.discount);D&&u&&(D.innerHTML=`-${u}%`);let E=s.querySelector(f.discountContainer);E&&!u&&(E.style.display="none")}},J=(s,e,t)=>{let r=s.querySelector(f.price);r&&(r.innerHTML=Math.floor(e).toString());let a=s.querySelector(f.currency);a&&(a.innerHTML=w[t])};var A=class{constructor(e,t){this.listInstance=e;this.itemTemplateElement=t;b(this,"loadingSpinner");b(this,"cmsFilterEmptyState");b(this,"offerLookup",{});b(this,"apiClient",new y);b(this,"countryCode");b(this,"availableCountries",{});b(this,"countryCodeFilter",e=>{let{fieldData:t}=e;return!t["supported-countries"]||t["supported-countries"].length===0?!0:t["supported-countries"].map(a=>this.availableCountries[a]).includes(this.countryCode)});this.cmsFilterEmptyState=document.querySelector(f.cmsFilterEmptyState),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.add("hide-empty-state"),e.clearItems(),_(),this.loadingSpinner=document.querySelector(f.loadingSpinner),this.countryCode=T}async getGroupOffers(e){let{clearItems:t=!0,filter:r}=e||{};t&&this.listInstance.clearItems();let a=await this.apiClient.getCMSOffers();if(!a)return;let i=await this.apiClient.getCountries();if(!i)return;i.items.forEach(D=>{this.availableCountries[D.id]=D.fieldData.title?.trim()}),this.countryCode=await G();let l=a.items.filter(r).filter(this.countryCodeFilter),n=this.generateHotelIds(l),d=this.generateHotelIds(l).join(","),m=n.length===1;m&&(d=[d,d].join(","));let{offerMetaData:g}=this.generateOfferData(l),h=B(),c=await this.apiClient.getGroupOffersData({hids:d,locale:h});if(!c||c.error||!c.data){this.hideSpinnerAndShowFilter();return}m&&(c.data=[c.data[0]]);let u=this.getAllOffers(c,g);this.addHotelToCollection(u),this.hideSpinnerAndShowFilter()}async getGroupCategoryOffers(e,t=!1){let r=a=>{let{isArchived:i,isDraft:l,fieldData:n}=a;return i||l?!1:t?(!n.thematiques||n.thematiques.length===0)&&!n.slug.includes("derniere-minute")&&!n.slug.includes("reservez-tot"):n.category===e};await this.getGroupOffers({filter:r})}async getGroupThemeOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:l}=r;return a||i||!l.thematiques?!1:l.thematiques.includes(e)};await this.getGroupOffers({filter:t})}async getGroupSlugOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:l}=r;return a||i?!1:l.slug===e};await this.getGroupOffers({filter:t})}async getGroupOtherOffers(e,t){let r=a=>{let{isArchived:i,isDraft:l,fieldData:n}=a;return i||l||n.slug===e?!1:t?n.category===t:(!n.thematiques||n.thematiques.length===0)&&!n.slug.includes("derniere-minute")&&!n.slug.includes("reservez-tot")};await this.getGroupOffers({filter:r})}hideSpinnerAndShowFilter(){this.loadingSpinner&&(this.loadingSpinner.style.display="none"),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.remove("hide-empty-state")}generateHotelIds(e){let t=[],r=q();return e.forEach(a=>{let{fieldData:{"hotel-villa":i}}=a;t.push(r[i])}),Array.from(new Set(t))}getAllOffers(e,t){let r=[];return e.data.forEach(a=>{let{prop:{hid:i},rates:l}=a;l.forEach(n=>{let{name:d,title:m}=n.rate;(t.includes(p(i,d))||t.includes(p(i,m)))&&r.push({...a,rates:[n]})})}),r.sort((a,i)=>{let l=this.offerLookup[p(a.prop.hid,a.rates[0].rate.title)]||this.offerLookup[p(a.prop.hid,a.rates[0].rate.name)],n=this.offerLookup[p(i.prop.hid,i.rates[0].rate.title)]||this.offerLookup[p(i.prop.hid,i.rates[0].rate.name)],d=Number(l.fieldData.order)||0,m=Number(n.fieldData.order)||0;return d-m}),r}generateOfferData(e){let t=[];return e.forEach(r=>{let{fieldData:{"hotel-or-property-api-id":a,"offer-api-name":i}}=r,l=p(a,i);t.push(l),this.offerLookup[l]=r}),{offerMetaData:t}}addHotelToCollection(e){for(let{prop:t,rates:r}of e){let a=r.map(i=>this.createItem(t,i,this.itemTemplateElement));this.listInstance.addItems(a)}}createItem(e,t,r){let{rate:a}=t,{hid:i,title:l,property:n}=e,{image:d,title:m,name:g}=a,h=this.offerLookup[p(i||n,m)]||this.offerLookup[p(i||n,g)],c=r.cloneNode(!0),u=M[i||n];if(!u)return c;let{destination:D,slug:E}=u;this.bindOffersMetaData(c,{destination:D,image:d,hotelName:l,title:m,slug:E}),K(c,t,i,h);let H=c.querySelector(f.moreDetails);return H&&H.addEventListener("click",()=>{let j=this.getOffersCmsSlug(i,n,g);window.location.href=`/offers/${j}`}),c.style.display="flex",c}getOffersCmsSlug(e,t,r){return this.offerLookup[p(e||t,r)]?.fieldData.slug}bindOffersMetaData(e,{destination:t,image:r,hotelName:a,title:i,slug:l,description:n}){let d=e.querySelector(f.destination),m=e.querySelector(f.image),g=e.querySelector(f.hotelName),h=e.querySelector(f.name),c=e.querySelector(f.description),u=e.querySelector(f.hotelLink),D=O();d&&(d.textContent=t[D]),m&&(m.src=r?.url),g&&(g.innerHTML=a),h&&(h.innerHTML=i),c&&n&&(c.innerHTML=n),u&&l&&u.addEventListener("click",()=>{window.location.href=l})}};var Y=s=>{let[e]=s,{listInstance:t}=e;if(t.items.length===0)throw new Error("No items found in the list instance - Cannot create an instance of Offers");return X(t)},X=s=>{let[e]=s.items;if(!e)throw new Error("No items found in the list instance");let t=e.element;return new A(s,t)};window.fsAttributes=window.fsAttributes||[];window.loadFromServer=()=>{window.fsAttributes.push(["cmsfilter",async s=>{await Y(s).getGroupCategoryOffers(void 0,!0)}])};window.loadFromServer();})();
1
+ "use strict";(()=>{var W=Object.defineProperty;var Z=(s,e,t)=>e in s?W(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var D=(s,e,t)=>(Z(s,typeof e!="symbol"?e+"":e,t),t);var l="data",f={startingPriceList:`[${l}=starting-price-list]`,price:`[${l}=price]`,discount:`[${l}=discount]`,discountContainer:`[${l}=discount-container]`,currency:`[${l}=currency]`,beHid:`[${l}-be-hid]`,destination:`[${l}=destination]`,offersList:`[${l}=offers-list]`,offerSlugDetail:`[${l}=offer-slug-detail], [data-offer-slug-detail]`,offerSlugOthersList:`[${l}=offer-slug-others-list], [data-offer-slug-others-list]`,offerSlugOthersList2:`[${l}=offer-slug-others-list2], [data-offer-slug-others-list2]`,offerSlugOthersList3:`[${l}=offer-slug-others-list3], [data-offer-slug-others-list3]`,offerSlugOthersListItem:".offer-others_item",offersMoreWrapper:`[${l}=offers-more-wrapper]`,offerOthersTabsMenu:".offer-others_tabs-menu",offerOthersTabLink:".offer-others_tab-link",offerOthersTabPane:".offer-others_tab-pane",offersListContainer:`[${l}=offers-list-container]`,listItem:`[${l}=list-item]`,image:`[${l}=image]`,name:`[${l}=name]`,description:`[${l}=description]`,hotelName:`[${l}=hotel-name]`,hotelLink:`[${l}=hotel-link]`,hotelStartingPriceContainer:`[${l}=hotel-starting-price-container]`,moreDetails:`[${l}=more-details]`,offersPopup:`[${l}=offers-popup]`,offersPopupClose:`[${l}=close-btn]`,hotelReserveLink:`[${l}=hotel-reserve-link]`,hotelVillaReserveLink:`[${l}=hotel-villa-reserve-link]`,hotelURLS:`[${l}=hotel-urls]`,languageDropdown:`[${l}=language-dropdown]`,selectedLanguage:`[${l}=selected-language]`,loadingSpinner:`[${l}=loading-spinner]`,cmsFilterEmptyState:"[fs-cmsfilter-element=empty]",startingfromItem:s=>`[${l}-be-hid=${s}]`,popupOverlay:"[fs-smartlightbox-element=trigger-close]"};var L={en:"Guadeloupe Islands",fr:"Les \xCEles de Guadeloupe",es:"Las islas de Guadalupe",it:"Le isole della Guadalupa"},N={en:"La Dominique",fr:"La Dominique",es:"Dominica",it:"Dominica"},C={en:"Saint Lucia",fr:"Sainte-Lucie",es:"Santa Luc\xEDa",it:"Santa Lucia"},Q={en:"Martinique",fr:"Martinique",es:"Martinica",it:"Martinica"},S={en:"Mauritius",fr:"\xCEle Maurice",es:"Mauricio",it:"Mauritius"},P={en:"Saint Martin",fr:"Saint-Martin",es:"Saint-Martin",it:"Saint Martin"},R={en:"Antigua",fr:"Antigua",es:"Antigua",it:"Antigua"},V={en:"Anguilla",fr:"Anguilla",es:"Anguila",it:"Anguilla"},M={gpgos12767:{destination:L,slug:"/hotels-et-villas/creole-beach-hotel-spa",codeIPlanet:"FRAN414",cmsId:"67c809b5f63deab8a71cf8e9"},gptro12772:{destination:L,slug:"/hotels-et-villas/le-jardin-malanga",codeIPlanet:"FRAN416",cmsId:"67c809b5f63deab8a71cf90d"},gpsai12770:{destination:L,slug:"/hotels-et-villas/la-toubana-hotel-spa",codeIPlanet:"FRAN411",cmsId:"67c809b5f63deab8a71cf8ef"},gpgos12769:{destination:L,slug:"/hotels-et-villas/mahogany-hotel-residence-spa",codeIPlanet:"FRAN423",cmsId:"67c809b5f63deab8a71cf91f"},gpgua27143:{destination:L,slug:"/hotels-et-villas/langley-resort-fort-royal",codeIPlanet:"GPAN32",cmsId:"67c809b5f63deab8a71cf8f0"},mqros18592:{destination:N,slug:"/hotels-et-villas/jungle-bay-dominica",codeIPlanet:"DMAN1",cmsId:"67c809b5f63deab8a71cf8ed"},dmtib00001:{destination:N,slug:"/hotels-et-villas/secret-bay-dominique",codeIPlanet:"DMAN2",cmsId:"67c809b5f63deab8a71cfefd"},agste21689:{destination:C,slug:"/hotels-et-villas/jade-mountain",codeIPlanet:"AGAN6",cmsId:"67c809b5f63deab8a71cf92a"},zzzzz25376:{destination:C,slug:"/hotels-et-villas/windjammer-landing",codeIPlanet:"LCAN4",cmsId:"67c809b5f63deab8a71cf92b"},lcgro30400:{destination:C,slug:"/hotels-et-villas/cap-maison",codeIPlanet:"LCLC8",cmsId:"67c809b5f63deab8a71cf929"},agste21688:{destination:C,slug:"/hotels-et-villas/anse-chastanet",codeIPlanet:"AGAN5",cmsId:"67c809b5f63deab8a71cf928"},mqsai18593:{destination:Q,slug:"/hotels-et-villas/plein-soleil",codeIPlanet:"MQAN16",cmsId:"67c809b5f63deab8a71cf925"},zzzzz25378:{destination:S,slug:"/hotels-et-villas/shanti-maurice",codeIPlanet:"MUAN22",cmsId:"67c809b5f63deab8a71cf933"},zzzzz25377:{destination:S,slug:"/hotels-et-villas/lux-le-morne",codeIPlanet:"MUAN21",cmsId:"67c809b5f63deab8a71cf931"},zzzzz25379:{destination:S,slug:"/hotels-et-villas/constance-belle-mare-plage",codeIPlanet:"MUAN20",cmsId:"67c809b5f63deab8a71cf92f"},mupos25678:{destination:S,slug:"/hotels-et-villas/constance-le-prince-maurice",codeIPlanet:"MUAN24",cmsId:"67c809b5f63deab8a71cf930"},zzzzz25380:{destination:S,slug:"/hotels-et-villas/anahita-the-resort",codeIPlanet:"MUAN19",cmsId:"67c809b5f63deab8a71cf92e"},agstm21687:{destination:P,slug:"/hotels-et-villas/la-samanna",codeIPlanet:"FRAN2350",cmsId:"67c809b5f63deab8a71cf926"},frsai31536:{destination:P,slug:"/hotels-et-villas/le-grand-case-beach-club",codeIPlanet:"FRFRA3",cmsId:"67c809b5f63deab8a71cf927"},ageng20433:{destination:R,slug:"/hotels-et-villas/the-inn-at-english-harbour",codeIPlanet:"AGAN4",cmsId:"67c809b5f63deab8a71cf8ec"},agcro20496:{destination:R,slug:"/hotels-et-villas/blue-waters",codeIPlanet:"AGAN1",cmsId:"67c809b5f63deab8a71cf8eb"},gpang25884:{destination:V,slug:"/hotels-et-villas/aurora-anguilla-resort-golf-club",codeIPlanet:"GPAN30",cmsId:"67c809b5f63deab8a71cf8ea"}},w={AED:"\u062F.\u0625.",AFN:"Af",ALL:"L",AMD:"\u058F",ANG:"\u0192",AOA:"Kz",ARS:"AR$",AUD:"AU$",AWG:"\u0192",AZN:"\u043C\u0430\u043D",BAM:"KM",BBD:"BBD$",BDT:"\u09F3",BGN:"\u043B\u0432.",BHD:"BD",BIF:"FBu",BMD:"$",BND:"B$",BOB:"Bs.",BRL:"R$",BSD:"$",BTN:"Nu.",BWP:"P",BYN:"Br",BZD:"BZ$",CAD:"CA$",CDF:"FC",CHF:"Fr.",CKD:"$",CLP:"CL$",CNY:"CN\xA5",COP:"CO$",CRC:"\u20A1",CUC:"CUC$",CUP:"$MN",CVE:"CV$",CZK:"K\u010D",DJF:"Fdj",DKK:"kr.",DOP:"RD$",DZD:"DA",EGP:"E\xA3",EHP:"Ptas.",ERN:"Nkf",ETB:"Br",EUR:"\u20AC",FJD:"FJ$",FKP:"FK\xA3",FOK:"kr",GBP:"\xA3",GEL:"\u20BE",GGP:"\xA3",GHS:"GH\u20B5",GIP:"\xA3",GMD:"D",GNF:"FG",GTQ:"Q",GYD:"G$",HKD:"HK$",HNL:"L",HRK:"kn",HTG:"G",HUF:"Ft",IDR:"Rp",ILS:"\u20AA",IMP:"\xA3",INR:"Rs.",IQD:"\u062F.\u0639.",IRR:"\uFDFC",ISK:"kr",JEP:"\xA3",JMD:"J$",JOD:"JD",JPY:"\xA5",KES:"KSh",KGS:"\u0441",KHR:"\u17DB",KID:"$",KMF:"CF",KPW:"\u20A9",KRW:"\u20A9",KWD:"KD",KYD:"CI$",KZT:"\u20B8",LAK:"\u20ADN",LBP:"LL.",LKR:"Rs.",LRD:"L$",LSL:"L",LYD:"LD",MAD:"DH",MDL:"L",MGA:"Ar",MKD:"den",MMK:"Ks",MNT:"\u20AE",MOP:"MOP$",MRU:"UM",MUR:"Rs.",MVR:"MRf",MWK:"MK",MXN:"MX$",MYR:"RM",MZN:"MTn",NAD:"N$",NGN:"\u20A6",NIO:"C$",NOK:"kr",NPR:"Rs.",NZD:"NZ$",OMR:"OR",PAB:"B/.",PEN:"S/.",PGK:"K",PHP:"\u20B1",PKR:"Rs.",PLN:"z\u0142",PND:"$",PRB:"\u0440.",PYG:"\u20B2",QAR:"QR",RON:"L",RSD:"din",RUB:"\u20BD",RWF:"FRw",SAR:"SR",SBD:"SI$",SCR:"Rs.",SDG:"\xA3SD",SEK:"kr",SGD:"S$",SHP:"\xA3",SLL:"Le",SLS:"Sl",SOS:"Sh.So.",SRD:"Sr$",SSP:"SS\xA3",STN:"Db",SVC:"\u20A1",SYP:"LS",SZL:"L",THB:"\u0E3F",TJS:"SM",TMT:"m.",TND:"DT",TOP:"T$",TRY:"TL",TTD:"TT$",TVD:"$",TWD:"NT$",TZS:"TSh",UAH:"\u20B4",UGX:"USh",USD:"$",UYU:"$U",UZS:"\u0441\u0443\u043C",VED:"Bs.",VES:"Bs.F",VND:"\u20AB",VUV:"VT",WST:"T",XAF:"Fr",XCD:"$",XOF:"\u20A3",XPF:"\u20A3",YER:"YR",ZAR:"R",ZMW:"ZK",ZWB:"",ZWL:"Z$",Abkhazia:"",Artsakh:"\u0564\u0580."},$={it:"it_IT",es:"es_ES",fr:"fr_FR",en:"en_GB"};var I="https://deshotelsetdesiles.ccordier.workers.dev/v2/",F="https://deshotelsetdesiles.i-planet.fr/dhdi-public/searchform.cgi",T="FR",z="1*q1lzz9*_gcl_au*MTMyMzcyMDY5NC4xNzM5Mjg5MzYx*_ga*NTAxMzI1MzMwLjE3MzkyODkzNjE.*_ga_Q0RXHLR7D4*MTczOTI5NzEzNC4zLjAuMTczOTI5NzE3Mi4yMi4wLjA.";var G=async()=>new Promise(s=>{geoip2.country(e=>{s(e.country.iso_code)},()=>{s(T)})});var v=s=>{let e="?";for(let[t,r]of Object.entries(s))r&&(e+=`${t}=${r}&`);return e};var O=class{async getGroupOffersData(e){let t=I+"groupOffers"+v(e),a=await(await fetch(t)).json();return a.error||!a.data?null:a}async getSingleHotelOffersData(e){let t=I+"offers"+v(e),a=await(await fetch(t)).json();return a.error||!a.data?null:a}async getCMSOffers(){let e=I+"cmsOffers",r=await(await fetch(e)).json();return r.items?r:null}async getCountries(){let e=I+"cmsCountries",r=await(await fetch(e)).json();return r.items?r:null}};var _=()=>{let s=U();if(!s){let e=localStorage.getItem("wglang")||"fr";window.Weglot.switchTo(e)}window.Weglot.on("languageChanged",()=>{if(s)window.location.reload();else{let e=window.Weglot.getCurrentLang();localStorage.setItem("wglang",e),window.loadFromServer&&window.loadFromServer()}})},U=()=>window.location.hostname!=="deshotelsetdesiles.webflow.io",B=()=>{let s=y();return $[s]},y=()=>{if(!U())return localStorage.getItem("wglang")||"fr";try{let s=window.Weglot.getCurrentLang();if(s)return s}catch(s){return console.error("Error getting language",s),"fr"}return"fr"},q=()=>{let s={};return Object.entries(M).forEach(([e,t])=>{s[t.cmsId]=e}),s},p=(s,e)=>`${s.toLowerCase().trim()}-${e.toLowerCase().trim()}`,x=(s,e,t)=>{let r=y().toUpperCase(),a=M[e].codeIPlanet.toUpperCase(),i=`${F}?Lang=${r}&currency=${s.toUpperCase()}&HotelCode=${a}`,n=k("_ga"),o=z,d=k("_gcl_au");return i+=`&_ga=${n}&_gl=${o}&_gcl_au=${d}`,t&&(i=`${i}&HotelPromo=${t}`),i},k=s=>{let e=document.cookie.match(new RegExp("(^| )"+s+"=([^;]+)"));return e?e[2]:null};var K=(s,e,t,r)=>{let{quotation:a,rate:{distribution:i}}=e,{pricePerNight:n,currency:o,plainBookLink:d}=a,{accessCode:m}=i||{},g="";m&&m.length>0&&([g]=m),J(s,n,o);let h=s.querySelector(f.hotelReserveLink);h&&h.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),window.open(d,"_blank")});let c=s.querySelector(f.hotelVillaReserveLink);if(c&&c.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),window.open(x(o,t,g),"_blank")}),r){let{fieldData:{"discount-percentage":u}}=r,b=s.querySelector(f.discount);b&&u&&(b.innerHTML=`-${u}%`);let E=s.querySelector(f.discountContainer);E&&!u&&(E.style.display="none")}},J=(s,e,t)=>{let r=s.querySelector(f.price);r&&(r.innerHTML=Math.floor(e).toString());let a=s.querySelector(f.currency);a&&(a.innerHTML=w[t])};var A=class{constructor(e,t){this.listInstance=e;this.itemTemplateElement=t;D(this,"loadingSpinner");D(this,"cmsFilterEmptyState");D(this,"offerLookup",{});D(this,"apiClient",new O);D(this,"countryCode");D(this,"availableCountries",{});D(this,"countryCodeFilter",e=>{let{fieldData:t}=e;return!t["supported-countries"]||t["supported-countries"].length===0?!0:t["supported-countries"].map(a=>this.availableCountries[a]).includes(this.countryCode)});this.cmsFilterEmptyState=document.querySelector(f.cmsFilterEmptyState),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.add("hide-empty-state"),e.clearItems(),_(),this.loadingSpinner=document.querySelector(f.loadingSpinner),this.countryCode=T}async getGroupOffers(e){let{clearItems:t=!0,filter:r}=e||{};t&&this.listInstance.clearItems();let a=await this.apiClient.getCMSOffers();if(!a)return;let i=await this.apiClient.getCountries();if(!i)return;i.items.forEach(b=>{this.availableCountries[b.id]=b.fieldData.title?.trim()}),this.countryCode=await G();let n=a.items.filter(r).filter(this.countryCodeFilter),o=this.generateHotelIds(n),d=this.generateHotelIds(n).join(","),m=o.length===1;m&&(d=[d,d].join(","));let{offerMetaData:g}=this.generateOfferData(n),h=B(),c=await this.apiClient.getGroupOffersData({hids:d,locale:h});if(!c||c.error||!c.data){this.hideSpinnerAndShowFilter();return}m&&(c.data=[c.data[0]]);let u=this.getAllOffers(c,g);this.addHotelToCollection(u),this.hideSpinnerAndShowFilter()}async getGroupCategoryOffers(e,t=!1){let r=a=>{let{isArchived:i,isDraft:n,fieldData:o}=a;return i||n?!1:t?(!o.thematiques||o.thematiques.length===0)&&!o.slug.includes("derniere-minute")&&!o.slug.includes("reservez-tot"):o.category===e};await this.getGroupOffers({filter:r})}async getGroupThemeOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:n}=r;return a||i||!n.thematiques?!1:n.thematiques.includes(e)};await this.getGroupOffers({filter:t})}async getGroupOtherThemedOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:n}=r;return a||i||n.slug===e?!1:Array.isArray(n.thematiques)&&n.thematiques.length>0};await this.getGroupOffers({filter:t})}async getGroupSlugOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:n}=r;return a||i?!1:n.slug===e};await this.getGroupOffers({filter:t})}async getGroupOtherOffers(e,t){let r=a=>{let{isArchived:i,isDraft:n,fieldData:o}=a;return i||n||o.slug===e?!1:t?o.category===t:(!o.thematiques||o.thematiques.length===0)&&!o.slug.includes("derniere-minute")&&!o.slug.includes("reservez-tot")};await this.getGroupOffers({filter:r})}hideSpinnerAndShowFilter(){this.loadingSpinner&&(this.loadingSpinner.style.display="none"),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.remove("hide-empty-state")}generateHotelIds(e){let t=[],r=q();return e.forEach(a=>{let{fieldData:{"hotel-villa":i}}=a;t.push(r[i])}),Array.from(new Set(t))}getAllOffers(e,t){let r=[];return e.data.forEach(a=>{let{prop:{hid:i},rates:n}=a;n.forEach(o=>{let{name:d,title:m}=o.rate;(t.includes(p(i,d))||t.includes(p(i,m)))&&r.push({...a,rates:[o]})})}),r.sort((a,i)=>{let n=this.offerLookup[p(a.prop.hid,a.rates[0].rate.title)]||this.offerLookup[p(a.prop.hid,a.rates[0].rate.name)],o=this.offerLookup[p(i.prop.hid,i.rates[0].rate.title)]||this.offerLookup[p(i.prop.hid,i.rates[0].rate.name)],d=Number(n.fieldData.order)||0,m=Number(o.fieldData.order)||0;return d-m}),r}generateOfferData(e){let t=[];return e.forEach(r=>{let{fieldData:{"hotel-or-property-api-id":a,"offer-api-name":i}}=r,n=p(a,i);t.push(n),this.offerLookup[n]=r}),{offerMetaData:t}}addHotelToCollection(e){for(let{prop:t,rates:r}of e){let a=r.map(i=>this.createItem(t,i,this.itemTemplateElement));this.listInstance.addItems(a)}}createItem(e,t,r){let{rate:a}=t,{hid:i,title:n,property:o}=e,{image:d,title:m,name:g}=a,h=this.offerLookup[p(i||o,m)]||this.offerLookup[p(i||o,g)],c=r.cloneNode(!0),u=M[i||o];if(!u)return c;let{destination:b,slug:E}=u;this.bindOffersMetaData(c,{destination:b,image:d,hotelName:n,title:m,slug:E}),K(c,t,i,h);let H=c.querySelector(f.moreDetails);return H&&H.addEventListener("click",()=>{let j=this.getOffersCmsSlug(i,o,g);window.location.href=`/offers/${j}`}),c.style.display="flex",c}getOffersCmsSlug(e,t,r){return this.offerLookup[p(e||t,r)]?.fieldData.slug}bindOffersMetaData(e,{destination:t,image:r,hotelName:a,title:i,slug:n,description:o}){let d=e.querySelector(f.destination),m=e.querySelector(f.image),g=e.querySelector(f.hotelName),h=e.querySelector(f.name),c=e.querySelector(f.description),u=e.querySelector(f.hotelLink),b=y();d&&(d.textContent=t[b]),m&&(m.src=r?.url),g&&(g.innerHTML=a),h&&(h.innerHTML=i),c&&o&&(c.innerHTML=o),u&&n&&u.addEventListener("click",()=>{window.location.href=n})}};var Y=s=>{let[e]=s,{listInstance:t}=e;if(t.items.length===0)throw new Error("No items found in the list instance - Cannot create an instance of Offers");return X(t)},X=s=>{let[e]=s.items;if(!e)throw new Error("No items found in the list instance");let t=e.element;return new A(s,t)};window.fsAttributes=window.fsAttributes||[];window.loadFromServer=()=>{window.fsAttributes.push(["cmsfilter",async s=>{await Y(s).getGroupCategoryOffers(void 0,!0)}])};window.loadFromServer();})();
@@ -1 +1 @@
1
- "use strict";(()=>{var Z=Object.defineProperty;var Q=(s,e,t)=>e in s?Z(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var b=(s,e,t)=>(Q(s,typeof e!="symbol"?e+"":e,t),t);var o="data",f={startingPriceList:`[${o}=starting-price-list]`,price:`[${o}=price]`,discount:`[${o}=discount]`,discountContainer:`[${o}=discount-container]`,currency:`[${o}=currency]`,beHid:`[${o}-be-hid]`,destination:`[${o}=destination]`,offersList:`[${o}=offers-list]`,offerSlugDetail:`[${o}=offer-slug-detail], [data-offer-slug-detail]`,offerSlugOthersList:`[${o}=offer-slug-others-list], [data-offer-slug-others-list]`,offerSlugOthersList2:`[${o}=offer-slug-others-list2], [data-offer-slug-others-list2]`,offerSlugOthersListItem:".offer-others_item",offersMoreWrapper:`[${o}=offers-more-wrapper]`,offersListContainer:`[${o}=offers-list-container]`,listItem:`[${o}=list-item]`,image:`[${o}=image]`,name:`[${o}=name]`,description:`[${o}=description]`,hotelName:`[${o}=hotel-name]`,hotelLink:`[${o}=hotel-link]`,hotelStartingPriceContainer:`[${o}=hotel-starting-price-container]`,moreDetails:`[${o}=more-details]`,offersPopup:`[${o}=offers-popup]`,offersPopupClose:`[${o}=close-btn]`,hotelReserveLink:`[${o}=hotel-reserve-link]`,hotelVillaReserveLink:`[${o}=hotel-villa-reserve-link]`,hotelURLS:`[${o}=hotel-urls]`,languageDropdown:`[${o}=language-dropdown]`,selectedLanguage:`[${o}=selected-language]`,loadingSpinner:`[${o}=loading-spinner]`,cmsFilterEmptyState:"[fs-cmsfilter-element=empty]",startingfromItem:s=>`[${o}-be-hid=${s}]`,popupOverlay:"[fs-smartlightbox-element=trigger-close]"};var L={en:"Guadeloupe Islands",fr:"Les \xCEles de Guadeloupe",es:"Las islas de Guadalupe",it:"Le isole della Guadalupa"},H={en:"La Dominique",fr:"La Dominique",es:"Dominica",it:"Dominica"},C={en:"Saint Lucia",fr:"Sainte-Lucie",es:"Santa Luc\xEDa",it:"Santa Lucia"},V={en:"Martinique",fr:"Martinique",es:"Martinica",it:"Martinica"},S={en:"Mauritius",fr:"\xCEle Maurice",es:"Mauricio",it:"Mauritius"},R={en:"Saint Martin",fr:"Saint-Martin",es:"Saint-Martin",it:"Saint Martin"},P={en:"Antigua",fr:"Antigua",es:"Antigua",it:"Antigua"},J={en:"Anguilla",fr:"Anguilla",es:"Anguila",it:"Anguilla"},M={gpgos12767:{destination:L,slug:"/hotels-et-villas/creole-beach-hotel-spa",codeIPlanet:"FRAN414",cmsId:"67c809b5f63deab8a71cf8e9"},gptro12772:{destination:L,slug:"/hotels-et-villas/le-jardin-malanga",codeIPlanet:"FRAN416",cmsId:"67c809b5f63deab8a71cf90d"},gpsai12770:{destination:L,slug:"/hotels-et-villas/la-toubana-hotel-spa",codeIPlanet:"FRAN411",cmsId:"67c809b5f63deab8a71cf8ef"},gpgos12769:{destination:L,slug:"/hotels-et-villas/mahogany-hotel-residence-spa",codeIPlanet:"FRAN423",cmsId:"67c809b5f63deab8a71cf91f"},gpgua27143:{destination:L,slug:"/hotels-et-villas/langley-resort-fort-royal",codeIPlanet:"GPAN32",cmsId:"67c809b5f63deab8a71cf8f0"},mqros18592:{destination:H,slug:"/hotels-et-villas/jungle-bay-dominica",codeIPlanet:"DMAN1",cmsId:"67c809b5f63deab8a71cf8ed"},dmtib00001:{destination:H,slug:"/hotels-et-villas/secret-bay-dominique",codeIPlanet:"DMAN2",cmsId:"67c809b5f63deab8a71cfefd"},agste21689:{destination:C,slug:"/hotels-et-villas/jade-mountain",codeIPlanet:"AGAN6",cmsId:"67c809b5f63deab8a71cf92a"},zzzzz25376:{destination:C,slug:"/hotels-et-villas/windjammer-landing",codeIPlanet:"LCAN4",cmsId:"67c809b5f63deab8a71cf92b"},lcgro30400:{destination:C,slug:"/hotels-et-villas/cap-maison",codeIPlanet:"LCLC8",cmsId:"67c809b5f63deab8a71cf929"},agste21688:{destination:C,slug:"/hotels-et-villas/anse-chastanet",codeIPlanet:"AGAN5",cmsId:"67c809b5f63deab8a71cf928"},mqsai18593:{destination:V,slug:"/hotels-et-villas/plein-soleil",codeIPlanet:"MQAN16",cmsId:"67c809b5f63deab8a71cf925"},zzzzz25378:{destination:S,slug:"/hotels-et-villas/shanti-maurice",codeIPlanet:"MUAN22",cmsId:"67c809b5f63deab8a71cf933"},zzzzz25377:{destination:S,slug:"/hotels-et-villas/lux-le-morne",codeIPlanet:"MUAN21",cmsId:"67c809b5f63deab8a71cf931"},zzzzz25379:{destination:S,slug:"/hotels-et-villas/constance-belle-mare-plage",codeIPlanet:"MUAN20",cmsId:"67c809b5f63deab8a71cf92f"},mupos25678:{destination:S,slug:"/hotels-et-villas/constance-le-prince-maurice",codeIPlanet:"MUAN24",cmsId:"67c809b5f63deab8a71cf930"},zzzzz25380:{destination:S,slug:"/hotels-et-villas/anahita-the-resort",codeIPlanet:"MUAN19",cmsId:"67c809b5f63deab8a71cf92e"},agstm21687:{destination:R,slug:"/hotels-et-villas/la-samanna",codeIPlanet:"FRAN2350",cmsId:"67c809b5f63deab8a71cf926"},frsai31536:{destination:R,slug:"/hotels-et-villas/le-grand-case-beach-club",codeIPlanet:"FRFRA3",cmsId:"67c809b5f63deab8a71cf927"},ageng20433:{destination:P,slug:"/hotels-et-villas/the-inn-at-english-harbour",codeIPlanet:"AGAN4",cmsId:"67c809b5f63deab8a71cf8ec"},agcro20496:{destination:P,slug:"/hotels-et-villas/blue-waters",codeIPlanet:"AGAN1",cmsId:"67c809b5f63deab8a71cf8eb"},gpang25884:{destination:J,slug:"/hotels-et-villas/aurora-anguilla-resort-golf-club",codeIPlanet:"GPAN30",cmsId:"67c809b5f63deab8a71cf8ea"}},w={AED:"\u062F.\u0625.",AFN:"Af",ALL:"L",AMD:"\u058F",ANG:"\u0192",AOA:"Kz",ARS:"AR$",AUD:"AU$",AWG:"\u0192",AZN:"\u043C\u0430\u043D",BAM:"KM",BBD:"BBD$",BDT:"\u09F3",BGN:"\u043B\u0432.",BHD:"BD",BIF:"FBu",BMD:"$",BND:"B$",BOB:"Bs.",BRL:"R$",BSD:"$",BTN:"Nu.",BWP:"P",BYN:"Br",BZD:"BZ$",CAD:"CA$",CDF:"FC",CHF:"Fr.",CKD:"$",CLP:"CL$",CNY:"CN\xA5",COP:"CO$",CRC:"\u20A1",CUC:"CUC$",CUP:"$MN",CVE:"CV$",CZK:"K\u010D",DJF:"Fdj",DKK:"kr.",DOP:"RD$",DZD:"DA",EGP:"E\xA3",EHP:"Ptas.",ERN:"Nkf",ETB:"Br",EUR:"\u20AC",FJD:"FJ$",FKP:"FK\xA3",FOK:"kr",GBP:"\xA3",GEL:"\u20BE",GGP:"\xA3",GHS:"GH\u20B5",GIP:"\xA3",GMD:"D",GNF:"FG",GTQ:"Q",GYD:"G$",HKD:"HK$",HNL:"L",HRK:"kn",HTG:"G",HUF:"Ft",IDR:"Rp",ILS:"\u20AA",IMP:"\xA3",INR:"Rs.",IQD:"\u062F.\u0639.",IRR:"\uFDFC",ISK:"kr",JEP:"\xA3",JMD:"J$",JOD:"JD",JPY:"\xA5",KES:"KSh",KGS:"\u0441",KHR:"\u17DB",KID:"$",KMF:"CF",KPW:"\u20A9",KRW:"\u20A9",KWD:"KD",KYD:"CI$",KZT:"\u20B8",LAK:"\u20ADN",LBP:"LL.",LKR:"Rs.",LRD:"L$",LSL:"L",LYD:"LD",MAD:"DH",MDL:"L",MGA:"Ar",MKD:"den",MMK:"Ks",MNT:"\u20AE",MOP:"MOP$",MRU:"UM",MUR:"Rs.",MVR:"MRf",MWK:"MK",MXN:"MX$",MYR:"RM",MZN:"MTn",NAD:"N$",NGN:"\u20A6",NIO:"C$",NOK:"kr",NPR:"Rs.",NZD:"NZ$",OMR:"OR",PAB:"B/.",PEN:"S/.",PGK:"K",PHP:"\u20B1",PKR:"Rs.",PLN:"z\u0142",PND:"$",PRB:"\u0440.",PYG:"\u20B2",QAR:"QR",RON:"L",RSD:"din",RUB:"\u20BD",RWF:"FRw",SAR:"SR",SBD:"SI$",SCR:"Rs.",SDG:"\xA3SD",SEK:"kr",SGD:"S$",SHP:"\xA3",SLL:"Le",SLS:"Sl",SOS:"Sh.So.",SRD:"Sr$",SSP:"SS\xA3",STN:"Db",SVC:"\u20A1",SYP:"LS",SZL:"L",THB:"\u0E3F",TJS:"SM",TMT:"m.",TND:"DT",TOP:"T$",TRY:"TL",TTD:"TT$",TVD:"$",TWD:"NT$",TZS:"TSh",UAH:"\u20B4",UGX:"USh",USD:"$",UYU:"$U",UZS:"\u0441\u0443\u043C",VED:"Bs.",VES:"Bs.F",VND:"\u20AB",VUV:"VT",WST:"T",XAF:"Fr",XCD:"$",XOF:"\u20A3",XPF:"\u20A3",YER:"YR",ZAR:"R",ZMW:"ZK",ZWB:"",ZWL:"Z$",Abkhazia:"",Artsakh:"\u0564\u0580."},$={it:"it_IT",es:"es_ES",fr:"fr_FR",en:"en_GB"},F={"DERNI\xC8RE MINUTE":"735fe5e0858671cf3a5c14cbcc2470fe","R\xC9SERVEZ T\xD4T":"c5abb23caf056891f3902ff42ae2f9e0"};var I="https://deshotelsetdesiles.ccordier.workers.dev/v2/",z="https://deshotelsetdesiles.i-planet.fr/dhdi-public/searchform.cgi",T="FR",G="1*q1lzz9*_gcl_au*MTMyMzcyMDY5NC4xNzM5Mjg5MzYx*_ga*NTAxMzI1MzMwLjE3MzkyODkzNjE.*_ga_Q0RXHLR7D4*MTczOTI5NzEzNC4zLjAuMTczOTI5NzE3Mi4yMi4wLjA.";var k=async()=>new Promise(s=>{geoip2.country(e=>{s(e.country.iso_code)},()=>{s(T)})});var v=s=>{let e="?";for(let[t,r]of Object.entries(s))r&&(e+=`${t}=${r}&`);return e};var y=class{async getGroupOffersData(e){let t=I+"groupOffers"+v(e),a=await(await fetch(t)).json();return a.error||!a.data?null:a}async getSingleHotelOffersData(e){let t=I+"offers"+v(e),a=await(await fetch(t)).json();return a.error||!a.data?null:a}async getCMSOffers(){let e=I+"cmsOffers",r=await(await fetch(e)).json();return r.items?r:null}async getCountries(){let e=I+"cmsCountries",r=await(await fetch(e)).json();return r.items?r:null}};var U=()=>{let s=B();if(!s){let e=localStorage.getItem("wglang")||"fr";window.Weglot.switchTo(e)}window.Weglot.on("languageChanged",()=>{if(s)window.location.reload();else{let e=window.Weglot.getCurrentLang();localStorage.setItem("wglang",e),window.loadFromServer&&window.loadFromServer()}})},B=()=>window.location.hostname!=="deshotelsetdesiles.webflow.io",q=()=>{let s=O();return $[s]},O=()=>{if(!B())return localStorage.getItem("wglang")||"fr";try{let s=window.Weglot.getCurrentLang();if(s)return s}catch(s){return console.error("Error getting language",s),"fr"}return"fr"},x=()=>{let s={};return Object.entries(M).forEach(([e,t])=>{s[t.cmsId]=e}),s},p=(s,e)=>`${s.toLowerCase().trim()}-${e.toLowerCase().trim()}`,K=(s,e,t)=>{let r=O().toUpperCase(),a=M[e].codeIPlanet.toUpperCase(),i=`${z}?Lang=${r}&currency=${s.toUpperCase()}&HotelCode=${a}`,l=_("_ga"),n=G,d=_("_gcl_au");return i+=`&_ga=${l}&_gl=${n}&_gcl_au=${d}`,t&&(i=`${i}&HotelPromo=${t}`),i},_=s=>{let e=document.cookie.match(new RegExp("(^| )"+s+"=([^;]+)"));return e?e[2]:null};var Y=(s,e,t,r)=>{let{quotation:a,rate:{distribution:i}}=e,{pricePerNight:l,currency:n,plainBookLink:d}=a,{accessCode:m}=i||{},g="";m&&m.length>0&&([g]=m),X(s,l,n);let h=s.querySelector(f.hotelReserveLink);h&&h.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),window.open(d,"_blank")});let c=s.querySelector(f.hotelVillaReserveLink);if(c&&c.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),window.open(K(n,t,g),"_blank")}),r){let{fieldData:{"discount-percentage":u}}=r,D=s.querySelector(f.discount);D&&u&&(D.innerHTML=`-${u}%`);let E=s.querySelector(f.discountContainer);E&&!u&&(E.style.display="none")}},X=(s,e,t)=>{let r=s.querySelector(f.price);r&&(r.innerHTML=Math.floor(e).toString());let a=s.querySelector(f.currency);a&&(a.innerHTML=w[t])};var A=class{constructor(e,t){this.listInstance=e;this.itemTemplateElement=t;b(this,"loadingSpinner");b(this,"cmsFilterEmptyState");b(this,"offerLookup",{});b(this,"apiClient",new y);b(this,"countryCode");b(this,"availableCountries",{});b(this,"countryCodeFilter",e=>{let{fieldData:t}=e;return!t["supported-countries"]||t["supported-countries"].length===0?!0:t["supported-countries"].map(a=>this.availableCountries[a]).includes(this.countryCode)});this.cmsFilterEmptyState=document.querySelector(f.cmsFilterEmptyState),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.add("hide-empty-state"),e.clearItems(),U(),this.loadingSpinner=document.querySelector(f.loadingSpinner),this.countryCode=T}async getGroupOffers(e){let{clearItems:t=!0,filter:r}=e||{};t&&this.listInstance.clearItems();let a=await this.apiClient.getCMSOffers();if(!a)return;let i=await this.apiClient.getCountries();if(!i)return;i.items.forEach(D=>{this.availableCountries[D.id]=D.fieldData.title?.trim()}),this.countryCode=await k();let l=a.items.filter(r).filter(this.countryCodeFilter),n=this.generateHotelIds(l),d=this.generateHotelIds(l).join(","),m=n.length===1;m&&(d=[d,d].join(","));let{offerMetaData:g}=this.generateOfferData(l),h=q(),c=await this.apiClient.getGroupOffersData({hids:d,locale:h});if(!c||c.error||!c.data){this.hideSpinnerAndShowFilter();return}m&&(c.data=[c.data[0]]);let u=this.getAllOffers(c,g);this.addHotelToCollection(u),this.hideSpinnerAndShowFilter()}async getGroupCategoryOffers(e,t=!1){let r=a=>{let{isArchived:i,isDraft:l,fieldData:n}=a;return i||l?!1:t?(!n.thematiques||n.thematiques.length===0)&&!n.slug.includes("derniere-minute")&&!n.slug.includes("reservez-tot"):n.category===e};await this.getGroupOffers({filter:r})}async getGroupThemeOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:l}=r;return a||i||!l.thematiques?!1:l.thematiques.includes(e)};await this.getGroupOffers({filter:t})}async getGroupSlugOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:l}=r;return a||i?!1:l.slug===e};await this.getGroupOffers({filter:t})}async getGroupOtherOffers(e,t){let r=a=>{let{isArchived:i,isDraft:l,fieldData:n}=a;return i||l||n.slug===e?!1:t?n.category===t:(!n.thematiques||n.thematiques.length===0)&&!n.slug.includes("derniere-minute")&&!n.slug.includes("reservez-tot")};await this.getGroupOffers({filter:r})}hideSpinnerAndShowFilter(){this.loadingSpinner&&(this.loadingSpinner.style.display="none"),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.remove("hide-empty-state")}generateHotelIds(e){let t=[],r=x();return e.forEach(a=>{let{fieldData:{"hotel-villa":i}}=a;t.push(r[i])}),Array.from(new Set(t))}getAllOffers(e,t){let r=[];return e.data.forEach(a=>{let{prop:{hid:i},rates:l}=a;l.forEach(n=>{let{name:d,title:m}=n.rate;(t.includes(p(i,d))||t.includes(p(i,m)))&&r.push({...a,rates:[n]})})}),r.sort((a,i)=>{let l=this.offerLookup[p(a.prop.hid,a.rates[0].rate.title)]||this.offerLookup[p(a.prop.hid,a.rates[0].rate.name)],n=this.offerLookup[p(i.prop.hid,i.rates[0].rate.title)]||this.offerLookup[p(i.prop.hid,i.rates[0].rate.name)],d=Number(l.fieldData.order)||0,m=Number(n.fieldData.order)||0;return d-m}),r}generateOfferData(e){let t=[];return e.forEach(r=>{let{fieldData:{"hotel-or-property-api-id":a,"offer-api-name":i}}=r,l=p(a,i);t.push(l),this.offerLookup[l]=r}),{offerMetaData:t}}addHotelToCollection(e){for(let{prop:t,rates:r}of e){let a=r.map(i=>this.createItem(t,i,this.itemTemplateElement));this.listInstance.addItems(a)}}createItem(e,t,r){let{rate:a}=t,{hid:i,title:l,property:n}=e,{image:d,title:m,name:g}=a,h=this.offerLookup[p(i||n,m)]||this.offerLookup[p(i||n,g)],c=r.cloneNode(!0),u=M[i||n];if(!u)return c;let{destination:D,slug:E}=u;this.bindOffersMetaData(c,{destination:D,image:d,hotelName:l,title:m,slug:E}),Y(c,t,i,h);let N=c.querySelector(f.moreDetails);return N&&N.addEventListener("click",()=>{let W=this.getOffersCmsSlug(i,n,g);window.location.href=`/offers/${W}`}),c.style.display="flex",c}getOffersCmsSlug(e,t,r){return this.offerLookup[p(e||t,r)]?.fieldData.slug}bindOffersMetaData(e,{destination:t,image:r,hotelName:a,title:i,slug:l,description:n}){let d=e.querySelector(f.destination),m=e.querySelector(f.image),g=e.querySelector(f.hotelName),h=e.querySelector(f.name),c=e.querySelector(f.description),u=e.querySelector(f.hotelLink),D=O();d&&(d.textContent=t[D]),m&&(m.src=r?.url),g&&(g.innerHTML=a),h&&(h.innerHTML=i),c&&n&&(c.innerHTML=n),u&&l&&u.addEventListener("click",()=>{window.location.href=l})}};var j=s=>{let[e]=s,{listInstance:t}=e;if(t.items.length===0)throw new Error("No items found in the list instance - Cannot create an instance of Offers");return ee(t)},ee=s=>{let[e]=s.items;if(!e)throw new Error("No items found in the list instance");let t=e.element;return new A(s,t)};window.fsAttributes=window.fsAttributes||[];window.loadFromServer=()=>{window.fsAttributes.push(["cmsfilter",async s=>{await j(s).getGroupCategoryOffers(F["DERNI\xC8RE MINUTE"])}])};window.loadFromServer();})();
1
+ "use strict";(()=>{var Z=Object.defineProperty;var Q=(s,e,t)=>e in s?Z(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var D=(s,e,t)=>(Q(s,typeof e!="symbol"?e+"":e,t),t);var l="data",f={startingPriceList:`[${l}=starting-price-list]`,price:`[${l}=price]`,discount:`[${l}=discount]`,discountContainer:`[${l}=discount-container]`,currency:`[${l}=currency]`,beHid:`[${l}-be-hid]`,destination:`[${l}=destination]`,offersList:`[${l}=offers-list]`,offerSlugDetail:`[${l}=offer-slug-detail], [data-offer-slug-detail]`,offerSlugOthersList:`[${l}=offer-slug-others-list], [data-offer-slug-others-list]`,offerSlugOthersList2:`[${l}=offer-slug-others-list2], [data-offer-slug-others-list2]`,offerSlugOthersList3:`[${l}=offer-slug-others-list3], [data-offer-slug-others-list3]`,offerSlugOthersListItem:".offer-others_item",offersMoreWrapper:`[${l}=offers-more-wrapper]`,offerOthersTabsMenu:".offer-others_tabs-menu",offerOthersTabLink:".offer-others_tab-link",offerOthersTabPane:".offer-others_tab-pane",offersListContainer:`[${l}=offers-list-container]`,listItem:`[${l}=list-item]`,image:`[${l}=image]`,name:`[${l}=name]`,description:`[${l}=description]`,hotelName:`[${l}=hotel-name]`,hotelLink:`[${l}=hotel-link]`,hotelStartingPriceContainer:`[${l}=hotel-starting-price-container]`,moreDetails:`[${l}=more-details]`,offersPopup:`[${l}=offers-popup]`,offersPopupClose:`[${l}=close-btn]`,hotelReserveLink:`[${l}=hotel-reserve-link]`,hotelVillaReserveLink:`[${l}=hotel-villa-reserve-link]`,hotelURLS:`[${l}=hotel-urls]`,languageDropdown:`[${l}=language-dropdown]`,selectedLanguage:`[${l}=selected-language]`,loadingSpinner:`[${l}=loading-spinner]`,cmsFilterEmptyState:"[fs-cmsfilter-element=empty]",startingfromItem:s=>`[${l}-be-hid=${s}]`,popupOverlay:"[fs-smartlightbox-element=trigger-close]"};var L={en:"Guadeloupe Islands",fr:"Les \xCEles de Guadeloupe",es:"Las islas de Guadalupe",it:"Le isole della Guadalupa"},H={en:"La Dominique",fr:"La Dominique",es:"Dominica",it:"Dominica"},C={en:"Saint Lucia",fr:"Sainte-Lucie",es:"Santa Luc\xEDa",it:"Santa Lucia"},V={en:"Martinique",fr:"Martinique",es:"Martinica",it:"Martinica"},S={en:"Mauritius",fr:"\xCEle Maurice",es:"Mauricio",it:"Mauritius"},R={en:"Saint Martin",fr:"Saint-Martin",es:"Saint-Martin",it:"Saint Martin"},P={en:"Antigua",fr:"Antigua",es:"Antigua",it:"Antigua"},J={en:"Anguilla",fr:"Anguilla",es:"Anguila",it:"Anguilla"},M={gpgos12767:{destination:L,slug:"/hotels-et-villas/creole-beach-hotel-spa",codeIPlanet:"FRAN414",cmsId:"67c809b5f63deab8a71cf8e9"},gptro12772:{destination:L,slug:"/hotels-et-villas/le-jardin-malanga",codeIPlanet:"FRAN416",cmsId:"67c809b5f63deab8a71cf90d"},gpsai12770:{destination:L,slug:"/hotels-et-villas/la-toubana-hotel-spa",codeIPlanet:"FRAN411",cmsId:"67c809b5f63deab8a71cf8ef"},gpgos12769:{destination:L,slug:"/hotels-et-villas/mahogany-hotel-residence-spa",codeIPlanet:"FRAN423",cmsId:"67c809b5f63deab8a71cf91f"},gpgua27143:{destination:L,slug:"/hotels-et-villas/langley-resort-fort-royal",codeIPlanet:"GPAN32",cmsId:"67c809b5f63deab8a71cf8f0"},mqros18592:{destination:H,slug:"/hotels-et-villas/jungle-bay-dominica",codeIPlanet:"DMAN1",cmsId:"67c809b5f63deab8a71cf8ed"},dmtib00001:{destination:H,slug:"/hotels-et-villas/secret-bay-dominique",codeIPlanet:"DMAN2",cmsId:"67c809b5f63deab8a71cfefd"},agste21689:{destination:C,slug:"/hotels-et-villas/jade-mountain",codeIPlanet:"AGAN6",cmsId:"67c809b5f63deab8a71cf92a"},zzzzz25376:{destination:C,slug:"/hotels-et-villas/windjammer-landing",codeIPlanet:"LCAN4",cmsId:"67c809b5f63deab8a71cf92b"},lcgro30400:{destination:C,slug:"/hotels-et-villas/cap-maison",codeIPlanet:"LCLC8",cmsId:"67c809b5f63deab8a71cf929"},agste21688:{destination:C,slug:"/hotels-et-villas/anse-chastanet",codeIPlanet:"AGAN5",cmsId:"67c809b5f63deab8a71cf928"},mqsai18593:{destination:V,slug:"/hotels-et-villas/plein-soleil",codeIPlanet:"MQAN16",cmsId:"67c809b5f63deab8a71cf925"},zzzzz25378:{destination:S,slug:"/hotels-et-villas/shanti-maurice",codeIPlanet:"MUAN22",cmsId:"67c809b5f63deab8a71cf933"},zzzzz25377:{destination:S,slug:"/hotels-et-villas/lux-le-morne",codeIPlanet:"MUAN21",cmsId:"67c809b5f63deab8a71cf931"},zzzzz25379:{destination:S,slug:"/hotels-et-villas/constance-belle-mare-plage",codeIPlanet:"MUAN20",cmsId:"67c809b5f63deab8a71cf92f"},mupos25678:{destination:S,slug:"/hotels-et-villas/constance-le-prince-maurice",codeIPlanet:"MUAN24",cmsId:"67c809b5f63deab8a71cf930"},zzzzz25380:{destination:S,slug:"/hotels-et-villas/anahita-the-resort",codeIPlanet:"MUAN19",cmsId:"67c809b5f63deab8a71cf92e"},agstm21687:{destination:R,slug:"/hotels-et-villas/la-samanna",codeIPlanet:"FRAN2350",cmsId:"67c809b5f63deab8a71cf926"},frsai31536:{destination:R,slug:"/hotels-et-villas/le-grand-case-beach-club",codeIPlanet:"FRFRA3",cmsId:"67c809b5f63deab8a71cf927"},ageng20433:{destination:P,slug:"/hotels-et-villas/the-inn-at-english-harbour",codeIPlanet:"AGAN4",cmsId:"67c809b5f63deab8a71cf8ec"},agcro20496:{destination:P,slug:"/hotels-et-villas/blue-waters",codeIPlanet:"AGAN1",cmsId:"67c809b5f63deab8a71cf8eb"},gpang25884:{destination:J,slug:"/hotels-et-villas/aurora-anguilla-resort-golf-club",codeIPlanet:"GPAN30",cmsId:"67c809b5f63deab8a71cf8ea"}},w={AED:"\u062F.\u0625.",AFN:"Af",ALL:"L",AMD:"\u058F",ANG:"\u0192",AOA:"Kz",ARS:"AR$",AUD:"AU$",AWG:"\u0192",AZN:"\u043C\u0430\u043D",BAM:"KM",BBD:"BBD$",BDT:"\u09F3",BGN:"\u043B\u0432.",BHD:"BD",BIF:"FBu",BMD:"$",BND:"B$",BOB:"Bs.",BRL:"R$",BSD:"$",BTN:"Nu.",BWP:"P",BYN:"Br",BZD:"BZ$",CAD:"CA$",CDF:"FC",CHF:"Fr.",CKD:"$",CLP:"CL$",CNY:"CN\xA5",COP:"CO$",CRC:"\u20A1",CUC:"CUC$",CUP:"$MN",CVE:"CV$",CZK:"K\u010D",DJF:"Fdj",DKK:"kr.",DOP:"RD$",DZD:"DA",EGP:"E\xA3",EHP:"Ptas.",ERN:"Nkf",ETB:"Br",EUR:"\u20AC",FJD:"FJ$",FKP:"FK\xA3",FOK:"kr",GBP:"\xA3",GEL:"\u20BE",GGP:"\xA3",GHS:"GH\u20B5",GIP:"\xA3",GMD:"D",GNF:"FG",GTQ:"Q",GYD:"G$",HKD:"HK$",HNL:"L",HRK:"kn",HTG:"G",HUF:"Ft",IDR:"Rp",ILS:"\u20AA",IMP:"\xA3",INR:"Rs.",IQD:"\u062F.\u0639.",IRR:"\uFDFC",ISK:"kr",JEP:"\xA3",JMD:"J$",JOD:"JD",JPY:"\xA5",KES:"KSh",KGS:"\u0441",KHR:"\u17DB",KID:"$",KMF:"CF",KPW:"\u20A9",KRW:"\u20A9",KWD:"KD",KYD:"CI$",KZT:"\u20B8",LAK:"\u20ADN",LBP:"LL.",LKR:"Rs.",LRD:"L$",LSL:"L",LYD:"LD",MAD:"DH",MDL:"L",MGA:"Ar",MKD:"den",MMK:"Ks",MNT:"\u20AE",MOP:"MOP$",MRU:"UM",MUR:"Rs.",MVR:"MRf",MWK:"MK",MXN:"MX$",MYR:"RM",MZN:"MTn",NAD:"N$",NGN:"\u20A6",NIO:"C$",NOK:"kr",NPR:"Rs.",NZD:"NZ$",OMR:"OR",PAB:"B/.",PEN:"S/.",PGK:"K",PHP:"\u20B1",PKR:"Rs.",PLN:"z\u0142",PND:"$",PRB:"\u0440.",PYG:"\u20B2",QAR:"QR",RON:"L",RSD:"din",RUB:"\u20BD",RWF:"FRw",SAR:"SR",SBD:"SI$",SCR:"Rs.",SDG:"\xA3SD",SEK:"kr",SGD:"S$",SHP:"\xA3",SLL:"Le",SLS:"Sl",SOS:"Sh.So.",SRD:"Sr$",SSP:"SS\xA3",STN:"Db",SVC:"\u20A1",SYP:"LS",SZL:"L",THB:"\u0E3F",TJS:"SM",TMT:"m.",TND:"DT",TOP:"T$",TRY:"TL",TTD:"TT$",TVD:"$",TWD:"NT$",TZS:"TSh",UAH:"\u20B4",UGX:"USh",USD:"$",UYU:"$U",UZS:"\u0441\u0443\u043C",VED:"Bs.",VES:"Bs.F",VND:"\u20AB",VUV:"VT",WST:"T",XAF:"Fr",XCD:"$",XOF:"\u20A3",XPF:"\u20A3",YER:"YR",ZAR:"R",ZMW:"ZK",ZWB:"",ZWL:"Z$",Abkhazia:"",Artsakh:"\u0564\u0580."},$={it:"it_IT",es:"es_ES",fr:"fr_FR",en:"en_GB"},F={"DERNI\xC8RE MINUTE":"735fe5e0858671cf3a5c14cbcc2470fe","R\xC9SERVEZ T\xD4T":"c5abb23caf056891f3902ff42ae2f9e0"};var I="https://deshotelsetdesiles.ccordier.workers.dev/v2/",z="https://deshotelsetdesiles.i-planet.fr/dhdi-public/searchform.cgi",T="FR",G="1*q1lzz9*_gcl_au*MTMyMzcyMDY5NC4xNzM5Mjg5MzYx*_ga*NTAxMzI1MzMwLjE3MzkyODkzNjE.*_ga_Q0RXHLR7D4*MTczOTI5NzEzNC4zLjAuMTczOTI5NzE3Mi4yMi4wLjA.";var k=async()=>new Promise(s=>{geoip2.country(e=>{s(e.country.iso_code)},()=>{s(T)})});var v=s=>{let e="?";for(let[t,r]of Object.entries(s))r&&(e+=`${t}=${r}&`);return e};var O=class{async getGroupOffersData(e){let t=I+"groupOffers"+v(e),a=await(await fetch(t)).json();return a.error||!a.data?null:a}async getSingleHotelOffersData(e){let t=I+"offers"+v(e),a=await(await fetch(t)).json();return a.error||!a.data?null:a}async getCMSOffers(){let e=I+"cmsOffers",r=await(await fetch(e)).json();return r.items?r:null}async getCountries(){let e=I+"cmsCountries",r=await(await fetch(e)).json();return r.items?r:null}};var U=()=>{let s=B();if(!s){let e=localStorage.getItem("wglang")||"fr";window.Weglot.switchTo(e)}window.Weglot.on("languageChanged",()=>{if(s)window.location.reload();else{let e=window.Weglot.getCurrentLang();localStorage.setItem("wglang",e),window.loadFromServer&&window.loadFromServer()}})},B=()=>window.location.hostname!=="deshotelsetdesiles.webflow.io",q=()=>{let s=y();return $[s]},y=()=>{if(!B())return localStorage.getItem("wglang")||"fr";try{let s=window.Weglot.getCurrentLang();if(s)return s}catch(s){return console.error("Error getting language",s),"fr"}return"fr"},x=()=>{let s={};return Object.entries(M).forEach(([e,t])=>{s[t.cmsId]=e}),s},p=(s,e)=>`${s.toLowerCase().trim()}-${e.toLowerCase().trim()}`,K=(s,e,t)=>{let r=y().toUpperCase(),a=M[e].codeIPlanet.toUpperCase(),i=`${z}?Lang=${r}&currency=${s.toUpperCase()}&HotelCode=${a}`,o=_("_ga"),n=G,d=_("_gcl_au");return i+=`&_ga=${o}&_gl=${n}&_gcl_au=${d}`,t&&(i=`${i}&HotelPromo=${t}`),i},_=s=>{let e=document.cookie.match(new RegExp("(^| )"+s+"=([^;]+)"));return e?e[2]:null};var Y=(s,e,t,r)=>{let{quotation:a,rate:{distribution:i}}=e,{pricePerNight:o,currency:n,plainBookLink:d}=a,{accessCode:m}=i||{},g="";m&&m.length>0&&([g]=m),X(s,o,n);let h=s.querySelector(f.hotelReserveLink);h&&h.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),window.open(d,"_blank")});let c=s.querySelector(f.hotelVillaReserveLink);if(c&&c.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),window.open(K(n,t,g),"_blank")}),r){let{fieldData:{"discount-percentage":u}}=r,b=s.querySelector(f.discount);b&&u&&(b.innerHTML=`-${u}%`);let E=s.querySelector(f.discountContainer);E&&!u&&(E.style.display="none")}},X=(s,e,t)=>{let r=s.querySelector(f.price);r&&(r.innerHTML=Math.floor(e).toString());let a=s.querySelector(f.currency);a&&(a.innerHTML=w[t])};var A=class{constructor(e,t){this.listInstance=e;this.itemTemplateElement=t;D(this,"loadingSpinner");D(this,"cmsFilterEmptyState");D(this,"offerLookup",{});D(this,"apiClient",new O);D(this,"countryCode");D(this,"availableCountries",{});D(this,"countryCodeFilter",e=>{let{fieldData:t}=e;return!t["supported-countries"]||t["supported-countries"].length===0?!0:t["supported-countries"].map(a=>this.availableCountries[a]).includes(this.countryCode)});this.cmsFilterEmptyState=document.querySelector(f.cmsFilterEmptyState),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.add("hide-empty-state"),e.clearItems(),U(),this.loadingSpinner=document.querySelector(f.loadingSpinner),this.countryCode=T}async getGroupOffers(e){let{clearItems:t=!0,filter:r}=e||{};t&&this.listInstance.clearItems();let a=await this.apiClient.getCMSOffers();if(!a)return;let i=await this.apiClient.getCountries();if(!i)return;i.items.forEach(b=>{this.availableCountries[b.id]=b.fieldData.title?.trim()}),this.countryCode=await k();let o=a.items.filter(r).filter(this.countryCodeFilter),n=this.generateHotelIds(o),d=this.generateHotelIds(o).join(","),m=n.length===1;m&&(d=[d,d].join(","));let{offerMetaData:g}=this.generateOfferData(o),h=q(),c=await this.apiClient.getGroupOffersData({hids:d,locale:h});if(!c||c.error||!c.data){this.hideSpinnerAndShowFilter();return}m&&(c.data=[c.data[0]]);let u=this.getAllOffers(c,g);this.addHotelToCollection(u),this.hideSpinnerAndShowFilter()}async getGroupCategoryOffers(e,t=!1){let r=a=>{let{isArchived:i,isDraft:o,fieldData:n}=a;return i||o?!1:t?(!n.thematiques||n.thematiques.length===0)&&!n.slug.includes("derniere-minute")&&!n.slug.includes("reservez-tot"):n.category===e};await this.getGroupOffers({filter:r})}async getGroupThemeOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:o}=r;return a||i||!o.thematiques?!1:o.thematiques.includes(e)};await this.getGroupOffers({filter:t})}async getGroupOtherThemedOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:o}=r;return a||i||o.slug===e?!1:Array.isArray(o.thematiques)&&o.thematiques.length>0};await this.getGroupOffers({filter:t})}async getGroupSlugOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:o}=r;return a||i?!1:o.slug===e};await this.getGroupOffers({filter:t})}async getGroupOtherOffers(e,t){let r=a=>{let{isArchived:i,isDraft:o,fieldData:n}=a;return i||o||n.slug===e?!1:t?n.category===t:(!n.thematiques||n.thematiques.length===0)&&!n.slug.includes("derniere-minute")&&!n.slug.includes("reservez-tot")};await this.getGroupOffers({filter:r})}hideSpinnerAndShowFilter(){this.loadingSpinner&&(this.loadingSpinner.style.display="none"),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.remove("hide-empty-state")}generateHotelIds(e){let t=[],r=x();return e.forEach(a=>{let{fieldData:{"hotel-villa":i}}=a;t.push(r[i])}),Array.from(new Set(t))}getAllOffers(e,t){let r=[];return e.data.forEach(a=>{let{prop:{hid:i},rates:o}=a;o.forEach(n=>{let{name:d,title:m}=n.rate;(t.includes(p(i,d))||t.includes(p(i,m)))&&r.push({...a,rates:[n]})})}),r.sort((a,i)=>{let o=this.offerLookup[p(a.prop.hid,a.rates[0].rate.title)]||this.offerLookup[p(a.prop.hid,a.rates[0].rate.name)],n=this.offerLookup[p(i.prop.hid,i.rates[0].rate.title)]||this.offerLookup[p(i.prop.hid,i.rates[0].rate.name)],d=Number(o.fieldData.order)||0,m=Number(n.fieldData.order)||0;return d-m}),r}generateOfferData(e){let t=[];return e.forEach(r=>{let{fieldData:{"hotel-or-property-api-id":a,"offer-api-name":i}}=r,o=p(a,i);t.push(o),this.offerLookup[o]=r}),{offerMetaData:t}}addHotelToCollection(e){for(let{prop:t,rates:r}of e){let a=r.map(i=>this.createItem(t,i,this.itemTemplateElement));this.listInstance.addItems(a)}}createItem(e,t,r){let{rate:a}=t,{hid:i,title:o,property:n}=e,{image:d,title:m,name:g}=a,h=this.offerLookup[p(i||n,m)]||this.offerLookup[p(i||n,g)],c=r.cloneNode(!0),u=M[i||n];if(!u)return c;let{destination:b,slug:E}=u;this.bindOffersMetaData(c,{destination:b,image:d,hotelName:o,title:m,slug:E}),Y(c,t,i,h);let N=c.querySelector(f.moreDetails);return N&&N.addEventListener("click",()=>{let W=this.getOffersCmsSlug(i,n,g);window.location.href=`/offers/${W}`}),c.style.display="flex",c}getOffersCmsSlug(e,t,r){return this.offerLookup[p(e||t,r)]?.fieldData.slug}bindOffersMetaData(e,{destination:t,image:r,hotelName:a,title:i,slug:o,description:n}){let d=e.querySelector(f.destination),m=e.querySelector(f.image),g=e.querySelector(f.hotelName),h=e.querySelector(f.name),c=e.querySelector(f.description),u=e.querySelector(f.hotelLink),b=y();d&&(d.textContent=t[b]),m&&(m.src=r?.url),g&&(g.innerHTML=a),h&&(h.innerHTML=i),c&&n&&(c.innerHTML=n),u&&o&&u.addEventListener("click",()=>{window.location.href=o})}};var j=s=>{let[e]=s,{listInstance:t}=e;if(t.items.length===0)throw new Error("No items found in the list instance - Cannot create an instance of Offers");return ee(t)},ee=s=>{let[e]=s.items;if(!e)throw new Error("No items found in the list instance");let t=e.element;return new A(s,t)};window.fsAttributes=window.fsAttributes||[];window.loadFromServer=()=>{window.fsAttributes.push(["cmsfilter",async s=>{await j(s).getGroupCategoryOffers(F["DERNI\xC8RE MINUTE"])}])};window.loadFromServer();})();
@@ -1 +1 @@
1
- "use strict";(()=>{var W=Object.defineProperty;var Q=(s,e,t)=>e in s?W(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var b=(s,e,t)=>(Q(s,typeof e!="symbol"?e+"":e,t),t);var o="data",f={startingPriceList:`[${o}=starting-price-list]`,price:`[${o}=price]`,discount:`[${o}=discount]`,discountContainer:`[${o}=discount-container]`,currency:`[${o}=currency]`,beHid:`[${o}-be-hid]`,destination:`[${o}=destination]`,offersList:`[${o}=offers-list]`,offerSlugDetail:`[${o}=offer-slug-detail], [data-offer-slug-detail]`,offerSlugOthersList:`[${o}=offer-slug-others-list], [data-offer-slug-others-list]`,offerSlugOthersList2:`[${o}=offer-slug-others-list2], [data-offer-slug-others-list2]`,offerSlugOthersListItem:".offer-others_item",offersMoreWrapper:`[${o}=offers-more-wrapper]`,offersListContainer:`[${o}=offers-list-container]`,listItem:`[${o}=list-item]`,image:`[${o}=image]`,name:`[${o}=name]`,description:`[${o}=description]`,hotelName:`[${o}=hotel-name]`,hotelLink:`[${o}=hotel-link]`,hotelStartingPriceContainer:`[${o}=hotel-starting-price-container]`,moreDetails:`[${o}=more-details]`,offersPopup:`[${o}=offers-popup]`,offersPopupClose:`[${o}=close-btn]`,hotelReserveLink:`[${o}=hotel-reserve-link]`,hotelVillaReserveLink:`[${o}=hotel-villa-reserve-link]`,hotelURLS:`[${o}=hotel-urls]`,languageDropdown:`[${o}=language-dropdown]`,selectedLanguage:`[${o}=selected-language]`,loadingSpinner:`[${o}=loading-spinner]`,cmsFilterEmptyState:"[fs-cmsfilter-element=empty]",startingfromItem:s=>`[${o}-be-hid=${s}]`,popupOverlay:"[fs-smartlightbox-element=trigger-close]"};var L={en:"Guadeloupe Islands",fr:"Les \xCEles de Guadeloupe",es:"Las islas de Guadalupe",it:"Le isole della Guadalupa"},N={en:"La Dominique",fr:"La Dominique",es:"Dominica",it:"Dominica"},C={en:"Saint Lucia",fr:"Sainte-Lucie",es:"Santa Luc\xEDa",it:"Santa Lucia"},V={en:"Martinique",fr:"Martinique",es:"Martinica",it:"Martinica"},S={en:"Mauritius",fr:"\xCEle Maurice",es:"Mauricio",it:"Mauritius"},R={en:"Saint Martin",fr:"Saint-Martin",es:"Saint-Martin",it:"Saint Martin"},P={en:"Antigua",fr:"Antigua",es:"Antigua",it:"Antigua"},J={en:"Anguilla",fr:"Anguilla",es:"Anguila",it:"Anguilla"},M={gpgos12767:{destination:L,slug:"/hotels-et-villas/creole-beach-hotel-spa",codeIPlanet:"FRAN414",cmsId:"67c809b5f63deab8a71cf8e9"},gptro12772:{destination:L,slug:"/hotels-et-villas/le-jardin-malanga",codeIPlanet:"FRAN416",cmsId:"67c809b5f63deab8a71cf90d"},gpsai12770:{destination:L,slug:"/hotels-et-villas/la-toubana-hotel-spa",codeIPlanet:"FRAN411",cmsId:"67c809b5f63deab8a71cf8ef"},gpgos12769:{destination:L,slug:"/hotels-et-villas/mahogany-hotel-residence-spa",codeIPlanet:"FRAN423",cmsId:"67c809b5f63deab8a71cf91f"},gpgua27143:{destination:L,slug:"/hotels-et-villas/langley-resort-fort-royal",codeIPlanet:"GPAN32",cmsId:"67c809b5f63deab8a71cf8f0"},mqros18592:{destination:N,slug:"/hotels-et-villas/jungle-bay-dominica",codeIPlanet:"DMAN1",cmsId:"67c809b5f63deab8a71cf8ed"},dmtib00001:{destination:N,slug:"/hotels-et-villas/secret-bay-dominique",codeIPlanet:"DMAN2",cmsId:"67c809b5f63deab8a71cfefd"},agste21689:{destination:C,slug:"/hotels-et-villas/jade-mountain",codeIPlanet:"AGAN6",cmsId:"67c809b5f63deab8a71cf92a"},zzzzz25376:{destination:C,slug:"/hotels-et-villas/windjammer-landing",codeIPlanet:"LCAN4",cmsId:"67c809b5f63deab8a71cf92b"},lcgro30400:{destination:C,slug:"/hotels-et-villas/cap-maison",codeIPlanet:"LCLC8",cmsId:"67c809b5f63deab8a71cf929"},agste21688:{destination:C,slug:"/hotels-et-villas/anse-chastanet",codeIPlanet:"AGAN5",cmsId:"67c809b5f63deab8a71cf928"},mqsai18593:{destination:V,slug:"/hotels-et-villas/plein-soleil",codeIPlanet:"MQAN16",cmsId:"67c809b5f63deab8a71cf925"},zzzzz25378:{destination:S,slug:"/hotels-et-villas/shanti-maurice",codeIPlanet:"MUAN22",cmsId:"67c809b5f63deab8a71cf933"},zzzzz25377:{destination:S,slug:"/hotels-et-villas/lux-le-morne",codeIPlanet:"MUAN21",cmsId:"67c809b5f63deab8a71cf931"},zzzzz25379:{destination:S,slug:"/hotels-et-villas/constance-belle-mare-plage",codeIPlanet:"MUAN20",cmsId:"67c809b5f63deab8a71cf92f"},mupos25678:{destination:S,slug:"/hotels-et-villas/constance-le-prince-maurice",codeIPlanet:"MUAN24",cmsId:"67c809b5f63deab8a71cf930"},zzzzz25380:{destination:S,slug:"/hotels-et-villas/anahita-the-resort",codeIPlanet:"MUAN19",cmsId:"67c809b5f63deab8a71cf92e"},agstm21687:{destination:R,slug:"/hotels-et-villas/la-samanna",codeIPlanet:"FRAN2350",cmsId:"67c809b5f63deab8a71cf926"},frsai31536:{destination:R,slug:"/hotels-et-villas/le-grand-case-beach-club",codeIPlanet:"FRFRA3",cmsId:"67c809b5f63deab8a71cf927"},ageng20433:{destination:P,slug:"/hotels-et-villas/the-inn-at-english-harbour",codeIPlanet:"AGAN4",cmsId:"67c809b5f63deab8a71cf8ec"},agcro20496:{destination:P,slug:"/hotels-et-villas/blue-waters",codeIPlanet:"AGAN1",cmsId:"67c809b5f63deab8a71cf8eb"},gpang25884:{destination:J,slug:"/hotels-et-villas/aurora-anguilla-resort-golf-club",codeIPlanet:"GPAN30",cmsId:"67c809b5f63deab8a71cf8ea"}},w={AED:"\u062F.\u0625.",AFN:"Af",ALL:"L",AMD:"\u058F",ANG:"\u0192",AOA:"Kz",ARS:"AR$",AUD:"AU$",AWG:"\u0192",AZN:"\u043C\u0430\u043D",BAM:"KM",BBD:"BBD$",BDT:"\u09F3",BGN:"\u043B\u0432.",BHD:"BD",BIF:"FBu",BMD:"$",BND:"B$",BOB:"Bs.",BRL:"R$",BSD:"$",BTN:"Nu.",BWP:"P",BYN:"Br",BZD:"BZ$",CAD:"CA$",CDF:"FC",CHF:"Fr.",CKD:"$",CLP:"CL$",CNY:"CN\xA5",COP:"CO$",CRC:"\u20A1",CUC:"CUC$",CUP:"$MN",CVE:"CV$",CZK:"K\u010D",DJF:"Fdj",DKK:"kr.",DOP:"RD$",DZD:"DA",EGP:"E\xA3",EHP:"Ptas.",ERN:"Nkf",ETB:"Br",EUR:"\u20AC",FJD:"FJ$",FKP:"FK\xA3",FOK:"kr",GBP:"\xA3",GEL:"\u20BE",GGP:"\xA3",GHS:"GH\u20B5",GIP:"\xA3",GMD:"D",GNF:"FG",GTQ:"Q",GYD:"G$",HKD:"HK$",HNL:"L",HRK:"kn",HTG:"G",HUF:"Ft",IDR:"Rp",ILS:"\u20AA",IMP:"\xA3",INR:"Rs.",IQD:"\u062F.\u0639.",IRR:"\uFDFC",ISK:"kr",JEP:"\xA3",JMD:"J$",JOD:"JD",JPY:"\xA5",KES:"KSh",KGS:"\u0441",KHR:"\u17DB",KID:"$",KMF:"CF",KPW:"\u20A9",KRW:"\u20A9",KWD:"KD",KYD:"CI$",KZT:"\u20B8",LAK:"\u20ADN",LBP:"LL.",LKR:"Rs.",LRD:"L$",LSL:"L",LYD:"LD",MAD:"DH",MDL:"L",MGA:"Ar",MKD:"den",MMK:"Ks",MNT:"\u20AE",MOP:"MOP$",MRU:"UM",MUR:"Rs.",MVR:"MRf",MWK:"MK",MXN:"MX$",MYR:"RM",MZN:"MTn",NAD:"N$",NGN:"\u20A6",NIO:"C$",NOK:"kr",NPR:"Rs.",NZD:"NZ$",OMR:"OR",PAB:"B/.",PEN:"S/.",PGK:"K",PHP:"\u20B1",PKR:"Rs.",PLN:"z\u0142",PND:"$",PRB:"\u0440.",PYG:"\u20B2",QAR:"QR",RON:"L",RSD:"din",RUB:"\u20BD",RWF:"FRw",SAR:"SR",SBD:"SI$",SCR:"Rs.",SDG:"\xA3SD",SEK:"kr",SGD:"S$",SHP:"\xA3",SLL:"Le",SLS:"Sl",SOS:"Sh.So.",SRD:"Sr$",SSP:"SS\xA3",STN:"Db",SVC:"\u20A1",SYP:"LS",SZL:"L",THB:"\u0E3F",TJS:"SM",TMT:"m.",TND:"DT",TOP:"T$",TRY:"TL",TTD:"TT$",TVD:"$",TWD:"NT$",TZS:"TSh",UAH:"\u20B4",UGX:"USh",USD:"$",UYU:"$U",UZS:"\u0441\u0443\u043C",VED:"Bs.",VES:"Bs.F",VND:"\u20AB",VUV:"VT",WST:"T",XAF:"Fr",XCD:"$",XOF:"\u20A3",XPF:"\u20A3",YER:"YR",ZAR:"R",ZMW:"ZK",ZWB:"",ZWL:"Z$",Abkhazia:"",Artsakh:"\u0564\u0580."},$={it:"it_IT",es:"es_ES",fr:"fr_FR",en:"en_GB"},F={"DERNI\xC8RE MINUTE":"735fe5e0858671cf3a5c14cbcc2470fe","R\xC9SERVEZ T\xD4T":"c5abb23caf056891f3902ff42ae2f9e0"};var I="https://deshotelsetdesiles.ccordier.workers.dev/v2/",z="https://deshotelsetdesiles.i-planet.fr/dhdi-public/searchform.cgi",T="FR",G="1*q1lzz9*_gcl_au*MTMyMzcyMDY5NC4xNzM5Mjg5MzYx*_ga*NTAxMzI1MzMwLjE3MzkyODkzNjE.*_ga_Q0RXHLR7D4*MTczOTI5NzEzNC4zLjAuMTczOTI5NzE3Mi4yMi4wLjA.";var k=async()=>new Promise(s=>{geoip2.country(e=>{s(e.country.iso_code)},()=>{s(T)})});var v=s=>{let e="?";for(let[t,r]of Object.entries(s))r&&(e+=`${t}=${r}&`);return e};var y=class{async getGroupOffersData(e){let t=I+"groupOffers"+v(e),a=await(await fetch(t)).json();return a.error||!a.data?null:a}async getSingleHotelOffersData(e){let t=I+"offers"+v(e),a=await(await fetch(t)).json();return a.error||!a.data?null:a}async getCMSOffers(){let e=I+"cmsOffers",r=await(await fetch(e)).json();return r.items?r:null}async getCountries(){let e=I+"cmsCountries",r=await(await fetch(e)).json();return r.items?r:null}};var U=()=>{let s=B();if(!s){let e=localStorage.getItem("wglang")||"fr";window.Weglot.switchTo(e)}window.Weglot.on("languageChanged",()=>{if(s)window.location.reload();else{let e=window.Weglot.getCurrentLang();localStorage.setItem("wglang",e),window.loadFromServer&&window.loadFromServer()}})},B=()=>window.location.hostname!=="deshotelsetdesiles.webflow.io",q=()=>{let s=O();return $[s]},O=()=>{if(!B())return localStorage.getItem("wglang")||"fr";try{let s=window.Weglot.getCurrentLang();if(s)return s}catch(s){return console.error("Error getting language",s),"fr"}return"fr"},x=()=>{let s={};return Object.entries(M).forEach(([e,t])=>{s[t.cmsId]=e}),s},p=(s,e)=>`${s.toLowerCase().trim()}-${e.toLowerCase().trim()}`,K=(s,e,t)=>{let r=O().toUpperCase(),a=M[e].codeIPlanet.toUpperCase(),i=`${z}?Lang=${r}&currency=${s.toUpperCase()}&HotelCode=${a}`,l=_("_ga"),n=G,d=_("_gcl_au");return i+=`&_ga=${l}&_gl=${n}&_gcl_au=${d}`,t&&(i=`${i}&HotelPromo=${t}`),i},_=s=>{let e=document.cookie.match(new RegExp("(^| )"+s+"=([^;]+)"));return e?e[2]:null};var Y=(s,e,t,r)=>{let{quotation:a,rate:{distribution:i}}=e,{pricePerNight:l,currency:n,plainBookLink:d}=a,{accessCode:m}=i||{},g="";m&&m.length>0&&([g]=m),X(s,l,n);let h=s.querySelector(f.hotelReserveLink);h&&h.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),window.open(d,"_blank")});let c=s.querySelector(f.hotelVillaReserveLink);if(c&&c.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),window.open(K(n,t,g),"_blank")}),r){let{fieldData:{"discount-percentage":u}}=r,D=s.querySelector(f.discount);D&&u&&(D.innerHTML=`-${u}%`);let E=s.querySelector(f.discountContainer);E&&!u&&(E.style.display="none")}},X=(s,e,t)=>{let r=s.querySelector(f.price);r&&(r.innerHTML=Math.floor(e).toString());let a=s.querySelector(f.currency);a&&(a.innerHTML=w[t])};var A=class{constructor(e,t){this.listInstance=e;this.itemTemplateElement=t;b(this,"loadingSpinner");b(this,"cmsFilterEmptyState");b(this,"offerLookup",{});b(this,"apiClient",new y);b(this,"countryCode");b(this,"availableCountries",{});b(this,"countryCodeFilter",e=>{let{fieldData:t}=e;return!t["supported-countries"]||t["supported-countries"].length===0?!0:t["supported-countries"].map(a=>this.availableCountries[a]).includes(this.countryCode)});this.cmsFilterEmptyState=document.querySelector(f.cmsFilterEmptyState),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.add("hide-empty-state"),e.clearItems(),U(),this.loadingSpinner=document.querySelector(f.loadingSpinner),this.countryCode=T}async getGroupOffers(e){let{clearItems:t=!0,filter:r}=e||{};t&&this.listInstance.clearItems();let a=await this.apiClient.getCMSOffers();if(!a)return;let i=await this.apiClient.getCountries();if(!i)return;i.items.forEach(D=>{this.availableCountries[D.id]=D.fieldData.title?.trim()}),this.countryCode=await k();let l=a.items.filter(r).filter(this.countryCodeFilter),n=this.generateHotelIds(l),d=this.generateHotelIds(l).join(","),m=n.length===1;m&&(d=[d,d].join(","));let{offerMetaData:g}=this.generateOfferData(l),h=q(),c=await this.apiClient.getGroupOffersData({hids:d,locale:h});if(!c||c.error||!c.data){this.hideSpinnerAndShowFilter();return}m&&(c.data=[c.data[0]]);let u=this.getAllOffers(c,g);this.addHotelToCollection(u),this.hideSpinnerAndShowFilter()}async getGroupCategoryOffers(e,t=!1){let r=a=>{let{isArchived:i,isDraft:l,fieldData:n}=a;return i||l?!1:t?(!n.thematiques||n.thematiques.length===0)&&!n.slug.includes("derniere-minute")&&!n.slug.includes("reservez-tot"):n.category===e};await this.getGroupOffers({filter:r})}async getGroupThemeOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:l}=r;return a||i||!l.thematiques?!1:l.thematiques.includes(e)};await this.getGroupOffers({filter:t})}async getGroupSlugOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:l}=r;return a||i?!1:l.slug===e};await this.getGroupOffers({filter:t})}async getGroupOtherOffers(e,t){let r=a=>{let{isArchived:i,isDraft:l,fieldData:n}=a;return i||l||n.slug===e?!1:t?n.category===t:(!n.thematiques||n.thematiques.length===0)&&!n.slug.includes("derniere-minute")&&!n.slug.includes("reservez-tot")};await this.getGroupOffers({filter:r})}hideSpinnerAndShowFilter(){this.loadingSpinner&&(this.loadingSpinner.style.display="none"),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.remove("hide-empty-state")}generateHotelIds(e){let t=[],r=x();return e.forEach(a=>{let{fieldData:{"hotel-villa":i}}=a;t.push(r[i])}),Array.from(new Set(t))}getAllOffers(e,t){let r=[];return e.data.forEach(a=>{let{prop:{hid:i},rates:l}=a;l.forEach(n=>{let{name:d,title:m}=n.rate;(t.includes(p(i,d))||t.includes(p(i,m)))&&r.push({...a,rates:[n]})})}),r.sort((a,i)=>{let l=this.offerLookup[p(a.prop.hid,a.rates[0].rate.title)]||this.offerLookup[p(a.prop.hid,a.rates[0].rate.name)],n=this.offerLookup[p(i.prop.hid,i.rates[0].rate.title)]||this.offerLookup[p(i.prop.hid,i.rates[0].rate.name)],d=Number(l.fieldData.order)||0,m=Number(n.fieldData.order)||0;return d-m}),r}generateOfferData(e){let t=[];return e.forEach(r=>{let{fieldData:{"hotel-or-property-api-id":a,"offer-api-name":i}}=r,l=p(a,i);t.push(l),this.offerLookup[l]=r}),{offerMetaData:t}}addHotelToCollection(e){for(let{prop:t,rates:r}of e){let a=r.map(i=>this.createItem(t,i,this.itemTemplateElement));this.listInstance.addItems(a)}}createItem(e,t,r){let{rate:a}=t,{hid:i,title:l,property:n}=e,{image:d,title:m,name:g}=a,h=this.offerLookup[p(i||n,m)]||this.offerLookup[p(i||n,g)],c=r.cloneNode(!0),u=M[i||n];if(!u)return c;let{destination:D,slug:E}=u;this.bindOffersMetaData(c,{destination:D,image:d,hotelName:l,title:m,slug:E}),Y(c,t,i,h);let H=c.querySelector(f.moreDetails);return H&&H.addEventListener("click",()=>{let Z=this.getOffersCmsSlug(i,n,g);window.location.href=`/offers/${Z}`}),c.style.display="flex",c}getOffersCmsSlug(e,t,r){return this.offerLookup[p(e||t,r)]?.fieldData.slug}bindOffersMetaData(e,{destination:t,image:r,hotelName:a,title:i,slug:l,description:n}){let d=e.querySelector(f.destination),m=e.querySelector(f.image),g=e.querySelector(f.hotelName),h=e.querySelector(f.name),c=e.querySelector(f.description),u=e.querySelector(f.hotelLink),D=O();d&&(d.textContent=t[D]),m&&(m.src=r?.url),g&&(g.innerHTML=a),h&&(h.innerHTML=i),c&&n&&(c.innerHTML=n),u&&l&&u.addEventListener("click",()=>{window.location.href=l})}};var j=s=>{let[e]=s,{listInstance:t}=e;if(t.items.length===0)throw new Error("No items found in the list instance - Cannot create an instance of Offers");return ee(t)},ee=s=>{let[e]=s.items;if(!e)throw new Error("No items found in the list instance");let t=e.element;return new A(s,t)};window.fsAttributes=window.fsAttributes||[];window.loadFromServer=()=>{window.fsAttributes.push(["cmsfilter",async s=>{await j(s).getGroupCategoryOffers(F["R\xC9SERVEZ T\xD4T"])}])};window.loadFromServer();})();
1
+ "use strict";(()=>{var W=Object.defineProperty;var Q=(s,e,t)=>e in s?W(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t;var D=(s,e,t)=>(Q(s,typeof e!="symbol"?e+"":e,t),t);var l="data",f={startingPriceList:`[${l}=starting-price-list]`,price:`[${l}=price]`,discount:`[${l}=discount]`,discountContainer:`[${l}=discount-container]`,currency:`[${l}=currency]`,beHid:`[${l}-be-hid]`,destination:`[${l}=destination]`,offersList:`[${l}=offers-list]`,offerSlugDetail:`[${l}=offer-slug-detail], [data-offer-slug-detail]`,offerSlugOthersList:`[${l}=offer-slug-others-list], [data-offer-slug-others-list]`,offerSlugOthersList2:`[${l}=offer-slug-others-list2], [data-offer-slug-others-list2]`,offerSlugOthersList3:`[${l}=offer-slug-others-list3], [data-offer-slug-others-list3]`,offerSlugOthersListItem:".offer-others_item",offersMoreWrapper:`[${l}=offers-more-wrapper]`,offerOthersTabsMenu:".offer-others_tabs-menu",offerOthersTabLink:".offer-others_tab-link",offerOthersTabPane:".offer-others_tab-pane",offersListContainer:`[${l}=offers-list-container]`,listItem:`[${l}=list-item]`,image:`[${l}=image]`,name:`[${l}=name]`,description:`[${l}=description]`,hotelName:`[${l}=hotel-name]`,hotelLink:`[${l}=hotel-link]`,hotelStartingPriceContainer:`[${l}=hotel-starting-price-container]`,moreDetails:`[${l}=more-details]`,offersPopup:`[${l}=offers-popup]`,offersPopupClose:`[${l}=close-btn]`,hotelReserveLink:`[${l}=hotel-reserve-link]`,hotelVillaReserveLink:`[${l}=hotel-villa-reserve-link]`,hotelURLS:`[${l}=hotel-urls]`,languageDropdown:`[${l}=language-dropdown]`,selectedLanguage:`[${l}=selected-language]`,loadingSpinner:`[${l}=loading-spinner]`,cmsFilterEmptyState:"[fs-cmsfilter-element=empty]",startingfromItem:s=>`[${l}-be-hid=${s}]`,popupOverlay:"[fs-smartlightbox-element=trigger-close]"};var L={en:"Guadeloupe Islands",fr:"Les \xCEles de Guadeloupe",es:"Las islas de Guadalupe",it:"Le isole della Guadalupa"},N={en:"La Dominique",fr:"La Dominique",es:"Dominica",it:"Dominica"},C={en:"Saint Lucia",fr:"Sainte-Lucie",es:"Santa Luc\xEDa",it:"Santa Lucia"},V={en:"Martinique",fr:"Martinique",es:"Martinica",it:"Martinica"},S={en:"Mauritius",fr:"\xCEle Maurice",es:"Mauricio",it:"Mauritius"},R={en:"Saint Martin",fr:"Saint-Martin",es:"Saint-Martin",it:"Saint Martin"},P={en:"Antigua",fr:"Antigua",es:"Antigua",it:"Antigua"},J={en:"Anguilla",fr:"Anguilla",es:"Anguila",it:"Anguilla"},M={gpgos12767:{destination:L,slug:"/hotels-et-villas/creole-beach-hotel-spa",codeIPlanet:"FRAN414",cmsId:"67c809b5f63deab8a71cf8e9"},gptro12772:{destination:L,slug:"/hotels-et-villas/le-jardin-malanga",codeIPlanet:"FRAN416",cmsId:"67c809b5f63deab8a71cf90d"},gpsai12770:{destination:L,slug:"/hotels-et-villas/la-toubana-hotel-spa",codeIPlanet:"FRAN411",cmsId:"67c809b5f63deab8a71cf8ef"},gpgos12769:{destination:L,slug:"/hotels-et-villas/mahogany-hotel-residence-spa",codeIPlanet:"FRAN423",cmsId:"67c809b5f63deab8a71cf91f"},gpgua27143:{destination:L,slug:"/hotels-et-villas/langley-resort-fort-royal",codeIPlanet:"GPAN32",cmsId:"67c809b5f63deab8a71cf8f0"},mqros18592:{destination:N,slug:"/hotels-et-villas/jungle-bay-dominica",codeIPlanet:"DMAN1",cmsId:"67c809b5f63deab8a71cf8ed"},dmtib00001:{destination:N,slug:"/hotels-et-villas/secret-bay-dominique",codeIPlanet:"DMAN2",cmsId:"67c809b5f63deab8a71cfefd"},agste21689:{destination:C,slug:"/hotels-et-villas/jade-mountain",codeIPlanet:"AGAN6",cmsId:"67c809b5f63deab8a71cf92a"},zzzzz25376:{destination:C,slug:"/hotels-et-villas/windjammer-landing",codeIPlanet:"LCAN4",cmsId:"67c809b5f63deab8a71cf92b"},lcgro30400:{destination:C,slug:"/hotels-et-villas/cap-maison",codeIPlanet:"LCLC8",cmsId:"67c809b5f63deab8a71cf929"},agste21688:{destination:C,slug:"/hotels-et-villas/anse-chastanet",codeIPlanet:"AGAN5",cmsId:"67c809b5f63deab8a71cf928"},mqsai18593:{destination:V,slug:"/hotels-et-villas/plein-soleil",codeIPlanet:"MQAN16",cmsId:"67c809b5f63deab8a71cf925"},zzzzz25378:{destination:S,slug:"/hotels-et-villas/shanti-maurice",codeIPlanet:"MUAN22",cmsId:"67c809b5f63deab8a71cf933"},zzzzz25377:{destination:S,slug:"/hotels-et-villas/lux-le-morne",codeIPlanet:"MUAN21",cmsId:"67c809b5f63deab8a71cf931"},zzzzz25379:{destination:S,slug:"/hotels-et-villas/constance-belle-mare-plage",codeIPlanet:"MUAN20",cmsId:"67c809b5f63deab8a71cf92f"},mupos25678:{destination:S,slug:"/hotels-et-villas/constance-le-prince-maurice",codeIPlanet:"MUAN24",cmsId:"67c809b5f63deab8a71cf930"},zzzzz25380:{destination:S,slug:"/hotels-et-villas/anahita-the-resort",codeIPlanet:"MUAN19",cmsId:"67c809b5f63deab8a71cf92e"},agstm21687:{destination:R,slug:"/hotels-et-villas/la-samanna",codeIPlanet:"FRAN2350",cmsId:"67c809b5f63deab8a71cf926"},frsai31536:{destination:R,slug:"/hotels-et-villas/le-grand-case-beach-club",codeIPlanet:"FRFRA3",cmsId:"67c809b5f63deab8a71cf927"},ageng20433:{destination:P,slug:"/hotels-et-villas/the-inn-at-english-harbour",codeIPlanet:"AGAN4",cmsId:"67c809b5f63deab8a71cf8ec"},agcro20496:{destination:P,slug:"/hotels-et-villas/blue-waters",codeIPlanet:"AGAN1",cmsId:"67c809b5f63deab8a71cf8eb"},gpang25884:{destination:J,slug:"/hotels-et-villas/aurora-anguilla-resort-golf-club",codeIPlanet:"GPAN30",cmsId:"67c809b5f63deab8a71cf8ea"}},w={AED:"\u062F.\u0625.",AFN:"Af",ALL:"L",AMD:"\u058F",ANG:"\u0192",AOA:"Kz",ARS:"AR$",AUD:"AU$",AWG:"\u0192",AZN:"\u043C\u0430\u043D",BAM:"KM",BBD:"BBD$",BDT:"\u09F3",BGN:"\u043B\u0432.",BHD:"BD",BIF:"FBu",BMD:"$",BND:"B$",BOB:"Bs.",BRL:"R$",BSD:"$",BTN:"Nu.",BWP:"P",BYN:"Br",BZD:"BZ$",CAD:"CA$",CDF:"FC",CHF:"Fr.",CKD:"$",CLP:"CL$",CNY:"CN\xA5",COP:"CO$",CRC:"\u20A1",CUC:"CUC$",CUP:"$MN",CVE:"CV$",CZK:"K\u010D",DJF:"Fdj",DKK:"kr.",DOP:"RD$",DZD:"DA",EGP:"E\xA3",EHP:"Ptas.",ERN:"Nkf",ETB:"Br",EUR:"\u20AC",FJD:"FJ$",FKP:"FK\xA3",FOK:"kr",GBP:"\xA3",GEL:"\u20BE",GGP:"\xA3",GHS:"GH\u20B5",GIP:"\xA3",GMD:"D",GNF:"FG",GTQ:"Q",GYD:"G$",HKD:"HK$",HNL:"L",HRK:"kn",HTG:"G",HUF:"Ft",IDR:"Rp",ILS:"\u20AA",IMP:"\xA3",INR:"Rs.",IQD:"\u062F.\u0639.",IRR:"\uFDFC",ISK:"kr",JEP:"\xA3",JMD:"J$",JOD:"JD",JPY:"\xA5",KES:"KSh",KGS:"\u0441",KHR:"\u17DB",KID:"$",KMF:"CF",KPW:"\u20A9",KRW:"\u20A9",KWD:"KD",KYD:"CI$",KZT:"\u20B8",LAK:"\u20ADN",LBP:"LL.",LKR:"Rs.",LRD:"L$",LSL:"L",LYD:"LD",MAD:"DH",MDL:"L",MGA:"Ar",MKD:"den",MMK:"Ks",MNT:"\u20AE",MOP:"MOP$",MRU:"UM",MUR:"Rs.",MVR:"MRf",MWK:"MK",MXN:"MX$",MYR:"RM",MZN:"MTn",NAD:"N$",NGN:"\u20A6",NIO:"C$",NOK:"kr",NPR:"Rs.",NZD:"NZ$",OMR:"OR",PAB:"B/.",PEN:"S/.",PGK:"K",PHP:"\u20B1",PKR:"Rs.",PLN:"z\u0142",PND:"$",PRB:"\u0440.",PYG:"\u20B2",QAR:"QR",RON:"L",RSD:"din",RUB:"\u20BD",RWF:"FRw",SAR:"SR",SBD:"SI$",SCR:"Rs.",SDG:"\xA3SD",SEK:"kr",SGD:"S$",SHP:"\xA3",SLL:"Le",SLS:"Sl",SOS:"Sh.So.",SRD:"Sr$",SSP:"SS\xA3",STN:"Db",SVC:"\u20A1",SYP:"LS",SZL:"L",THB:"\u0E3F",TJS:"SM",TMT:"m.",TND:"DT",TOP:"T$",TRY:"TL",TTD:"TT$",TVD:"$",TWD:"NT$",TZS:"TSh",UAH:"\u20B4",UGX:"USh",USD:"$",UYU:"$U",UZS:"\u0441\u0443\u043C",VED:"Bs.",VES:"Bs.F",VND:"\u20AB",VUV:"VT",WST:"T",XAF:"Fr",XCD:"$",XOF:"\u20A3",XPF:"\u20A3",YER:"YR",ZAR:"R",ZMW:"ZK",ZWB:"",ZWL:"Z$",Abkhazia:"",Artsakh:"\u0564\u0580."},$={it:"it_IT",es:"es_ES",fr:"fr_FR",en:"en_GB"},F={"DERNI\xC8RE MINUTE":"735fe5e0858671cf3a5c14cbcc2470fe","R\xC9SERVEZ T\xD4T":"c5abb23caf056891f3902ff42ae2f9e0"};var I="https://deshotelsetdesiles.ccordier.workers.dev/v2/",z="https://deshotelsetdesiles.i-planet.fr/dhdi-public/searchform.cgi",T="FR",G="1*q1lzz9*_gcl_au*MTMyMzcyMDY5NC4xNzM5Mjg5MzYx*_ga*NTAxMzI1MzMwLjE3MzkyODkzNjE.*_ga_Q0RXHLR7D4*MTczOTI5NzEzNC4zLjAuMTczOTI5NzE3Mi4yMi4wLjA.";var k=async()=>new Promise(s=>{geoip2.country(e=>{s(e.country.iso_code)},()=>{s(T)})});var v=s=>{let e="?";for(let[t,r]of Object.entries(s))r&&(e+=`${t}=${r}&`);return e};var O=class{async getGroupOffersData(e){let t=I+"groupOffers"+v(e),a=await(await fetch(t)).json();return a.error||!a.data?null:a}async getSingleHotelOffersData(e){let t=I+"offers"+v(e),a=await(await fetch(t)).json();return a.error||!a.data?null:a}async getCMSOffers(){let e=I+"cmsOffers",r=await(await fetch(e)).json();return r.items?r:null}async getCountries(){let e=I+"cmsCountries",r=await(await fetch(e)).json();return r.items?r:null}};var U=()=>{let s=B();if(!s){let e=localStorage.getItem("wglang")||"fr";window.Weglot.switchTo(e)}window.Weglot.on("languageChanged",()=>{if(s)window.location.reload();else{let e=window.Weglot.getCurrentLang();localStorage.setItem("wglang",e),window.loadFromServer&&window.loadFromServer()}})},B=()=>window.location.hostname!=="deshotelsetdesiles.webflow.io",q=()=>{let s=y();return $[s]},y=()=>{if(!B())return localStorage.getItem("wglang")||"fr";try{let s=window.Weglot.getCurrentLang();if(s)return s}catch(s){return console.error("Error getting language",s),"fr"}return"fr"},x=()=>{let s={};return Object.entries(M).forEach(([e,t])=>{s[t.cmsId]=e}),s},p=(s,e)=>`${s.toLowerCase().trim()}-${e.toLowerCase().trim()}`,K=(s,e,t)=>{let r=y().toUpperCase(),a=M[e].codeIPlanet.toUpperCase(),i=`${z}?Lang=${r}&currency=${s.toUpperCase()}&HotelCode=${a}`,o=_("_ga"),n=G,d=_("_gcl_au");return i+=`&_ga=${o}&_gl=${n}&_gcl_au=${d}`,t&&(i=`${i}&HotelPromo=${t}`),i},_=s=>{let e=document.cookie.match(new RegExp("(^| )"+s+"=([^;]+)"));return e?e[2]:null};var Y=(s,e,t,r)=>{let{quotation:a,rate:{distribution:i}}=e,{pricePerNight:o,currency:n,plainBookLink:d}=a,{accessCode:m}=i||{},g="";m&&m.length>0&&([g]=m),X(s,o,n);let h=s.querySelector(f.hotelReserveLink);h&&h.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),window.open(d,"_blank")});let c=s.querySelector(f.hotelVillaReserveLink);if(c&&c.addEventListener("click",u=>{u.preventDefault(),u.stopPropagation(),window.open(K(n,t,g),"_blank")}),r){let{fieldData:{"discount-percentage":u}}=r,b=s.querySelector(f.discount);b&&u&&(b.innerHTML=`-${u}%`);let E=s.querySelector(f.discountContainer);E&&!u&&(E.style.display="none")}},X=(s,e,t)=>{let r=s.querySelector(f.price);r&&(r.innerHTML=Math.floor(e).toString());let a=s.querySelector(f.currency);a&&(a.innerHTML=w[t])};var A=class{constructor(e,t){this.listInstance=e;this.itemTemplateElement=t;D(this,"loadingSpinner");D(this,"cmsFilterEmptyState");D(this,"offerLookup",{});D(this,"apiClient",new O);D(this,"countryCode");D(this,"availableCountries",{});D(this,"countryCodeFilter",e=>{let{fieldData:t}=e;return!t["supported-countries"]||t["supported-countries"].length===0?!0:t["supported-countries"].map(a=>this.availableCountries[a]).includes(this.countryCode)});this.cmsFilterEmptyState=document.querySelector(f.cmsFilterEmptyState),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.add("hide-empty-state"),e.clearItems(),U(),this.loadingSpinner=document.querySelector(f.loadingSpinner),this.countryCode=T}async getGroupOffers(e){let{clearItems:t=!0,filter:r}=e||{};t&&this.listInstance.clearItems();let a=await this.apiClient.getCMSOffers();if(!a)return;let i=await this.apiClient.getCountries();if(!i)return;i.items.forEach(b=>{this.availableCountries[b.id]=b.fieldData.title?.trim()}),this.countryCode=await k();let o=a.items.filter(r).filter(this.countryCodeFilter),n=this.generateHotelIds(o),d=this.generateHotelIds(o).join(","),m=n.length===1;m&&(d=[d,d].join(","));let{offerMetaData:g}=this.generateOfferData(o),h=q(),c=await this.apiClient.getGroupOffersData({hids:d,locale:h});if(!c||c.error||!c.data){this.hideSpinnerAndShowFilter();return}m&&(c.data=[c.data[0]]);let u=this.getAllOffers(c,g);this.addHotelToCollection(u),this.hideSpinnerAndShowFilter()}async getGroupCategoryOffers(e,t=!1){let r=a=>{let{isArchived:i,isDraft:o,fieldData:n}=a;return i||o?!1:t?(!n.thematiques||n.thematiques.length===0)&&!n.slug.includes("derniere-minute")&&!n.slug.includes("reservez-tot"):n.category===e};await this.getGroupOffers({filter:r})}async getGroupThemeOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:o}=r;return a||i||!o.thematiques?!1:o.thematiques.includes(e)};await this.getGroupOffers({filter:t})}async getGroupOtherThemedOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:o}=r;return a||i||o.slug===e?!1:Array.isArray(o.thematiques)&&o.thematiques.length>0};await this.getGroupOffers({filter:t})}async getGroupSlugOffers(e){let t=r=>{let{isArchived:a,isDraft:i,fieldData:o}=r;return a||i?!1:o.slug===e};await this.getGroupOffers({filter:t})}async getGroupOtherOffers(e,t){let r=a=>{let{isArchived:i,isDraft:o,fieldData:n}=a;return i||o||n.slug===e?!1:t?n.category===t:(!n.thematiques||n.thematiques.length===0)&&!n.slug.includes("derniere-minute")&&!n.slug.includes("reservez-tot")};await this.getGroupOffers({filter:r})}hideSpinnerAndShowFilter(){this.loadingSpinner&&(this.loadingSpinner.style.display="none"),this.cmsFilterEmptyState&&this.cmsFilterEmptyState.classList.remove("hide-empty-state")}generateHotelIds(e){let t=[],r=x();return e.forEach(a=>{let{fieldData:{"hotel-villa":i}}=a;t.push(r[i])}),Array.from(new Set(t))}getAllOffers(e,t){let r=[];return e.data.forEach(a=>{let{prop:{hid:i},rates:o}=a;o.forEach(n=>{let{name:d,title:m}=n.rate;(t.includes(p(i,d))||t.includes(p(i,m)))&&r.push({...a,rates:[n]})})}),r.sort((a,i)=>{let o=this.offerLookup[p(a.prop.hid,a.rates[0].rate.title)]||this.offerLookup[p(a.prop.hid,a.rates[0].rate.name)],n=this.offerLookup[p(i.prop.hid,i.rates[0].rate.title)]||this.offerLookup[p(i.prop.hid,i.rates[0].rate.name)],d=Number(o.fieldData.order)||0,m=Number(n.fieldData.order)||0;return d-m}),r}generateOfferData(e){let t=[];return e.forEach(r=>{let{fieldData:{"hotel-or-property-api-id":a,"offer-api-name":i}}=r,o=p(a,i);t.push(o),this.offerLookup[o]=r}),{offerMetaData:t}}addHotelToCollection(e){for(let{prop:t,rates:r}of e){let a=r.map(i=>this.createItem(t,i,this.itemTemplateElement));this.listInstance.addItems(a)}}createItem(e,t,r){let{rate:a}=t,{hid:i,title:o,property:n}=e,{image:d,title:m,name:g}=a,h=this.offerLookup[p(i||n,m)]||this.offerLookup[p(i||n,g)],c=r.cloneNode(!0),u=M[i||n];if(!u)return c;let{destination:b,slug:E}=u;this.bindOffersMetaData(c,{destination:b,image:d,hotelName:o,title:m,slug:E}),Y(c,t,i,h);let H=c.querySelector(f.moreDetails);return H&&H.addEventListener("click",()=>{let Z=this.getOffersCmsSlug(i,n,g);window.location.href=`/offers/${Z}`}),c.style.display="flex",c}getOffersCmsSlug(e,t,r){return this.offerLookup[p(e||t,r)]?.fieldData.slug}bindOffersMetaData(e,{destination:t,image:r,hotelName:a,title:i,slug:o,description:n}){let d=e.querySelector(f.destination),m=e.querySelector(f.image),g=e.querySelector(f.hotelName),h=e.querySelector(f.name),c=e.querySelector(f.description),u=e.querySelector(f.hotelLink),b=y();d&&(d.textContent=t[b]),m&&(m.src=r?.url),g&&(g.innerHTML=a),h&&(h.innerHTML=i),c&&n&&(c.innerHTML=n),u&&o&&u.addEventListener("click",()=>{window.location.href=o})}};var j=s=>{let[e]=s,{listInstance:t}=e;if(t.items.length===0)throw new Error("No items found in the list instance - Cannot create an instance of Offers");return ee(t)},ee=s=>{let[e]=s.items;if(!e)throw new Error("No items found in the list instance");let t=e.element;return new A(s,t)};window.fsAttributes=window.fsAttributes||[];window.loadFromServer=()=>{window.fsAttributes.push(["cmsfilter",async s=>{await j(s).getGroupCategoryOffers(F["R\xC9SERVEZ T\xD4T"])}])};window.loadFromServer();})();