@roomstay/frontend 2.6.48 → 2.6.50

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/dist/839.bundle.js +1 -1
  2. package/dist/main.bundle.js +1 -1
  3. package/dist/src/components/generic/AgedBetweenLabel/AgedBetweenLabel.js +18 -6
  4. package/dist/src/components/generic/AgedBetweenLabel/AgedBetweenLabel.js.map +1 -1
  5. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.d.ts +2 -0
  6. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js +6 -4
  7. package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js.map +1 -1
  8. package/dist/src/components/generic/Currency.d.ts +3 -1
  9. package/dist/src/components/generic/Currency.js +28 -2
  10. package/dist/src/components/generic/Currency.js.map +1 -1
  11. package/dist/src/components/generic/date/DatePicker.d.ts +2 -0
  12. package/dist/src/components/generic/date/DatePicker.js +4 -4
  13. package/dist/src/components/generic/date/DatePicker.js.map +1 -1
  14. package/dist/src/components/generic/date/DatePickerDay.d.ts +1 -0
  15. package/dist/src/components/generic/date/DatePickerDay.js +8 -4
  16. package/dist/src/components/generic/date/DatePickerDay.js.map +1 -1
  17. package/dist/src/components/generic/date/DatePickerDays.d.ts +1 -0
  18. package/dist/src/components/generic/date/DatePickerDays.js +3 -3
  19. package/dist/src/components/generic/date/DatePickerDays.js.map +1 -1
  20. package/dist/src/components/generic/date/DatePickerMonth.d.ts +1 -0
  21. package/dist/src/components/generic/date/DatePickerMonth.js +3 -3
  22. package/dist/src/components/generic/date/DatePickerMonth.js.map +1 -1
  23. package/dist/src/components/steps/date/PeoplePickerRow.js +5 -3
  24. package/dist/src/components/steps/date/PeoplePickerRow.js.map +1 -1
  25. package/dist/src/components/steps/date/StepOneDateRangePicker.d.ts +3 -1
  26. package/dist/src/components/steps/date/StepOneDateRangePicker.js +2 -2
  27. package/dist/src/components/steps/date/StepOneDateRangePicker.js.map +1 -1
  28. package/dist/src/components/steps/room/RatesNotFoundBlock.d.ts +2 -0
  29. package/dist/src/components/steps/room/{RatesNotFound.js → RatesNotFoundBlock.js} +9 -3
  30. package/dist/src/components/steps/room/RatesNotFoundBlock.js.map +1 -0
  31. package/dist/src/components/steps/room/roomDetails/RoomDetails.js +6 -4
  32. package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
  33. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +19 -11
  34. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
  35. package/dist/src/components/steps/room/roomDetails/roomRates/ReadMoreRoomRateRow.js +1 -1
  36. package/dist/src/components/steps/room/roomDetails/roomRates/ReadMoreRoomRateRow.js.map +1 -1
  37. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js +40 -3
  38. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js.map +1 -1
  39. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js +29 -1
  40. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js.map +1 -1
  41. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js +5 -4
  42. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js.map +1 -1
  43. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +2 -0
  44. package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
  45. package/dist/src/contexts/FullPageEngineContext/EngineBodyLayout.js.map +1 -1
  46. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +4 -2
  47. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
  48. package/dist/src/contexts/HotelOverridesContext.js +4 -0
  49. package/dist/src/contexts/HotelOverridesContext.js.map +1 -1
  50. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.d.ts +1 -1
  51. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js.map +1 -1
  52. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +2 -2
  53. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js.map +1 -1
  54. package/dist/src/hooks/Planpay.d.ts +1 -1
  55. package/dist/src/hooks/useRateDetails.d.ts +6 -0
  56. package/dist/src/hooks/useRateDetails.js +23 -0
  57. package/dist/src/hooks/useRateDetails.js.map +1 -0
  58. package/dist/src/index.d.ts +1 -0
  59. package/dist/src/index.js +5 -2
  60. package/dist/src/index.js.map +1 -1
  61. package/dist/src/models/Api/HotelDTO.d.ts +2 -2
  62. package/dist/src/models/Api/HotelDTO.js.map +1 -1
  63. package/dist/src/models/Api/HotelOverrideDTO.d.ts +1 -0
  64. package/dist/src/models/Api/HotelOverrideDTO.js.map +1 -1
  65. package/dist/src/models/BasketRow.d.ts +9 -1
  66. package/dist/src/models/BasketRow.js +18 -5
  67. package/dist/src/models/BasketRow.js.map +1 -1
  68. package/dist/src/models/Client/Hotel/Hotel.d.ts +3 -1
  69. package/dist/src/models/Client/Hotel/Hotel.js.map +1 -1
  70. package/dist/src/models/Room/RoomRate.d.ts +58 -1
  71. package/dist/src/models/Room/RoomRate.js +299 -0
  72. package/dist/src/models/Room/RoomRate.js.map +1 -1
  73. package/dist/src/pages/findReservation/FindReservationResults.js +2 -2
  74. package/dist/src/pages/findReservation/FindReservationResults.js.map +1 -1
  75. package/dist/src/pages/steps/Step.js.map +1 -1
  76. package/dist/src/providers/RatePillProvider.d.ts +2 -1
  77. package/dist/src/providers/RatePillProvider.js.map +1 -1
  78. package/dist/src/translations/Translation.d.ts +5 -0
  79. package/dist/src/translations/Translation.js +5 -0
  80. package/dist/src/translations/Translation.js.map +1 -1
  81. package/dist/src/translations/languages/en-gb.js +5 -0
  82. package/dist/src/translations/languages/en-gb.js.map +1 -1
  83. package/dist/test.bundle.js +1 -1
  84. package/dist/tests/offline/entry/OfflineEngineDefaults.d.ts +0 -2
  85. package/dist/tests/offline/entry/OfflineEngineDefaults.js +5 -234
  86. package/dist/tests/offline/entry/OfflineEngineDefaults.js.map +1 -1
  87. package/dist/tests/offline/entry/config/hotelSpecDefault.d.ts +5 -0
  88. package/dist/tests/offline/entry/config/hotelSpecDefault.js +241 -0
  89. package/dist/tests/offline/entry/config/hotelSpecDefault.js.map +1 -0
  90. package/package.json +1 -1
  91. package/dist/src/components/steps/room/RatesNotFound.d.ts +0 -1
  92. package/dist/src/components/steps/room/RatesNotFound.js.map +0 -1
@@ -1 +1 @@
1
- (("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[839],{72258:function(e,t,r){"use strict";r.d(t,{Z:function(){return h}});var n=r(70885),l=r(20552),o=r(67294),a=r(26793),i=r(79478),c=r(1126),s=r(21120),m=r(20858),u=r(13010),d=r(78886),f=r(64485),g=r(30584),p=r(57133),v=r(44744),E=r(97754),y=r(90292);function h(e){var t=(0,a.$)().t,r=(0,o.useContext)(l.g7),h=(0,o.useContext)(l.hy),A=(0,o.useState)(!1),b=(0,n.Z)(A,2),C=b[0],S=b[1],_=(0,o.useState)(!0),Z=(0,n.Z)(_,2),k=Z[0],x=Z[1],P=(0,o.useState)(!0),R=(0,n.Z)(P,2),N=R[0],O=R[1],w=(0,o.useState)(""),B=(0,n.Z)(w,2),I=B[0],D=B[1],M=(0,o.useState)(""),j=(0,n.Z)(M,2),L=j[0],W=j[1],T=(0,o.useState)(""),F=(0,n.Z)(T,2),G=F[0],z=F[1],Y=(0,o.useState)(""),U=(0,n.Z)(Y,2),V=U[0],q=U[1],H=(0,o.useState)([]),Q=(0,n.Z)(H,2),X=Q[0],$=Q[1],J=(0,p.t)().memberNumber;return(0,o.useEffect)((function(){var t=h.selectedBasketRow;t&&s.Z.Availability.getCheapestPricePerDay(t.getStartDate(),t.getEndDate(),t.getAdults(),t.getChildren(),t.getInfants(),t.getPromoCode(),t.getRoomCode(),e.hotelId,J,!0).catch().then((function(r){if(r){for(var n=!0,l=t.getStartDate();l.isBefore(t.getEndDate(),"day");l=l.add(1,"day"))if(!r[l.format(c.yJ)]){n=!1;break}if(S(n),x(!0),n){O(!0);var o=s.Z.Availability.getCrossSellHotelInfo(e.hotelId);W(o.name),D(o.image),z(o.description);var a=["arrive="+t.getStartDate().format("YYYY-M-D"),"depart="+t.getEndDate().format("YYYY-M-D")];t.getAdults()>1&&a.push("adults="+t.getAdults()),t.getChildren()>0&&a.push("children="+t.getChildren()),t.getInfants()>0&&a.push("infants="+t.getInfants()),t.getPromoCode()&&a.push("promocode="+t.getPromoCode()),q(o.checkoutUrl+"#/step/room/?"+a.join("&")),s.Z.Availability.fetchAvailabilityData(t,e.hotelId,J,!0).catch((function(e){return[]})).then((function(e){null!=e&&e.length?($(e),O(!1)):(x(!1),O(!1))}))}}}))}),[h.selectedBasketRow]),C?o.createElement("div",{className:"u-marg-top--heavy u-marg-bottom"},o.createElement("div",{className:"cross-sell-module"},o.createElement("div",{className:"cross-sell-module--image",style:{backgroundImage:"url('".concat(v.Z.resizeImage(I,v.h.Original),"')")}}),o.createElement("div",{className:"cross-sell-module--content u-pad--heavy u-pad@m-"},o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement("div",{className:"cross-sell-module--content-title u-marg-bottom--light"},o.createElement(u.Z,{bold:!0,size:k?"large":"normal"},t(N?i.W.Step.Room.CrossSellBlock.AvailabilityNearBy1:k?i.W.Step.Room.CrossSellBlock.AvailabilityNearBy2:i.W.Step.Room.CrossSellBlock.DateUnavailable))),k&&o.createElement("div",{className:"cross-sell-module--content-description u-marg-bottom--light"},o.createElement(g.ZP,{color:E.Il.DarkGrey,type:g.yG.Body},o.createElement("strong",{style:{color:E.Il.Accent}},L),o.createElement("div",{dangerouslySetInnerHTML:{__html:G}})))),N?o.createElement(f.Z,null):o.createElement(o.Fragment,null,X.slice(0,4).map((function(e,r){var n=V+"&room="+e.code,l="u-flex align-items-end";return r<X.length-1&&(l+=" u-pad-bottom u-border-bottom u-marg-bottom"),o.createElement("a",{key:e.code,className:l,href:n,target:"_blank",rel:"noreferrer"},o.createElement("div",{className:"u-flex flex-column align-items-start justify-content-start"},o.createElement(g.ZP,{type:g.yG.Body,color:E.Il.Accent,bold:!0},e.name),o.createElement(g.ZP,{type:g.yG.Small,color:E.Il.DarkGrey},t(i.W.Step.Room.Sleeps,{maxOccupancy:e.occupancy}))),o.createElement("div",{className:"u-flex flex-column align-items-end align-items-md-end"},o.createElement(g.ZP,{type:g.yG.Small,color:E.Il.DarkGrey,inline:!0},t(i.W.Misc.From)),o.createElement(g.ZP,{type:g.yG.Body,color:E.Il.Accent,bold:!0},o.createElement(m.Z,null,e.getLowestPrice(!0)))))}))),k&&o.createElement("div",{className:"u-marg-top--light u-flex justify-content-start u-w-100@m- u-marg-top--heavy"},o.createElement("a",{className:"link-button --primary --filled --success --icon-right --normal"+(r.screenSize<=y.Z.Medium?" --wide":""),tabIndex:0,type:"button",href:V,target:"_blank",rel:"noreferrer"},o.createElement("span",null,"See all ",X.length," rooms",o.createElement(d.ZP,{icon:d.Tu.ArrowRight,size:"1em"}))))))):null}},32458:function(e,t,r){"use strict";r.d(t,{Z:function(){return y}});var n=r(42982),l=r(89331),o=r(67294),a=r(26793),i=r(79478),c=r(13010),s=r(78886),m=r(19874),u=r(65128),d=r(30584),f=r(40291),g=r(98013),p=r(54278),v=r(97754),E=r(98631);function y(e){var t,r=(0,a.$)().t,y=(0,l.WP)().hotel,h=y.rooms,A=e.room.getRoomPerks({hotel:y,room:e.room}),b=A.roomPerks,C=A.prePerkDisclaimer,S=null==h?void 0:h[e.room.code],_=null!=S&&S.amenities?(0,n.Z)(S.amenities):[];null!=S&&null!==(t=S.features)&&void 0!==t&&t.length&&S.features.forEach((function(e){_.push(e)}));var Z=(null==C?void 0:C.replace(/<br(\/|)>/g,""))||"";return o.createElement(u.Z,{title:e.room.name+" "+r(i.W.Step.Room.RoomInfo.Information),open:e.open,size:u.g.Small,onClose:e.onClose},o.createElement("div",null,o.createElement("div",{style:{height:"350px"}},o.createElement(f.Z,{images:e.room.getImages()})),o.createElement("div",{className:"u-marg-heavy u-marg@m-"},o.createElement("div",{className:"u-marg-bottom--light"},o.createElement(c.Z,{bold:!0,size:"large"},e.room.name)),o.createElement(g.R,{room:e.room}),o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(d.ZP,{color:v.Il.DarkGrey,type:d.yG.Small},o.createElement("span",{dangerouslySetInnerHTML:{__html:e.room.getShortDescription(!1)||""}}))),!(null!=y&&y.perksHideOnRoomDetail)&&b&&o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement("div",{className:"row"},o.createElement(E.Z,{hotel:y,room:e.room,roomPerks:b})),(null==y?void 0:y.perksShowDisclaimer)&&o.createElement("div",{className:"row u-marg-top--lighter"},o.createElement("small",{className:"col-12"},r(i.W.Misc.PerksDisclaimer)))),!(null==_||!_.length)&&o.createElement(o.Fragment,null,o.createElement("div",{className:"u-marg-bottom"},o.createElement(d.ZP,{color:v.Il.Accent,type:d.yG.Small},o.createElement("strong",null,r(i.W.Step.Room.RoomInfo.RoomAmenities)))),o.createElement("div",{className:"row"},_.map((function(e){return o.createElement("div",{key:e.description,className:"col-sm-6 u-marg-bottom--light u-flex justify-content-start"},o.createElement(s.ZP,{icon:s.Tu.Check,color:v.Il.White,backgroundColor:v.Il.Navy,borderRadius:"round",noPadding:!0,size:"16px"}),o.createElement("div",{className:"u-marg-left--light u-flex"},o.createElement(d.ZP,{type:d.yG.Small,inline:!0},e.description)))})))),o.createElement(m.Z,null),o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(d.ZP,{type:d.yG.Small,color:v.Il.Graphite},o.createElement("span",{dangerouslySetInnerHTML:{__html:e.room.getLongDescription()||""}}))),!!Z&&o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(d.ZP,{type:d.yG.Small},o.createElement("strong",null,r(i.W.Step.Room.RoomInfo.Disclaimer))),o.createElement(d.ZP,{type:d.yG.Small},o.createElement("span",{dangerouslySetInnerHTML:{__html:Z}})))),o.createElement(p.Z,{featuredRates:e.featuredRates,rates:e.rates,roomCode:e.room.code})))}},49368:function(e,t,r){"use strict";r.d(t,{F:function(){return k}});var n=r(87462),l=r(15861),o=r(70885),a=r(64687),i=r.n(a),c=r(20552),s=r(27484),m=r.n(s),u=r(67294),d=r(87536),f=r(26793),g=r(79478),p=r(79740),v=r(21120),E=r(87933),y=r(64854),h=r(13010),A=r(78886),b=r(30584),C=r(41432),S=r(514),_=r(97754),Z=r(16431),k=function(){var e=(0,d.cI)(),t=e.register,r=e.handleSubmit,a=e.formState,s=(0,S.W)().hotel,k=(0,u.useContext)(c.hy),x=(0,f.$)().t,P=(0,u.useState)({}),R=(0,o.Z)(P,2),N=R[0],O=R[1],w=(0,u.useState)(!1),B=(0,o.Z)(w,2),I=B[0],D=B[1],M=function(){var e=(0,l.Z)(i().mark((function e(t){var r,n;return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return O({}),D(!0),e.prev=2,r=k.selectedBasketRow,n="",[{name:"Adults",value:r.getAdults()},{name:"Children",value:r.getChildren()},{name:"Infants",value:r.getInfants()},{name:"Promo Code",value:r.getPromoCode()},{name:"Dates range",value:r.getStayDateRange("ddd D MMM YYYY"," till ")},{name:"Date Sent",value:m()().format("dd D MMM YYYY")}].forEach((function(e){var t=e.name,r=e.value;r&&(n+="".concat(t,": ").concat(r,"\n"))})),e.next=8,v.Z.Error.sendRoomFallbackForm(null==s?void 0:s.hotelID,{name:t.name,telephone:t.telephone,email:t.email,searchQuery:n});case 8:O({success:!0}),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(2),O({success:!1,message:x(g.W.Step.Room.ErrorForm.APIError)});case 14:D(!1);case 15:case"end":return e.stop()}}),e,null,[[2,11]])})));return function(t){return e.apply(this,arguments)}}();return u.createElement("div",{className:"u-fill-white u-rounded"},u.createElement("div",{className:"row u-pad--heavy"},u.createElement("div",{className:"col-lg-6 d-flex justify-content-center flex-column"},u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(A.ZP,{icon:A.Tu.Error,color:_.Il.Alert,size:"24px"})),u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(h.Z,{bold:!0,color:_.Il.Alert},u.createElement("span",{style:{color:"inherit"},dangerouslySetInnerHTML:{__html:x(g.W.Step.Room.ErrorForm.Title)}}))),u.createElement(b.ZP,{type:b.yG.Small},u.createElement("span",{dangerouslySetInnerHTML:{__html:x(g.W.Step.Room.ErrorForm.Description)}}))),u.createElement("div",{className:"col-lg-6"},u.createElement("form",null,u.createElement(p.Z,{open:!!a.errors},Object.values(a.errors).map((function(e,t){return u.createElement(E.ZP,{key:t,type:E.NK.Danger},u.createElement(b.ZP,{type:b.yG.Small},null==e?void 0:e.message))}))),u.createElement("div",{className:"u-marg-bottom--light u-marg-top"},u.createElement(C.Z,(0,n.Z)({placeholder:x(g.W.Step.Room.ErrorForm.Inputs.Name)},t("name",{required:{value:!0,message:"".concat(x(g.W.Step.Room.ErrorForm.Inputs.Name)," is a required field")}})))),u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(C.Z,(0,n.Z)({placeholder:x(g.W.Step.Room.ErrorForm.Inputs.Email)},t("email",{required:{value:!0,message:"".concat(x(g.W.Step.Room.ErrorForm.Inputs.Email)," is a required field")},pattern:{value:Z.CU,message:"Email must be valid"}})))),u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(C.Z,(0,n.Z)({placeholder:x(g.W.Step.Room.ErrorForm.Inputs.Telephone)},t("telephone",{required:{value:!0,message:"".concat(x(g.W.Step.Room.ErrorForm.Inputs.Telephone)," is a required field")}})))),u.createElement(y.Z,{filled:!0,primary:!0,onClick:r(M),isLoading:I,disabled:I||N.success},x(g.W.Step.Room.ErrorForm.ContactUsButton)),u.createElement(p.Z,{open:!!N.success},u.createElement("div",{className:"u-pad-top"},u.createElement(b.ZP,{color:_.Il.Success},x(g.W.Step.Room.ErrorForm.ConfirmationMessage)))),u.createElement(p.Z,{open:!1===N.success},u.createElement("div",{className:"u-pad-top"},u.createElement(b.ZP,{color:_.Il.Alert},N.message)))))))}},72870:function(e,t,r){"use strict";r.d(t,{y:function(){return o}});var n=r(20552),l=r(67294),o=function(){var e,t,r=(0,l.useContext)(n.hy).selectedBasketRow;return l.createElement("script",{type:"application/ld+json"},JSON.stringify({"@context":"https://structured-data.triptease.io","@type":"LodgingSearch",checkinTime:null==r||null===(e=r.getStartDate())||void 0===e?void 0:e.format("YYYY-M-D"),checkoutTime:null==r||null===(t=r.getEndDate())||void 0===t?void 0:t.format("YYYY-M-D"),numAdults:null==r?void 0:r.getAdults(),numChildren:null==r?void 0:r.getChildren(),numInfants:null==r?void 0:r.getInfants(),numRooms:"1",offerCode:null==r?void 0:r.getPromoCode()}))}},54101:function(e,t,r){"use strict";r.d(t,{Z:function(){return W}});var n=r(4942),l=r(70885),o=r(20552),a=r(89331),i=r(94184),c=r.n(i),s=r(67294),m=r(26793),u=r(79740),d=r(64854),f=r(20858),g=r(13010),p=r(78886),v=r(19874),E=r(26573),y=r(30584),h=r(40291),A=r(98013),b=r(42041),C=r(90292);function S(e){var t,r=(0,s.useContext)(o.g7),n=(0,a.WP)().hotel,i=e.perks,m=e.room,u=r.screenSize<=C.Z.Large,d=(0,s.useState)(null===(t=i[0])||void 0===t?void 0:t.name),f=(0,l.Z)(d,2),g=f[0],p=f[1],v=c()("room-perk-icon",{"--has-bg":u});return s.createElement(s.Fragment,null,!(null==i||!i.length)&&s.createElement("ul",null,i.map((function(e,t){if(!(u&&t>=4)){var l=(0,b.W)(e);return s.createElement("li",{key:t,onClick:function(){p(e.name)}},s.createElement("div",{className:v},l),s.createElement("div",{className:"u-marg-right u-none@l- u-block@m- "+(u&&g!==e.name||r.screenSize===C.Z.Tiny?"u-none-2":"")},s.createElement(y.xv,{type:y.yG.Small},null!=e&&e.perkNameRenderer?e.perkNameRenderer({hotel:n,room:m}):e.name)))}}))))}var _=r(57700),Z=r(54278),k=r(32458),x=r(49723),P=r(46716),R=r(50234),N=r(78361),O=r(73633),w=r(44744),B=r(79478),I=r(97754),D=r(61715),M=r(84544),j=r(39605);function L(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function W(e){var t=(0,s.useState)([]),r=(0,l.Z)(t,2),i=r[0],b=r[1],W=(0,s.useState)([]),T=(0,l.Z)(W,2),F=T[0],G=T[1],z=(0,s.useState)(null),Y=(0,l.Z)(z,2),U=Y[0],V=Y[1],q=(0,s.useState)(!1),H=(0,l.Z)(q,2),Q=H[0],X=H[1],$=(0,m.$)().t,J=(0,s.useContext)(o.g7),K=(0,s.useContext)(o.hy),ee=(0,s.useContext)(o.Qm),te=(0,a.WP)().hotel,re=e.room,ne=c()("room-details",(0,n.Z)({},"+is-open",U));(0,s.useEffect)((function(){var t;null!==(t=K.selectedBasketRow)&&void 0!==t&&t.getRoom()&&K.selectedBasketRow.getRoom().code===e.room.code&&V(!0);var r=K.selectedBasketRow;r&&M.ZP.instance.addRoomImpression(re,{to:r.getStartDate(),from:r.getEndDate()},r.getPromoCode())}),[K.selectedBasketRow]),(0,s.useEffect)((function(){var e=[],t=[];if(O.Z.isActive()){var r,n=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return L(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?L(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,l=function(){};return{s:l,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:l}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,i=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){i=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(i)throw o}}}}(re.getRates());try{for(n.s();!(r=n.n()).done;){var l,o,a,i=r.value;(null===(l=i.promoCode)||void 0===l?void 0:l.toLowerCase())===(null===(o=K.selectedBasketRow)||void 0===o||null===(a=o.getPromoCode())||void 0===a?void 0:a.toLowerCase())?t.unshift(i):e.push(i)}}catch(e){n.e(e)}finally{n.f()}t.length>0&&(V(!0),b(t))}else e=re.getRates();G(e)}),[re.getRates()]);var le=re.getShortDescription(),oe=(0,R.i)().isMobile,ae=U||J.screenSize<=C.Z.Medium&&null===U,ie=Math.round(re.getLowestPrice(!1,!0)),ce=J.screenSize>C.Z.Medium&&ie.toLocaleString().length<7?"large":"normal",se=function(e){return Math.round(D.z7(e,!0,ee.currentCurrency,null==te?void 0:te.defaultCurrency))},me=(0,x.Z)({hideDecimals:!0,children:ie}),ue=me.value,de=me.isLoading,fe=K.selectedBasketRow,ge=(0,P.Z)().hasPricePreview,pe=re.getRoomPerks({hotel:te,room:re,perksLimitNumber:5}).roomPerks;return s.createElement("div",{className:"room-details-container ".concat(e.disableMarginBottom?"":"u-marg-bottom")},s.createElement("div",{className:ne},s.createElement("div",{className:"room-details--image"},s.createElement(h.Z,{images:e.room.getImages(),imageSize:w.h.Medium})),s.createElement("div",{className:"room-details--content u-pad--heavy u-pad@l-"},s.createElement("div",{className:"u-marg-bottom"},J.screenSize>C.Z.Large&&s.createElement(s.Fragment,null,s.createElement("div",{className:"u-marg-bottom"},s.createElement(_.Z,{room:re,limit:2}))),s.createElement("div",{className:"room-details--content-title u-marg-bottom--light"},s.createElement(g.Z,{bold:!0},re.name)),s.createElement(A.R,{room:re}),(null==le?void 0:le.replace(/<br(\/|)>/g,""))&&s.createElement("div",{className:"room-details--content-description u-marg-bottom--light"},s.createElement(y.ZP,{color:I.Il.DarkGrey,type:y.yG.Small},s.createElement("span",{dangerouslySetInnerHTML:{__html:(null==le?void 0:le.replace(/<br(\/|)>/g,""))||""}})))),s.createElement("div",{className:"row"},!(null!=te&&te.perksHideOnRoomRow)&&s.createElement("div",{className:"col-12 u-flex u-marg-bottom@m- flex-column align-items-start"},s.createElement("div",{className:"room-details--content-perks u-marg-bottom@m-"},oe&&s.createElement("div",{className:"u-marg-bottom"},s.createElement(y.ZP,{type:y.yG.Small,bold:!0,color:I.Il.Accent},(null==te?void 0:te.perkTitle)||$(B.W.Misc.Perks.AndYouGetAll))),s.createElement(S,{perks:pe,room:re}))),(null==te?void 0:te.showDescriptionOnRoomDetails)&&s.createElement("div",{className:"col-12"},s.createElement(v.Z,{noMargins:!0}),s.createElement("div",{className:"u-marg-top u-text-overflow-ellipsis-3 u-marg-bottom"},s.createElement(y.ZP,{type:y.yG.Small,color:I.Il.Graphite},s.createElement("span",{dangerouslySetInnerHTML:{__html:e.room.getLongDescription()||""}})))),s.createElement("div",{className:"col-md-6 u-flex u-marg-bottom@m- flex-column align-items-start"},s.createElement(d.Z,{icon:p.Tu.ArrowRight2,isText:!0,primary:!0,size:"tiny",iconPosition:"right",onClick:function(){M.ZP.instance.sendInteraction("More Room Details",M.s_.LINK,M._J.ROOMS),X(!0)}},$(B.W.Step.Room.RoomInfo.MoreDetails))),s.createElement("div",{className:"col-md-6 u-flex justify-content-end flex-column align-items-start align-items-md-end"},s.createElement(y.ZP,{type:y.yG.Small,color:I.Il.Navy,inline:!0},$(B.W.Misc.From)),s.createElement("div",{className:"room-details--content-price flex-row align-items-end"},s.createElement(g.Z,{size:ce,bold:!0},s.createElement(f.Z,{hideDecimals:!0},ie)),s.createElement(y.ZP,{color:I.Il.DarkGrey,inline:!0},"/",$(B.W.Misc.Night))),s.createElement(y.ZP,{type:y.yG.Small,color:I.Il.Grey,className:"u-nowrap",align:oe?j.P.Left:j.P.Right},s.createElement("span",{dangerouslySetInnerHTML:{__html:re.getLowestPriceType()===N.I.IncludingFeesAndTaxes?$(B.W.Step.Room.RoomInfo.IncludesTaxes):$(B.W.Step.Room.ExcludingTaxes)}})))),s.createElement("div",{className:"u-flex-direction-column u-flex u-flex-align-flex-end u-flex-align-flex-start@m- u-w-100@m-"},!de&&ge?s.createElement("div",{className:"u-marg-top--light"},s.createElement(E.C,{price:ue,checkin:((null==fe?void 0:fe.getStartDate())||K.endDate).format("YYYY-MM-DD"),currency:ee.currentCurrency})):null,s.createElement(d.Z,{className:"u-marg-top--light",name:"ViewRatesNowButton",primary:!0,primaryActive:!!ae,filled:!0,stopIconAnimation:!0,icon:ae?p.Tu.ArrowUp2:p.Tu.ArrowDown2,iconPosition:"right",onClick:function(){if(!ae){var e=K.selectedBasketRow;e&&M.ZP.instance.sendRoomClick(re,e.getStartDate(),e.getEndDate(),e.getPromoCode())}V(!ae)},wide:J.screenSize<=C.Z.Large,textColor:(0,I.pJ)(ae?null==te?void 0:te.colors.accent3:null==te?void 0:te.colors.accent)},$(ae?B.W.Step.Room.RoomInfo.CloseRates:B.W.Step.Room.RoomInfo.ViewRates))))),s.createElement(u.Z,{open:!!ae},s.createElement(Z.Z,{roomCode:re.code,rates:F,featuredRates:i})),s.createElement(k.Z,{open:Q,room:e.room,rates:F,featuredRates:i,onClose:function(){X(!1)}}),re.getRates().map((function(e){return s.createElement("script",{key:re.code+"-"+e.code,type:"application/ld+json"},JSON.stringify({"@context":"http://schema.org/","@type":"Offer",itemOffered:{"@type":"HotelRoom",name:re.name},name:e.name,identifier:e.code,priceSpecification:{"@type":"UnitPriceSpecification",price:se(e.getAveragePrice(!0)),basePrice:se(e.getTotalPrice(!0)),totalPrice:se(e.getAveragePrice()),priceCurrency:ee.currentCurrency,unitText:"Nightly"}}))})))}},98013:function(e,t,r){"use strict";r.d(t,{R:function(){return m}});var n=r(89331),l=r(67294),o=r(26793),a=r(78886),i=r(30584),c=r(79478),s=r(97754);function m(e){var t,r,m,u,d,f,g,p,v,E,y=(0,n.WP)().hotel,h=(0,o.$)().t,A=null==y||null===(t=y.rooms)||void 0===t?void 0:t[null===(r=e.room)||void 0===r?void 0:r.code],b=null==y||null===(m=y.rooms)||void 0===m||null===(u=m[null===(d=e.room)||void 0===d?void 0:d.code])||void 0===u?void 0:u.roomSize,C=null==y||null===(f=y.overwrites)||void 0===f||null===(g=f[null===(p=e.room)||void 0===p?void 0:p.code])||void 0===g?void 0:g.RoomDimensions,S=null!=C?C:b?"".concat(b," m²"):void 0,_=null!==(v=e.textColor)&&void 0!==v?v:s.Il.DarkGrey,Z="".concat((null==A?void 0:A.bedQuantity)>0?null==A?void 0:A.bedQuantity:""," ").concat(null==A?void 0:A.bedType);return null!=A&&null!==(E=A.bedTypeOverride)&&void 0!==E&&E.trim()&&(Z=A.bedTypeOverride),l.createElement("ul",{className:"u-inline-flex u-flex-gap u-flex-wrap u-marg-bottom"},l.createElement("li",{className:"u-flex align-items-center"},l.createElement(a.ZP,{icon:a.Tu.People,size:"24px",color:s.Il.Navy}),l.createElement("div",{className:"u-pad-left--light"},l.createElement(i.xv,{type:i.yG.Small,inline:!0,color:_},h(c.W.Step.Room.Sleeps,{maxOccupancy:null==A?void 0:A.maxOccupancy})))),!1!==(null==A?void 0:A.showBedType)&&l.createElement("li",{className:"u-flex align-items-center"},l.createElement(a.ZP,{icon:a.Tu.Bed,size:"24px",color:s.Il.Navy}),l.createElement("div",{className:"u-pad-left--light"},l.createElement(i.xv,{type:i.yG.Small,inline:!0,color:_},Z))),!!S&&l.createElement("li",{className:"u-flex align-items-center"},l.createElement(a.ZP,{icon:a.Tu.RoomSize,size:"24px",color:s.Il.Navy}),l.createElement("div",{className:"u-pad-left--light"},l.createElement(i.xv,{type:i.yG.Small,inline:!0,color:_},S))))}},50840:function(e,t,r){"use strict";r.d(t,{Y:function(){return te}});var n=r(70885),l=r(20552),o=r(67294),a=r(26793),i=r(79478),c=r(78886),s=r(30584),m=r(4942),u=r(64854),d=r(33409),f=r(27930);function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function p(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){(0,m.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function v(){var e=(0,o.useContext)(l.g7),t=(0,a.$)().t,r=Object.keys(e.currentFilters).filter((function(t){return t&&e.currentFilters[t]instanceof f.Z}));return r.length?o.createElement("div",{className:"u-flex w-100"},o.createElement("div",{className:"filter-height"},r&&(r.length<=2?r.map((function(r){var n;if(r&&e.currentFilters[r]instanceof f.Z)return o.createElement(d.ZP,{key:r,onClickIcon:function(){e.setCurrentFilters(p(p({},e.currentFilters),{},(0,m.Z)({},r,null)))},type:d.Rm.Secondary,icon:c.Tu.Close,iconPosition:"right"},null===(n=e.currentFilters[r])||void 0===n?void 0:n.getLabel(t))})):o.createElement(d.ZP,{onClickIcon:function(){e.setCurrentFilters({})},type:d.Rm.Secondary,icon:c.Tu.Close,iconPosition:"right"},r.length," Filters Applied"))),!!Object.values(e.currentFilters).filter((function(e){return!!e})).length&&o.createElement(u.Z,{isText:!0,size:"tiny",onClick:function(){e.setCurrentFilters({})}},t(i.W.Misc.ClearAll))):o.createElement(o.Fragment,null)}var E=r(89331),y=r(13010),h=r(19874),A=r(65128),b=r(89089),C=r(94184),S=r.n(C),_=r(20858),Z=r(64485),k=r(42982),x=r(55061),P=r.n(x),R=function(e){var t,r,n,l=S()(P().marker,(r={},(0,m.Z)(r,P()["--fixed"],e.fixed),(0,m.Z)(r,P()["--hidden"],!(null!==(t=e.marker)&&void 0!==t&&t.isVisible)),(0,m.Z)(r,P()["--".concat(e.isEdge)],!!e.isEdge),r)),a=S()(P()["marker-label"],(n={},(0,m.Z)(n,P()["--fixed"],e.fixed),(0,m.Z)(n,P()["--".concat(e.isEdge)],!!e.isEdge),n)),i={};return e.offset&&(i.left=Math.max(Math.min(100,e.offset),0)+"%"),o.createElement("span",{className:l,style:i},e.marker&&!!e.marker.label&&o.createElement("span",{className:a},e.marker.label))},N=function(e){var t,r,l=e.min,a=void 0===l?0:l,i=e.max,c=void 0===i?100:i,s=(0,o.useState)(!1),m=(0,n.Z)(s,2),u=(m[0],m[1]),d=(0,o.useState)(null),f=(0,n.Z)(d,2),g=f[0],p=f[1],v=(0,o.useRef)(null),E=function(t){var r,n,l=null==v||null===(r=v.current)||void 0===r?void 0:r.getBoundingClientRect();if(l){for(var o=l.x,i=l.x+l.width,s=Math.max(Math.min(Math.round(a+(c-a)*(t.clientX-o)/(i-o)),e.max),e.min),m=g,u=e.markers,d=0;d<u.length;d++)u[d].isVisible&&(null===m||Math.abs(s-u[m].value)>Math.abs(s-u[d].value))&&(m=d);var f=(0,k.Z)(e.markers);null!==m&&(f[m].value=s),null===(n=e.onChange)||void 0===n||n.call(e,f),p(m)}},y=function(e){var t;return t=(e-a)/(c-a)*100,Math.min(Math.max(t,0),100)};return(0,o.useEffect)((function(){var e,t=!1,r=null==v||null===(e=v.current)||void 0===e?void 0:e.getBoundingClientRect();if(r){r.x,r.x,r.width;var n=function(e){t||null===g||E(e)},l=function(){u(!1),p(null)};return document.body.addEventListener("mouseup",l),document.body.addEventListener("mousemove",n),function(){t=!0,document.body.removeEventListener("mouseup",l),document.body.removeEventListener("mousemove",n)}}}),[g]),o.createElement("div",{className:P().slider,onMouseDown:function(e){u(!0),E(e)},ref:v},o.createElement("div",{className:P()["slider-track"]},null===(t=null!==(r=e.backgroundMarkers)&&void 0!==r?r:[])||void 0===t?void 0:t.map((function(e,t){return o.createElement(R,{key:t,offset:y(e.value),marker:e,fixed:!0,isEdge:e.isEdge})})),o.createElement("div",{className:P()["slider-rail"],style:{left:"".concat(y(e.markers[0].value),"%"),right:"".concat(100-y(e.markers[1].value),"%")}}),e.markers.map((function(e,t){return o.createElement(R,{key:t,offset:y(e.value),marker:e})}))))},O=r(43144),w=r(15671),B=r(60136),I=r(82963),D=r(61120);var M=function(e){(0,B.Z)(l,e);var t,r,n=(t=l,r=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,n=(0,D.Z)(t);if(r){var l=(0,D.Z)(this).constructor;e=Reflect.construct(n,arguments,l)}else e=n.apply(this,arguments);return(0,I.Z)(this,e)});function l(e,t){var r;return(0,w.Z)(this,l),(r=n.call(this)).min=void 0,r.max=void 0,r.getMin=function(){return r.min},r.getMax=function(){return r.max},r.getLabel=function(){return"Budget"},r.check=function(e){if(e.getLowestPrice()>r.max)return null;var t=[];return e.getOriginalRates().forEach((function(e){e.getAveragePrice()<=r.max&&e.getAveragePrice()>=r.min&&t.push(e)})),e.filteredRates=t,e},r.min=e,r.max=t,r}return(0,O.Z)(l)}(f.Z),j=r(97754);function L(e){var t,r,l,c,m,d=(0,a.$)().t,f=(0,o.useState)([null!==(t=null===(r=e.filter)||void 0===r?void 0:r.getMin())&&void 0!==t?t:0,null!==(l=null===(c=e.filter)||void 0===c?void 0:c.getMax())&&void 0!==l?l:0]),g=(0,n.Z)(f,2),p=g[0],v=g[1],E=(0,o.useState)(p),y=(0,n.Z)(E,2),h=y[0],A=y[1],b=(0,o.useState)(null),C=(0,n.Z)(b,2),k=C[0],x=C[1];(0,o.useEffect)((function(){var t,r,n,l,o,a,i=null!==(t=e.roomList)&&void 0!==t&&t.length?e.roomList.reduce((function(e,t){var r=t.getLowestPrice(!0);return e<r&&e?e:r}),0):0,c=null!==(r=e.roomList)&&void 0!==r&&r.length?e.roomList.reduce((function(e,t){var r=t.getHighestPrice(!0);return e>r&&e?e:r}),0):0;v([i,c]),A([null!==(n=null===(l=e.filter)||void 0===l?void 0:l.getMin())&&void 0!==n?n:i,null!==(o=null===(a=e.filter)||void 0===a?void 0:a.getMax())&&void 0!==o?o:c])}),[e.roomList]),(0,o.useEffect)((function(){var e=p[1]-p[0];h[1]<p[0]+.3*e?x("left"):h[0]>p[1]-.3*e?x("right"):x(null)}),[h]);var P=function(e){return o.createElement(_.Z,{hideDecimals:!0,disableLoading:!0},e)},R=(j.Il.Grey,P(p[0]),p[0],j.Il.Grey,P(p[1]),p[1],P(h[0]),P(h[1]),h[1],h[0],h[0],[{isVisible:!0,value:h[0]},{isVisible:!0,value:h[1]},{isVisible:!1,label:o.createElement(o.Fragment,null,P(h[0])," - ",P(h[1])),value:h[0]+(h[1]-h[0])/2}]),O=[{isVisible:!0,value:p[0],label:P(p[0]),isEdge:"start"},{isVisible:!0,value:p[1],label:P(p[1]),isEdge:"end"}];return o.createElement(o.Fragment,null,o.createElement("div",{className:"u-flex"},o.createElement("div",null,o.createElement(s.ZP,{inline:!0,type:s.yG.Small},o.createElement("strong",null,d(i.W.Step.Room.Filter.Budget))),o.createElement(s.ZP,{inline:!0,type:s.yG.Small},"/",d(i.W.Misc.PerNight))),o.createElement("div",null,o.createElement(u.Z,{size:"tiny",isText:!0,disabled:!e.filter,onClick:function(){return A(p),void e.onChange(null)}},d(i.W.Misc.Clear)))),(null===(m=e.roomList)||void 0===m?void 0:m.length)>0?o.createElement("div",{className:S()("roomstay-slider",{"--min-limit":"left"===k,"--max-limit":"right"===k})},o.createElement(N,{min:p[0],max:p[1],onChange:function(t){A(t.map((function(e){return e.value}))),e.onChange(new M(t[0].value,t[1].value))},markers:R,backgroundMarkers:O})):o.createElement("div",{className:"u-marg-top-bottom u-flex justify-content-center"},o.createElement(Z.Z,null)))}var W=r(69024),T=r(89087);function F(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function G(e){var t,r=(0,a.$)().t,l=(0,o.useState)({}),c=(0,n.Z)(l,2),d=c[0],f=c[1],g=(0,o.useState)(0),p=(0,n.Z)(g,2),v=p[0],E=p[1],y=(0,o.useRef)(null);return(0,o.useEffect)((function(){if(e.roomList){var t={},r=e.filter?e.filter.getViewOnly():null;e.roomList.forEach((function(e){e.getOriginalRates().forEach((function(e){t[e.name]={status:!r||r.includes(e.name)}}))})),f(t)}}),[e.roomList,v]),(0,o.useEffect)((function(){var t;if(null!=y&&y.current&&null!==(t=e.roomList)&&void 0!==t&&t.length){var r=Object.keys(d),n=r.filter((function(e){return d[e].status}));r.length===n.length?e.onChange(null):e.onChange(new T.Z(n))}}),[d]),o.createElement(o.Fragment,null,o.createElement("div",{className:"u-flex u-marg-bottom",ref:y},o.createElement(s.ZP,{inline:!0,type:s.yG.Small},o.createElement("strong",null,r(i.W.Step.Room.Filter.RateType))),o.createElement(u.Z,{size:"tiny",isText:!0,disabled:!e.filter,onClick:function(){e.onChange(null),E((function(e){return e+1}))}},r(i.W.Misc.Clear))),o.createElement("div",null,(null===(t=e.roomList)||void 0===t?void 0:t.length)>0?d&&Object.keys(d).map((function(e){return o.createElement("div",{className:"u-marg-bottom--light",key:e},o.createElement(W.Z,{label:e,checked:d[e].status,onChange:function(t){var r=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?F(Object(r),!0).forEach((function(t){(0,m.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):F(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},d);r[e].status=t.target.checked,f(r)}}))})):o.createElement("div",{className:"u-marg-top-bottom u-flex justify-content-center"},o.createElement(Z.Z,null))))}var z=r(40742);function Y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function U(e){var t,r=(0,a.$)().t,l=(0,o.useState)({}),c=(0,n.Z)(l,2),d=c[0],f=c[1],g=(0,o.useState)(0),p=(0,n.Z)(g,2),v=p[0],E=p[1],y=(0,o.useRef)(null);(0,o.useEffect)((function(){if(e.roomList){var t={},r=e.filter?e.filter.getVisibleRooms():null;e.roomList.forEach((function(e){t[e.name]={status:!r||r.includes(e.name)||r.includes(e.code)}})),f(t)}}),[e.roomList,v]);var h=Object.keys(d),A=h.filter((function(e){return d[e].status}));return(0,o.useEffect)((function(){var t;null!=y&&y.current&&null!==(t=e.roomList)&&void 0!==t&&t.length&&(A.length===h.length?e.onChange(null):e.onChange(new z.Z(A)))}),[d]),o.createElement(o.Fragment,null,o.createElement("div",{className:"u-flex u-marg-bottom u-marg-top--heavy",ref:y},o.createElement(s.ZP,{inline:!0,type:s.yG.Small},o.createElement("strong",null,r(i.W.Step.Room.Filter.RoomType))),o.createElement(u.Z,{size:"tiny",isText:!0,disabled:!e.filter,onClick:function(){e.onChange(null),E((function(e){return e+1}))}},r(i.W.Misc.Clear))),o.createElement("div",null,(null===(t=e.roomList)||void 0===t?void 0:t.length)>0?d&&Object.keys(d).map((function(e){return o.createElement("div",{className:"u-marg-bottom--light",key:e},o.createElement(W.Z,{label:e,checked:d[e].status,onChange:function(t){var r=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Y(Object(r),!0).forEach((function(t){(0,m.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Y(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},d);r[e].status=t.target.checked,f(r)}}))})):o.createElement("div",{className:"u-marg-top-bottom u-flex justify-content-center"},o.createElement(Z.Z,null))))}var V=r(54862),q=r(84544),H=r(90292);function Q(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function X(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Q(Object(r),!0).forEach((function(t){(0,m.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Q(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function $(e){var t=(0,o.useContext)(l.g7),r=(0,o.useContext)(l.hy),c=(0,E.WP)().hotel,d=(0,a.$)().t,f=(0,o.useState)(t.currentFilters),g=(0,n.Z)(f,2),p=g[0],v=g[1],C=(0,o.useState)([]),S=(0,n.Z)(C,2),_=S[0],Z=S[1];(0,o.useEffect)((function(){if(v(X({},t.currentFilters)),e.open){var n,l=r.getAllValidRows();V.Z.getUnfilteredRoomList(null!==(n=r.selectedBasketRow)&&void 0!==n?n:l[l.length-1],null==c?void 0:c.hotelID).then((function(e){Z(e)}))}}),[e.open]);var k=o.createElement("div",{className:"u-flex align-items-center justify-content-between justify-content-md-end"},o.createElement("div",{className:"u-marg-right--heavy"},o.createElement(s.ZP,{color:j.Il.Accent},o.createElement("strong",null,V.Z.filterRooms(_,Object.values(p)).length," ",d(i.W.Step.Room.Filter.MatchingRoomsRates)))),o.createElement(u.Z,{primary:!0,filled:!0,onClick:function(){var r;q.ZP.instance.sendInteraction("Apply Filters",q.s_.BUTTON,q._J.ROOMS),t.setCurrentFilters(p),null===(r=e.onClose)||void 0===r||r.call(e)}},d(i.W.Misc.ApplyChanges))),x=function(e,t){v((function(r){return X(X({},r),{},(0,m.Z)({},e,t))}))},P=o.createElement("div",{className:"room-filter"},o.createElement("div",{className:"u-pad--heavy u-pad-bottom--none"},t.screenSize>H.Z.Medium&&o.createElement("div",{className:"u-marg-bottom"},o.createElement(y.Z,{bold:!0},d(i.W.Step.Room.FilterBy))),o.createElement("div",{className:"row"},o.createElement("div",{className:"col-md-6"},o.createElement(L,{filter:p.Budget,onChange:function(e){return x("Budget",e)},roomList:_}),o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(U,{roomList:_,filter:p.RoomType,onChange:function(e){return x("RoomType",e)}}))),o.createElement("div",{className:"col-md-6"},o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(G,{roomList:_,filter:p.RateType,onChange:function(e){return x("RateType",e)}}))))));return t.screenSize>H.Z.Medium?o.createElement(b.a,{followElement:e.anchorEl,onClose:e.onClose,open:e.open,placement:"bottom-start"},o.createElement(o.Fragment,null,P,o.createElement("div",{className:"u-pad--heavy u-pad-top--none"},o.createElement(h.Z,null),k))):o.createElement(A.Z,{open:e.open,onClose:e.onClose,title:d(i.W.Step.Room.FilterBy),mobileFooter:k},P)}var J=r(63351),K=r(60281);function ee(){var e=(0,o.useContext)(l.g7).screenSize<=H.Z.Medium,t=(0,o.useContext)(l.g7),r=(0,o.useState)(t.currentRoomSort),a=(0,n.Z)(r,2),i=a[0],c=a[1];return o.createElement(J.P,{nativeOnMobile:!0,options:Object.values(K.s).map((function(e){return{text:e,value:e}})),value:i,onChange:function(e){q.ZP.instance.sendInteraction("Change Sort",q.s_.DROPDOWN,q._J.ROOMS),c(e),t.setCurrentRoomSort(e)},keyName:"value",labelName:"text",className:S()("u-flex align-items-center",{"text-small":e})})}var te=function(){var e=(0,o.useContext)(l.g7),t=(0,a.$)().t,r=(0,o.useRef)(null),m=(0,o.useState)(!1),u=(0,n.Z)(m,2),d=u[0],f=u[1];return o.createElement("div",{className:"row align-items-end"},o.createElement("div",{className:"col-6 col-md-4 col-lg-3"},o.createElement(s.ZP,{type:s.yG.Label,color:j.Il.DarkGrey},o.createElement("strong",null,t(i.W.Step.Room.SortBy))),o.createElement("div",null,o.createElement(ee,null))),o.createElement("div",{className:"col-6 col-md-2 col-lg-2"},o.createElement("div",{ref:r},o.createElement("div",{className:"filter-button d-flex align-items-center u-cursor-pointer",onClick:function(){q.ZP.instance.sendInteraction("Show Filters",q.s_.DROPDOWN,q._J.ROOMS),f(!0)}},o.createElement(s.ZP,null,e.screenSize>H.Z.Medium?t(i.W.Step.Room.FilterBy):t(i.W.Step.Room.Filter.ShowFilters)),o.createElement(c.ZP,{icon:c.Tu.Dropdown,color:j.Il.DarkGrey})),o.createElement($,{open:d,anchorEl:r.current,onClose:function(){f(!1)}}))),o.createElement("div",{className:"col-md-12 col-lg-7 u-align-right u-marg-top@l- u-empty-none filter-push-down"},o.createElement(v,null)))}},48229:function(e,t,r){(t=r(23645)(!0)).push([e.id,".Slider-module__slider___2f65h{width:100%;display:flex;padding:13px 0;user-select:none}.Slider-module__slider-track___3uTXL{height:4px;width:100%;background-color:var(--rs-color-snow);position:relative;border-radius:4px;z-index:1}.Slider-module__slider-rail___2Jeoy{top:0;left:0;right:0;bottom:0;background-color:var(--rs-color-accent-1);position:absolute;display:block;border-radius:4px;z-index:2}.Slider-module__marker___1duEi{position:absolute;top:50%;transform:translate(-50%, -50%);border-radius:100%;width:14px;height:14px;background-color:var(--rs-color-accent-1);border:2px solid var(--rs-color-white);cursor:grab}.Slider-module__marker___1duEi.Slider-module__--hidden___2PnRK{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.Slider-module__marker___1duEi.Slider-module__--fixed___3P_lS{background-color:var(--rs-color-navy);width:8px;height:8px;border:unset}.Slider-module__marker___1duEi.Slider-module__--start___2VXUn{left:0}.Slider-module__marker___1duEi.Slider-module__--end___1d_8m{left:100%}.Slider-module__marker-label___2nSLZ{position:absolute;left:50%;top:16px;transform:translateX(-50%);display:block;white-space:nowrap;user-select:none;font-size:14px !important;line-height:1em !important}.Slider-module__marker-label___2nSLZ.Slider-module__--fixed___3P_lS{color:var(--rs-color-grey)}.Slider-module__marker-label___2nSLZ:not(.Slider-module__--fixed___3P_lS){background-color:#fff;padding:0px 4px}.Slider-module__marker-label___2nSLZ.Slider-module__--start___2VXUn{transform:translateX(-10%)}.Slider-module__marker-label___2nSLZ.Slider-module__--end___1d_8m{transform:translateX(-75%)}","",{version:3,sources:["Slider.module.scss"],names:[],mappings:"AAAA,+BAAQ,UAAU,CAAC,YAAY,CAAC,cAAc,CAAC,gBAAgB,CAAC,qCAAc,UAAU,CAAC,UAAU,CAAC,qCAAqC,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,SAAS,CAAC,oCAAa,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,yCAAyC,CAAC,iBAAiB,CAAC,aAAa,CAAC,iBAAiB,CAAC,SAAS,CAAC,+BAAQ,iBAAiB,CAAC,OAAO,CAAC,+BAA+B,CAAC,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,yCAAyC,CAAC,sCAAsC,CAAC,WAAW,CAAC,+DAAiB,8BAA8B,CAAC,0BAA0B,CAAC,8DAAgB,qCAAqC,CAAC,SAAS,CAAC,UAAU,CAAC,YAAY,CAAC,8DAAgB,MAAM,CAAC,4DAAc,SAAS,CAAC,qCAAc,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,0BAA0B,CAAC,aAAa,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,0BAA0B,CAAC,oEAAsB,0BAA0B,CAAC,0EAA4B,qBAAqB,CAAC,eAAe,CAAC,oEAAsB,0BAA0B,CAAC,kEAAoB,0BAA0B",file:"Slider.module.scss",sourcesContent:[".slider{width:100%;display:flex;padding:13px 0;user-select:none}.slider-track{height:4px;width:100%;background-color:var(--rs-color-snow);position:relative;border-radius:4px;z-index:1}.slider-rail{top:0;left:0;right:0;bottom:0;background-color:var(--rs-color-accent-1);position:absolute;display:block;border-radius:4px;z-index:2}.marker{position:absolute;top:50%;transform:translate(-50%, -50%);border-radius:100%;width:14px;height:14px;background-color:var(--rs-color-accent-1);border:2px solid var(--rs-color-white);cursor:grab}.marker.--hidden{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.marker.--fixed{background-color:var(--rs-color-navy);width:8px;height:8px;border:unset}.marker.--start{left:0}.marker.--end{left:100%}.marker-label{position:absolute;left:50%;top:16px;transform:translateX(-50%);display:block;white-space:nowrap;user-select:none;font-size:14px !important;line-height:1em !important}.marker-label.--fixed{color:var(--rs-color-grey)}.marker-label:not(.--fixed){background-color:#fff;padding:0px 4px}.marker-label.--start{transform:translateX(-10%)}.marker-label.--end{transform:translateX(-75%)}"]}]),t.locals={slider:"Slider-module__slider___2f65h","slider-track":"Slider-module__slider-track___3uTXL","slider-rail":"Slider-module__slider-rail___2Jeoy",marker:"Slider-module__marker___1duEi","--hidden":"Slider-module__--hidden___2PnRK","--fixed":"Slider-module__--fixed___3P_lS","--start":"Slider-module__--start___2VXUn","--end":"Slider-module__--end___1d_8m","marker-label":"Slider-module__marker-label___2nSLZ"},e.exports=t},55061:function(e,t,r){var n=r(93379),l=r(48229);"string"==typeof(l=l.__esModule?l.default:l)&&(l=[[e.id,l,""]]);n(l,{insert:"head",singleton:!1}),e.exports=l.locals||{}}}]);
1
+ (("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[839],{72258:function(e,t,r){"use strict";r.d(t,{Z:function(){return h}});var n=r(70885),l=r(20552),o=r(67294),a=r(26793),i=r(79478),c=r(1126),s=r(21120),m=r(20858),u=r(13010),d=r(78886),f=r(64485),g=r(30584),p=r(57133),v=r(44744),E=r(97754),y=r(90292);function h(e){var t=(0,a.$)().t,r=(0,o.useContext)(l.g7),h=(0,o.useContext)(l.hy),A=(0,o.useState)(!1),b=(0,n.Z)(A,2),C=b[0],S=b[1],_=(0,o.useState)(!0),Z=(0,n.Z)(_,2),k=Z[0],x=Z[1],P=(0,o.useState)(!0),R=(0,n.Z)(P,2),N=R[0],w=R[1],O=(0,o.useState)(""),B=(0,n.Z)(O,2),I=B[0],D=B[1],M=(0,o.useState)(""),j=(0,n.Z)(M,2),L=j[0],W=j[1],T=(0,o.useState)(""),F=(0,n.Z)(T,2),G=F[0],z=F[1],Y=(0,o.useState)(""),U=(0,n.Z)(Y,2),V=U[0],q=U[1],H=(0,o.useState)([]),Q=(0,n.Z)(H,2),X=Q[0],$=Q[1],J=(0,p.t)().memberNumber;return(0,o.useEffect)((function(){var t=h.selectedBasketRow;t&&s.Z.Availability.getCheapestPricePerDay(t.getStartDate(),t.getEndDate(),t.getAdults(),t.getChildren(),t.getInfants(),t.getPromoCode(),t.getRoomCode(),e.hotelId,J,!0).catch().then((function(r){if(r){for(var n=!0,l=t.getStartDate();l.isBefore(t.getEndDate(),"day");l=l.add(1,"day"))if(!r[l.format(c.yJ)]){n=!1;break}if(S(n),x(!0),n){w(!0);var o=s.Z.Availability.getCrossSellHotelInfo(e.hotelId);W(o.name),D(o.image),z(o.description);var a=["arrive="+t.getStartDate().format("YYYY-M-D"),"depart="+t.getEndDate().format("YYYY-M-D")];t.getAdults()>1&&a.push("adults="+t.getAdults()),t.getChildren()>0&&a.push("children="+t.getChildren()),t.getInfants()>0&&a.push("infants="+t.getInfants()),t.getPromoCode()&&a.push("promocode="+t.getPromoCode()),q(o.checkoutUrl+"#/step/room/?"+a.join("&")),s.Z.Availability.fetchAvailabilityData(t,e.hotelId,J,!0).catch((function(e){return[]})).then((function(e){null!=e&&e.length?($(e),w(!1)):(x(!1),w(!1))}))}}}))}),[h.selectedBasketRow]),C?o.createElement("div",{className:"u-marg-top--heavy u-marg-bottom"},o.createElement("div",{className:"cross-sell-module"},o.createElement("div",{className:"cross-sell-module--image",style:{backgroundImage:"url('".concat(v.Z.resizeImage(I,v.h.Original),"')")}}),o.createElement("div",{className:"cross-sell-module--content u-pad--heavy u-pad@m-"},o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement("div",{className:"cross-sell-module--content-title u-marg-bottom--light"},o.createElement(u.Z,{bold:!0,size:k?"large":"normal"},t(N?i.W.Step.Room.CrossSellBlock.AvailabilityNearBy1:k?i.W.Step.Room.CrossSellBlock.AvailabilityNearBy2:i.W.Step.Room.CrossSellBlock.DateUnavailable))),k&&o.createElement("div",{className:"cross-sell-module--content-description u-marg-bottom--light"},o.createElement(g.ZP,{color:E.Il.DarkGrey,type:g.yG.Body},o.createElement("strong",{style:{color:E.Il.Accent}},L),o.createElement("div",{dangerouslySetInnerHTML:{__html:G}})))),N?o.createElement(f.Z,null):o.createElement(o.Fragment,null,X.slice(0,4).map((function(e,r){var n=V+"&room="+e.code,l="u-flex align-items-end";return r<X.length-1&&(l+=" u-pad-bottom u-border-bottom u-marg-bottom"),o.createElement("a",{key:e.code,className:l,href:n,target:"_blank",rel:"noreferrer"},o.createElement("div",{className:"u-flex flex-column align-items-start justify-content-start"},o.createElement(g.ZP,{type:g.yG.Body,color:E.Il.Accent,bold:!0},e.name),o.createElement(g.ZP,{type:g.yG.Small,color:E.Il.DarkGrey},t(i.W.Step.Room.Sleeps,{maxOccupancy:e.occupancy}))),o.createElement("div",{className:"u-flex flex-column align-items-end align-items-md-end"},o.createElement(g.ZP,{type:g.yG.Small,color:E.Il.DarkGrey,inline:!0},t(i.W.Misc.From)),o.createElement(g.ZP,{type:g.yG.Body,color:E.Il.Accent,bold:!0},o.createElement(m.Z,null,e.getLowestPrice(!0)))))}))),k&&o.createElement("div",{className:"u-marg-top--light u-flex justify-content-start u-w-100@m- u-marg-top--heavy"},o.createElement("a",{className:"link-button --primary --filled --success --icon-right --normal"+(r.screenSize<=y.Z.Medium?" --wide":""),tabIndex:0,type:"button",href:V,target:"_blank",rel:"noreferrer"},o.createElement("span",null,"See all ",X.length," rooms",o.createElement(d.ZP,{icon:d.Tu.ArrowRight,size:"1em"}))))))):null}},32458:function(e,t,r){"use strict";r.d(t,{Z:function(){return y}});var n=r(42982),l=r(89331),o=r(67294),a=r(26793),i=r(79478),c=r(13010),s=r(78886),m=r(19874),u=r(65128),d=r(30584),f=r(40291),g=r(98013),p=r(8643),v=r(97754),E=r(98631);function y(e){var t,r=(0,a.$)().t,y=(0,l.WP)().hotel,h=y.rooms,A=e.room.getRoomPerks({hotel:y,room:e.room}),b=A.roomPerks,C=A.prePerkDisclaimer,S=null==h?void 0:h[e.room.code],_=null!=S&&S.amenities?(0,n.Z)(S.amenities):[];null!=S&&null!==(t=S.features)&&void 0!==t&&t.length&&S.features.forEach((function(e){_.push(e)}));var Z=(null==C?void 0:C.replace(/<br(\/|)>/g,""))||"";return o.createElement(u.Z,{title:e.room.name+" "+r(i.W.Step.Room.RoomInfo.Information),open:e.open,size:u.g.Small,onClose:e.onClose},o.createElement("div",null,o.createElement("div",{style:{height:"350px"}},o.createElement(f.Z,{images:e.room.getImages()})),o.createElement("div",{className:"u-marg-heavy u-marg@m-"},o.createElement("div",{className:"u-marg-bottom--light"},o.createElement(c.Z,{bold:!0,size:"large"},e.room.name)),o.createElement(g.R,{room:e.room}),o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(d.ZP,{color:v.Il.DarkGrey,type:d.yG.Small},o.createElement("span",{dangerouslySetInnerHTML:{__html:e.room.getShortDescription(!1)||""}}))),!(null!=y&&y.perksHideOnRoomDetail)&&b&&o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement("div",{className:"row"},o.createElement(E.Z,{hotel:y,room:e.room,roomPerks:b})),(null==y?void 0:y.perksShowDisclaimer)&&o.createElement("div",{className:"row u-marg-top--lighter"},o.createElement("small",{className:"col-12"},r(i.W.Misc.PerksDisclaimer)))),!(null==_||!_.length)&&o.createElement(o.Fragment,null,o.createElement("div",{className:"u-marg-bottom"},o.createElement(d.ZP,{color:v.Il.Accent,type:d.yG.Small},o.createElement("strong",null,r(i.W.Step.Room.RoomInfo.RoomAmenities)))),o.createElement("div",{className:"row"},_.map((function(e){return o.createElement("div",{key:e.description,className:"col-sm-6 u-marg-bottom--light u-flex justify-content-start"},o.createElement(s.ZP,{icon:s.Tu.Check,color:v.Il.White,backgroundColor:v.Il.Navy,borderRadius:"round",noPadding:!0,size:"16px"}),o.createElement("div",{className:"u-marg-left--light u-flex"},o.createElement(d.ZP,{type:d.yG.Small,inline:!0},e.description)))})))),o.createElement(m.Z,null),o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(d.ZP,{type:d.yG.Small,color:v.Il.Graphite},o.createElement("span",{dangerouslySetInnerHTML:{__html:e.room.getLongDescription()||""}}))),!!Z&&o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(d.ZP,{type:d.yG.Small},o.createElement("strong",null,r(i.W.Step.Room.RoomInfo.Disclaimer))),o.createElement(d.ZP,{type:d.yG.Small},o.createElement("span",{dangerouslySetInnerHTML:{__html:Z}})))),o.createElement(p.Z,{featuredRates:e.featuredRates,rates:e.rates,roomCode:e.room.code})))}},49368:function(e,t,r){"use strict";r.d(t,{F:function(){return k}});var n=r(87462),l=r(15861),o=r(70885),a=r(64687),i=r.n(a),c=r(20552),s=r(27484),m=r.n(s),u=r(67294),d=r(87536),f=r(26793),g=r(79478),p=r(79740),v=r(21120),E=r(87933),y=r(64854),h=r(13010),A=r(78886),b=r(30584),C=r(41432),S=r(514),_=r(97754),Z=r(16431),k=function(){var e=(0,d.cI)(),t=e.register,r=e.handleSubmit,a=e.formState,s=(0,S.W)().hotel,k=(0,u.useContext)(c.hy),x=(0,f.$)().t,P=(0,u.useState)({}),R=(0,o.Z)(P,2),N=R[0],w=R[1],O=(0,u.useState)(!1),B=(0,o.Z)(O,2),I=B[0],D=B[1],M=function(){var e=(0,l.Z)(i().mark((function e(t){var r,n;return i().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return w({}),D(!0),e.prev=2,r=k.selectedBasketRow,n="",[{name:"Adults",value:r.getAdults()},{name:"Children",value:r.getChildren()},{name:"Infants",value:r.getInfants()},{name:"Promo Code",value:r.getPromoCode()},{name:"Dates range",value:r.getStayDateRange("ddd D MMM YYYY"," till ")},{name:"Date Sent",value:m()().format("dd D MMM YYYY")}].forEach((function(e){var t=e.name,r=e.value;r&&(n+="".concat(t,": ").concat(r,"\n"))})),e.next=8,v.Z.Error.sendRoomFallbackForm(null==s?void 0:s.hotelID,{name:t.name,telephone:t.telephone,email:t.email,searchQuery:n});case 8:w({success:!0}),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(2),w({success:!1,message:x(g.W.Step.Room.ErrorForm.APIError)});case 14:D(!1);case 15:case"end":return e.stop()}}),e,null,[[2,11]])})));return function(t){return e.apply(this,arguments)}}();return u.createElement("div",{className:"u-fill-white u-rounded"},u.createElement("div",{className:"row u-pad--heavy"},u.createElement("div",{className:"col-lg-6 d-flex justify-content-center flex-column"},u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(A.ZP,{icon:A.Tu.Error,color:_.Il.Alert,size:"24px"})),u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(h.Z,{bold:!0,color:_.Il.Alert},u.createElement("span",{style:{color:"inherit"},dangerouslySetInnerHTML:{__html:x(g.W.Step.Room.ErrorForm.Title)}}))),u.createElement(b.ZP,{type:b.yG.Small},u.createElement("span",{dangerouslySetInnerHTML:{__html:x(g.W.Step.Room.ErrorForm.Description)}}))),u.createElement("div",{className:"col-lg-6"},u.createElement("form",null,u.createElement(p.Z,{open:!!a.errors},Object.values(a.errors).map((function(e,t){return u.createElement(E.ZP,{key:t,type:E.NK.Danger},u.createElement(b.ZP,{type:b.yG.Small},null==e?void 0:e.message))}))),u.createElement("div",{className:"u-marg-bottom--light u-marg-top"},u.createElement(C.Z,(0,n.Z)({placeholder:x(g.W.Step.Room.ErrorForm.Inputs.Name)},t("name",{required:{value:!0,message:"".concat(x(g.W.Step.Room.ErrorForm.Inputs.Name)," is a required field")}})))),u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(C.Z,(0,n.Z)({placeholder:x(g.W.Step.Room.ErrorForm.Inputs.Email)},t("email",{required:{value:!0,message:"".concat(x(g.W.Step.Room.ErrorForm.Inputs.Email)," is a required field")},pattern:{value:Z.CU,message:"Email must be valid"}})))),u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(C.Z,(0,n.Z)({placeholder:x(g.W.Step.Room.ErrorForm.Inputs.Telephone)},t("telephone",{required:{value:!0,message:"".concat(x(g.W.Step.Room.ErrorForm.Inputs.Telephone)," is a required field")}})))),u.createElement(y.Z,{filled:!0,primary:!0,onClick:r(M),isLoading:I,disabled:I||N.success},x(g.W.Step.Room.ErrorForm.ContactUsButton)),u.createElement(p.Z,{open:!!N.success},u.createElement("div",{className:"u-pad-top"},u.createElement(b.ZP,{color:_.Il.Success},x(g.W.Step.Room.ErrorForm.ConfirmationMessage)))),u.createElement(p.Z,{open:!1===N.success},u.createElement("div",{className:"u-pad-top"},u.createElement(b.ZP,{color:_.Il.Alert},N.message)))))))}},72870:function(e,t,r){"use strict";r.d(t,{y:function(){return o}});var n=r(20552),l=r(67294),o=function(){var e,t,r=(0,l.useContext)(n.hy).selectedBasketRow;return l.createElement("script",{type:"application/ld+json"},JSON.stringify({"@context":"https://structured-data.triptease.io","@type":"LodgingSearch",checkinTime:null==r||null===(e=r.getStartDate())||void 0===e?void 0:e.format("YYYY-M-D"),checkoutTime:null==r||null===(t=r.getEndDate())||void 0===t?void 0:t.format("YYYY-M-D"),numAdults:null==r?void 0:r.getAdults(),numChildren:null==r?void 0:r.getChildren(),numInfants:null==r?void 0:r.getInfants(),numRooms:"1",offerCode:null==r?void 0:r.getPromoCode()}))}},54101:function(e,t,r){"use strict";r.d(t,{Z:function(){return W}});var n=r(4942),l=r(70885),o=r(20552),a=r(89331),i=r(94184),c=r.n(i),s=r(67294),m=r(26793),u=r(79740),d=r(64854),f=r(20858),g=r(13010),p=r(78886),v=r(19874),E=r(26573),y=r(30584),h=r(40291),A=r(98013),b=r(42041),C=r(90292);function S(e){var t,r=(0,s.useContext)(o.g7),n=(0,a.WP)().hotel,i=e.perks,m=e.room,u=r.screenSize<=C.Z.Large,d=(0,s.useState)(null===(t=i[0])||void 0===t?void 0:t.name),f=(0,l.Z)(d,2),g=f[0],p=f[1],v=c()("room-perk-icon",{"--has-bg":u});return s.createElement(s.Fragment,null,!(null==i||!i.length)&&s.createElement("ul",null,i.map((function(e,t){if(!(u&&t>=4)){var l=(0,b.W)(e);return s.createElement("li",{key:t,onClick:function(){p(e.name)}},s.createElement("div",{className:v},l),s.createElement("div",{className:"u-marg-right u-none@l- u-block@m- "+(u&&g!==e.name||r.screenSize===C.Z.Tiny?"u-none-2":"")},s.createElement(y.xv,{type:y.yG.Small},null!=e&&e.perkNameRenderer?e.perkNameRenderer({hotel:n,room:m}):e.name)))}}))))}var _=r(57700),Z=r(8643),k=r(32458),x=r(49723),P=r(46716),R=r(50234),N=r(78361),w=r(73633),O=r(44744),B=r(79478),I=r(97754),D=r(61715),M=r(84544),j=r(39605);function L(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function W(e){var t=(0,s.useState)([]),r=(0,l.Z)(t,2),i=r[0],b=r[1],W=(0,s.useState)([]),T=(0,l.Z)(W,2),F=T[0],G=T[1],z=(0,s.useState)(null),Y=(0,l.Z)(z,2),U=Y[0],V=Y[1],q=(0,s.useState)(!1),H=(0,l.Z)(q,2),Q=H[0],X=H[1],$=(0,m.$)().t,J=(0,s.useContext)(o.g7),K=(0,s.useContext)(o.hy),ee=(0,s.useContext)(o.Qm),te=(0,a.WP)().hotel,re=(0,s.useContext)(o.O8),ne=e.room,le=c()("room-details",(0,n.Z)({},"+is-open",U));(0,s.useEffect)((function(){var t;null!==(t=K.selectedBasketRow)&&void 0!==t&&t.getRoom()&&K.selectedBasketRow.getRoom().code===e.room.code&&V(!0);var r=K.selectedBasketRow;r&&M.ZP.instance.addRoomImpression(ne,{to:r.getStartDate(),from:r.getEndDate()},r.getPromoCode())}),[K.selectedBasketRow]),(0,s.useEffect)((function(){var e=[],t=[];if(w.Z.isActive()){var r,n=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return L(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?L(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,l=function(){};return{s:l,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:l}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,i=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){i=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(i)throw o}}}}(ne.getRates());try{for(n.s();!(r=n.n()).done;){var l,o,a,i=r.value;(null===(l=i.promoCode)||void 0===l?void 0:l.toLowerCase())===(null===(o=K.selectedBasketRow)||void 0===o||null===(a=o.getPromoCode())||void 0===a?void 0:a.toLowerCase())?t.unshift(i):e.push(i)}}catch(e){n.e(e)}finally{n.f()}t.length>0&&(V(!0),b(t))}else e=ne.getRates();G(e)}),[ne.getRates()]);var oe=ne.getShortDescription(),ae=(0,R.i)().isMobile,ie=U||J.screenSize<=C.Z.Medium&&null===U,ce=ne.getLowestPrice(!1,!0),se=re.alwaysShowDecimals?ce:Math.round(ce),me=J.screenSize>C.Z.Medium&&se.toLocaleString().length<7?"large":"normal",ue=function(e){return Math.round(D.z7(e,!0,ee.currentCurrency,null==te?void 0:te.defaultCurrency))},de=(0,x.Z)({hideDecimals:!0,children:se}),fe=de.value,ge=de.isLoading,pe=K.selectedBasketRow,ve=(0,P.Z)().hasPricePreview,Ee=ne.getRoomPerks({hotel:te,room:ne,perksLimitNumber:5}).roomPerks;return s.createElement("div",{className:"room-details-container ".concat(e.disableMarginBottom?"":"u-marg-bottom")},s.createElement("div",{className:le},s.createElement("div",{className:"room-details--image"},s.createElement(h.Z,{images:e.room.getImages(),imageSize:O.h.Medium})),s.createElement("div",{className:"room-details--content u-pad--heavy u-pad@l-"},s.createElement("div",{className:"u-marg-bottom"},J.screenSize>C.Z.Large&&s.createElement(s.Fragment,null,s.createElement("div",{className:"u-marg-bottom"},s.createElement(_.Z,{room:ne,limit:2}))),s.createElement("div",{className:"room-details--content-title u-marg-bottom--light"},s.createElement(g.Z,{bold:!0},ne.name)),s.createElement(A.R,{room:ne}),(null==oe?void 0:oe.replace(/<br(\/|)>/g,""))&&s.createElement("div",{className:"room-details--content-description u-marg-bottom--light"},s.createElement(y.ZP,{color:I.Il.DarkGrey,type:y.yG.Small},s.createElement("span",{dangerouslySetInnerHTML:{__html:(null==oe?void 0:oe.replace(/<br(\/|)>/g,""))||""}})))),s.createElement("div",{className:"row"},!(null!=te&&te.perksHideOnRoomRow)&&s.createElement("div",{className:"col-12 u-flex u-marg-bottom@m- flex-column align-items-start"},s.createElement("div",{className:"room-details--content-perks u-marg-bottom@m-"},ae&&s.createElement("div",{className:"u-marg-bottom"},s.createElement(y.ZP,{type:y.yG.Small,bold:!0,color:I.Il.Accent},(null==te?void 0:te.perkTitle)||$(B.W.Misc.Perks.AndYouGetAll))),s.createElement(S,{perks:Ee,room:ne}))),(null==te?void 0:te.showDescriptionOnRoomDetails)&&s.createElement("div",{className:"col-12"},s.createElement(v.Z,{noMargins:!0}),s.createElement("div",{className:"u-marg-top u-text-overflow-ellipsis-3 u-marg-bottom"},s.createElement(y.ZP,{type:y.yG.Small,color:I.Il.Graphite},s.createElement("span",{dangerouslySetInnerHTML:{__html:e.room.getLongDescription()||""}})))),s.createElement("div",{className:"col-md-6 u-flex u-marg-bottom@m- flex-column align-items-start"},s.createElement(d.Z,{icon:p.Tu.ArrowRight2,isText:!0,primary:!0,size:"tiny",iconPosition:"right",onClick:function(){M.ZP.instance.sendInteraction("More Room Details",M.s_.LINK,M._J.ROOMS),X(!0)}},$(B.W.Step.Room.RoomInfo.MoreDetails))),s.createElement("div",{className:"col-md-6 u-flex justify-content-end flex-column align-items-start align-items-md-end"},s.createElement(y.ZP,{type:y.yG.Small,color:I.Il.Navy,inline:!0},$(B.W.Misc.From)),s.createElement("div",{className:"room-details--content-price flex-row align-items-end"},s.createElement(g.Z,{size:me,bold:!0},s.createElement(f.Z,{hideDecimals:!0},se)),s.createElement(y.ZP,{color:I.Il.DarkGrey,inline:!0},"/",$(B.W.Misc.Night))),s.createElement(y.ZP,{type:y.yG.Small,color:I.Il.Grey,className:"u-nowrap",align:ae?j.P.Left:j.P.Right},s.createElement("span",{dangerouslySetInnerHTML:{__html:ne.getLowestPriceType()===N.I.IncludingFeesAndTaxes?$(B.W.Step.Room.RoomInfo.IncludesTaxes):$(B.W.Step.Room.ExcludingTaxes)}})))),s.createElement("div",{className:"u-flex-direction-column u-flex u-flex-align-flex-end u-flex-align-flex-start@m- u-w-100@m-"},!ge&&ve?s.createElement("div",{className:"u-marg-top--light"},s.createElement(E.C,{price:fe,checkin:((null==pe?void 0:pe.getStartDate())||K.endDate).format("YYYY-MM-DD"),currency:ee.currentCurrency})):null,s.createElement(d.Z,{className:"u-marg-top--light",name:"ViewRatesNowButton",primary:!0,primaryActive:!!ie,filled:!0,stopIconAnimation:!0,icon:ie?p.Tu.ArrowUp2:p.Tu.ArrowDown2,iconPosition:"right",onClick:function(){if(!ie){var e=K.selectedBasketRow;e&&M.ZP.instance.sendRoomClick(ne,e.getStartDate(),e.getEndDate(),e.getPromoCode())}V(!ie)},wide:J.screenSize<=C.Z.Large,textColor:(0,I.pJ)(ie?null==te?void 0:te.colors.accent3:null==te?void 0:te.colors.accent)},$(ie?B.W.Step.Room.RoomInfo.CloseRates:B.W.Step.Room.RoomInfo.ViewRates))))),s.createElement(u.Z,{open:!!ie},s.createElement(Z.Z,{roomCode:ne.code,rates:F,featuredRates:i})),s.createElement(k.Z,{open:Q,room:e.room,rates:F,featuredRates:i,onClose:function(){X(!1)}}),ne.getRates().map((function(e){return s.createElement("script",{key:ne.code+"-"+e.code,type:"application/ld+json"},JSON.stringify({"@context":"http://schema.org/","@type":"Offer",itemOffered:{"@type":"HotelRoom",name:ne.name},name:e.name,identifier:e.code,priceSpecification:{"@type":"UnitPriceSpecification",price:ue(e.getAveragePrice(!0)),basePrice:ue(e.getTotalPrice(!0)),totalPrice:ue(e.getAveragePrice()),priceCurrency:ee.currentCurrency,unitText:"Nightly"}}))})))}},98013:function(e,t,r){"use strict";r.d(t,{R:function(){return m}});var n=r(89331),l=r(67294),o=r(26793),a=r(78886),i=r(30584),c=r(79478),s=r(97754);function m(e){var t,r,m,u,d,f,g,p,v,E,y=(0,n.WP)().hotel,h=(0,o.$)().t,A=null==y||null===(t=y.rooms)||void 0===t?void 0:t[null===(r=e.room)||void 0===r?void 0:r.code],b=null==y||null===(m=y.rooms)||void 0===m||null===(u=m[null===(d=e.room)||void 0===d?void 0:d.code])||void 0===u?void 0:u.roomSize,C=null==y||null===(f=y.overwrites)||void 0===f||null===(g=f[null===(p=e.room)||void 0===p?void 0:p.code])||void 0===g?void 0:g.RoomDimensions,S=null!=C?C:b?"".concat(b," m²"):void 0,_=null!==(v=e.textColor)&&void 0!==v?v:s.Il.DarkGrey,Z="".concat((null==A?void 0:A.bedQuantity)>0?null==A?void 0:A.bedQuantity:""," ").concat(null==A?void 0:A.bedType);return null!=A&&null!==(E=A.bedTypeOverride)&&void 0!==E&&E.trim()&&(Z=A.bedTypeOverride),l.createElement("ul",{className:"u-inline-flex u-flex-gap u-flex-wrap u-marg-bottom"},l.createElement("li",{className:"u-flex align-items-center"},l.createElement(a.ZP,{icon:a.Tu.People,size:"24px",color:s.Il.Navy}),l.createElement("div",{className:"u-pad-left--light"},l.createElement(i.xv,{type:i.yG.Small,inline:!0,color:_},h(c.W.Step.Room.Sleeps,{maxOccupancy:null==A?void 0:A.maxOccupancy})))),!1!==(null==A?void 0:A.showBedType)&&l.createElement("li",{className:"u-flex align-items-center"},l.createElement(a.ZP,{icon:a.Tu.Bed,size:"24px",color:s.Il.Navy}),l.createElement("div",{className:"u-pad-left--light"},l.createElement(i.xv,{type:i.yG.Small,inline:!0,color:_},Z))),!!S&&l.createElement("li",{className:"u-flex align-items-center"},l.createElement(a.ZP,{icon:a.Tu.RoomSize,size:"24px",color:s.Il.Navy}),l.createElement("div",{className:"u-pad-left--light"},l.createElement(i.xv,{type:i.yG.Small,inline:!0,color:_},S))))}},50840:function(e,t,r){"use strict";r.d(t,{Y:function(){return te}});var n=r(70885),l=r(20552),o=r(67294),a=r(26793),i=r(79478),c=r(78886),s=r(30584),m=r(4942),u=r(64854),d=r(33409),f=r(27930);function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function p(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){(0,m.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function v(){var e=(0,o.useContext)(l.g7),t=(0,a.$)().t,r=Object.keys(e.currentFilters).filter((function(t){return t&&e.currentFilters[t]instanceof f.Z}));return r.length?o.createElement("div",{className:"u-flex w-100"},o.createElement("div",{className:"filter-height"},r&&(r.length<=2?r.map((function(r){var n;if(r&&e.currentFilters[r]instanceof f.Z)return o.createElement(d.ZP,{key:r,onClickIcon:function(){e.setCurrentFilters(p(p({},e.currentFilters),{},(0,m.Z)({},r,null)))},type:d.Rm.Secondary,icon:c.Tu.Close,iconPosition:"right"},null===(n=e.currentFilters[r])||void 0===n?void 0:n.getLabel(t))})):o.createElement(d.ZP,{onClickIcon:function(){e.setCurrentFilters({})},type:d.Rm.Secondary,icon:c.Tu.Close,iconPosition:"right"},r.length," Filters Applied"))),!!Object.values(e.currentFilters).filter((function(e){return!!e})).length&&o.createElement(u.Z,{isText:!0,size:"tiny",onClick:function(){e.setCurrentFilters({})}},t(i.W.Misc.ClearAll))):o.createElement(o.Fragment,null)}var E=r(89331),y=r(13010),h=r(19874),A=r(65128),b=r(89089),C=r(94184),S=r.n(C),_=r(20858),Z=r(64485),k=r(42982),x=r(55061),P=r.n(x),R=function(e){var t,r,n,l=S()(P().marker,(r={},(0,m.Z)(r,P()["--fixed"],e.fixed),(0,m.Z)(r,P()["--hidden"],!(null!==(t=e.marker)&&void 0!==t&&t.isVisible)),(0,m.Z)(r,P()["--".concat(e.isEdge)],!!e.isEdge),r)),a=S()(P()["marker-label"],(n={},(0,m.Z)(n,P()["--fixed"],e.fixed),(0,m.Z)(n,P()["--".concat(e.isEdge)],!!e.isEdge),n)),i={};return e.offset&&(i.left=Math.max(Math.min(100,e.offset),0)+"%"),o.createElement("span",{className:l,style:i},e.marker&&!!e.marker.label&&o.createElement("span",{className:a},e.marker.label))},N=function(e){var t,r,l=e.min,a=void 0===l?0:l,i=e.max,c=void 0===i?100:i,s=(0,o.useState)(!1),m=(0,n.Z)(s,2),u=(m[0],m[1]),d=(0,o.useState)(null),f=(0,n.Z)(d,2),g=f[0],p=f[1],v=(0,o.useRef)(null),E=function(t){var r,n,l=null==v||null===(r=v.current)||void 0===r?void 0:r.getBoundingClientRect();if(l){for(var o=l.x,i=l.x+l.width,s=Math.max(Math.min(Math.round(a+(c-a)*(t.clientX-o)/(i-o)),e.max),e.min),m=g,u=e.markers,d=0;d<u.length;d++)u[d].isVisible&&(null===m||Math.abs(s-u[m].value)>Math.abs(s-u[d].value))&&(m=d);var f=(0,k.Z)(e.markers);null!==m&&(f[m].value=s),null===(n=e.onChange)||void 0===n||n.call(e,f),p(m)}},y=function(e){var t;return t=(e-a)/(c-a)*100,Math.min(Math.max(t,0),100)};return(0,o.useEffect)((function(){var e,t=!1,r=null==v||null===(e=v.current)||void 0===e?void 0:e.getBoundingClientRect();if(r){r.x,r.x,r.width;var n=function(e){t||null===g||E(e)},l=function(){u(!1),p(null)};return document.body.addEventListener("mouseup",l),document.body.addEventListener("mousemove",n),function(){t=!0,document.body.removeEventListener("mouseup",l),document.body.removeEventListener("mousemove",n)}}}),[g]),o.createElement("div",{className:P().slider,onMouseDown:function(e){u(!0),E(e)},ref:v},o.createElement("div",{className:P()["slider-track"]},null===(t=null!==(r=e.backgroundMarkers)&&void 0!==r?r:[])||void 0===t?void 0:t.map((function(e,t){return o.createElement(R,{key:t,offset:y(e.value),marker:e,fixed:!0,isEdge:e.isEdge})})),o.createElement("div",{className:P()["slider-rail"],style:{left:"".concat(y(e.markers[0].value),"%"),right:"".concat(100-y(e.markers[1].value),"%")}}),e.markers.map((function(e,t){return o.createElement(R,{key:t,offset:y(e.value),marker:e})}))))},w=r(43144),O=r(15671),B=r(60136),I=r(82963),D=r(61120);var M=function(e){(0,B.Z)(l,e);var t,r,n=(t=l,r=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,n=(0,D.Z)(t);if(r){var l=(0,D.Z)(this).constructor;e=Reflect.construct(n,arguments,l)}else e=n.apply(this,arguments);return(0,I.Z)(this,e)});function l(e,t){var r;return(0,O.Z)(this,l),(r=n.call(this)).min=void 0,r.max=void 0,r.getMin=function(){return r.min},r.getMax=function(){return r.max},r.getLabel=function(){return"Budget"},r.check=function(e){if(e.getLowestPrice()>r.max)return null;var t=[];return e.getOriginalRates().forEach((function(e){e.getAveragePrice()<=r.max&&e.getAveragePrice()>=r.min&&t.push(e)})),e.filteredRates=t,e},r.min=e,r.max=t,r}return(0,w.Z)(l)}(f.Z),j=r(97754);function L(e){var t,r,l,c,m,d=(0,a.$)().t,f=(0,o.useState)([null!==(t=null===(r=e.filter)||void 0===r?void 0:r.getMin())&&void 0!==t?t:0,null!==(l=null===(c=e.filter)||void 0===c?void 0:c.getMax())&&void 0!==l?l:0]),g=(0,n.Z)(f,2),p=g[0],v=g[1],E=(0,o.useState)(p),y=(0,n.Z)(E,2),h=y[0],A=y[1],b=(0,o.useState)(null),C=(0,n.Z)(b,2),k=C[0],x=C[1];(0,o.useEffect)((function(){var t,r,n,l,o,a,i=null!==(t=e.roomList)&&void 0!==t&&t.length?e.roomList.reduce((function(e,t){var r=t.getLowestPrice(!0);return e<r&&e?e:r}),0):0,c=null!==(r=e.roomList)&&void 0!==r&&r.length?e.roomList.reduce((function(e,t){var r=t.getHighestPrice(!0);return e>r&&e?e:r}),0):0;v([i,c]),A([null!==(n=null===(l=e.filter)||void 0===l?void 0:l.getMin())&&void 0!==n?n:i,null!==(o=null===(a=e.filter)||void 0===a?void 0:a.getMax())&&void 0!==o?o:c])}),[e.roomList]),(0,o.useEffect)((function(){var e=p[1]-p[0];h[1]<p[0]+.3*e?x("left"):h[0]>p[1]-.3*e?x("right"):x(null)}),[h]);var P=function(e){return o.createElement(_.Z,{hideDecimals:!0,disableLoading:!0},e)},R=(j.Il.Grey,P(p[0]),p[0],j.Il.Grey,P(p[1]),p[1],P(h[0]),P(h[1]),h[1],h[0],h[0],[{isVisible:!0,value:h[0]},{isVisible:!0,value:h[1]},{isVisible:!1,label:o.createElement(o.Fragment,null,P(h[0])," - ",P(h[1])),value:h[0]+(h[1]-h[0])/2}]),w=[{isVisible:!0,value:p[0],label:P(p[0]),isEdge:"start"},{isVisible:!0,value:p[1],label:P(p[1]),isEdge:"end"}];return o.createElement(o.Fragment,null,o.createElement("div",{className:"u-flex"},o.createElement("div",null,o.createElement(s.ZP,{inline:!0,type:s.yG.Small},o.createElement("strong",null,d(i.W.Step.Room.Filter.Budget))),o.createElement(s.ZP,{inline:!0,type:s.yG.Small},"/",d(i.W.Misc.PerNight))),o.createElement("div",null,o.createElement(u.Z,{size:"tiny",isText:!0,disabled:!e.filter,onClick:function(){return A(p),void e.onChange(null)}},d(i.W.Misc.Clear)))),(null===(m=e.roomList)||void 0===m?void 0:m.length)>0?o.createElement("div",{className:S()("roomstay-slider",{"--min-limit":"left"===k,"--max-limit":"right"===k})},o.createElement(N,{min:p[0],max:p[1],onChange:function(t){A(t.map((function(e){return e.value}))),e.onChange(new M(t[0].value,t[1].value))},markers:R,backgroundMarkers:w})):o.createElement("div",{className:"u-marg-top-bottom u-flex justify-content-center"},o.createElement(Z.Z,null)))}var W=r(69024),T=r(89087);function F(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function G(e){var t,r=(0,a.$)().t,l=(0,o.useState)({}),c=(0,n.Z)(l,2),d=c[0],f=c[1],g=(0,o.useState)(0),p=(0,n.Z)(g,2),v=p[0],E=p[1],y=(0,o.useRef)(null);return(0,o.useEffect)((function(){if(e.roomList){var t={},r=e.filter?e.filter.getViewOnly():null;e.roomList.forEach((function(e){e.getOriginalRates().forEach((function(e){t[e.name]={status:!r||r.includes(e.name)}}))})),f(t)}}),[e.roomList,v]),(0,o.useEffect)((function(){var t;if(null!=y&&y.current&&null!==(t=e.roomList)&&void 0!==t&&t.length){var r=Object.keys(d),n=r.filter((function(e){return d[e].status}));r.length===n.length?e.onChange(null):e.onChange(new T.Z(n))}}),[d]),o.createElement(o.Fragment,null,o.createElement("div",{className:"u-flex u-marg-bottom",ref:y},o.createElement(s.ZP,{inline:!0,type:s.yG.Small},o.createElement("strong",null,r(i.W.Step.Room.Filter.RateType))),o.createElement(u.Z,{size:"tiny",isText:!0,disabled:!e.filter,onClick:function(){e.onChange(null),E((function(e){return e+1}))}},r(i.W.Misc.Clear))),o.createElement("div",null,(null===(t=e.roomList)||void 0===t?void 0:t.length)>0?d&&Object.keys(d).map((function(e){return o.createElement("div",{className:"u-marg-bottom--light",key:e},o.createElement(W.Z,{label:e,checked:d[e].status,onChange:function(t){var r=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?F(Object(r),!0).forEach((function(t){(0,m.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):F(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},d);r[e].status=t.target.checked,f(r)}}))})):o.createElement("div",{className:"u-marg-top-bottom u-flex justify-content-center"},o.createElement(Z.Z,null))))}var z=r(40742);function Y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function U(e){var t,r=(0,a.$)().t,l=(0,o.useState)({}),c=(0,n.Z)(l,2),d=c[0],f=c[1],g=(0,o.useState)(0),p=(0,n.Z)(g,2),v=p[0],E=p[1],y=(0,o.useRef)(null);(0,o.useEffect)((function(){if(e.roomList){var t={},r=e.filter?e.filter.getVisibleRooms():null;e.roomList.forEach((function(e){t[e.name]={status:!r||r.includes(e.name)||r.includes(e.code)}})),f(t)}}),[e.roomList,v]);var h=Object.keys(d),A=h.filter((function(e){return d[e].status}));return(0,o.useEffect)((function(){var t;null!=y&&y.current&&null!==(t=e.roomList)&&void 0!==t&&t.length&&(A.length===h.length?e.onChange(null):e.onChange(new z.Z(A)))}),[d]),o.createElement(o.Fragment,null,o.createElement("div",{className:"u-flex u-marg-bottom u-marg-top--heavy",ref:y},o.createElement(s.ZP,{inline:!0,type:s.yG.Small},o.createElement("strong",null,r(i.W.Step.Room.Filter.RoomType))),o.createElement(u.Z,{size:"tiny",isText:!0,disabled:!e.filter,onClick:function(){e.onChange(null),E((function(e){return e+1}))}},r(i.W.Misc.Clear))),o.createElement("div",null,(null===(t=e.roomList)||void 0===t?void 0:t.length)>0?d&&Object.keys(d).map((function(e){return o.createElement("div",{className:"u-marg-bottom--light",key:e},o.createElement(W.Z,{label:e,checked:d[e].status,onChange:function(t){var r=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Y(Object(r),!0).forEach((function(t){(0,m.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Y(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},d);r[e].status=t.target.checked,f(r)}}))})):o.createElement("div",{className:"u-marg-top-bottom u-flex justify-content-center"},o.createElement(Z.Z,null))))}var V=r(54862),q=r(84544),H=r(90292);function Q(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function X(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Q(Object(r),!0).forEach((function(t){(0,m.Z)(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Q(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function $(e){var t=(0,o.useContext)(l.g7),r=(0,o.useContext)(l.hy),c=(0,E.WP)().hotel,d=(0,a.$)().t,f=(0,o.useState)(t.currentFilters),g=(0,n.Z)(f,2),p=g[0],v=g[1],C=(0,o.useState)([]),S=(0,n.Z)(C,2),_=S[0],Z=S[1];(0,o.useEffect)((function(){if(v(X({},t.currentFilters)),e.open){var n,l=r.getAllValidRows();V.Z.getUnfilteredRoomList(null!==(n=r.selectedBasketRow)&&void 0!==n?n:l[l.length-1],null==c?void 0:c.hotelID).then((function(e){Z(e)}))}}),[e.open]);var k=o.createElement("div",{className:"u-flex align-items-center justify-content-between justify-content-md-end"},o.createElement("div",{className:"u-marg-right--heavy"},o.createElement(s.ZP,{color:j.Il.Accent},o.createElement("strong",null,V.Z.filterRooms(_,Object.values(p)).length," ",d(i.W.Step.Room.Filter.MatchingRoomsRates)))),o.createElement(u.Z,{primary:!0,filled:!0,onClick:function(){var r;q.ZP.instance.sendInteraction("Apply Filters",q.s_.BUTTON,q._J.ROOMS),t.setCurrentFilters(p),null===(r=e.onClose)||void 0===r||r.call(e)}},d(i.W.Misc.ApplyChanges))),x=function(e,t){v((function(r){return X(X({},r),{},(0,m.Z)({},e,t))}))},P=o.createElement("div",{className:"room-filter"},o.createElement("div",{className:"u-pad--heavy u-pad-bottom--none"},t.screenSize>H.Z.Medium&&o.createElement("div",{className:"u-marg-bottom"},o.createElement(y.Z,{bold:!0},d(i.W.Step.Room.FilterBy))),o.createElement("div",{className:"row"},o.createElement("div",{className:"col-md-6"},o.createElement(L,{filter:p.Budget,onChange:function(e){return x("Budget",e)},roomList:_}),o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(U,{roomList:_,filter:p.RoomType,onChange:function(e){return x("RoomType",e)}}))),o.createElement("div",{className:"col-md-6"},o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(G,{roomList:_,filter:p.RateType,onChange:function(e){return x("RateType",e)}}))))));return t.screenSize>H.Z.Medium?o.createElement(b.a,{followElement:e.anchorEl,onClose:e.onClose,open:e.open,placement:"bottom-start"},o.createElement(o.Fragment,null,P,o.createElement("div",{className:"u-pad--heavy u-pad-top--none"},o.createElement(h.Z,null),k))):o.createElement(A.Z,{open:e.open,onClose:e.onClose,title:d(i.W.Step.Room.FilterBy),mobileFooter:k},P)}var J=r(63351),K=r(60281);function ee(){var e=(0,o.useContext)(l.g7).screenSize<=H.Z.Medium,t=(0,o.useContext)(l.g7),r=(0,o.useState)(t.currentRoomSort),a=(0,n.Z)(r,2),i=a[0],c=a[1];return o.createElement(J.P,{nativeOnMobile:!0,options:Object.values(K.s).map((function(e){return{text:e,value:e}})),value:i,onChange:function(e){q.ZP.instance.sendInteraction("Change Sort",q.s_.DROPDOWN,q._J.ROOMS),c(e),t.setCurrentRoomSort(e)},keyName:"value",labelName:"text",className:S()("u-flex align-items-center",{"text-small":e})})}var te=function(){var e=(0,o.useContext)(l.g7),t=(0,a.$)().t,r=(0,o.useRef)(null),m=(0,o.useState)(!1),u=(0,n.Z)(m,2),d=u[0],f=u[1];return o.createElement("div",{className:"row align-items-end"},o.createElement("div",{className:"col-6 col-md-4 col-lg-3"},o.createElement(s.ZP,{type:s.yG.Label,color:j.Il.DarkGrey},o.createElement("strong",null,t(i.W.Step.Room.SortBy))),o.createElement("div",null,o.createElement(ee,null))),o.createElement("div",{className:"col-6 col-md-2 col-lg-2"},o.createElement("div",{ref:r},o.createElement("div",{className:"filter-button d-flex align-items-center u-cursor-pointer",onClick:function(){q.ZP.instance.sendInteraction("Show Filters",q.s_.DROPDOWN,q._J.ROOMS),f(!0)}},o.createElement(s.ZP,null,e.screenSize>H.Z.Medium?t(i.W.Step.Room.FilterBy):t(i.W.Step.Room.Filter.ShowFilters)),o.createElement(c.ZP,{icon:c.Tu.Dropdown,color:j.Il.DarkGrey})),o.createElement($,{open:d,anchorEl:r.current,onClose:function(){f(!1)}}))),o.createElement("div",{className:"col-md-12 col-lg-7 u-align-right u-marg-top@l- u-empty-none filter-push-down"},o.createElement(v,null)))}},48229:function(e,t,r){(t=r(23645)(!0)).push([e.id,".Slider-module__slider___2f65h{width:100%;display:flex;padding:13px 0;user-select:none}.Slider-module__slider-track___3uTXL{height:4px;width:100%;background-color:var(--rs-color-snow);position:relative;border-radius:4px;z-index:1}.Slider-module__slider-rail___2Jeoy{top:0;left:0;right:0;bottom:0;background-color:var(--rs-color-accent-1);position:absolute;display:block;border-radius:4px;z-index:2}.Slider-module__marker___1duEi{position:absolute;top:50%;transform:translate(-50%, -50%);border-radius:100%;width:14px;height:14px;background-color:var(--rs-color-accent-1);border:2px solid var(--rs-color-white);cursor:grab}.Slider-module__marker___1duEi.Slider-module__--hidden___2PnRK{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.Slider-module__marker___1duEi.Slider-module__--fixed___3P_lS{background-color:var(--rs-color-navy);width:8px;height:8px;border:unset}.Slider-module__marker___1duEi.Slider-module__--start___2VXUn{left:0}.Slider-module__marker___1duEi.Slider-module__--end___1d_8m{left:100%}.Slider-module__marker-label___2nSLZ{position:absolute;left:50%;top:16px;transform:translateX(-50%);display:block;white-space:nowrap;user-select:none;font-size:14px !important;line-height:1em !important}.Slider-module__marker-label___2nSLZ.Slider-module__--fixed___3P_lS{color:var(--rs-color-grey)}.Slider-module__marker-label___2nSLZ:not(.Slider-module__--fixed___3P_lS){background-color:#fff;padding:0px 4px}.Slider-module__marker-label___2nSLZ.Slider-module__--start___2VXUn{transform:translateX(-10%)}.Slider-module__marker-label___2nSLZ.Slider-module__--end___1d_8m{transform:translateX(-75%)}","",{version:3,sources:["Slider.module.scss"],names:[],mappings:"AAAA,+BAAQ,UAAU,CAAC,YAAY,CAAC,cAAc,CAAC,gBAAgB,CAAC,qCAAc,UAAU,CAAC,UAAU,CAAC,qCAAqC,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,SAAS,CAAC,oCAAa,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,yCAAyC,CAAC,iBAAiB,CAAC,aAAa,CAAC,iBAAiB,CAAC,SAAS,CAAC,+BAAQ,iBAAiB,CAAC,OAAO,CAAC,+BAA+B,CAAC,kBAAkB,CAAC,UAAU,CAAC,WAAW,CAAC,yCAAyC,CAAC,sCAAsC,CAAC,WAAW,CAAC,+DAAiB,8BAA8B,CAAC,0BAA0B,CAAC,8DAAgB,qCAAqC,CAAC,SAAS,CAAC,UAAU,CAAC,YAAY,CAAC,8DAAgB,MAAM,CAAC,4DAAc,SAAS,CAAC,qCAAc,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,0BAA0B,CAAC,aAAa,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,0BAA0B,CAAC,oEAAsB,0BAA0B,CAAC,0EAA4B,qBAAqB,CAAC,eAAe,CAAC,oEAAsB,0BAA0B,CAAC,kEAAoB,0BAA0B",file:"Slider.module.scss",sourcesContent:[".slider{width:100%;display:flex;padding:13px 0;user-select:none}.slider-track{height:4px;width:100%;background-color:var(--rs-color-snow);position:relative;border-radius:4px;z-index:1}.slider-rail{top:0;left:0;right:0;bottom:0;background-color:var(--rs-color-accent-1);position:absolute;display:block;border-radius:4px;z-index:2}.marker{position:absolute;top:50%;transform:translate(-50%, -50%);border-radius:100%;width:14px;height:14px;background-color:var(--rs-color-accent-1);border:2px solid var(--rs-color-white);cursor:grab}.marker.--hidden{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.marker.--fixed{background-color:var(--rs-color-navy);width:8px;height:8px;border:unset}.marker.--start{left:0}.marker.--end{left:100%}.marker-label{position:absolute;left:50%;top:16px;transform:translateX(-50%);display:block;white-space:nowrap;user-select:none;font-size:14px !important;line-height:1em !important}.marker-label.--fixed{color:var(--rs-color-grey)}.marker-label:not(.--fixed){background-color:#fff;padding:0px 4px}.marker-label.--start{transform:translateX(-10%)}.marker-label.--end{transform:translateX(-75%)}"]}]),t.locals={slider:"Slider-module__slider___2f65h","slider-track":"Slider-module__slider-track___3uTXL","slider-rail":"Slider-module__slider-rail___2Jeoy",marker:"Slider-module__marker___1duEi","--hidden":"Slider-module__--hidden___2PnRK","--fixed":"Slider-module__--fixed___3P_lS","--start":"Slider-module__--start___2VXUn","--end":"Slider-module__--end___1d_8m","marker-label":"Slider-module__marker-label___2nSLZ"},e.exports=t},55061:function(e,t,r){var n=r(93379),l=r(48229);"string"==typeof(l=l.__esModule?l.default:l)&&(l=[[e.id,l,""]]);n(l,{insert:"head",singleton:!1}),e.exports=l.locals||{}}}]);