1"use strict";(self.webpackChunkbookcore_client=self.webpackChunkbookcore_client||[]).push([[19,171,244],{10718:function(e,t,a){a.r(t);var o,n=a(96540);function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var o in a)({}).hasOwnProperty.call(a,o)&&(e[o]=a[o])}return e},s.apply(null,arguments)}t.default=function(e){return n.createElement("svg",s({viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},e),o||(o=n.createElement("path",{d:"M17 1a3 3 0 013 3v18a1 1 0 01-1 1h-5a1 1 0 01-1-1v-3h-2v3a1 1 0 01-1 1H5a1 1 0 01-1-1V4a3 3 0 013-3h10zm0 2H7a1 1 0 00-1 1v17h3v-3a1 1 0 011-1h4a1 1 0 011 1v3h3V4a1 1 0 00-1-1zm-7 10a1 1 0 010 2H9a1 1 0 010-2zm5 0a1 1 0 010 2h-1a1 1 0 010-2zm-5-4a1 1 0 010 2H9a1 1 0 010-2zm5 0a1 1 0 010 2h-1a1 1 0 010-2zm-5-4a1 1 0 010 2H9a1 1 0 110-2zm5 0a1 1 0 010 2h-1a1 1 0 010-2z",fillRule:"evenodd"})))}},79799:function(e,t,a){a.r(t);var o,n=a(96540);function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var o in a)({}).hasOwnProperty.call(a,o)&&(e[o]=a[o])}return e},s.apply(null,arguments)}t.default=function(e){return n.createElement("svg",s({viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},e),o||(o=n.createElement("path",{d:"M13 14a5 5 0 015 5v2a1 1 0 01-2 0v-2a3 3 0 00-3-3H5a3 3 0 00-3 3v2a1 1 0 01-2 0v-2a5 5 0 015-5zm6.032.88a1 1 0 011.218-.718A5 5 0 0124 19v2a1 1 0 01-2 0v-2a3 3 0 00-2.25-2.902 1 1 0 01-.718-1.218zM9 2a5 5 0 110 10A5 5 0 019 2zm6.031.882a1 1 0 011.217-.72 5 5 0 010 9.687 1 1 0 01-.496-1.938 3 3 0 000-5.812 1 1 0 01-.72-1.217zM9 4a3 3 0 100 6 3 3 0 000-6z",fillRule:"evenodd"})))}},28705:function(e,t,a){a.r(t);var o,n=a(96540);function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var o in a)({}).hasOwnProperty.call(a,o)&&(e[o]=a[o])}return e},s.apply(null,arguments)}t.default=function(e){return n.createElement("svg",s({viewBox:"0 0 44 44",xmlns:"http://www.w3.org/2000/svg"},e),o||(o=n.createElement("path",{d:"M22 10c5.523 0 10 4.477 10 10 0 3.372-1.802 6.676-4.774 9.813a31.132 31.132 0 01-3.197 2.922l-.372.293-.18.137-.505.374-.417.293a1 1 0 01-.994.066l-.116-.066-.417-.293-.506-.374a31.132 31.132 0 01-3.748-3.352C13.802 26.676 12 23.372 12 20c0-5.523 4.477-10 10-10zm0 2a8 8 0 00-8 8c0 2.753 1.573 5.636 4.226 8.437A29.155 29.155 0 0022 31.773l.249-.187a29.155 29.155 0 003.525-3.15c2.653-2.8 4.226-5.683 4.226-8.436a8 8 0 00-8-8zm0 4a4 4 0 110 8 4 4 0 010-8zm0 2a2 2 0 100 4 2 2 0 000-4z",fillRule:"evenodd"})))}},31353:function(e,t,a){a.r(t);var o,n=a(96540);function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var o in a)({}).hasOwnProperty.call(a,o)&&(e[o]=a[o])}return e},s.apply(null,arguments)}t.default=function(e){return n.createElement("svg",s({viewBox:"0 0 44 44",xmlns:"http://www.w3.org/2000/svg"},e),o||(o=n.createElement("path",{d:"M15 23h14a1 1 0 000-2H15a1 1 0 000 2z",fillRule:"evenodd"})))}},27020:function(e,t,a){a.r(t);var o,n=a(96540);function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var o in a)({}).hasOwnProperty.call(a,o)&&(e[o]=a[o])}return e},s.apply(null,arguments)}t.default=function(e){return n.createElement("svg",s({viewBox:"0 0 44 44",xmlns:"http://www.w3.org/2000/svg"},e),o||(o=n.createElement("path",{d:"M18.293 16.707a1 1 0 011.414-1.414l6 6a1 1 0 010 1.414l-6 6a1 1 0 01-1.414-1.414L23.586 22l-5.293-5.293z",fillRule:"evenodd"})))}},92587:function(e,t,a){a.r(t);var o,n=a(96540);function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var o in a)({}).hasOwnProperty.call(a,o)&&(e[o]=a[o])}return e},s.apply(null,arguments)}t.default=function(e){return n.createElement("svg",s({viewBox:"0 0 44 44",xmlns:"http://www.w3.org/2000/svg"},e),o||(o=n.createElement("path",{d:"M22 14a1 1 0 011 1v6h6a1 1 0 01.993.883L30 22a1 1 0 01-1 1h-6v6a1 1 0 01-.883.993L22 30a1 1 0 01-1-1v-6h-6a1 1 0 01-.993-.883L14 22a1 1 0 011-1h6v-6a1 1 0 01.883-.993z",fillRule:"evenodd"})))}},10295:function(e,t,a){a.r(t);var o,n=a(96540);function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var o in a)({}).hasOwnProperty.call(a,o)&&(e[o]=a[o])}return e},s.apply(null,arguments)}t.default=function(e){return n.createElement("svg",s({viewBox:"0 0 44 44",xmlns:"http://www.w3.org/2000/svg"}
1,e),o||(o=n.createElement("path",{d:"M21 12a9 9 0 017.032 14.617l3.675 3.676a1 1 0 01-1.414 1.414l-3.676-3.675A9 9 0 1121 12zm0 2a7 7 0 104.865 12.033l.078-.09a1.01 1.01 0 01.089-.08A7 7 0 0021 14z",fillRule:"evenodd"})))}},12862:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(5556)),l=o(a(91933)),i=a(51678),r=o(a(12873)),c=o(a(34289)),d=a(58630),h=a(12944),u=o(a(69928)),p=o(a(1217)),f=o(a(97680)),m=o(a(25538)),y=a(74848);const x=({action:e="",addDestinationHTML:t,autocompletePlaceHolder:a,calendarAvailableDateText:o,calendarFirstAvailableDateText:s,calendarGoToFollowingMonthText:x,calendarGoToPreviousMonthText:g,calendarSelectedAsCheckinText:C,calendarSelectedAsCheckoutText:S,calendarTheDayText:b,callbackSubmitForm:T=i.defaultEmptyFunction,className:k,closeCalendar:D,dateText:v,datesText:M,destinationOrHotelName:O,destinationSelected:w,destinationText:A,destinations:P,endDate:B,flightPlusHotelTabs:j=[],formatDates:_,generateComponentHTML:N,handlerClickElement:I,hasToShowFlightPlusHotelTabs:F,handlerGoBackFromDatesCalendar:H,hasToShowOccupancySelector:R,hasToShowPromotionalCodeCheckBox:E,hotelText:L,isAsyncSearch:V=!1,isCorporative:W,isDesktop:G,isDestination:$,locale:z,maxNigthSelected:K,messageModalNights:Y,modifyText:U,nightText:q,nightsText:X,occupancies:J={},oneDayOnly:Q,originalDestinations:Z,prevOccupancies:ee,promotionalCode:te,promotionalCodeCheckBoxCode:ae,promotionalCodeCheckBoxLabel:oe,selectedCheckin:ne,selectedCheckout:se,setState:le,showAutocompleteHotels:ie,showCalendar:re,startDate:ce,textAdult:de,textAdults:he,textAges:ue,textBackButton:pe,textChangeDates:fe,textChangeOccupancy:me,checkAvailabilityText:ye,textCheckin:xe,textCheckout:ge,textChild:Ce,textChildren:Se,textFriday:be,textMonday:Te,textNextStep:ke,textOccupancy:De,textPlaceholderPromotionalCode:ve,textSaturday:Me,textSelectDates:Oe,textSunday:we,textThursday:Ae,textTuesday:Pe,textWednesday:Be,titleModalMaxNights:je})=>{const _e=(e,t)=>(0,y.jsx)(u.default,{name:e},`country-${t}`),Ne=(e,t,a)=>(0,y.jsx)(p.default,{handleClick:I,name:e,slugs:a},`city-${e}-${t}`),Ie=(e,a)=>{const o=void 0===a,n=!!e.name,s=!!e.items,l=!n&&!s&&!o;let i=[];if(o){const a=Object.keys(e.countries).map(t=>({name:t,order:e.countries[t].order})),o=(0,d.orderCountries)(a).map((a,o)=>t({destination:e.countries,destinationName:a.name,renderComponent:_e,index:o,DestinationComponent:Ie}));i=[...i,...o]}else if(l){const a=Object.keys(e.cities).map((a,o)=>t({destination:e.cities,destinationName:a,renderComponent:Ne,index:o,slugs:e.cities[a].slugs,DestinationComponent:Ie}));i=[...i,...a]}else if(s){(0,d.sortHotels)(e.items).forEach((e,t)=>i.push(((e,t)=>(0,y.jsx)(f.default,{handleClick:I,name:e.name,slug:e.slug},`hotel-${e.name}-${t}`))(e,t)))}return i};if(re&&w)return(0,y.jsx)(l.default,{action:e,calendarAvailableDateText:o,calendarFirstAvailableDateText:s,calendarGoToFollowingMonthText:x,calendarGoToPreviousMonthText:g,calendarSelectedAsCheckinText:C,calendarSelectedAsCheckoutText:S,calendarTheDayText:b,callBackButton:H,callbackSubmitForm:T,closeComponent:D,"data-testid":"fn-availability-form",datesText:M,dateText:v,destinationOrHotelName:O,destinationSelected:w,destinationText:A,endDate:B,flightPlusHotelTabs:j,formatDates:_,hasToShowOccupancySelector:R,hasToShowPromotionalCodeCheckBox:E,hotelText:L,isAsyncSearch:V,isCorporative:W,isDesktop:G,isDestination:$,locale:z,maxNigthSelected:K,messageModalNights:Y,modifyText:U,nightsText:X,nightText:q,occupancies:J,oneDayOnly:Q,prevOccupancies:ee,promotionalCode:te,promotionalCodeCheckBoxCode:ae,promotionalCodeCheckBoxLabel:oe,selectedCheckin:ne,selectedCheckout:se,startDate:ce,textAdult:de,textAdults:he,textAges:ue,textBackButton:pe,textChangeDates:fe,textChangeOccupancy:me,checkAvailabilityText:ye,textCheckin:xe,textCheckout:ge,textChild:Ce,textChildren:Se,textFriday:be,textMonday:Te,textNextStep:ke,textOccupancy:De,textPlaceholderPromotionalCode:ve,textSaturday:Me,textSelectDates:Oe,textSunday:we,textThursday:Ae,textTuesday:Pe,textWednesday:Be,titleModalMaxNights:je});if(ie){const e=(e=>{if(re||W){if(W)return Ie(e)}else le({showCalendar:!0});return null})((0,d.destinationsAlphabeticalSort)(P));return(0,y.jsx)(n.Suspense,{fallback:(0,y.jsx)(r.default,{type:"inlineloader"}),children:(0,y.jsxs)(h.AutocompleteHotelsStyles,{className:`autocomplete-hotels ${k}`,"data-testid":"fn-autocomplete-hotels",children:[F&&(0,y.jsx)(c.default,{tabs:j,versionAvailabilityDetailedView:"B"}),(0,y.jsx)(h.AutocompleteHotelsHeader,{"data-testid":"fn-autocomplete-header",hasToShowFlightPlusHotelTabs:F,children:(0,y.jsx)(m.default,{autocompletePlaceHolder:a,"data-testid":"fn-autocomplete-input",destinations:P,generateComponentHTML:N,hasToShowFlightPlusHotelTabs:F,originalDestinations:Z})}),(0,y.jsx)(h.AutocompleteHotelsResult,{"data-testid":"fn-autocomplete-results",hasToShowFlightPlusHotelTabs:F,children:e})]})})}return null};t.default=x;x.propTypes={action:s.default.string,destinations:s.default.any.isRequired,sectionTitle:s.default.string,autocompletePlaceHolder:s.default.string,occupancies:s.default.object,hasToShowOccupancySelector:s.default.bool,isAsyncSearch:s.default.bool,callbackSubmitForm:s.default.func,textOccupancy:s.default.string,dateText:s.default.string,datesText:s.default.string,hotelText:s.default.string,destinationText:s.default.string,nightText:s.default.string,nightsText:s.default.string,flightPlusHotelTabs:s.default.array},e.exports=t.default},12944:function(e,t,a){var o=a(24994);
1Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(e,t){if("function"==typeof WeakMap)var a=new WeakMap,o=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,l={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return l;if(n=t?o:a){if(n.has(e))return n.get(e);n.set(e,l)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(s.get||s.set)?n(l,t,s):l[t]=e[t]);return l}(e,t)}(a(30496)),s=o(a(28705)),l=o(a(89883));const i=(0,n.css)(["",""],({theme:e})=>(0,n.css)(["border-bottom:"," solid ",";"],e.r010,e.autocompleteHotelsItemBorderColor||e.neutral100)),r=(0,n.css)([""," ",""],i,l.default.BtoL),c=n.default.li.withConfig({displayName:"AutoCompleteHotelsstyles__CountryStyles",componentId:"sc-1qr2ikx-0"})([""," ",""],r,({theme:e})=>(0,n.css)(["font-weight:",";padding:"," "," ",";text-align:center;"],e.fontBold,e.r300,e.r100,e.r150)),d=n.default.li.withConfig({displayName:"AutoCompleteHotelsstyles__CityStyles",componentId:"sc-1qr2ikx-1"})([""," ",""],r,({theme:e})=>(0,n.css)(["align-items:center;color:",";display:flex;padding:"," "," "," 0;"],e.autocompleteHotelsListItemColor||e.colorMain,e.r050,e.r100,e.r050)),h=n.default.li.withConfig({displayName:"AutoCompleteHotelsstyles__HotelStyles",componentId:"sc-1qr2ikx-2"})([""," ",""],r,({theme:e})=>(0,n.css)(["color:",";padding:",";padding-left:",";"],e.autocompleteHotelsListItemColor||e.colorMain,e.r100,e.r300)),u=n.default.div.withConfig({displayName:"AutoCompleteHotelsstyles__SearchHolderStyles",componentId:"sc-1qr2ikx-3"})(["",""],({theme:e,hasToShowFlightPlusHotelTabs:t})=>(0,n.css)(["padding:"," box-shadow:",";"],t?`${e.r150} ${e.r200} ${e.r150}`:`${e.r200} ${e.r150}`,e.boxShadowBottom0)),p=n.default.div.withConfig({displayName:"AutoCompleteHotelsstyles__AutocompleteHotelsHeader",componentId:"sc-1qr2ikx-4"})(["",""],({theme:e,hasToShowFlightPlusHotelTabs:t})=>(0,n.css)(["background-color:",";left:0;position:absolute;top:",";width:100%;z-index:",";"],e.colorBg,t?e.r600:0,e.zBaseup)),f=n.default.ul.withConfig({displayName:"AutoCompleteHotelsstyles__AutocompleteHotelsResult",componentId:"sc-1qr2ikx-5"})(["",""],({theme:e,hasToShowFlightPlusHotelTabs:t})=>(0,n.css)(["height:calc(100% - ",");overflow:scroll;padding:",";"],t?e.r800:e.r600,t?`${e.r800} ${e.r200} 0`:`${e.r600} ${e.r200} 0`)),m=(0,n.default)(s.default).withConfig({displayName:"AutoCompleteHotelsstyles__IconMarker",componentId:"sc-1qr2ikx-6"})(["",""],({theme:e})=>(0,n.css)(["fill:",";width:",";"],e.autocompleteHotelsListItemColor||e.colorMain300,e.iconsSizeML)),y=n.default.div.withConfig({displayName:"AutoCompleteHotelsstyles__AutocompleteHotelsStyles",componentId:"sc-1qr2ikx-7"})(["background-color:",";height:calc(100% - 6rem);left:0;list-style:none;padding:",";position:fixed;width:100%;z-index:",";"],({theme:e})=>e.colorBg,({theme:e})=>`0 0 ${e.r050}`,({theme:e})=>e.zSuperior);t.default={AutocompleteHotelsHeader:p,AutocompleteHotelsResult:f,AutocompleteHotelsStyles:y,CityStyles:d,CountryStyles:c,HotelStyles:h,IconMarker:m,SearchHolderStyles:u};e.exports=t.default},45805:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(12862)),l=a(74848);class i extends n.Component{addDestinationHTML({destination:e,destinationName:t,renderComponent:a,index:o,slugs:n,DestinationComponent:s}){const l=s(e[t],t);return[a(t,o,n),...l]}render(){return(0,l.jsx)(s.default,{action:this.props.action,addDestinationHTML:this.addDestinationHTML,autocompletePlaceHolder:this.props.autocompletePlaceHolder,calendarAvailableDateText:this.props.calendarAvailableDateText,calendarFirstAvailableDateText:this.props.calendarFirstAvailableDateText,calendarGoToFollowingMonthText:this.props.calendarGoToFollowingMonthText,calendarGoToPreviousMonthText:this.props.calendarGoToPreviousMonthText,calendarSelectedAsCheckinText:this.props.calendarSelectedAsCheckinText,calendarSelectedAsCheckoutText:this.props.calendarSelectedAsCheckoutText,calendarTheDayText:this.props.calendarTheDayText,callbackSubmitForm:this.props.callbackSubmitForm,checkAvailabilityText:this.props.checkAvailabilityText,className:this.props.className,closeCalendar:this.props.closeCalendar,datesText:this.props.datesText,dateText:this.props.dateText,destinationOrHotelName:this.props.destinationOrHotelName,destinations:this.props.destinations,destinationSelected:this.props.destinationSelected,destinationText:this.props.destinationText,endDate:this.props.endDate,flightPlusHotelTabs:this.props.flightPlusHotelTabs,formatDates:this.props.formatDates,generateComponentHTML:this.props.generateComponentHTML,handlerClickElement:this.props.handlerClickElement,handlerGoBack
1FromDatesCalendar:this.props.handlerGoBackFromDatesCalendar,hasToShowFlightPlusHotelTabs:this.props.hasToShowFlightPlusHotelTabs,hasToShowOccupancySelector:this.props.hasToShowOccupancySelector,hasToShowPromotionalCodeCheckBox:this.props.hasToShowPromotionalCodeCheckBox,hotelText:this.props.hotelText,isAsyncSearch:this.props.isAsyncSearch,isCorporative:this.props.isCorporative,isDesktop:this.props.isDesktop,isDestination:this.props.isDestination,locale:this.props.locale,maxNigthSelected:this.props.maxNigthSelected,messageModalNights:this.props.messageModalNights,modifyText:this.props.modifyText,nightsText:this.props.nightsText,nightText:this.props.nightText,occupancies:this.props.occupancies,oneDayOnly:this.props.oneDayOnly,originalDestinations:this.props.originalDestinations,prevOccupancies:this.props.prevOccupancies,promotionalCode:this.props.promotionalCode,promotionalCodeCheckBoxCode:this.props.promotionalCodeCheckBoxCode,promotionalCodeCheckBoxLabel:this.props.promotionalCodeCheckBoxLabel,selectedCheckin:this.props.selectedCheckin,selectedCheckout:this.props.selectedCheckout,setState:this.props.setState,showAutocompleteHotels:this.props.showAutocompleteHotels,showCalendar:this.props.showCalendar,startDate:this.props.startDate,textAdult:this.props.textAdult,textAdults:this.props.textAdults,textAges:this.props.textAges,textBackButton:this.props.textBackButton,textChangeDates:this.props.textChangeDates,textChangeOccupancy:this.props.textChangeOccupancy,textCheckin:this.props.textCheckin,textCheckout:this.props.textCheckout,textChild:this.props.textChild,textChildren:this.props.textChildren,textFriday:this.props.textFriday,textMonday:this.props.textMonday,textNextStep:this.props.textNextStep,textOccupancy:this.props.textOccupancy,textPlaceholderPromotionalCode:this.props.textPlaceholderPromotionalCode,textSaturday:this.props.textSaturday,textSelectDates:this.props.textSelectDates,textSunday:this.props.textSunday,textThursday:this.props.textThursday,textTuesday:this.props.textTuesday,textWednesday:this.props.textWednesday,titleModalMaxNights:this.props.titleModalMaxNights})}}t.default=i,e.exports=t.default},38995:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(5556)),l=o(a(12873)),i=o(a(73620)),r=a(74848);class c extends n.Component{render(){return(0,r.jsx)(l.default,{isDesktop:this.props.isDesktop,onClose:this.props.closeComponent,themeVersion:"light",type:"modal",children:(0,r.jsx)(i.default,{...this.props})})}}t.default=c,c.propTypes={callBackGoBackButton:s.default.func,isDesktop:s.default.bool,onClose:s.default.func,text:s.default.string,title:s.default.string},e.exports=t.default},73620:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=a(58630),l=o(a(45805)),i=a(74848);class r extends n.Component{constructor(e){super();const{destinations:t,destinationSelected:a,flightPlusHotelTabs:o}=e,n="object"==typeof t&&Object.keys(t).length>0,l=a&&n?this.findDestinationNameOrHotelName(a,t):"";this.state={destinationOrHotelName:l,destinationSelected:a,destinations:t,isCorporative:!(0,s.isString)(t)&&Object.keys(t).length>0,isDestination:!1,originalDestinations:t,showAutocompleteHotels:n,showCalendar:!!a},this.bindActions(),this.hasToShowFlightPlusHotelTabs=o.length>1&&""!==o[1].url}bindActions(){this.generateComponentHTML=this.generateComponentHTML.bind(this),this.handlerClickElement=this.handlerClickElement.bind(this),this.closeCalendar=this.closeCalendar.bind(this),this.handlerGoBackFromDatesCalendar=this.handlerGoBackFromDatesCalendar.bind(this)}findDestinationNameOrHotelName(e,t){const{countries:a}=t;let o;return Object.keys(a).forEach(t=>{const{cities:n}=a[t];let s;return Object.keys(n).forEach(t=>{const{items:a,slugs:l}=n[t];if(1===e.length){const t=a.find(t=>t.slug===e[0]);t&&(o=t.name,s=!0)}else{l.some(t=>-1!==e.indexOf(t))&&(o=t,s=!0)}}),!!s}),o}generateComponentHTML(e){this.setState({destinations:e})}handlerClickElement(e,t,a){this.setState({showCalendar:!0,destinationSelected:e,destinationOrHotelName:t,isDestination:a})}
1closeCalendar(){this.setState({showCalendar:!1}),this.props.closeComponent()}handlerGoBackFromDatesCalendar(){this.setState({showCalendar:!1})}render(){return(0,i.jsx)(l.default,{action:this.props.action,autocompletePlaceHolder:this.props.autocompletePlaceHolder,calendarAvailableDateText:this.props.calendarAvailableDateText,calendarFirstAvailableDateText:this.props.calendarFirstAvailableDateText,calendarGoToFollowingMonthText:this.props.calendarGoToFollowingMonthText,calendarGoToPreviousMonthText:this.props.calendarGoToPreviousMonthText,calendarSelectedAsCheckinText:this.props.calendarSelectedAsCheckinText,calendarSelectedAsCheckoutText:this.props.calendarSelectedAsCheckoutText,calendarTheDayText:this.props.calendarTheDayText,callbackSubmitForm:this.props.callbackSubmitForm,checkAvailabilityText:this.props.checkAvailabilityText,className:this.props.className,closeCalendar:this.closeCalendar,datesText:this.props.datesText,dateText:this.props.dateText,destinationOrHotelName:this.state.destinationOrHotelName,destinations:this.state.destinations,destinationSelected:this.state.destinationSelected,destinationText:this.props.destinationText,endDate:this.props.endDate,flightPlusHotelTabs:this.props.flightPlusHotelTabs,formatDates:this.props.formatDates,generateComponentHTML:this.generateComponentHTML,handlerClickElement:this.handlerClickElement,handlerGoBackFromDatesCalendar:this.handlerGoBackFromDatesCalendar,hasToShowFlightPlusHotelTabs:this.hasToShowFlightPlusHotelTabs,hasToShowOccupancySelector:this.props.hasToShowOccupancySelector,hasToShowPromotionalCodeCheckBox:this.props.hasToShowPromotionalCodeCheckBox,hotelText:this.props.hotelText,isAsyncSearch:this.props.isAsyncSearch,isCorporative:this.state.isCorporative,isDesktop:this.props.isDesktop,isDestination:this.state.isDestination,locale:this.props.locale,maxNigthSelected:this.props.maxNigthSelected,messageModalNights:this.props.messageModalNights,modifyText:this.props.modifyText,nightsText:this.props.nightsText,nightText:this.props.nightText,occupancies:this.props.occupancies,oneDayOnly:this.props.oneDayOnly,originalDestinations:this.state.originalDestinations,prevOccupancies:this.props.prevOccupancies,promotionalCode:this.props.promotionalCode,promotionalCodeCheckBoxCode:this.props.promotionalCodeCheckBoxCode,promotionalCodeCheckBoxLabel:this.props.promotionalCodeCheckBoxLabel,selectedCheckin:this.props.selectedCheckin,selectedCheckout:this.props.selectedCheckout,setState:this.setState,showAutocompleteHotels:this.state.showAutocompleteHotels,showCalendar:this.state.showCalendar,startDate:this.props.startDate,textAdult:this.props.textAdult,textAdults:this.props.textAdults,textAges:this.props.textAges,textBackButton:this.props.textBackButton,textChangeDates:this.props.textChangeDates,textChangeOccupancy:this.props.textChangeOccupancy,textCheckin:this.props.textCheckin,textCheckout:this.props.textCheckout,textChild:this.props.textChild,textChildren:this.props.textChildren,textFriday:this.props.textFriday,textMonday:this.props.textMonday,textNextStep:this.props.textNextStep,textOccupancy:this.props.textOccupancy,textPlaceholderPromotionalCode:this.props.textPlaceholderPromotionalCode,textSaturday:this.props.textSaturday,textSelectDates:this.props.textSelectDates,textSunday:this.props.textSunday,textThursday:this.props.textThursday,textTuesday:this.props.textTuesday,textWednesday:this.props.textWednesday,titleModalMaxNights:this.props.titleModalMaxNights})}}t.default=r,e.exports=t.default},25538:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(3944)),s=a(12944),l=a(74848);t.default=({autocompletePlaceHolder:e,generateComponentHTML:t,hasToShowFlightPlusHotelTabs:a,originalDestinations:o})=>(0,l.jsx)(s.SearchHolderStyles,{"data-testid":"fn-autocomplete-input-component",id:"autocomplete-input-component",hasToShowFlightPlusHotelTabs:a,children:(0,l.jsx)(n.default,{filteredCallback:t,objectsToFilter:o,placeholder:e})});e.exports=t.default},1217:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(5556)),s=a(12944),l=a(74848);const i=({handleClick:e,name:t,slugs:a})=>(0,l.jsxs)(s.CityStyles,{"data-testid":"fn-autocomplete-city-component",id:"autocomplete-city-component",onClick:()=>e(a,t,!1),children:[(0,l.jsx)(s.IconMarker,{}),t]});i.propTypes={name:n.default.string};t.default=i;e.exports=t.default},69928:function(e,t,a){var o=a(24994);
1Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(5556)),s=a(12944),l=a(74848);const i=({name:e})=>(0,l.jsx)(s.CountryStyles,{children:e});i.propTypes={name:n.default.string};t.default=i;e.exports=t.default},97680:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(5556)),s=a(12944),l=a(74848);const i=({handleClick:e,name:t,slug:a})=>(0,l.jsx)(s.HotelStyles,{"data-testid":"fn-autocomplete-hotel-component",id:"autocomplete-hotel-component",onClick:()=>e([a],t,!1),children:t});i.propTypes={name:n.default.string};t.default=i;e.exports=t.default},58630:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;const a=e=>e.sort((e,t)=>{const a=e.toLowerCase(),o=t.toLowerCase();return a<o?-1:a>o?1:0}),o=e=>{const t={},n=a(Object.keys(e)),s=n.length;for(let a=0;a<s;a+=1){const s=n[a];"object"!=typeof e[s]||e[s]instanceof Array?t[s]=e[s]:t[s]=o(e[s])}return t};t.default={destinationsAlphabeticalSort:o,isString:e=>"string"==typeof e,orderCountries:e=>e.sort((e,t)=>e.order-t.order),sortHotels:e=>e.sort((e,t)=>e.name<t.name?-1:e.name>t.name?1:0),sortKeysAlphabetically:a};e.exports=t.default},10905:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(38995));t.default=n.default;e.exports=t.default},35152:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(5556)),l=a(31090),i=a(51678),r=o(a(12044)),c=a(74848);class d extends n.Component{constructor(){super(),this.formRef=(0,n.createRef)(),this.state={checkin:null,checkout:null,promotionalCode:null,numAdults:null,numChildren:null,childrenAges:null,sortOccupancy:null},this.bindActions()}bindActions(){this.callbackSubmitForm=this.callbackSubmitForm.bind(this),this.closeComponent=this.closeComponent.bind(this),this.updateFormRef=this.updateFormRef.bind(this)}hasSelectedDates(){return this.state.checkin&&this.state.checkout}hasSelectedOccupancy(){return!this.props.hasToShowOccupancySelector||null!=this.state.numAdults&&null!=this.state.numChildren&&null!=this.state.childrenAges}componentDidUpdate(){this.hasSelectedDates()&&this.hasSelectedOccupancy()&&!this.props.isAsyncSearch&&this.formRef.current.submit()}callbackSubmitForm(e){this.setState({checkin:e.checkin,checkout:e.checkout,promotionalCode:e.promotionalCode,numAdults:e.numAdults,numChildren:e.numChildren,childrenAges:e.childrenAges,sortOccupancy:e.sortOccupancy}),this.props.callbackSubmitForm({...e,destinationSelected:this.props.destinationSelected})}closeComponent(){this.props.closeComponent()}addOfferCodeToParams(){let e=this.props.action;return e+=`?co=${this.props.offerCode}`,e}getValidValue(e){return e||""}updateFormRef(e){this.formRef.current=e}renderForm(){const e=(0,l.getFormattedDate)(this.props.datesFormat,this.state.checkin),t=(0,l.getFormattedDate)(this.props.datesFormat,this.state.checkout),a=this.getValidValue(this.state.numAdults),o=this.getValidValue(this.state.numChildren),n=this.getValidValue(this.state.childrenAges),s=this.getValidValue(this.state.promotionalCode),i=this.state.sortOccupancy||!1,r=this.props.offerCode?this.addOfferCodeToParams():this.props.action;return(0,c.jsxs)("form",{action:r,className:"roiAvailabilityForm",method:this.props.method,ref:this.updateFormRef,children:[(0,c.jsx)("input",{type:"hidden",name:"adultos",value:a}),(0,c.jsx)("input",{type:"hidden",name:"codpromo",value:s}),(0,c.jsx)("input",{type:"hidden",name:"destino",value:this.props.destinationSelected}),(0,c.jsx)("input",{type:"hidden",name:"edades",value:n}),(0,c.jsx)("input",{type:"hidden",name:"entrada",value:e}),(0,c.jsx)("input",{type:"hidden",name:"ninos",value:o}),(0,c.jsx)("input",{type:"hidden",name:"salida",value:t}),(0,c.jsx)("input",{type:"hidden",name:"sort_occupancy",value:i})]})}renderSearchEngine(){return(0,c.jsx)(r.default,{...this.props,callbackSubmitForm:this.callbackSubmitForm,closeCalendar:this.closeComponent})}render(){const e=this.state.checkin&&this.state.checkout&&!this.props.isAsyncSearch;return(0,c.jsxs)("div",{children:[e?this.renderForm():null,this.renderSearchEngine()]})}}t.default=d,d.propTypes={action:s.default.string,callbackSubmitForm:s.default.func,datesFormat:s.default.string,destinationSelected:s.default.any.isRequired,hasToShowOccupancySelector:s.default.bool,isAsyncSearch:s.default.bool,method:s.default.string.isRequired,occupancies:s.default.object},d.defaultProps={action:"#",callbackSubmitForm:i.defaultEmptyFunction,datesFormat:"DD/MM/YYYY",isAsyncSearch:!1,method:"POST",occupancies:{}},e.exports=t.default},91933:function(e,t,a){var o=a(24994);
1Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(35152));t.default=n.default;e.exports=t.default},65295:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(e,t){if("function"==typeof WeakMap)var a=new WeakMap,o=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,l={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return l;if(n=t?o:a){if(n.has(e))return n.get(e);n.set(e,l)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(s.get||s.set)?n(l,t,s):l[t]=e[t]);return l}(e,t)}(a(30496)),s=a(37039),l=o(a(89883)),i=o(a(16554)),r=o(a(27020)),c=o(a(69014));const d=e=>e||"20%",h=(0,n.css)(["",""],({theme:e})=>(0,n.css)(["fill:",";height:",";width:",";"],e.neutral700,e.iconDefaultSize,e.iconDefaultSize)),u=(0,n.default)(i.default).withConfig({displayName:"Calendarstyles__IconPrevStyles",componentId:"sc-ubdaav-0"})(["",""],h),p=(0,n.default)(r.default).withConfig({displayName:"Calendarstyles__IconNextStyles",componentId:"sc-ubdaav-1"})(["",""],h),f=(0,n.default)(c.default.Rounded).withConfig({displayName:"Calendarstyles__CalendarButtonStyles",componentId:"sc-ubdaav-2"})(["margin:0 auto;"]),m=n.default.div.withConfig({displayName:"Calendarstyles__CalendarStyles",componentId:"sc-ubdaav-3"})(["",""],({theme:e,isMobileLargeResolution:t})=>(0,n.css)(["position:relative;",""],t?(0,n.css)(["height:100%;overflow-y:scroll;padding:0 "," ",";@media ","{margin:0 auto;max-width:42rem;padding:0;}"],e.r150,e.r150,s.device.tablet):(0,n.css)(["display:flex;justify-content:space-between;"]))),y=n.default.table.withConfig({displayName:"Calendarstyles__MonthStyles",componentId:"sc-ubdaav-4"})(["border-collapse:collapse;border-spacing:0;"]),x=n.default.div.withConfig({displayName:"Calendarstyles__MonthNameStyles",componentId:"sc-ubdaav-5"})(["",";"],({theme:e,isMobileLargeResolution:t})=>(0,n.css)([""," color:",";padding:"," 0 ",";text-align:center;"],t?(0,n.css)(["",""],l.default.BtoL):(0,n.css)(["",";"],l.default.StoB),e.calendarHeaderColor||e.neutral600,e.r200,e.r150)),g=n.default.tbody.withConfig({displayName:"Calendarstyles__MonthDaysStyles",componentId:"sc-ubdaav-6"})(["",";"],({theme:e,isMobileLargeResolution:t})=>(0,n.css)([""," ",""],l.default.StoB,t&&(0,n.css)(["padding-bottom:",";"],e.r150))),C=(0,n.css)(["",""],({theme:e})=>(0,n.css)(["background-color:",";border-radius:",";color:",";"],e.calendarDaySelectedBackgroundColor||e.colorMain,d(e.calendarDayRounded),e.calendarDaySelectedColor||e.neutral000)),S=(0,n.css)(["",""],({checkoutSelected:e,dayStatus:t,hasToShowHover:a,oneDayOnly:o,theme:s})=>(0,n.css)([""," "," ",""],(({checkoutSelected:e,dayStatus:t,hasToShowHover:a,oneDayOnly:o})=>!o&&("range"===t||"checkout"===t||((e,t,a)=>"checkin"===e&&(t||a))(t,e,a)))({checkoutSelected:e,dayStatus:t,hasToShowHover:a,oneDayOnly:o})&&(0,n.css)(["&:before{background-color:",";content:'';height:100%;left:0;position:absolute;top:0;width:100%;}"],s.calendarDaySelectedRangeBackgroundColor||s.colorMain100),"checkin"===t&&(0,n.css)(["&::before{border-bottom-left-radius:",";border-top-left-radius:",";}"],d(s.calendarDayRounded),d(s.calendarDayRounded)),"checkout"===t&&(0,n.css)(["&::before{border-bottom-right-radius:",";border-top-right-radius:",";}"],d(s.calendarDayRounded),d(s.calendarDayRounded)))),b=n.default.td.withConfig({displayName:"Calendarstyles__DayWrapperStyles",componentId:"sc-ubdaav-7"})(["",";"],({dayStatus:e,isMobileLargeResolution:t,theme:a})=>(0,n.css)(["border:none;padding:0;position:relative;text-align:center;vertical-align:middle;"," "," &:focus{outline:",";z-index:",";}",""],t?(0,n.css)(["height:",";width:",";@media ","{max-height:",";max-width:",";}"],`calc(calc(100vw - ${a.r300}) / 7)`,`calc(calc(100vw - ${a.r300}) / 7)`,s.device.tablet,a.r600,a.r600):(0,n.css)(["height:",";width:",";"],a.iconDefaultSize,a.iconDefaultSize),S,a.outline,a.zBaseTop,"blocked"!==e&&(0,n.css)(["&:hover{span{cursor:pointer;","}}
1"],C))),T=n.default.span.withConfig({displayName:"Calendarstyles__DayStyles",componentId:"sc-ubdaav-8"})(["",";"],({theme:e,dayStatus:t})=>(0,n.css)(["align-items:center;color:",";display:flex;height:100%;justify-content:center;position:relative;width:100%;"," ",""],e.calendarDayDefaultColor||e.neutral800,"blocked"===t&&(0,n.css)(["color:",";"],e.calendarDayBlockedColor||e.neutral300),(e=>"checkin"===e||"checkout"===e)(t)&&(0,n.css)(["",""],C))),k=n.default.table.withConfig({displayName:"Calendarstyles__WeekDaysContainerStyles",componentId:"sc-ubdaav-9"})(["border-collapse:collapse;border-spacing:0;margin:0 auto;width:calc(100% - 3rem);@media ","{max-width:42rem;}"],s.device.tablet),D=n.default.tr.withConfig({displayName:"Calendarstyles__WeekStyles",componentId:"sc-ubdaav-10"})(["",";"],({theme:e,isMobileLargeResolution:t})=>(0,n.css)([""," height:",";"],t?(0,n.css)(["",";"],l.default.StoB):(0,n.css)(["",";"],l.default.XStoS),e.r400)),v=n.default.th.withConfig({displayName:"Calendarstyles__WeekDayStyles",componentId:"sc-ubdaav-11"})(["",";"],({theme:e})=>(0,n.css)(["color:",";height:",";text-align:center;vertical-align:middle;width:",";abbr{border:0;text-decoration:none;text-transform:none;}"],e.datesPopupWeekDayColor||e.neutral600,e.r400,e.r400)),M=n.default.div.withConfig({displayName:"Calendarstyles__WeekDaysWrapper",componentId:"sc-ubdaav-12"})(["",""],({theme:e})=>(0,n.css)(["border-bottom:"," solid ",";"],e.borderWidthS,e.borderCalendar||e.neutral100)),O=n.default.div.withConfig({displayName:"Calendarstyles__MonthWrapperStyles",componentId:"sc-ubdaav-13"})(["",""],({theme:e,isMobileLargeResolution:t})=>(0,n.css)(["margin:"," 0;margin-bottom:0;"," ",""],e.r100,!t&&(0,n.css)(["min-height:36rem;margin:0 ",";"],e.r100),t&&(0,n.css)(["border-bottom:"," solid ",";padding-bottom:",";"],e.borderWidthS,e.borderCalendar||e.neutral100,e.r150))),w=(0,n.css)(["",""],({theme:e})=>(0,n.css)(["align-items:center;background:transparent;border-radius:",";border:"," solid ",";cursor:pointer;display:flex;justify-content:center;position:absolute;top:",";&:focus{outline:",";}"],e.r100,e.borderWidthS,e.neutral400,e.r100,e.outline)),A=n.default.button.withConfig({displayName:"Calendarstyles__PrevButtonStyles",componentId:"sc-ubdaav-14"})(["",";",""],w,({theme:e})=>(0,n.css)(["left:",";"],e.r150)),P=n.default.button.withConfig({displayName:"Calendarstyles__NextButtonStyles",componentId:"sc-ubdaav-15"})(["",";",""],w,({theme:e})=>(0,n.css)(["right:",";"],e.r150));t.default={CalendarButtonStyles:f,CalendarStyles:m,DayStyles:T,DayWrapperStyles:b,IconNextStyles:p,IconPrevStyles:u,MonthDaysStyles:g,MonthNameStyles:x,MonthStyles:y,MonthWrapperStyles:O,NextButtonStyles:P,PrevButtonStyles:A,WeekDaysContainerStyles:k,WeekDayStyles:v,WeekDaysWrapper:M,WeekStyles:D};e.exports=t.default},19191:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(5556)),l=a(31090),i=a(95489),r=a(51678),c=a(862),d=a(51204),h=a(56989),u=o(a(71046)),p=a(74848);const f=({calendar:e,calendarGoToFollowingMonthText:t,calendarGoToPreviousMonthText:a,calendarRef:o,checkAvailabilityText:s,checkinSelected:f,checkoutSelected:m,endDate:y,formatDates:x,generateFollowingCalendar:g=r.defaultEmptyFunction,generatePreviousCalendar:C=r.defaultEmptyFunction,handlerClickDay:S=r.defaultEmptyFunction,hasToGeneratePreviousMonth:b,hasToScrollDown:T,hasToShowHover:k,isMobileLargeResolution:D,maxNigthSelected:v,maxNumberOfMonths:M=c.MAX_NUMBER_OF_MONTHS,numberOfMonthsAddedBefore:O,oneDayOnly:w,onFocusedDayChanged:A=r.defaultEmptyFunction,onOverDayChanged:P=r.defaultEmptyFunction,reference:B=r.defaultEmptyFunction,startDate:j,submitCalendarDates:_=r.defaultEmptyFunction,unsetScrollDown:N=r.defaultEmptyFunction})=>{const I=(0,i.usePrevious)({calendar:e}),F=()=>{const t=(0,d.getReference)(o.current,e);if(t&&T){const a=(0,d.calculateMonthsAddedBeforeHeight)(O,e);t.scrollTo(0,a>0?a:20)}};(0,n.useEffect)(()=>{D&&(F(),e.length>0&&I?.calendar.length!==e.length&&(e=>{const t=setInterval(()=>{(0,d.getReference)(o.current,e)&&(clearInterval(t),F())},c.CALENDAR_MOUNT_INTERVAL)})(e))},[e,o,T,O]);const H=e=>S({checkin:e,checkout:null}),R=e=>{if((0,d.isAvailableDay)({dayClicked:e,endDate:y,formatDates:x,startDate:j})){if(f&&(0,r.hasCheckoutOrIsOneDayOnly)(m,w))H(e);else if(e.isAfter(f)){const{checkin:t,checkout:a,maxNightsExceeded:o}=(0,d.getDatesSelectionRangeProps)(f,e,v);S({checkin:t,checkout:a,maxNightsExceeded:o})}else H(e);N()}};return(0,p.jsx)(u.default,{calendar:e,calendarGoToFollowingMonthText:t,calendarGoToPreviousMonthText:a,calendarReference:(0,d.getReference)(o.current,e),checkAvailabilityText:s,checkoutSelected:m,focusIfNecessary:(e,t)=>{"0"===t&&e&&e.focus({preventScroll:!0})},hasToGeneratePreviousMonth:b,hasToShowHover:k,isMobileLargeResolution:D,maxNumberOfMonths:M,onButtonClickDay:()=>{const{maxNightsExceeded:e}=(0,d.getDatesSelectionRangeProps)(f,m,v);_({checkin:f,checkout:m,maxNightsExceeded:e})},onClickDay:R,onClickFollowingCalendar:()=>g(),onClickPreviousCalendar:()=>C(),oneDayOnly:w,onKeyDownDay:(e,t)=>{"Enter"===e.key?(e.preventDefault(),R(t)):c.KEY_MOVES[e.key]&&(e.preventDefault(),A(e.key,t,(0,l.getDate)({...c.KEY_MOVES[e.key],date:t,operationType:"days"}
1)))},onMouseDayEnter:t=>{if(!m&&(0,l.isAfterOrSame)(t,f,x)){const a=(0,h.getCalendarWithDaysRangeOver)({calendar:e,checkinSelected:f,dayWithMouseOver:t,endDate:y,formatDates:x,startDate:j});P(a,(0,l.isAfter)(t,f))}},onMouseDayLeave:()=>{if(!m){const t=(0,h.getCalendarWithDaysRangeOver)({calendar:e,checkinSelected:f,dayWithMouseOver:f,endDate:y,formatDates:x,startDate:j});P(t,!1)}},onScrollInCalendar:({calendarProp:e,calendarReference:t,hasToGeneratePreviousMonthProp:a,maxNumberOfMonthsProp:o})=>{const n=t.scrollTop,s=t.scrollHeight;t.offsetHeight>=80*(s-n)/100&&e.length<=o?g():n<=0&&a&&C()},reference:B})};f.displayName="CalendarController",f.propTypes={calendar:s.default.array,calendarRef:s.default.object,checkinSelected:s.default.object,checkoutSelected:s.default.object,endDate:s.default.oneOfType([s.default.object,s.default.string]),formatDates:s.default.string,generateFollowingCalendar:s.default.func,generatePreviousCalendar:s.default.func,handlerClickDay:s.default.func,hasToGeneratePreviousMonth:s.default.bool,hasToScrollDown:s.default.bool,hasToShowHover:s.default.bool,maxNigthSelected:s.default.number,maxNumberOfMonths:s.default.number,numberOfMonthsAddedBefore:s.default.number,oneDayOnly:s.default.bool,onFocusedDayChanged:s.default.func,onOverDayChanged:s.default.func,reference:s.default.func,startDate:s.default.oneOfType([s.default.object,s.default.string]),submitCalendarDates:s.default.func,unsetScrollDown:s.default.func};t.default=f;e.exports=t.default},81110:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(5556)),l=a(31090),i=a(95489),r=a(52338),c=a(862),d=a(17893),h=a(51204),u=a(2639),p=a(56989),f=o(a(19191)),m=a(74848);const y=({acceptsDatesBeforeToday:e=!1,calendarAvailableDateText:t,calendarFirstAvailableDateText:a,calendarGoToFollowingMonthText:o,calendarGoToPreviousMonthText:s,calendarSelectedAsCheckinText:y,calendarSelectedAsCheckoutText:x,calendarTheDayText:g,checkAvailabilityText:C,checkinSelected:S,checkoutSelected:b,endDate:T,formatDates:k="DD/MM/YYYY",handlerClickDay:D,isDesktop:v,maxNigthSelected:M=30,maxNumberOfMonths:O=c.MAX_NUMBER_OF_MONTHS,oneDayOnly:w,startDate:A,submitCalendarDates:P})=>{const B={calendar:[],calendarCallback:null,firstVisibleMonthIndex:0,hasToGeneratePreviousMonth:!0,hasToScrollDown:!0,hasToShowHover:!1,lastMonthViewed:null,numberOfMonthsAddedBefore:0}
1,[j,_]=(0,n.useState)(B),[N,I]=(0,n.useState)((0,n.createRef)()),F=(0,i.usePrevious)({checkinSelected:S,checkoutSelected:b}),H=(0,i.usePrevious)(N),{isMobileL:R}=(0,r.useWindowWidth)(),E=R||!v,L=(0,i.usePrevious)(E),V=({callback:e=null,currentState:o=j,direction:n,firstMonthOfNewCalendar:s,hasToUpdateVisibility:i=!0,initialCalendar:r,newHasToScrollDown:d=!1,maxGroupsOfMonthsToGenerate:h=1})=>{const f=[...r],m=E?c.MOBILE_VIEW_MONTHS_TO_SHOW*h:c.DESKTOP_VIEW_MONTHS_TO_SHOW,C=(0,u.getNumberOfMonthsToBeAdded)({calendar:o.calendar,firstVisibleMonthIndex:o.firstVisibleMonthIndex,isMobileLargeResolution:E,monthsToShow:m,newCalendar:f});for(let e=0;e<C;e+=1){const n=(0,l.getDate)({date:s}),r=(0,l.getDate)({date:n,increment:e,operationType:"months"});f.push((0,u.generateMonthCalendar)({calendarAvailableDateText:t,calendarFirstAvailableDateText:a,calendarSelectedAsCheckinText:y,calendarSelectedAsCheckoutText:x,calendarTheDayText:g,checkinSelected:S,checkoutSelected:b,date:r,endDate:T,formatDates:k,index:e,isVisible:(0,p.isMonthVisible)({checkinSelected:S,date:r,hasToUpdateVisibility:i,isMobileLargeResolution:E,monthIndex:e}),firstVisibleMonthIndex:o.firstVisibleMonthIndex,startDate:A}))}const{calendarWithMonthsVisibility:D,newFirstVisibleMonthIndex:v}=(0,p.updateMonthsVisibilityOnGenerateCalendar)({direction:n,calendar:f,firstVisibleMonthIndex:o.firstVisibleMonthIndex,hasToUpdateVisibility:i,isMobileLargeResolution:E});_({...o,calendar:D,calendarCallback:e,firstVisibleMonthIndex:v,hasToScrollDown:d,lastMonthViewed:0===C?o.lastMonthViewed:(0,l.getDate)({date:s,increment:m-1,operationType:"months"}),numberOfMonthsAddedBefore:(0,l.getDiffMonths)((0,l.getDate)({date:A}),S)+1})};(0,n.useEffect)(()=>{var e,t;V({firstMonthOfNewCalendar:E?A:S,initialCalendar:j.calendar,newHasToScrollDown:!0,maxGroupsOfMonthsToGenerate:(e=A,t=S,e&&t?Math.ceil(((0,l.getDiffMonths)((0,l.getDate)({date:A}),S)+1)/6):1)})},[]),(0,n.useEffect)(()=>{if(j.calendarCallback&&j.calendarCallback(j),F?.checkinSelected!==S||F?.checkoutSelected!==b){let e;(0,p.isDateInSecondVisibleMonth)({calendar:j.calendar,date:S,firstVisibleMonthIndex:j.firstVisibleMonthIndex,isMobileLargeResolution:E})?_({...j,calendarCallback:()=>V({currentState:B,firstMonthOfNewCalendar:(0,l.getDate)({date:S,decrement:1,operationType:"month"}),initialCalendar:[],newHasToScrollDown:!1,hasToUpdateVisibility:!1})}):_({...j,calendarCallback:()=>V({currentState:E?j:B,firstMonthOfNewCalendar:E?A:S,hasToUpdateVisibility:e,initialCalendar:[],newHasToScrollDown:!1})})}},[j]),(0,n.useEffect)(()=>{L&&!E?_({...B,calendarCallback:()=>V({currentState:B,firstMonthOfNewCalendar:S,initialCalendar:[],newHasToScrollDown:!1})}):!L&&E&&_({...B,calendarCallback:()=>V({currentState:B,firstMonthOfNewCalendar:A,initialCalendar:[],newHasToScrollDown:!1})})},[E]);const W=e=>{V({callback:e,direction:c.FORWARDS_PAGINATION_DIRECTION,firstMonthOfNewCalendar:(0,l.getDate)({date:j.lastMonthViewed,increment:1,operationType:"months"}),initialCalendar:j.calendar})},G=(o=null)=>{const n=E?c.MOBILE_VIEW_MONTHS_TO_SHOW:c.DESKTOP_VIEW_MONTHS_TO_SHOW;let s={calendar:[...j.calendar],hasToGeneratePreviousMonth:j.hasToGeneratePreviousMonth,numberOfMonthsAddedBefore:j.numberOfMonthsAddedBefore,startDate:j.calendar[0].month[0].date},l=1;for(;(0,u.manageGeneratePreviousCalendar)({hasToGeneratePreviousMonth:s.hasToGeneratePreviousMonth,isMobileLargeResolution:E,firstVisibleMonthIndex:j.firstVisibleMonthIndex,monthIndex:l,monthsToShow:n});)s=(0,u.getPreviousMonthProps)({acceptsDatesBeforeToday:e,calendar:s.calendar,calendarAvailableDateText:t,calendarFirstAvailableDateText:a,calendarSelectedAsCheckinText:y,calendarSelectedAsCheckoutText:x,calendarTheDayText:g,checkinSelected:S,checkoutSelected:b,endDate:j.endDate,formatDates:k,isMobileLargeResolution:E,monthIndex:l,startDate:s.startDate}),l+=1;const{calendarWithMonthsVisibility:i,newFirstVisibleMonthIndex:r}=(0,p.updateMonthsVisibilityOnGeneratePreviousCalendar)({calendar:s.calendar,firstVisibleMonthIndex:j.firstVisibleMonthIndex,generatedMonths:s.calendar.length-j.calendar.length,isMobileLargeResolution:E});s.calendar=i,_({...j,...s,calendarCallback:o,firstVisibleMonthIndex:r,hasToScrollDown:!0})},$=({currentState:e,date:t,dateMonth:a,eventKey:o,monthIndex:n,newDate:s})=>{let l=[...e.calendar];const i={...a}
1,{month:r,hasToChangeMonth:c}=(0,d.updateTabIndexes)({date:t,formatDates:k,month:i.month,newDate:s});i.month=r,l[n]=i,c&&(l=(0,d.changeToPreviousOrFollowingMonth)({calendar:l,date:t,eventKey:o,formatDates:k,monthIndex:n,newDate:s})),_({...e,calendar:l,calendarCallback:null})};return(0,m.jsx)(f.default,{calendar:j.calendar,calendarGoToFollowingMonthText:o,calendarGoToPreviousMonthText:s,calendarRef:N,checkAvailabilityText:C,checkinSelected:S,checkoutSelected:b,endDate:T,formatDates:k,generateFollowingCalendar:W,generatePreviousCalendar:G,handlerClickDay:D,hasToGeneratePreviousMonth:j.hasToGeneratePreviousMonth,hasToScrollDown:j.hasToScrollDown,hasToShowHover:j.hasToShowHover,isMobileLargeResolution:E,maxNigthSelected:M,maxNumberOfMonths:O,numberOfMonthsAddedBefore:j.numberOfMonthsAddedBefore,oneDayOnly:w,onFocusedDayChanged:(e,t,a)=>{const o=[...j.calendar],{month:n,monthIndex:s}=(0,h.findCalendarMonth)(o,t);if((0,d.hasToLoadPreviousMonth)({date:t,eventKey:e,hasToGeneratePreviousMonth:j.hasToGeneratePreviousMonth,isMobileLargeResolution:E,monthIndex:s}))G(o=>$({currentState:o,date:t,dateMonth:n,eventKey:e,monthIndex:(0,d.getMonthIndexOnLoadPreviousMonth)({isMobileLargeResolution:E,currentCalendarLength:o.calendar.length,monthIndex:s,previousCalendarLength:j.calendar.length}),newDate:a}));else if((0,u.hasToNavigateToPreviousMonth)({calendar:o,date:t,eventKey:e,firstVisibleMonthIndex:j.firstVisibleMonthIndex,isMobileLargeResolution:E,maxNumberOfMonths:O})){const{calendarWithMonthsVisibility:o,newFirstVisibleMonthIndex:l}=(0,p.updateMonthsVisibilityOnGeneratePreviousCalendar)({calendar:j.calendar,firstVisibleMonthIndex:j.firstVisibleMonthIndex,generatedMonths:0,isMobileLargeResolution:E});_({...j,calendar:o,calendarCallback:o=>$({currentState:o,date:t,dateMonth:n,eventKey:e,monthIndex:s,newDate:a}),firstVisibleMonthIndex:l})}else if((0,d.hasToLoadFollowingMonth)({calendarLength:o.length,date:t,eventKey:e,isMobileLargeResolution:E,maxNumberOfMonths:O,monthIndex:s}))W(o=>$({currentState:o,date:t,dateMonth:n,eventKey:e,monthIndex:s,newDate:a}));else if((0,u.hasToNavigateToFollowingMonth)({calendar:o,date:t,eventKey:e,firstVisibleMonthIndex:j.firstVisibleMonthIndex,isMobileLargeResolution:E,maxNumberOfMonths:O})){const{calendarWithMonthsVisibility:o,newFirstVisibleMonthIndex:l}=(0,p.updateMonthsVisibilityOnGenerateCalendar)({direction:c.FORWARDS_PAGINATION_DIRECTION,calendar:j.calendar,firstVisibleMonthIndex:j.firstVisibleMonthIndex,hasToUpdateVisibility:!0,isMobileLargeResolution:E});_({...j,calendar:o,calendarCallback:o=>$({currentState:o,date:t,dateMonth:n,eventKey:e,monthIndex:s,newDate:a}),firstVisibleMonthIndex:l})}else $({currentState:j,date:t,dateMonth:n,eventKey:e,monthIndex:s,newDate:a})},onOverDayChanged:(e,t)=>_({...j,calendar:e,hasToShowHover:t}),reference:e=>{H?.current!==e&&I({...N,current:e})},startDate:A,submitCalendarDates:P,unsetScrollDown:()=>_({...j,hasToScrollDown:!1})})};y.displayName="CalendarModel",y.propTypes={checkinSelected:s.default.object,checkoutSelected:s.default.object,endDate:s.default.oneOfType([s.default.object,s.default.string]),maxNigthSelected:s.default.number,maxNumberOfMonths:s.default.number,startDate:s.default.oneOfType([s.default.object,s.default.string])};t.default=y;e.exports=t.default},71046:function(e,t,a){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(31090),n=a(51204),s=a(65295),l=a(74848),i=a(96540);const r=({isMobileLargeResolution:e})=>(0,l.jsx)(s.DayWrapperStyles,{"aria-label":"","data-testid":"fn-day-empty",isMobileLargeResolution:e}),c=({ariaLabel:e,checkoutSelected:t,date:a,dayStatus:n,focusIfNecessary:i,hasToShowHover:r,isMobileLargeResolution:c,onClickDay:d,oneDayOnly:h,onKeyDownDay:u,onMouseDayEnter:p,onMouseDayLeave:f,tabIndex:m})=>(0,l.jsx)(s.DayWrapperStyles,{"aria-label":e,checkoutSelected:t,"data-testid":`fn-day-${n}`,dayStatus:n,hasToShowHover:r,isMobileLargeResolution:c,onClick:()=>d(a),oneDayOnly:h,onKeyDown:e=>u(e,a),onMouseEnter:()=>p(a),onMouseLeave:f,ref:e=>i(e,m),role:"button",tabIndex:m,children:(0,l.jsx)(s.DayStyles,{dayStatus:n,children:(0,o.getDayOfMonth)(a)})}),d=({checkoutSelected:e,emptyDays:t,focusIfNecessary:a,hasToShowHover:o,isMobileLargeResolution:n,month:s,onClickDay:d,oneDayOnly:h,onKeyDownDay:u,onMouseDayEnter:p,onMouseDayLeave:f})=>{const m=[];let y=[];for(let x=0;x<t+s.length;x+=1)x<t?y.push((0,l.jsx)(r,{isMobileLargeResolution:n},`empty-${x}`)):(y.push((0,i.createElement)(c,{...s[x-t],checkoutSelected:e,focu
1sIfNecessary:a,hasToShowHover:o,isMobileLargeResolution:n,key:"day-key-"+(x-t),onClickDay:d,oneDayOnly:h,onKeyDownDay:u,onMouseDayEnter:p,onMouseDayLeave:f})),(x+1)%7!=0&&x!==t+s.length-1||(m.push((0,l.jsx)("tr",{children:y},`week-key-${m.length+1}`)),y=[]));return(0,l.jsx)(l.Fragment,{children:(0,l.jsx)(l.Fragment,{children:m})})},h=({isMobileLargeResolution:e})=>{const t=(0,n.getWeekdays)();return(0,l.jsx)("thead",{children:(0,l.jsxs)(s.WeekStyles,{isMobileLargeResolution:e,children:[(0,l.jsx)(s.WeekDayStyles,{children:(0,l.jsx)("abbr",{title:t[1],children:t[1]})}),(0,l.jsx)(s.WeekDayStyles,{children:(0,l.jsx)("abbr",{title:t[2],children:t[2]})}),(0,l.jsx)(s.WeekDayStyles,{children:(0,l.jsx)("abbr",{title:t[3],children:t[3]})}),(0,l.jsx)(s.WeekDayStyles,{children:(0,l.jsx)("abbr",{title:t[4],children:t[4]})}),(0,l.jsx)(s.WeekDayStyles,{children:(0,l.jsx)("abbr",{title:t[5],children:t[5]})}),(0,l.jsx)(s.WeekDayStyles,{children:(0,l.jsx)("abbr",{title:t[6],children:t[6]})}),(0,l.jsx)(s.WeekDayStyles,{children:(0,l.jsx)("abbr",{title:t[0],children:t[0]})})]})})},u=({checkoutSelected:e,emptyDays:t,focusIfNecessary:a,hasToShowHover:o,isMobileLargeResolution:n,isVisible:i,month:r,monthName:c,onClickDay:u,oneDayOnly:p,onKeyDownDay:f,onMouseDayEnter:m,onMouseDayLeave:y,reference:x,year:g})=>i&&(0,l.jsxs)(s.MonthWrapperStyles,{isMobileLargeResolution:n,children:[(0,l.jsxs)(s.MonthNameStyles,{isMobileLargeResolution:n,children:[c," ",g]}),(0,l.jsxs)(s.MonthStyles,{"data-testid":"fn-calendar",ref:e=>{x.current=e},children:[!n&&(0,l.jsx)(h,{}),(0,l.jsx)(s.MonthDaysStyles,{isMobileLargeResolution:n,children:(0,l.jsx)(d,{checkoutSelected:e,emptyDays:t,focusIfNecessary:a,hasToShowHover:o,isMobileLargeResolution:n,month:r,onClickDay:u,oneDayOnly:p,onKeyDownDay:f,onMouseDayEnter:m,onMouseDayLeave:y})})]})]});t.default=({calendar:e,calendarGoToFollowingMonthText:t,calendarGoToPreviousMonthText:a,calendarReference:o,checkAvailabilityText:n,checkoutSelected:r,focusIfNecessary:c,hasToGeneratePreviousMonth:d,hasToShowHover:p,isMobileLargeResolution:f,maxNumberOfMonths:m,onButtonClickDay:y,onClickDay:x,onClickFollowingCalendar:g,onClickPreviousCalendar:C,oneDayOnly:S,onKeyDownDay:b,onMouseDayEnter:T,onMouseDayLeave:k,onScrollInCalendar:D,reference:v})=>(0,l.jsxs)(l.Fragment,{children:[f&&(0,l.jsx)(s.WeekDaysWrapper,{children:(0,l.jsx)(s.WeekDaysContainerStyles,{children:(0,l.jsx)(h,{isMobileLargeResolution:f})})}),(0,l.jsxs)(s.CalendarStyles,{"data-testid":"fn-calendar-container",isMobileLargeResolution:f,onScroll:()=>{o&&f&&D({calendarProp:e,calendarReference:o,hasToGeneratePreviousMonthProp:d,maxNumberOfMonthsProp:m})},ref:v,children:[!f&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(s.PrevButtonStyles,{"aria-label":a,"data-testid":"fn-prev-button",onClick:C,tabIndex:"0",children:(0,l.jsx)(s.IconPrevStyles,{})}),(0,l.jsx)(s.NextButtonStyles,{"aria-label":t,"data-testid":"fn-next-button",onClick:g,tabIndex:"0",children:(0,l.jsx)(s.IconNextStyles,{})})]}),e.map(e=>(0,i.createElement)(u,{...e,checkoutSelected:r,focusIfNecessary:c,hasToShowHover:p,isMobileLargeResolution:f,key:e.keyIndex,onClickDay:x,oneDayOnly:S,onKeyDownDay:b,onMouseDayEnter:T,onMouseDayLeave:k}))]}),(0,l.jsx)(s.CalendarButtonStyles,{"data-testid":"fn-calendar-dispo-available",disabled:!(r||S),onClick:y,children:n})]});e.exports=t.default},862:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={CALENDAR_MOUNT_INTERVAL:500,DESKTOP_VIEW_MONTHS_TO_SHOW:2,FORWARDS_PAGINATION_DIRECTION:"forwards",KEY_MOVES:{ArrowDown:{increment:7},ArrowLeft:{decrement:1},ArrowRight:{increment:1},ArrowUp:{decrement:7}},MAX_NUMBER_OF_MONTHS:24,MOBILE_VIEW_MONTHS_TO_SHOW:6};e.exports=t.default},17893:function(e,t,a){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(31090);const n=e=>"ArrowLeft"===e||"ArrowUp"===e,s=e=>"ArrowRight"===e||"ArrowDown"===e,l=(e,t,a)=>{let o;return((e,t)=>n(e)&&t>0)(e,t)?o=t-1:((e,t,a)=>s(e)&&t<a-1)(e,t,a.length)&&(o=t+1),o>=0?o:-1},i=({date:e,formatDates:t,month:a,newDate:n})=>{let s=!0;const l=a.map(a=>{let l;return(0,o.getFormattedDate)(t,a.date)===(0,o.getFormattedDate)(t,e)?l="-1":(0,o.getFormattedDate)(t,a.date)===(0,o.getFormattedDate)(t,n)?(l="0",s=!1):l=a.tabIndex,{...a,tabIndex:l}});
1return{hasToChangeMonth:s,month:l}},r=({calendarAvailableDateText:e,calendarFirstAvailableDateText:t,calendarSelectedAsCheckinText:a,calendarSelectedAsCheckoutText:n,calendarTheDayText:s,date:l,dayStatus:i})=>{let r;if("checkin"===i){const n=((e,t,a)=>(0,o.isToday)(e)?t:a)(l,t,e);r=`${s} ${(0,o.getFormattedLocalizedDate)(l)} ${n} ${a}`}else r="checkout"===i?`${s} ${(0,o.getFormattedLocalizedDate)(l)} ${e} ${n}`:"range"===i||"available"===i?`${s} ${(0,o.getFormattedLocalizedDate)(l)} ${e}`:"";return r};t.default={changeToPreviousOrFollowingMonth:({calendar:e,date:t,eventKey:a,formatDates:o,monthIndex:n,newDate:s})=>{const r=[...e],c=l(a,n,r);if(c>=0){const e=r[c],{month:a}=i({date:t,formatDates:o,month:e.month,newDate:s});e.month=a,r[c]=e}return r},getDayAccessibilityAttributes:({calendarAvailableDateText:e,calendarFirstAvailableDateText:t,calendarSelectedAsCheckinText:a,calendarSelectedAsCheckoutText:o,calendarTheDayText:n,date:s,dayStatus:l})=>({ariaLabel:r({calendarAvailableDateText:e,calendarFirstAvailableDateText:t,calendarSelectedAsCheckinText:a,calendarSelectedAsCheckoutText:o,calendarTheDayText:n,date:s,dayStatus:l}),tabIndex:"checkin"===l?"0":"-1"}),getMonthIndexOnLoadPreviousMonth:({isMobileLargeResolution:e,currentCalendarLength:t,monthIndex:a,previousCalendarLength:o})=>a+(e?1:t-o),hasToLoadFollowingMonth:({calendarLength:e,date:t,eventKey:a,isMobileLargeResolution:n,maxNumberOfMonths:l,monthIndex:i})=>s(a)&&i===e-1&&(n||(0,o.isLastDayOfMonth)(t))&&e<l,hasToLoadPreviousMonth:({date:e,eventKey:t,hasToGeneratePreviousMonth:a,isMobileLargeResolution:s,monthIndex:l})=>n(t)&&0===l&&(s||(0,o.isFirstDayOfMonth)(e))&&a,isBackwardEvent:n,isForwardEvent:s,updateTabIndexes:i};e.exports=t.default},51204:function(e,t,a){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(31090),n=a(51678),s=a(17893);const l=({date:e,checkin:t,checkout:a,formatDates:n,isCheckoutMandatory:s})=>(0,o.isAfterOrSame)(e,t,n)&&((0,o.isBeforeOrSame)(e,a,n)||!a&&!s),i=({checkinSelected:e,checkoutSelected:t,date:a,endDate:n,formatDates:s,startDate:i})=>{const r=l({checkin:i,checkout:n,date:a,formatDates:s,isCheckoutMandatory:!1}),c=l({checkin:e,checkout:t,date:a,formatDates:s,isCheckoutMandatory:!0}),{isCheckIn:d,isCheckOut:h}=(({checkinSelected:e,checkoutSelected:t,date:a,formatDates:n})=>{const s=(0,o.getFormattedDate)(n,a);return{isCheckIn:s===(e?(0,o.getFormattedDate)(n,e):""),isCheckOut:s===(t?(0,o.getFormattedDate)(n,t):"")}})({checkinSelected:e,checkoutSelected:t,date:a,formatDates:s});let u="available";return d?u="checkin":h?u="checkout":c?u="range":r||(u="blocked"),u},r=(e,t,a)=>(0,o.getDiffDays)(e,t)>a;t.default={calculateMonthsAddedBeforeHeight:(e,t)=>{let a=0;for(let o=0;o<e;o+=1){const e=t[o]?.reference.current;a=e?e.offsetTop+e.offsetHeight:0}return a},dateIsInsideRangeSelected:l,dateIsOutMaxRange:r,findCalendarMonth:(e,t)=>{let a=0;return{month:e.find((e,s)=>e.monthName===(0,n.capitalize)((0,o.getMonthName)(t))&&e.year===(0,o.getYear)(t)&&(a=s,!0)),monthIndex:a}},getDatesSelectionRangeProps:(e,t,a)=>{const o=r(e,t,a),{checkin:n,checkout:s}=o?{checkin:t,checkout:null}:{checkin:e,checkout:t};return{checkin:n,checkout:s,maxNightsExceeded:o}},getDateStatus:i,getDayProps:({calendarAvailableDateText:e,calendarFirstAvailableDateText:t,calendarSelectedAsCheckinText:a,calendarSelectedAsCheckoutText:o,calendarTheDayText:n,checkinSelected:l,checkoutSelected:r,date:c,endDate:d,formatDates:h,startDate:u})=>{const p=i({checkinSelected:l,checkoutSelected:r,date:c,endDate:d,startDate:u,formatDates:h}),{ariaLabel:f,role:m,tabIndex:y}=(0,s.getDayAccessibilityAttributes)({calendarAvailableDateText:e,calendarFirstAvailableDateText:t,calendarSelectedAsCheckinText:a,calendarSelectedAsCheckoutText:o,calendarTheDayText:n,date:c,dayStatus:p});return{ariaLabel:f,date:c,dayStatus:p,role:m,tabIndex:y}},getReference:(e,t)=>e&&Object.keys(t).length?e:null,getWeekdays:()=>{const e=(0,o.getWeekdaysMin)();return e.forEach((t,a)=>{e[a]=t.charAt(0).toUpperCase()+t.charAt(1)}),e},isAvailableDay:({dayClicked:e,endDate:t,formatDates:a,startDate:n})=>{const s=n;return(0,o.isAfterOrSame)(e,s,a)&&(!t||(0,o.isBeforeOrSame)(e,t))}};e.exports=t.default}
1,2639:function(e,t,a){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(96540),n=a(31090),s=a(51678),l=a(17893),i=a(51204),r=a(56989);const c=({calendarAvailableDateText:e,calendarFirstAvailableDateText:t,calendarSelectedAsCheckinText:a,calendarSelectedAsCheckoutText:l,calendarTheDayText:r,checkinSelected:c,checkoutSelected:d,date:h,endDate:u,formatDates:p,isVisible:f,index:m,startDate:y})=>{const x=(0,s.capitalize)((0,n.getMonthName)(h)),g=(0,n.getFirstDayOfMonth)({date:h}),C=(({calendarAvailableDateText:e,calendarFirstAvailableDateText:t,calendarSelectedAsCheckinText:a,calendarSelectedAsCheckoutText:o,calendarTheDayText:s,checkinSelected:l,checkoutSelected:r,date:c,endDate:d,formatDates:h,startDate:u})=>{const p=(0,n.getFirstDayOfMonth)({date:c}),f=[];for(let m=0;m<(0,n.getDaysInMonth)(c);m+=1)f.push((0,i.getDayProps)({calendarAvailableDateText:e,calendarFirstAvailableDateText:t,calendarSelectedAsCheckinText:a,calendarSelectedAsCheckoutText:o,calendarTheDayText:s,checkinSelected:l,checkoutSelected:r,date:(0,n.getDate)({date:p,increment:m,operationType:"days"}),endDate:d,formatDates:h,startDate:u}));return f})({calendarAvailableDateText:e,calendarFirstAvailableDateText:t,calendarSelectedAsCheckinText:a,calendarSelectedAsCheckoutText:l,calendarTheDayText:r,checkinSelected:c,checkoutSelected:d,date:h,endDate:u,formatDates:p,startDate:y});return{emptyDays:(0,n.getWeekDay)(g)-1,isVisible:f,keyIndex:`month-key-${m}-${(0,n.getYear)(h)}-${(0,n.getMonth)(h)}`,month:C,monthName:x,reference:(0,o.createRef)(),year:(0,n.getYear)(h)}};t.default={generateMonthCalendar:c,getNumberOfMonthsToBeAdded:({calendar:e,firstVisibleMonthIndex:t,isMobileLargeResolution:a,monthsToShow:o,newCalendar:n})=>!a&&e.length-1>t+1?0:o+(0===n.length?e.length:0),getPreviousMonthProps:({acceptsDatesBeforeToday:e,calendar:t,calendarAvailableDateText:a,calendarFirstAvailableDateText:o,calendarSelectedAsCheckinText:s,calendarSelectedAsCheckoutText:l,calendarTheDayText:i,checkinSelected:r,checkoutSelected:d,endDate:h,formatDates:u,isMobileLargeResolution:p,monthIndex:f,startDate:m})=>{const y=(0,n.getDate)(),x=(0,n.getDate)({date:m,decrement:1,operationType:"months"}),g=e||!(0,n.isBefore)(x,y),C=(0,n.transformStringToDate)(u,g?x:null),S=(({calendar:e,calendarAvailableDateText:t,calendarFirstAvailableDateText:a,calendarSelectedAsCheckinText:o,calendarSelectedAsCheckoutText:n,calendarTheDayText:s,checkinSelected:l,checkoutSelected:i,endDate:r,formatDates:d,isMobileLargeResolution:h,lastMonthCreated:u,monthIndex:p,startDate:f})=>[c({calendarAvailableDateText:t,calendarFirstAvailableDateText:a,calendarSelectedAsCheckinText:o,calendarSelectedAsCheckoutText:n,calendarTheDayText:s,checkinSelected:l,checkoutSelected:i,date:u,endDate:r,formatDates:d,index:p,isVisible:h,startDate:f}),...e])({calendar:t,calendarAvailableDateText:a,calendarFirstAvailableDateText:o,calendarSelectedAsCheckinText:s,calendarSelectedAsCheckoutText:l,calendarTheDayText:i,checkinSelected:r,checkoutSelected:d,endDate:h,formatDates:u,isMobileLargeResolution:p,lastMonthCreated:x,monthIndex:f,startDate:C});return{calendar:S,hasToGeneratePreviousMonth:g,numberOfMonthsAddedBefore:f,startDate:C}},hasToNavigateToFollowingMonth:({calendar:e,date:t,eventKey:a,firstVisibleMonthIndex:o,isMobileLargeResolution:s,maxNumberOfMonths:i})=>{const c=(0,r.isDateInSecondVisibleMonth)({calendar:e,date:t,firstVisibleMonthIndex:o,isMobileLargeResolution:s});return(0,l.isForwardEvent)(a)&&c&&(0,n.isLastDayOfMonth)(t)&&e.length<=i},hasToNavigateToPreviousMonth:({calendar:e,date:t,eventKey:a,firstVisibleMonthIndex:o,isMobileLargeResolution:s,maxNumberOfMonths:i})=>{const c=(0,r.isDateInFirstVisibleMonth)({calendar:e,date:t,firstVisibleMonthIndex:o});return(0,l.isBackwardEvent)(a)&&!s&&c&&(0,n.isFirstDayOfMonth)(t)&&e.length<=i},manageGeneratePreviousCalendar:({isMobileLargeResolution:e,firstVisibleMonthIndex:t,monthIndex:a,monthsToShow:o,hasToGeneratePreviousMonth:n})=>n&&a<=o&&(e||0===t)};e.exports=t.default},56989:function(e,t,a){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(31090),n=a(862),s=a(51204);const l=({calendar:e,monthIndex:t,firstMonthOffset:a,secondMonthOffset:o})=>{const n=[...e];return n[t+a].isVisible=!1,n[t+o].isVisible=!0,n};
1t.default={getCalendarWithDaysRangeOver:({calendar:e,checkinSelected:t,dayWithMouseOver:a,endDate:o,formatDates:n,startDate:l})=>e.map(e=>({...e,month:e.month.map(e=>{let i=e.dayStatus;return"blocked"!==e.dayStatus&&(i=(0,s.getDateStatus)({checkinSelected:t,checkoutSelected:a,date:e.date,endDate:o,formatDates:n,startDate:l})),{...e,dayStatus:i}})})),isDateInFirstVisibleMonth:({calendar:e,date:t,firstVisibleMonthIndex:a})=>(0,s.findCalendarMonth)(e,t).monthIndex===a,isDateInSecondVisibleMonth:({calendar:e,date:t,firstVisibleMonthIndex:a,isMobileLargeResolution:o})=>!o&&(0,s.findCalendarMonth)(e,t).monthIndex>a,isMonthVisible:({checkinSelected:e,date:t,hasToUpdateVisibility:a,isMobileLargeResolution:n,monthIndex:s})=>!!n||(e?(0,o.areInSameMonthAndYear)(e,t)||(0,o.areInSameMonthAndYear)((0,o.getDate)({date:t,operationType:"months",...a?{decrement:1}:{increment:1}}),e):s<2),updateMonthsVisibilityOnGenerateCalendar:({direction:e,calendar:t,firstVisibleMonthIndex:a,hasToUpdateVisibility:o,isMobileLargeResolution:s})=>{let i,r=[...t];return o&&e===n.FORWARDS_PAGINATION_DIRECTION&&!s?(r=l({calendar:r,monthIndex:a,firstMonthOffset:0,secondMonthOffset:2}),i=a+1):i=a,{calendarWithMonthsVisibility:r,newFirstVisibleMonthIndex:i}},updateMonthsVisibilityOnGeneratePreviousCalendar:({calendar:e,firstVisibleMonthIndex:t,generatedMonths:a,isMobileLargeResolution:o})=>{let s=[...e];let i=t+(a>1?(o?n.MOBILE_VIEW_MONTHS_TO_SHOW:n.DESKTOP_VIEW_MONTHS_TO_SHOW)-1:0);return o||(t>0?(s=l({calendar:s,monthIndex:i,firstMonthOffset:1,secondMonthOffset:-1}),i-=1):s=l({calendar:s,monthIndex:i,firstMonthOffset:2,secondMonthOffset:0})),{calendarWithMonthsVisibility:s,newFirstVisibleMonthIndex:i}}};e.exports=t.default},67131:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(81110));t.default=n.default;e.exports=t.default},95489:function(e,t,a){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(96540),n=a(51678);t.default={useConstructor:(e=n.defaultEmptyFunction)=>{const t=(0,o.useRef)(!1);t.current||(e(),t.current=!0)},useMergeState:e=>{const[t,a]=(0,o.useState)(e),n=(0,o.useRef)(t);n.current=t;const s=(0,o.useRef)([]);(0,o.useEffect)(()=>{if(0===s.current.length)return;const e=s.current;s.current=[],e.forEach(e=>e())},[t]);const l=(0,o.useCallback)((e,t)=>{t&&s.current.push(t),a(t=>({...t,...e}))},[]),i=(0,o.useCallback)((e,t,a)=>l({[e]:t},a),[l]);return{mergeState:l,state:t,stateRef:n,updateState:i}},usePrevious:e=>{const t=(0,o.useRef)(e);return(0,o.useEffect)(()=>{t.current=e}),t.current},useStableHandlers:()=>{const e=(0,o.useRef)({}),t=(0,o.useRef)(null);if(null===t.current){const a={};t.current=new Proxy({},{get:(t,o)=>(a[o]||(a[o]=(...t)=>e.current[o](...t)),a[o])})}return[t.current,t=>{e.current=t}]}};e.exports=t.default},3944:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(5556)),l=a(51678),i=a(45101),r=o(a(54876)),c=a(74848);class d extends n.Component{constructor(e){super(e),this.state={filterMath:void 0,focus:!1},this.filterObjectByName=this.filterObjectByName.bind(this),this.onFocus=this.onFocus.bind(this),this.onBlur=this.onBlur.bind(this),this.AutoCompleteFieldStyles=(0,i.getStylesComponent)()}objectElementMapping(e,t,a){const o={},n=t[a];return Object.keys(n).forEach(t=>{const s=this.filterObjects(e,n[t],t);Object.keys(s).length>0&&(a in o||(o[a]={}),o[a][t]=s)}),o}filterObjects(e,t={},a){const o=void 0===a;let n={};const s=!!t.items,l=!!t.name,r=!s&&!l&&!o;if(o)n=this.objectElementMapping(e,t,"countries");else if(r){if((0,i.stringMatchWithTerm)(a,e))return t;n=this.objectElementMapping(e,t,"cities")}else if(s){if((0,i.stringMatchWithTerm)(a,e))return t;if(t.items&&t.items.length>0){const a=t.items.filter(t=>{let a;return"name"in t&&(0,i.stringMatchWithTerm)(t.name,e)&&(a=t),a});a.length>0&&(n.items=[],n.slugs=[],a.forEach(e=>{n.slugs.push(e.slug),n.items.push(e)}))}}return n}filterObjectByName(e){const t=e.target.value;if(t.length>=this.props.wordToFind){let e=this.filterObjects(t,this.props.objectsToFilter);(0,i.objectIsEmpty)(e)?(e=this.props.objectsToFilter,this.toggleFilter(!1)):this.toggleFilter(!0),this.props.filteredCallback(e)}else this.toggleFilter(!0),this.props.filteredCallback(this.props.objectsToFilter)}toggleFilter(e){this.setState({filterMath:e})}onFocus(){this.setState({focus:!0})}onBlur(){this.setState({focus:!1})}render(){const e={AutoCompleteFieldStyles:this.AutoCompleteFieldStyles,match:this.state.filterMath,placeHolder:this.props.autocompletePlaceHolder,onChange:this.filterObjectByName,onBlur:this.onBlur,onFocus:this.onFocus,focus:this.state.focus};return(0,c.jsx)(r.default,{...e})}}d.propTypes={wordToFind:s.default.number,objectsToFilter:s.default.object,filteredCallback:s.default.func},d.defaultProps={wordToFind:3,objectsToFilter:{},filteredCallback:l.defaultEmptyFunction};t.default=d;e.exports=t.default},54876:function(e,t,a){var o=a(24994);
1Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(12873)),l=o(a(10295)),i=a(74848);const r="autocomplete",c=`${r}__holder`,d=`${r}__icon`,h=`${d}--focus`,u=`${r}__search-field`,p=`${u}--success`,f=`${u}--error`,m=`${u}--focus`;t.default=({AutoCompleteFieldStyles:e,match:t,placeHolder:a,onChange:o,onFocus:r,onBlur:y,focus:x})=>{const g=`${u} ${t||void 0===t?p:f} ${x?m:""}`,C=x?`${d} ${h}`:d,S=(0,i.jsx)(s.default,{type:"inlineloader"});return(0,i.jsx)(n.Suspense,{fallback:S,children:(0,i.jsxs)(e,{className:c,children:[(0,i.jsx)(l.default,{className:C}),(0,i.jsx)("input",{className:g,type:"text",placeholder:a,onChange:o.bind(void 0),onBlur:y.bind(void 0),onFocus:r.bind(void 0)})]})})};e.exports=t.default},45101:function(e,t,a){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(96540),n=a(51678);t.default={stringMatchWithTerm:function(e,t){if(isNaN(e)){const a=s(e),o=s(t);return-1!==a.indexOf(o)}return!1},objectIsEmpty:function(e){return 0===Object.keys(e).length},getStylesComponent:function(){return(0,o.lazy)(()=>(0,n.lazyRetry)(()=>a.e(305).then(a.t.bind(a,72235,23))))}};function s(e){return e.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase()}e.exports=t.default},55438:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(5556)),l=a(51678),i=a(89841),r=o(a(55753)),c=a(74848);class d extends n.Component{constructor(){super(),this.bindActions()}bindActions(){this.handleAddItem=this.handleAddItem.bind(this),this.handleAgesChange=this.handleAgesChange.bind(this),this.handleRemoveItem=this.handleRemoveItem.bind(this)}handleAgesChange(e,t){const{selectedOccupancy:a}=this.props.occupancies,o=[...a.childrenAges];o[e]=Number(t,10),this.props.updateChildrenAges(o)}modifyItem(e,t,a){const o=this.props.occupancies,{selectedOccupancy:n}=o;n[e]=a(n[e],1),"children"===e&&("Add"===t?n.childrenAges[n[e]-1]=0:n.childrenAges.pop());const s={allowedOccupancies:o.allowedOccupancies,childrenMaxAge:o.childrenMaxAge,selectedOccupancy:n};this.props.modifyItem(s,(0,i.generateModifierButtonsState)(s))}handleAddItem(e){this.modifyItem(e,"Add",this.add)}add(e,t){return e+t}handleRemoveItem(e){this.modifyItem(e,"Remove",this.substract)}substract(e,t){return e-t}render(){return(0,c.jsx)(r.default,{handleAddItem:this.handleAddItem,handleAgesChange:this.handleAgesChange,handleRemoveItem:this.handleRemoveItem,modifierButtons:this.props.modifierButtons,occupancies:this.props.occupancies,textAdults:this.props.textAdults,textAges:this.props.textAges,textChildren:this.props.textChildren,textOccupancy:this.props.textOccupancy})}}t.default=d,d.displayName="OccupancySelectorController",d.propTypes={handleAddItem:s.default.func,handleAgesChange:s.default.func,handleRemoveItem:s.default.func,modifierButtons:s.default.object,modifyItem:s.default.func,occupancies:s.default.object,textAdults:s.default.string,textAges:s.default.string,textChildren:s.default.string,textOccupancy:s.default.string,updateChildrenAges:s.default.func},d.defaultProps={handleAddItem:l.defaultEmptyFunction,handleAgesChange:l.defaultEmptyFunction,handleRemoveItem:l.defaultEmptyFunction,modifyItem:l.defaultEmptyFunction,updateChildrenAges:l.defaultEmptyFunction},e.exports=t.default},80289:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(5556)),l=a(51678),i=a(89841),r=o(a(55438)),c=a(74848);class d extends n.Component{constructor(e){super(),this.state={modifierButtons:(0,i.generateModifierButtonsState)(e.occupancies)},this.bindActions()}bindActions(){this.modifyItem=this.modifyItem.bind(this),this.updateChildrenAges=this.updateChildrenAges.bind(this)}updateChildrenAges(e){this.props.handlerModifyOccupancy({...this.props.occupancies.selectedOccupancy,childrenAges:e})}modifyItem(e,t){this.setState({modifierButtons:t}),this.props.handlerModifyOccupancy({...e.selectedOccupancy})}render(){return(0,c.jsx)(r.default,{handleAddItem:this.handleAddItem,handleAgesChange:this.handleAgesChange,handleRemoveItem:this.handleRemoveItem,modifierButtons:this.state.modifierButtons,modifyItem:this.modifyItem,occupancies:this.props.occupancies,textAdults:this.props.textAdults,textAges:this.props.textAges,textChildren:this.props.textChildren,textOccupancy:this.props.textOccupancy,updateChildrenAges:this.updateChildrenAges})}}t.default=d,d.displayName="OccupancySelectorModel",d.propTypes={handlerModifyOccupancy:s.default.func,occupancies:s.default.object,textAdults:s.default.string,textAges:s.default.string,textChildren:s.default.string,textOccupancy:s.default.string,updateChildrenAges:s.default.func},d.defaultProps={handlerModifyOccupancy:l.defaultEmptyFunction,updateChildrenAges:l.defaultEmptyFunction},e.exports=t.default},83906:function(e,t,a){var o=a(24994);
1Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(e,t){if("function"==typeof WeakMap)var a=new WeakMap,o=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,l={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return l;if(n=t?o:a){if(n.has(e))return n.get(e);n.set(e,l)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(s.get||s.set)?n(l,t,s):l[t]=e[t]);return l}(e,t)}(a(30496)),s=o(a(89883));const l=n.default.div.withConfig({displayName:"OccupancySelectorstyles__OccupancyStyles",componentId:"sc-15sco25-0"})(["",";"],({theme:e})=>(0,n.css)(["color:",";width:calc(100% - 20px);margin:0 1rem;"],e.datesPopupOccupancyTextColor||e.neutral700)),i=n.default.h3.withConfig({displayName:"OccupancySelectorstyles__TitleStyles",componentId:"sc-15sco25-1"})(["",";"],({theme:e})=>(0,n.css)([""," border-bottom:"," solid ",";display:block;margin:"," 0 ",";padding-bottom:",";text-align:center;"],s.default.BtoL,e.borderWidthS,e.datesPopupOccupancyTitleBorderColor||e.neutral100,e.r150,e.r200,e.r100)),r=n.default.div.withConfig({displayName:"OccupancySelectorstyles__RowStyles",componentId:"sc-15sco25-2"})(["",";"],({theme:e})=>(0,n.css)(["display:flex;justify-content:space-between;margin-top:",";place-content:center;& .counter{width:55%;}"],e.r200)),c=n.default.span.withConfig({displayName:"OccupancySelectorstyles__LabelStyles",componentId:"sc-15sco25-3"})([""," align-items:center;display:flex;width:45%;"],s.default.StoB),d=n.default.div.withConfig({displayName:"OccupancySelectorstyles__ChildrenAgesStyles",componentId:"sc-15sco25-4"})(["display:flex;flex-wrap:wrap;justify-content:space-between;width:40%;"]),h=n.default.div.withConfig({displayName:"OccupancySelectorstyles__SelectAgesWrapStyles",componentId:"sc-15sco25-5"})(["",""],({theme:e})=>(0,n.css)(["select{min-width:",";}> div{margin:0;}"],e.r400));t.default={ChildrenAgesStyles:d,LabelStyles:c,OccupancyStyles:l,RowStyles:r,SelectAgesWrapStyles:h,TitleStyles:i};e.exports=t.default},55753:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(69503)),s=a(65652),l=a(89841),i=a(83906),r=a(74848);const c=({textOccupancy:e})=>(0,r.jsx)(i.TitleStyles,{children:e}),d=({handleAddItem:e,handleRemoveItem:t,modifierButtons:a,occupancies:o,type:s,typeText:c})=>{const{selectedOccupancy:d}=o,h=d[s];return(0,r.jsxs)(i.RowStyles,{children:[(0,r.jsx)(i.LabelStyles,{children:c}),(0,r.jsx)(n.default,{add:()=>e(s),isAddActive:(0,l.isButtonEnabled)(a,s,"add"),isRemoveActive:(0,l.isButtonEnabled)(a,s,"remove"),items:h,remove:()=>t(s)})]},`${s.toString()}`)},h=({handleAgesChange:e,occupancies:t,textAges:a})=>{const{selectedOccupancy:o}=t,n=o.childrenAges,s={occupancies:t,handleAgesChange:e};return(0,r.jsxs)(i.RowStyles,{children:[(0,r.jsx)(i.LabelStyles,{children:a}),(0,r.jsx)(i.ChildrenAgesStyles,{children:n.map((e,t)=>(0,r.jsx)(u,{...s,index:t},t))})]})},u=({handleAgesChange:e,index:t,occupancies:a})=>{const o={};for(let e=0;e<=parseInt(a.childrenMaxAge,10);e+=1)o[e]=e;const n=a.selectedOccupancy.childrenAges[t];return(0,r.jsx)(i.SelectAgesWrapStyles,{children:(0,r.jsx)(s.SelectGroup,{name:`children-age-${t}`,onChange:a=>e(t,a),options:o,value:n},`age-${t}`)})};t.default=({handleAddItem:e,handleAgesChange:t,handleRemoveItem:a,modifierButtons:o,occupancies:n,textAdults:s,textAges:l,textChildren:u,textOccupancy:p})=>{const{selectedOccupancy:f}=n,m={handleAddItem:e,handleRemoveItem:a,modifierButtons:o,occupancies:n},y={...m,type:"adults",typeText:s},x={...m,type:"children",typeText:u},g={handleAgesChange:t,occupancies:n,textAges:l};return(0,r.jsxs)(i.OccupancyStyles,{children:[(0,r.jsx)(c,{textOccupancy:p}),(0,r.jsx)(d,{...y}),(0,r.jsx)(d,{...x}),f.children>=1?(0,r.jsx)(h,{...g}):null]})},e.exports=t.default},89841:function(e,t,a){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(51678);const n=e=>{const{selectedOccupancy:t}=e,a=t.adults;if(1===a)return!1;const o=t.children,{allowedOccupancies:n}=e;let s=!0;for(let e=1;e<a;e+=1)s=s&&n[e]>
1=o;return s},s=e=>{const{selectedOccupancy:t,allowedOccupancies:a}=e,o=t.adults+1;return!(Object.keys(a).map(e=>+e).indexOf(o)<0)&&a[o]>=t.children},l=e=>{const{selectedOccupancy:t,allowedOccupancies:a}=e;return a[t.adults]>=t.children+1};t.default={generateModifierButtonsState:e=>{const{selectedOccupancy:t}=e,a=t.children;return{adults:{isRemoveActive:n(e),isAddActive:s(e)},children:{isRemoveActive:a>0,isAddActive:l(e)}}},isButtonEnabled:(e,t,a)=>{const n=(0,o.capitalize)(a);return e[t][`is${n}Active`]}};e.exports=t.default},55716:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(80289));t.default=n.default;e.exports=t.default},79095:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.PlusMinusCounterStyles=t.NumberStyles=void 0;var n=function(e,t){if("function"==typeof WeakMap)var a=new WeakMap,o=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,l={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return l;if(n=t?o:a){if(n.has(e))return n.get(e);n.set(e,l)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(s.get||s.set)?n(l,t,s):l[t]=e[t]);return l}(e,t)}(a(30496)),s=o(a(89883));t.PlusMinusCounterStyles=n.default.div.withConfig({displayName:"PlusMinusCounterstyles__PlusMinusCounterStyles",componentId:"sc-1kcdkb9-0"})(["display:flex;justify-content:space-between;"]),t.NumberStyles=n.default.span.withConfig({displayName:"PlusMinusCounterstyles__NumberStyles",componentId:"sc-1kcdkb9-1"})([" ",""],({theme:e})=>(0,n.css)([""," margin:0 ",";padding:",";"],s.default.StoB,e.r050,e.r150))},5070:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(69014)),s=o(a(31353)),l=o(a(92587)),i=a(79095),r=a(74848);t.default=({add:e,isAddActive:t,isRemoveActive:a,items:o,remove:c})=>(0,r.jsxs)(i.PlusMinusCounterStyles,{"data-testid":"fn-plus-minus-counter",children:[(0,r.jsx)(n.default.ActionAlt,{"data-testid":"fn-plus-minus-counter-remove-button",disabled:!a,onClick:c,children:(0,r.jsx)(s.default,{})}),(0,r.jsx)(i.NumberStyles,{"data-testid":"fn-plus-minus-counter-number",children:o}),(0,r.jsx)(n.default.ActionAlt,{"data-testid":"fn-plus-minus-counter-add-button",disabled:!t,onClick:e,children:(0,r.jsx)(l.default,{})})]});e.exports=t.default},69503:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(5070));t.default=n.default;e.exports=t.default},18374:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(5556)),l=a(31090),i=a(68996),r=o(a(80705)),c=a(74848);class d extends n.Component{constructor(e){super(e),(0,l.setDatesLocale)(e.locale);const{flightPlusHotelTabs:t}=e;this.hasToShowFlightPlusHotelTabs=!e.isCorporative&&t.length>1&&""!==t[1].url}componentDidUpdate(e){(0,i.hasToUpdateModalBackButton)({prevHasToShowOccupancySelector:e.hasToShowOccupancySelector,hasToShowOccupancySelector:this.props.hasToShowOccupancySelector,prevHasToShowSummary:e.hasToShowSummary,hasToShowSummary:this.props.hasToShowSummary})&&this.updateModalBackButton(),this.props.isDesktop&&e.hasToShowSummary!==this.props.hasToShowSummary&&this.props.callbackSubmitForm({checkin:(0,l.setDateLocale)(this.props.checkinSelected,"en"),checkout:this.props.checkoutSelected?(0,l.setDateLocale)(this.props.checkoutSelected,"en"):null})}updateModalBackButton(){const e=this.props.hasToShowOccupancySelector||(0,i.hasToRenderSummary)(this.props.hasToShowOccupancySelector,this.props.hasToShowSummary)||this.props.isCorporative;this.props.setHasToRenderBackButton(e),this.setCallBackGoBackButton(e)}setCallBackGoBackButton(e){const t=e&&!this.props.returnFromSummary?this.props.handlerClickToReturnSelectDates:this.props.callBackButton;this.props.setCallBackGoBackButton(t)}render(){return(0,c.jsx)(r.default,{acceptsDatesBeforeToday:this.props.acceptsDatesBeforeToday,calendarAvailableDateText:this.props.calendarAvailableDateText,calendarFirstAvailableDateText:this.props.calendarFirstAvailableDateText,calendarGoToFollowingMonthText:this.props.calendarGoToFollowingMonthText,calendarGoToPreviousMonthText:this.props.calendarGoToPreviousMonthText,calendarSelectedAsCheckinText:this.props.calendarSelectedAsCheckinText,calendarSelectedAsCheckoutText:this.props.calendarSelectedAsCheckoutText,calendarTheDayText:this.props.calendarTheDayText,callBackButton:this.props.callBackButton,callbackSubmitForm:this.props.callbackSubmitForm,checkAvailabilityText:this.props.checkAvailabilityText,checkinSelected:this.props.checkinSelected,checkoutSelected:this.props.checkoutSelected,datesText:this.props.datesText,dateText:this.props.dateText,destinationOrHotelName:this.props.destinationOrHotelName,destinationText:this.props.destinationText,dialogProps:(0,i.getDialogProps)({callBackGoBackButton:this.props.callBackGoBackButton,closeCalendar:this.props.closeCalendar,isDesktop:this.props.isDesktop,showBackButton:this.props.showBackButton}),endDate:this.props.endDate,flightPlusHotelTabs:this.props.flightPlusHotelTabs,formatDates:this.props.formatDates,formatDatesForTabs:this.props.formatDatesForTabs,handlePromoCodeCheckBoxChange:this.props.handlePromoCodeCheckBoxChange,handlerClickDay:this.props.handlerClickDay,handlerClickOnNextButton:this.props.handlerClickOnNextButton,handlerClickOnTabsDates:this.props.handlerClickOnTabsDates,handlerModifyOccupancy:this.props.handlerModifyOccupancy,hasToRenderSummary:(0,i.hasToRenderSummary)(this.props.hasToShowOccupancySelector,this.props.hasToShowSummary),hasToShowFlightPlusHotelTabs:this.hasToShowFlightPlusHotelTabs,hasToShowOccupancySelector:this.props.hasToShowOccupancySelector,hasToShowPromotionalCodeCheckBox:this.props.hasToShowPromotionalCodeCheckBox,hotelText:this.props.hotelText,isCorporative:this.props.isCorporative,isDesktop:this.props.isDesktop,isDestination:this.props.isDestination,isOccupancySelectorEnabled:this.props.isOccupancySelectorEnabled,maxNightsExceeded:this.props.maxNightsExceeded,maxNigthSelected:this.props.maxNigthSelected,messageModalNights:this.props.messageModalNights,modifyText:this.props.modifyText,nightsText:this.props.nightsText,nightText:this.props.nightText,occupancies:this.props.occupancies,offerCode:this.props.offerCode,onChangePromotionalCodeInput:this.props.onChangePromotionalCodeInput,onCloseModalNightsExceeded:this.props.onCloseModalNightsExceeded,oneDayOnly:this.props.oneDayOnly,promotionalCode:this.props.promotionalCode,prevOccupancies:this.props.prevOccupancies,promotionalCodeCheckbox:this.props.promotionalCodeCheckbox,promotionalCodeCheckBoxCode:this.props.promotionalCodeCheckBoxCode,promotionalCodeCheckBoxLabel:this.props.promotionalCodeCheckBoxLabel,selectedCheckin:this.props.selectedCheckin,showModifyOccupancy:this.props.showModifyOccupancy,startDate:this.props.startDate,
1submitCalendarDates:this.props.submitCalendarDates,textAdult:this.props.textAdult,textAdults:this.props.textAdults,textAges:this.props.textAges,textButton:(0,i.getButtonText)({checkAvailabilityText:this.props.checkAvailabilityText,hasToShowOccupancySelector:this.props.hasToShowOccupancySelector,hasToShowSummary:this.props.hasToShowSummary,modifyText:this.props.modifyText,textNextStep:this.props.textNextStep}),textCheckin:this.props.textCheckin,textCheckout:this.props.textCheckout,textChild:this.props.textChild,textChildren:this.props.textChildren,textOccupancy:this.props.textOccupancy,textPlaceholderPromotionalCode:this.props.textPlaceholderPromotionalCode,textSelectDates:this.props.textSelectDates,titleModalMaxNights:this.props.titleModalMaxNights})}}t.default=d,d.displayName="SearchEngineController",d.propTypes={acceptsDatesBeforeToday:s.default.bool,calendarAvailableDateText:s.default.string,calendarFirstAvailableDateText:s.default.string,calendarGoToFollowingMonthText:s.default.string,calendarGoToPreviousMonthText:s.default.string,calendarSelectedAsCheckinText:s.default.string,calendarSelectedAsCheckoutText:s.default.string,calendarTheDayText:s.default.string,checkAvailabilityText:s.default.string,destinationSelected:s.default.oneOfType([s.default.array,s.default.string]),flightPlusHotelTabs:s.default.array,formatDates:s.default.string,hasToShowOccupancySelector:s.default.bool,isDesktop:s.default.bool,locale:s.default.string,occupancies:s.default.object,oneDayOnly:s.default.bool,promotionalCode:s.default.string,textAdults:s.default.string,textBackButton:s.default.string,textChangeDates:s.default.string,textChangeOccupancy:s.default.string,textCheckin:s.default.string,textCheckout:s.default.string,textChildren:s.default.string,textNextStep:s.default.string,textOccupancy:s.default.string,textPlaceholderPromotionalCode:s.default.string,textSelectDates:s.default.string,urlBooking:s.default.string},d.defaultProps={acceptsDatesBeforeToday:!1,flightPlusHotelTabs:[],formatDates:"DD/MM/YYYY",hasToShowOccupancySelector:!1,occupancies:{},oneDayOnly:!1},e.exports=t.default},16553:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(5556)),l=a(31090),i=a(51678),r=a(95811),c=a(91183),d=a(68996),h=o(a(18374)),u=a(74848);class p extends n.Component{constructor(e){super(e),this.state={callBackGoBackButton:e.callBackButton,checkinSelected:(0,r.buildPreselectedDate)({formatDates:e.formatDates,isCheckout:!1,isOneDayOnly:!1,offerStartDate:e.startDate,preselectedDate:e.selectedCheckin,acceptsDatesBeforeToday:e.acceptsDatesBeforeToday}),checkoutSelected:(0,r.buildPreselectedDate)({formatDates:e.formatDates,isCheckout:!0,isOneDayOnly:e.oneDayOnly,offerStartDate:e.startDate,preselectedDate:e.selectedCheckout,acceptsDatesBeforeToday:e.acceptsDatesBeforeToday}),endDate:e.endDate?(0,l.getDate)({date:e.endDate,format:e.formatDates}):"",hasToShowOccupancySelector:!1,hasToShowSummary:!1,maxNightsExceeded:!1,modalTitle:e.isCorporative?e.textBackButton:e.textChangeDates,occupancies:(0,c.generateOccupancies)({destinationSelected:e.destinationSelected,hasToShowOccupancySelector:e.hasToShowOccupancySelector,occupancies:e.occupancies,prevOccupancies:e.prevOccupancies}),promotionalCode:e.promotionalCode,promotionalCodeCheckbox:{isChecked:!!e.promotionalCodeCheckBoxCode},promotionalCodeValue:e.promotionalCode,returnFromSummary:!1,showBackButton:e.isCorporative&&!e.isDesktop,startDate:(0,l.getDate)({date:e.startDate,format:e.formatDates})||(0,l.getDate)()},this.bindActions()}bindActions(){this.handlerClickDay=this.handlerClickDay.bind(this),this.handlerClickOnNextButton=this.handlerClickOnNextButton.bind(this),this.handlerClickOnTabsDates=this.handlerClickOnTabsDates.bind(this),this.handlerClickToReturnSelectDates=this.handlerClickToReturnSelectDates.bind(this),this.handlerModifyOccupancy=this.handlerModifyOccupancy.bind(this),this.onCloseModalNightsExceeded=this.onCloseModalNightsExceeded.bind(this),this.callbackSubmitForm=this.callbackSubmitForm.bind(this),this.setCallBackGoBackButton=this.setCallBackGoBackButton.bind(this),this.setHasToRenderBackButton=this.setHasToRenderBackButton.bind(this),this.setModalTitle=this.setModalTitle.bind(this),this.showModifyOccupancy=this.showModifyOccupancy.bind(this),this.submitCalendarDates=this.submitCalendarDates.bind(this),this.onChangePromotionalCodeInput=this.onChangePromotionalCodeInput.bind(this),this.handlePromoCodeCheckBoxChange=this.handlePromoCodeCheckBoxChange.bind(this)}
1callbackSubmitForm(){const e=this.state.occupancies&&this.state.occupancies.selectedOccupancy||{};this.props.callbackSubmitForm({...(0,d.buildOccupancyValues)(e),checkin:(0,l.setDateLocale)(this.state.checkinSelected,"en"),checkout:this.state.checkoutSelected?(0,l.setDateLocale)(this.state.checkoutSelected,"en"):null,promotionalCode:this.state.promotionalCodeValue,sortOccupancy:!0})}setModalTitle(e){this.setState({modalTitle:e})}setHasToRenderBackButton(e){this.setState({showBackButton:e})}setCallBackGoBackButton(e){this.setState({callBackGoBackButton:e})}submitCalendarDates({checkin:e,checkout:t,maxNightsExceeded:a=!1}){this.setState({checkinSelected:e,checkoutSelected:t,hasToShowSummary:!0,maxNightsExceeded:a,returnFromSummary:!1})}handlerClickDay({checkin:e,checkout:t,maxNightsExceeded:a=!1}){this.setState({checkinSelected:e,checkoutSelected:t,maxNightsExceeded:a,returnFromSummary:!1})}handlerClickOnNextButton(){const e=(0,r.buildCheckout)(this.props.oneDayOnly,this.state.checkinSelected,this.state.checkoutSelected);this.setState({checkoutSelected:e,hasToShowOccupancySelector:!1,hasToShowSummary:(0,d.hasToRenderSummaryOnClick)({checkinSelected:this.state.checkinSelected,checkoutSelected:e,oneDayOnly:this.props.oneDayOnly,returnFromSummary:!1}),returnFromSummary:!1})}handlerClickOnTabsDates(){this.setState({hasToShowSummary:!1,returnFromSummary:!0})}handlerClickToReturnSelectDates(){this.setState({hasToShowOccupancySelector:!1,hasToShowSummary:!1,returnFromSummary:!0})}onCloseModalNightsExceeded(){this.setState({maxNightsExceeded:!1})}showModifyOccupancy(){this.setState({hasToShowOccupancySelector:!0})}handlerModifyOccupancy(e){this.setState({occupancies:{...this.state.occupancies,selectedOccupancy:e}})}handlePromoCodeCheckBoxChange(){const e=this.state.promotionalCodeCheckbox.isChecked,t=e?"":this.props.promotionalCodeCheckBoxCode;this.setState({promotionalCodeValue:t,promotionalCode:t,promotionalCodeCheckbox:{isChecked:!e}})}onChangePromotionalCodeInput(e){this.setState({promotionalCode:e.target.value,promotionalCodeCheckbox:{isChecked:!1},promotionalCodeValue:e.target.value})}render(){return(0,u.jsx)(h.default,{...this.props,...this.state,callbackSubmitForm:this.callbackSubmitForm,handlePromoCodeCheckBoxChange:this.handlePromoCodeCheckBoxChange,handlerClickDay:this.handlerClickDay,handlerClickOnNextButton:this.handlerClickOnNextButton,handlerClickOnTabsDates:this.handlerClickOnTabsDates,handlerClickToReturnSelectDates:this.handlerClickToReturnSelectDates,handlerModifyOccupancy:this.handlerModifyOccupancy,isOccupancySelectorEnabled:this.props.hasToShowOccupancySelector,onChangePromotionalCodeInput:this.onChangePromotionalCodeInput,onCloseModalNightsExceeded:this.onCloseModalNightsExceeded,setCallBackGoBackButton:this.setCallBackGoBackButton,setHasToRenderBackButton:this.setHasToRenderBackButton,setModalTitle:this.setModalTitle,showModifyOccupancy:this.showModifyOccupancy,submitCalendarDates:this.submitCalendarDates})}}t.default=p,p.displayName="SearchEngineModel",p.propTypes={callBackButton:s.default.func,closeCalendar:s.default.func,formatDates:s.default.string,isDesktop:s.default.bool,text:s.default.string,title:s.default.string,isOccupancySelectorEnabled:s.default.bool},p.defaultProps={callBackButton:i.defaultEmptyFunction,closeCalendar:i.defaultEmptyFunction,formatDates:"DD/MM/YYYY"},e.exports=t.default},45638:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(e,t){if("function"==typeof WeakMap)var a=new WeakMap,o=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,l={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return l;if(n=t?o:a){if(n.has(e))return n.get(e);n.set(e,l)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(s.get||s.set)?n(l,t,s):l[t]=e[t]);return l}(e,t)}(a(30496)),s=o(a(69014));const l=n.default.div.withConfig({displayName:"SearchEnginestyles__SearchEngineStyles",componentId:"sc-uzacj8-0"})(["",";"],({theme:e,isDesktop:t})=>(0,n.css)(["background-color:",";height:100%;overflow:",";position:relative;width:100%;"],e.datesPopupBgColor||e.colorBg,t?"auto":"scroll")),i=n.default.div.withConfig({displayName:"SearchEnginestyles__StepsStyles",componentId:"sc-uzacj8-1"}
1)(["height:100%;position:relative;"]),r=n.default.div.withConfig({displayName:"SearchEnginestyles__StepSelectStyles",componentId:"sc-uzacj8-2"})(["float:left;height:100%;"]),c=(0,n.default)(s.default.Booking).withConfig({displayName:"SearchEnginestyles__SearchEngineStepButtonStyles",componentId:"sc-uzacj8-3"})(["",""],({theme:e})=>(0,n.css)(["bottom:0;left:0;margin:"," ",";position:fixed;width:",";z-index:",";"],e.r150,e.r200,`calc(100% - ${e.r400})`,e.zBaseTop)),d=(0,n.keyframes)(["from{transform:translateX(100%);}to{transform:translateX(0%);}"]),h=n.default.div.withConfig({displayName:"SearchEnginestyles__SearchSummaryWrapStyles",componentId:"sc-uzacj8-4"})(["",""],({theme:e})=>(0,n.css)(["animation:"," "," ease-in-out;height:100%;overflow-y:auto;position:relative;width:100%;"],d,e.animationTimeM)),u=n.default.div.withConfig({displayName:"SearchEnginestyles__OccupancyWrapStyles",componentId:"sc-uzacj8-5"})(["",";"],({theme:e})=>(0,n.css)(["margin:",";"],e.r100));t.default={OccupancyWrapStyles:u,SearchEngineStepButtonStyles:c,SearchEngineStyles:l,SearchSummaryWrapStyles:h,StepSelectStyles:r,StepsStyles:i};e.exports=t.default},80705:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(12873)),s=o(a(34289)),l=o(a(67131)),i=o(a(55716)),r=o(a(14740)),c=a(45638),d=a(74848);const h=({acceptsDatesBeforeToday:e,calendarAvailableDateText:t,calendarFirstAvailableDateText:a,calendarGoToFollowingMonthText:o,calendarGoToPreviousMonthText:n,calendarSelectedAsCheckinText:i,calendarSelectedAsCheckoutText:r,calendarTheDayText:c,checkAvailabilityText:h,checkinSelected:u,checkoutSelected:p,datesText:f,dateText:m,destinationText:y,endDate:x,flightPlusHotelTabs:g,formatDates:C,handlerClickDay:S,hasToShowFlightPlusHotelTabs:b,hotelText:T,isDesktop:k,maxNigthSelected:D,nightsText:v,nightText:M,offerCode:O,oneDayOnly:w,promotionalCode:A,selectedCheckin:P,startDate:B,submitCalendarDates:j})=>(0,d.jsxs)(d.Fragment,{children:[!k&&(0,d.jsx)(d.Fragment,{children:b&&(0,d.jsx)(s.default,{tabs:g,versionAvailabilityDetailedView:"B"})}),(0,d.jsx)(l.default,{acceptsDatesBeforeToday:e,calendarAvailableDateText:t,calendarFirstAvailableDateText:a,calendarGoToFollowingMonthText:o,calendarGoToPreviousMonthText:n,calendarSelectedAsCheckinText:i,calendarSelectedAsCheckoutText:r,calendarTheDayText:c,checkAvailabilityText:h,checkinSelected:u,checkoutSelected:p,datesText:f,dateText:m,destinationText:y,endDate:x,formatDates:C,handlerClickDay:S,hotelText:T,isDesktop:k,maxNigthSelected:D,nightsText:v,nightText:M,offerCode:O,oneDayOnly:w,promotionalCode:A,selectedCheckin:P,startDate:B,submitCalendarDates:j})]}),u=({callBackButton:e,checkinSelected:t,checkoutSelected:a,datesText:o,dateText:n,destinationOrHotelName:s,destinationText:l,handlePromoCodeCheckBoxChange:h,handlerClickOnTabsDates:u,handlerModifyOccupancy:p,hasToRenderSummary:f,hasToShowOccupancySelector:m,hasToShowPromotionalCodeCheckBox:y,hotelText:x,isCorporative:g,isDestination:C,isOccupancySelectorEnabled:S,nightsText:b,nightText:T,occupancies:k,onChangePromotionalCodeInput:D,oneDayOnly:v,promotionalCode:M,promotionalCodeCheckbox:O,promotionalCodeCheckBoxLabel:w,showModifyOccupancy:A,textAdult:P,textAdults:B,textAges:j,textChild:_,textChildren:N,textOccupancy:I,textPlaceholderPromotionalCode:F})=>(0,d.jsxs)(d.Fragment,{children:[f&&(0,d.jsx)(c.SearchSummaryWrapStyles,{children:(0,d.jsx)(r.default,{checkinSelected:t,checkoutSelected:a,datesText:o,dateText:n,destinationOrHotelName:s,destinationText:l,handlePromoCodeCheckBoxChange:h,handlerClickOnTabsDates:u,handlerClickToReturnSelectHotelOrDestination:e,hasToShowPromotionalCodeCheckBox:y,hotelText:x,isCorporative:g,isDestination:C,isOccupancySelectorEnabled:S,isPromoCodeCheckBoxChecked:O.isChecked,nightsText:b,nightText:T,occupancies:k,onChangePromotionalCodeInput:D,oneDayOnly:v,promotionalCode:M,promotionalCodeCheckBoxLabel:w,showModifyOccupancy:A,textAdult:P,textAdults:B,textChild:_,textChildren:N,textOccupancy:I,textPlaceholderPromotionalCode:F})}),m&&(0,d.jsx)(c.OccupancyWrapStyles,{children:(0,d.jsx)(i.default,{handlerModifyOccupancy:p,occupancies:k,textAdults:B,textAges:j,textChildren:N,textOccupancy:I})})]}),p=({callbackSubmitForm:e,handlerClickOnNextButton:t,hasToRenderSummary:a,textButton:o})=>(0,d.jsx)(c.SearchEngineStepButtonStyles,{"data-testid":"fn-search-engine-next-step",onClick:a?e:t,ver
1sion:"B",children:o});t.default=({acceptsDatesBeforeToday:e,calendarAvailableDateText:t,calendarFirstAvailableDateText:a,calendarGoToFollowingMonthText:o,calendarGoToPreviousMonthText:s,calendarSelectedAsCheckinText:l,calendarSelectedAsCheckoutText:i,calendarTheDayText:r,callBackButton:f,callbackSubmitForm:m,checkAvailabilityText:y,checkinSelected:x,checkoutSelected:g,datesText:C,dateText:S,destinationOrHotelName:b,destinationText:T,dialogProps:k,endDate:D,flightPlusHotelTabs:v,formatDates:M,formatDatesForTabs:O,handlePromoCodeCheckBoxChange:w,handlerClickDay:A,handlerClickOnNextButton:P,handlerClickOnTabsDates:B,handlerModifyOccupancy:j,hasToRenderSummary:_,hasToShowFlightPlusHotelTabs:N,hasToShowOccupancySelector:I,hasToShowPromotionalCodeCheckBox:F,hotelText:H,isCorporative:R,isDesktop:E,isDestination:L,isOccupancySelectorEnabled:V,maxNightsExceeded:W,maxNigthSelected:G,messageModalNights:$,nightsText:z,nightText:K,occupancies:Y,offerCode:U,onChangePromotionalCodeInput:q,onCloseModalNightsExceeded:X,oneDayOnly:J,promotionalCode:Q,promotionalCodeCheckbox:Z,promotionalCodeCheckBoxLabel:ee,selectedCheckin:te,showModifyOccupancy:ae,startDate:oe,submitCalendarDates:ne,textAdult:se,textAdults:le,textAges:ie,textCheckin:re,textCheckout:ce,textChild:de,textChildren:he,textOccupancy:ue,textPlaceholderPromotionalCode:pe,textSelectDates:fe,titleModalMaxNights:me,textButton:ye})=>(0,d.jsx)(n.default,{...k,children:(0,d.jsxs)(c.SearchEngineStyles,{"data-testid":"fn-search-engine",id:"search-engine",isDesktop:E,children:[W&&(0,d.jsx)(n.default,{onClose:X,text:$,title:me,type:"modal"}),(0,d.jsxs)(c.StepsStyles,{children:[(0,d.jsx)(c.StepSelectStyles,{isDesktop:E,children:!I&&!_&&(0,d.jsx)(h,{acceptsDatesBeforeToday:e,calendarAvailableDateText:t,calendarFirstAvailableDateText:a,calendarGoToFollowingMonthText:o,calendarGoToPreviousMonthText:s,calendarSelectedAsCheckinText:l,calendarSelectedAsCheckoutText:i,calendarTheDayText:r,checkAvailabilityText:y,checkinSelected:x,checkoutSelected:g,datesText:C,dateText:S,destinationText:T,endDate:D,flightPlusHotelTabs:v,formatDates:M,formatDatesForTabs:O,handlerClickDay:A,hasToShowFlightPlusHotelTabs:N,hotelText:H,isDesktop:E,maxNigthSelected:G,nightsText:z,nightText:K,offerCode:U,oneDayOnly:J,promotionalCode:Q,selectedCheckin:te,startDate:oe,submitCalendarDates:ne,textCheckin:re,textCheckout:ce,textSelectDates:fe})}),!E&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(u,{callBackButton:f,checkinSelected:x,checkoutSelected:g,datesText:C,dateText:S,destinationOrHotelName:b,destinationText:T,handlePromoCodeCheckBoxChange:w,handlerClickOnTabsDates:B,handlerModifyOccupancy:j,hasToRenderSummary:_,hasToShowOccupancySelector:I,hasToShowPromotionalCodeCheckBox:F,hotelText:H,isCorporative:R,isDestination:L,isOccupancySelectorEnabled:V,nightsText:z,nightText:K,occupancies:Y,onChangePromotionalCodeInput:q,oneDayOnly:J,promotionalCode:Q,promotionalCodeCheckbox:Z,promotionalCodeCheckBoxLabel:ee,showModifyOccupancy:ae,textAdult:se,textAdults:le,textAges:ie,textChild:de,textChildren:he,textOccupancy:ue,textPlaceholderPromotionalCode:pe}),(0,d.jsx)(p,{callbackSubmitForm:m,handlerClickOnNextButton:P,hasToRenderSummary:_,textButton:ye})]})]})]})});e.exports=t.default},95811:function(e,t,a){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(31090),n=a(51678);const s=(e,t)=>e?(0,o.getDate)({date:e,format:t}):(0,o.getDate)();t.default={buildCheckout:(e,t,a)=>(0,n.hasCheckoutOrIsOneDayOnly)(e,a)?a:(0,o.getDate)({date:t,increment:1,operationType:"days"}),buildPreselectedDate:({formatDates:e,isCheckout:t,isOneDayOnly:a,offerStartDate:n,preselectedDate:l})=>{let i;return i=a?null:t?l?s(l,e):(0,o.getDate)({date:s(n,e),increment:1,operationType:"days"}):s(l||n,e),i},getFirstDayFromDate:(e,t,a)=>e?(0,o.getFormattedDate)(t,(0,o.getFirstDayOfMonth)({format:t,date:e})):a};e.exports=t.default},91183:function(e,t,a){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=a(51678);const n=e=>0===e.length?1:e.length<2?Number(e[0]):2,s=({occupancies:e,destinationSelected:t})=>{let a;return a=1===t.length?e[t[0]]:((e,t)=>{const a={allowedOccupancies:{},childrenMaxAge:0};return t.forEach(t=>{if(!e[t])return;const{allowedOccupancies:o,childrenMaxAge:n}=e[t];a.childrenMaxAge=Math.max(a.childrenMaxAge,n),Object.keys(o).forEac
1h(e=>{a.allowedOccupancies[e]=a.allowedOccupancies[e]?Math.max(a.allowedOccupancies[e],o[e]):o[e]})}),a})(e,t),a||{allowedOccupancies:{},childrenMaxAge:0}};t.default={generateOccupancies:({destinationSelected:e,hasToShowOccupancySelector:t,occupancies:a,prevOccupancies:l={}})=>{if(!(0,o.hasObjectData)(a))return{};const i=s({occupancies:a,destinationSelected:e}),{numAdults:r,numChildren:c,childrenAges:d}=l;if(t){const e=Object.keys(i.allowedOccupancies);i.selectedOccupancy={adults:r||n(e),children:c||0,childrenAges:(h=d,h&&""!==h.trim()?h.split(/[,;]/).map(e=>parseInt(e.trim(),10)).filter(e=>!Number.isNaN(e)):[])}}var h;return i}};e.exports=t.default},68996:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;const a=(e,t)=>!e&&t;t.default={buildOccupancyValues:e=>{let t,a,o;return e&&(t=e.childrenAges?e.childrenAges.join(";"):void 0,a=e.adults,o=e.children),{childrenAges:t,numAdults:a,numChildren:o}},getButtonText:({checkAvailabilityText:e,hasToShowOccupancySelector:t,hasToShowSummary:o,modifyText:n,textNextStep:s})=>{let l;return l=t?n:a(t,o)?e:s,l},getDialogProps:({callBackGoBackButton:e,closeCalendar:t,isDesktop:a,showBackButton:o})=>({hasToCloseModalOnClickOutside:!0,hasToKeepFocusInModal:!1,hasToRenderHeader:!a,isDesktop:a,onClose:t,scrollAll:!a,themeVersion:"light",title:null,type:"modal",...o&&{callBackGoBackButton:e}}),hasToRenderSummary:a,hasToRenderSummaryOnClick:({checkinSelected:e,checkoutSelected:t,oneDayOnly:a,returnFromSummary:o})=>!(!e||!t&&!a||o),hasToUpdateModalBackButton:({prevHasToShowOccupancySelector:e,hasToShowOccupancySelector:t,prevHasToShowSummary:a,hasToShowSummary:o})=>e!==t||a!==o};e.exports=t.default},12044:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(16553));t.default=n.default;e.exports=t.default},68270:function(e,t,a){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=function(e,t){if("function"==typeof WeakMap)var a=new WeakMap,o=new WeakMap;return function(e,t){if(!t&&e&&e.__esModule)return e;var n,s,l={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return l;if(n=t?o:a){if(n.has(e))return n.get(e);n.set(e,l)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((s=(n=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(s.get||s.set)?n(l,t,s):l[t]=e[t]);return l}(e,t)}(a(30496));const n=o.default.div.withConfig({displayName:"SearchSummarystyles__SearchSummaryStyles",componentId:"sc-poixq7-0"})(["",""],({theme:e})=>(0,o.css)(["padding:0 ",";div:first-child > label{margin-top:0;}"],e.r200));t.default={SearchSummaryStyles:n};e.exports=t.default},46489:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(5556)),s=a(51678),l=o(a(10718)),i=o(a(79799)),r=a(65652),c=o(a(54912)),d=a(38497),h=a(68270),u=a(74848);const p=({checkinSelected:e,checkoutSelected:t,datesText:a,dateText:o,destinationOrHotelName:n,destinationText:p,handlePromoCodeCheckBoxChange:f=s.defaultEmptyFunction,handlerClickOnTabsDates:m=s.defaultEmptyFunction,handlerClickToReturnSelectHotelOrDestination:y=s.defaultEmptyFunction,hasToShowPromotionalCodeCheckBox:x=!1,hotelText:g,isCorporative:C=!1,isDestination:S,isOccupancySelectorEnabled:b,isPromoCodeCheckBoxChecked:T,nightsText:k,nightText:D,occupancies:v={},onChangePromotionalCodeInput:M=s.defaultEmptyFunction,oneDayOnly:O=!1,promotionalCode:w="",promotionalCodeCheckBoxLabel:A,showModifyOccupancy:P=s.defaultEmptyFunction,textAdult:B,textAdults:j,textChild:_,textChildren:N,textOccupancy:I,textPlaceholderPromotionalCode:F})=>(0,u.jsxs)(h.SearchSummaryStyles,{"data-testid":"fn-search-engine-summary",children:[C&&(0,u.jsx)(r.InputGroup,{"data-testid":"fn-search-summary-hotel-or-destination",label:S?p:g,name:"search-summary-hotel-or-destination",onClick:y,SvgIcon:l.default,value:n}),(0,u.jsx)(c.default,{checkinSelectedDate:e,checkoutSelectedDate:t,datesText:a,dateText:o,isSummary:!0,nightsText:k,nightText:D,onClickDateSelected:m,oneDayOnly:O}),(0,d.hasToShowOccupancySelector)(b,O)&&(0,u.jsx)(r.InputGroup,{label:I,name:"search-summary-occupancies",onClick:P,SvgIcon:i.default,value:(0,d.buildOccupationText)({occupancies:v,textAdult:B,textAdults:j,textChild:_,textChildren:N})}),(0,u.jsx)(r.InputGroup,{label:F,name:"search-summary-promotional-code",onChange:M,value:w}),x&&(0,u.jsx)(r.CheckBox,{isChecked:T,LabelFragment:()=>A,name:"search-summary-promotional-code-checkbox",onChange:f})]});p.displayName="SearchSummaryView",p.propTypes={checkinSelected:n.default.object,checkoutSelected:n.default.object,datesText:n.default.string,dateText:n.default.string,destinationOrHotelName:n.default.string,destinationText:n.default.string,handlePromoCodeCheckBoxChange:n.default.func,handlerClickOnTabsDates:n.default.func,handlerClickToReturnSelectHotelOrDestination:n.default.func,hasToShowPromotionalCodeCheckBox:n.default.bool,hotelText:n.default.string,isCorporative:n.default.bool,isDestination:n.default.bool,isOccupancySelectorEnabled:n.default.bool,isPromoCodeCheckBoxChecked:n.default.bool,modifyText:n.default.string,nightsText:n.default.string,nightText:n.default.string,occupancies:n.default.object,onChangePromotionalCodeInput:n.default.func,oneDayOnly:n.default.bool,promotionalCode:n.default.string,promotionalCodeCheckBoxLabel:n.default.string,promotionalCodeValue:n.default.string,showModifyOccupancy:n.default.func,textAdult:n.default.string,textAdults:n.default.string,textChild:n.default.string,textChildren:n.default.string,textOccupancy:n.default.string,textPlaceholderPromotionalCode:n.default.string};t.default=p;e.exports=t.default}
1,38497:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default={buildOccupationText:({occupancies:e,textAdults:t,textAdult:a,textChildren:o,textChild:n})=>{const s=e?.selectedOccupancy?.adults,l=e?.selectedOccupancy?.children;let i=s>1?t:a;i=`${s} ${i}`;let r=l>1?o:n;return r=l>0?` | ${l} ${r}`:"",`${i}${r}`},hasToShowOccupancySelector:(e,t)=>e&&!t};e.exports=t.default},14740:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(46489));t.default=n.default;e.exports=t.default},80402:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(5556)),l=a(51678),i=o(a(12873)),r=a(74848);class c extends n.Component{constructor(e){super(e),this.controller="B"===e.version?(0,n.lazy)(()=>(0,l.lazyRetry)(()=>Promise.all([a.e(22),a.e(9)]).then(a.t.bind(a,22098,23)))):(0,n.lazy)(()=>(0,l.lazyRetry)(()=>a.e(6).then(a.t.bind(a,51276,23))))}render(){const e=this.controller;return(0,r.jsx)(n.Suspense,{fallback:(0,r.jsx)(i.default,{type:"inlineloader"}),children:(0,r.jsx)(e,{...this.props})})}}t.default=c,c.propTypes={version:s.default.string},c.defaultProps={version:"B"},e.exports=t.default},54912:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(a(80402));t.default=n.default;e.exports=t.default},34289:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(5556)),l=a(51678),i=o(a(44292)),r=a(74848);class c extends n.Component{constructor(e){super(e),this.TabsStyles="B"===e.versionAvailabilityDetailedView?(0,n.lazy)(()=>(0,l.lazyRetry)(()=>a.e(325).then(a.t.bind(a,77755,23)))):(0,n.lazy)(()=>(0,l.lazyRetry)(()=>a.e(86).then(a.t.bind(a,12640,23))))}render(){return(0,r.jsx)(i.default,{TabsStyles:this.TabsStyles,...this.props})}}t.default=c,c.propTypes={tabs:s.default.array,versionAvailabilityDetailedView:s.default.string},c.defaultProps={versionAvailabilityDetailedView:"A"},e.exports=t.default},44292:function(e,t,a){var o=a(24994);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(96540),s=o(a(12873)),l=a(74848);const i="tab",r=`${i}--active`,c=`${i}__icon`,d=`${i}__text`,h=({Icon:e,onClick:t,selected:a,text:o,url:n},s)=>{const h=a?`${i} ${r}`:i;return(0,l.jsxs)("a",{className:h,"data-testid":`fn-tabs-${s}`,href:n,onClick:t,title:o,children:[e&&(0,l.jsx)(e,{className:c}),(0,l.jsx)("span",{className:d,children:o})]},s)};t.default=({tabs:e,TabsStyles:t})=>e?(0,l.jsx)(n.Suspense,{fallback:(0,l.jsx)(s.default,{type:"inlineloader"}),children:(0,l.jsx)(t,{"data-testid":"fn-section-header-tabs",children:e.map(h)})}):null,e.exports=t.default}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.