@roomstay/frontend 2.6.7 → 2.6.8-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/166.bundle.js +1 -1
- package/dist/457.bundle.js +1 -1
- package/dist/468.bundle.js +1 -1
- package/dist/main.bundle.js +1 -1
- package/dist/src/components/steps/hotel/HotelInfoPerksRow.d.ts +6 -0
- package/dist/src/components/steps/hotel/HotelInfoPerksRow.js +55 -0
- package/dist/src/components/steps/hotel/HotelInfoPerksRow.js.map +1 -0
- package/dist/src/components/steps/room/RoomModal.js +3 -11
- package/dist/src/components/steps/room/RoomModal.js.map +1 -1
- package/dist/src/components/steps/room/RoomModalPerkRow.d.ts +10 -0
- package/dist/src/components/steps/room/RoomModalPerkRow.js +56 -0
- package/dist/src/components/steps/room/RoomModalPerkRow.js.map +1 -0
- package/dist/src/components/steps/room/roomDetails/RoomDetails.js +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.d.ts +2 -0
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js +2 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js.map +1 -1
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.js +10 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/pages/hotel/HotelInfo.js +3 -10
- package/dist/src/pages/hotel/HotelInfo.js.map +1 -1
- package/dist/test.bundle.js +1 -1
- package/dist/vendors.bundle.js +1 -1
- package/package.json +1 -1
package/dist/166.bundle.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[166],{2258:function(e,t,l){l.d(t,{Z:function(){return h}});var r=l(885),a=l(7791),o=l(7294),n=l(6793),m=l(9478),c=l(1126),i=l(8442),s=l(858),u=l(3010),d=l(8886),g=l(4485),p=l(584),v=l(3349),f=l(4744),E=l(7754),y=l(292);function h(e){var t=(0,n.$)().t,l=(0,o.useContext)(a.g7),h=(0,o.useContext)(a.hy),S=(0,o.useState)(!1),Z=(0,r.Z)(S,2),N=Z[0],b=Z[1],R=(0,o.useState)(!0),I=(0,r.Z)(R,2),P=I[0],k=I[1],x=(0,o.useState)(!0),C=(0,r.Z)(x,2),D=C[0],w=C[1],A=(0,o.useState)(""),M=(0,r.Z)(A,2),T=M[0],W=M[1],G=(0,o.useState)(""),Y=(0,r.Z)(G,2),L=Y[0],z=Y[1],B=(0,o.useState)(""),F=(0,r.Z)(B,2),_=F[0],O=F[1],j=(0,o.useState)(""),H=(0,r.Z)(j,2),U=H[0],q=H[1],$=(0,o.useState)([]),J=(0,r.Z)($,2),Q=J[0],K=J[1],V=(0,v.o)().memberNumber;return(0,o.useEffect)((function(){var t=h.selectedBasketRow;t&&i.Z.Availability.getCheapestPricePerDay(t.getStartDate(),t.getEndDate(),t.getAdults(),t.getChildren(),t.getInfants(),t.getPromoCode(),e.hotelId,V,!0).catch().then((function(l){if(l){for(var r=!0,a=t.getStartDate();a.isBefore(t.getEndDate(),"day");a=a.add(1,"day"))if(!l[a.format(c.yJ)]){r=!1;break}if(b(r),k(!0),r){w(!0);var o=i.Z.Availability.getCrossSellHotelInfo(e.hotelId);z(o.name),W(o.image),O(o.description);var n=["arrive="+t.getStartDate().format("YYYY-M-D"),"depart="+t.getEndDate().format("YYYY-M-D")];t.getAdults()>1&&n.push("adults="+t.getAdults()),t.getChildren()>0&&n.push("children="+t.getChildren()),t.getInfants()>0&&n.push("infants="+t.getInfants()),t.getPromoCode()&&n.push("promocode="+t.getPromoCode()),q(o.checkoutUrl+"#/step/room/?"+n.join("&")),i.Z.Availability.fetchAvailabilityData(t,e.hotelId,V).catch((function(e){return[]})).then((function(e){null!=e&&e.length?(K(e),w(!1)):(k(!1),w(!1))}))}}}))}),[h.selectedBasketRow]),N?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(f.Z.resizeImage(T,f.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:P?"large":"normal"},t(D?m.W.Step.Room.CrossSellBlock.AvailabilityNearBy1:P?m.W.Step.Room.CrossSellBlock.AvailabilityNearBy2:m.W.Step.Room.CrossSellBlock.DateUnavailable))),P&&o.createElement("div",{className:"cross-sell-module--content-description u-marg-bottom--light"},o.createElement(p.ZP,{color:E.Il.DarkGrey,type:p.yG.Body},o.createElement("strong",{style:{color:E.Il.Accent}},L),o.createElement("div",{dangerouslySetInnerHTML:{__html:_}})))),D?o.createElement(g.Z,null):o.createElement(o.Fragment,null,Q.slice(0,4).map((function(e,l){var r=U+"&room="+e.code,a="u-flex align-items-end";return l<Q.length-1&&(a+=" u-pad-bottom u-border-bottom u-marg-bottom"),o.createElement("a",{key:e.code,className:a,href:r,target:"_blank",rel:"noreferrer"},o.createElement("div",{className:"u-flex flex-column align-items-start justify-content-start"},o.createElement(p.ZP,{type:p.yG.Body,color:E.Il.Accent,bold:!0},e.name),o.createElement(p.ZP,{type:p.yG.Small,color:E.Il.DarkGrey},t(m.W.Step.Room.Sleeps,{maxOccupancy:e.occupancy}))),o.createElement("div",{className:"u-flex flex-column align-items-end align-items-md-end"},o.createElement(p.ZP,{type:p.yG.Small,color:E.Il.DarkGrey,inline:!0},t(m.W.Misc.From)),o.createElement(p.ZP,{type:p.yG.Body,color:E.Il.Accent,bold:!0},o.createElement(s.Z,null,e.getLowestPrice(!0)))))}))),P&&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"+(l.screenSize<=y.Z.Medium?" --wide":""),tabIndex:0,type:"button",href:U,target:"_blank",rel:"noreferrer"},o.createElement("span",null,"See all ",Q.length," rooms",o.createElement(d.ZP,{icon:d.Tu.ArrowRight,size:"1em"}))))))):null}},2458:function(e,t,l){l.d(t,{Z:function(){return E}});var r=l(2982),a=l(9331),o=l(7294),n=l(6793),m=l(9478),c=l(3010),i=l(8886),s=l(9874),u=l(5128),d=l(584),g=l(291),p=l(8013),v=l(4354),f=l(7754);function E(e){var t,l=(0,n.$)().t,E=(0,a.WP)().hotel,y=E.rooms,h=e.room.getRoomPerks({hotel:E,room:e.room}),S=h.roomPerks,Z=h.prePerkDisclaimer,N=null==y?void 0:y[e.room.code],b=null!=N&&N.amenities?(0,r.Z)(N.amenities):[];null!=N&&null!==(t=N.features)&&void 0!==t&&t.length&&N.features.forEach((function(e){b.push(e)}));var R=(null==Z?void 0:Z.replace(/<br(\/|)>/g,""))||"";return o.createElement(u.Z,{title:e.room.name+" "+l(m.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(g.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(p.R,{room:e.room}),o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(d.ZP,{color:f.Il.DarkGrey,type:d.yG.Small},o.createElement("span",{dangerouslySetInnerHTML:{__html:e.room.getShortDescription(!1)||""}}))),!(null!=E&&E.perksHideOnRoomDetail)&&S&&o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement("div",{className:"row"},S.map((function(t,l){return o.createElement("div",{key:l,className:"u-marg-bottom col-6 col-md-4 u-flex align-items-center justify-content-start"},o.createElement("div",{className:"room-perk-icon --has-bg"},t.iconElement?t.iconElement:o.createElement(i.ZP,{icon:t.icon})),o.createElement("div",{className:"u-marg-left--light"},o.createElement(d.ZP,{type:d.yG.Small},null!=t&&t.perkNameRenderer?t.perkNameRenderer({hotel:E,room:e.room}):t.name)))}))),(null==E?void 0:E.perksShowDisclaimer)&&o.createElement("div",{className:"row u-marg-top--lighter"},o.createElement("small",{className:"col-12"},l(m.W.Misc.PerksDisclaimer)))),!(null==b||!b.length)&&o.createElement(o.Fragment,null,o.createElement("div",{className:"u-marg-bottom"},o.createElement(d.ZP,{color:f.Il.Accent,type:d.yG.Small},o.createElement("strong",null,l(m.W.Step.Room.RoomInfo.RoomAmenities)))),o.createElement("div",{className:"row"},b.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(i.ZP,{icon:i.Tu.Check,color:f.Il.White,backgroundColor:f.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(s.Z,null),o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(d.ZP,{type:d.yG.Small,color:f.Il.Graphite},o.createElement("span",{dangerouslySetInnerHTML:{__html:e.room.getLongDescription()||""}}))),!!R&&o.createElement("div",{className:"u-marg-bottom--heavy"},o.createElement(d.ZP,{type:d.yG.Small},o.createElement("strong",null,l(m.W.Step.Room.RoomInfo.Disclaimer))),o.createElement(d.ZP,{type:d.yG.Small},o.createElement("span",{dangerouslySetInnerHTML:{__html:R}})))),o.createElement(v.Z,{featuredRates:e.featuredRates,rates:e.rates,roomCode:e.room.code})))}},9368:function(e,t,l){l.d(t,{F:function(){return P}});var r=l(7462),a=l(5861),o=l(885),n=l(4687),m=l.n(n),c=l(7791),i=l(7484),s=l.n(i),u=l(7294),d=l(7536),g=l(6793),p=l(9478),v=l(9740),f=l(8442),E=l(7933),y=l(4854),h=l(3010),S=l(8886),Z=l(584),N=l(1432),b=l(514),R=l(7754),I=l(6431),P=function(){var e=(0,d.cI)(),t=e.register,l=e.handleSubmit,n=e.formState,i=(0,b.W)().hotel,P=(0,u.useContext)(c.hy),k=(0,g.$)().t,x=(0,u.useState)({}),C=(0,o.Z)(x,2),D=C[0],w=C[1],A=(0,u.useState)(!1),M=(0,o.Z)(A,2),T=M[0],W=M[1],G=function(){var e=(0,a.Z)(m().mark((function e(t){var l,r;return m().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return w({}),W(!0),e.prev=2,l=P.selectedBasketRow,r="",[{name:"Adults",value:l.getAdults()},{name:"Children",value:l.getChildren()},{name:"Infants",value:l.getInfants()},{name:"Promo Code",value:l.getPromoCode()},{name:"Dates range",value:l.getStayDateRange("ddd D MMM YYYY"," till ")},{name:"Date Sent",value:s()().format("dd D MMM YYYY")}].forEach((function(e){var t=e.name,l=e.value;l&&(r+="".concat(t,": ").concat(l,"\n"))})),e.next=8,f.Z.Error.sendRoomFallbackForm(null==i?void 0:i.hotelID,{name:t.name,telephone:t.telephone,email:t.email,searchQuery:r});case 8:w({success:!0}),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(2),w({success:!1,message:k(p.W.Step.Room.ErrorForm.APIError)});case 14:W(!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(S.ZP,{icon:S.Tu.Error,color:R.Il.Alert,size:"24px"})),u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(h.Z,{bold:!0,color:R.Il.Alert},u.createElement("span",{style:{color:"inherit"},dangerouslySetInnerHTML:{__html:k(p.W.Step.Room.ErrorForm.Title)}}))),u.createElement(Z.ZP,{type:Z.yG.Small},u.createElement("span",{dangerouslySetInnerHTML:{__html:k(p.W.Step.Room.ErrorForm.Description)}}))),u.createElement("div",{className:"col-lg-6"},u.createElement("form",null,u.createElement(v.Z,{open:!!n.errors},Object.values(n.errors).map((function(e,t){return u.createElement(E.ZP,{key:t,type:E.NK.Danger},u.createElement(Z.ZP,{type:Z.yG.Small},null==e?void 0:e.message))}))),u.createElement("div",{className:"u-marg-bottom--light u-marg-top"},u.createElement(N.Z,(0,r.Z)({placeholder:k(p.W.Step.Room.ErrorForm.Inputs.Name)},t("name",{required:{value:!0,message:"".concat(k(p.W.Step.Room.ErrorForm.Inputs.Name)," is a required field")}})))),u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(N.Z,(0,r.Z)({placeholder:k(p.W.Step.Room.ErrorForm.Inputs.Email)},t("email",{required:{value:!0,message:"".concat(k(p.W.Step.Room.ErrorForm.Inputs.Email)," is a required field")},pattern:{value:I.CU,message:"Email must be valid"}})))),u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(N.Z,(0,r.Z)({placeholder:k(p.W.Step.Room.ErrorForm.Inputs.Telephone)},t("telephone",{required:{value:!0,message:"".concat(k(p.W.Step.Room.ErrorForm.Inputs.Telephone)," is a required field")}})))),u.createElement(y.Z,{filled:!0,primary:!0,onClick:l(G),isLoading:T,disabled:T||D.success},k(p.W.Step.Room.ErrorForm.ContactUsButton)),u.createElement(v.Z,{open:!!D.success},u.createElement("div",{className:"u-pad-top"},u.createElement(Z.ZP,{color:R.Il.Success},k(p.W.Step.Room.ErrorForm.ConfirmationMessage)))),u.createElement(v.Z,{open:!1===D.success},u.createElement("div",{className:"u-pad-top"},u.createElement(Z.ZP,{color:R.Il.Alert},D.message)))))))}},2870:function(e,t,l){l.d(t,{y:function(){return o}});var r=l(7791),a=l(7294),o=function(){var e,t,l=(0,a.useContext)(r.hy).selectedBasketRow;return a.createElement("script",{type:"application/ld+json"},JSON.stringify({"@context":"https://structured-data.triptease.io","@type":"LodgingSearch",checkinTime:null==l||null===(e=l.getStartDate())||void 0===e?void 0:e.format("YYYY-M-D"),checkoutTime:null==l||null===(t=l.getEndDate())||void 0===t?void 0:t.format("YYYY-M-D"),numAdults:null==l?void 0:l.getAdults(),numChildren:null==l?void 0:l.getChildren(),numInfants:null==l?void 0:l.getInfants(),numRooms:"1",offerCode:null==l?void 0:l.getPromoCode()}))}},4101:function(e,t,l){l.d(t,{Z:function(){return G}});var r=l(4942),a=l(885),o=l(7791),n=l(9331),m=l(4184),c=l.n(m),i=l(7294),s=l(6793),u=l(9740),d=l(4854),g=l(858),p=l(3010),v=l(8886),f=l(9874),E=l(6573),y=l(584),h=l(291),S=l(8013),Z=l(292);function N(e){var t,l=(0,i.useContext)(o.g7),r=(0,n.WP)().hotel,m=e.perks,s=l.screenSize<=Z.Z.Large,u=(0,i.useState)(null===(t=m[0])||void 0===t?void 0:t.name),d=(0,a.Z)(u,2),g=d[0],p=d[1],f=c()("room-perk-icon",{"--has-bg":s});return i.createElement(i.Fragment,null,!(null==m||!m.length)&&i.createElement("ul",null,m.map((function(e,t){if(!(s&&t>=4))return i.createElement("li",{key:t,onClick:function(){p(e.name)}},i.createElement("div",{className:f},e.iconElement?e.iconElement:i.createElement(v.ZP,{icon:e.icon})),i.createElement("div",{className:"u-marg-right u-none@l- u-block@m- "+(s&&g!==e.name||l.screenSize===Z.Z.Tiny?"u-none-2":"")},i.createElement(y.xv,{type:y.yG.Small},null!=e&&e.perkNameRenderer?e.perkNameRenderer({hotel:r}):e.name)))}))))}var b=l(7700),R=l(4354),I=l(2458),P=l(9723),k=l(6716),x=l(8361),C=l(3633),D=l(4744),w=l(9478),A=l(7754),M=l(1715),T=l(4544);function W(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,r=new Array(t);l<t;l++)r[l]=e[l];return r}function G(e){var t=(0,i.useState)([]),l=(0,a.Z)(t,2),m=l[0],G=l[1],Y=(0,i.useState)([]),L=(0,a.Z)(Y,2),z=L[0],B=L[1],F=(0,i.useState)(null),_=(0,a.Z)(F,2),O=_[0],j=_[1],H=(0,i.useState)(!1),U=(0,a.Z)(H,2),q=U[0],$=U[1],J=(0,s.$)().t,Q=(0,i.useContext)(o.g7),K=(0,i.useContext)(o.hy),V=(0,i.useContext)(o.Qm),X=(0,n.WP)().hotel,ee=e.room,te=c()("room-details",(0,r.Z)({},"+is-open",O));(0,i.useEffect)((function(){var t;null!==(t=K.selectedBasketRow)&&void 0!==t&&t.getRoom()&&K.selectedBasketRow.getRoom().code===e.room.code&&j(!0),T.ZP.instance.addRoomImpression(ee)}),[K.selectedBasketRow]),(0,i.useEffect)((function(){var e=[],t=[];if(C.Z.isActive()){var l,r=function(e,t){var l="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!l){if(Array.isArray(e)||(l=function(e,t){if(e){if("string"==typeof e)return W(e,t);var l=Object.prototype.toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?W(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){l&&(e=l);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}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,n=!0,m=!1;return{s:function(){l=l.call(e)},n:function(){var e=l.next();return n=e.done,e},e:function(e){m=!0,o=e},f:function(){try{n||null==l.return||l.return()}finally{if(m)throw o}}}}(ee.getRates());try{for(r.s();!(l=r.n()).done;){var a,o,n,m=l.value;(null===(a=m.promoCode)||void 0===a?void 0:a.toLowerCase())===(null===(o=K.selectedBasketRow)||void 0===o||null===(n=o.getPromoCode())||void 0===n?void 0:n.toLowerCase())?t.unshift(m):e.push(m)}}catch(e){r.e(e)}finally{r.f()}t.length>0&&(j(!0),G(t))}else e=ee.getRates();B(e)}),[ee.getRates()]);var le=ee.getShortDescription(),re=Q.screenSize<=Z.Z.Large,ae=O||Q.screenSize<=Z.Z.Medium&&null===O,oe=Math.round(ee.getLowestPrice(!1,!0)),ne=Q.screenSize>Z.Z.Medium&&oe.toLocaleString().length<7?"large":"normal",me=function(e){return Math.round(M.z7(e,!0,V.currentCurrency,null==X?void 0:X.defaultCurrency))},ce=(0,P.Z)({hideDecimals:!0,children:oe}),ie=ce.value,se=ce.isLoading,ue=K.selectedBasketRow,de=(0,k.Z)().hasPricePreview,ge=ee.getRoomPerks({hotel:X,room:ee,perksLimitNumber:5}).roomPerks;return i.createElement("div",{className:"room-details-container ".concat(e.disableMarginBottom?"":"u-marg-bottom")},i.createElement("div",{className:te},i.createElement("div",{className:"room-details--image"},i.createElement(h.Z,{images:e.room.getImages(),imageSize:D.h.Medium})),i.createElement("div",{className:"room-details--content u-pad--heavy u-pad@l-"},i.createElement("div",{className:"u-marg-bottom"},Q.screenSize>Z.Z.Large&&i.createElement(i.Fragment,null,i.createElement("div",{className:"u-marg-bottom"},i.createElement(b.Z,{room:ee,limit:2}))),i.createElement("div",{className:"room-details--content-title u-marg-bottom--light"},i.createElement(p.Z,{bold:!0},ee.name)),i.createElement(S.R,{room:ee}),(null==le?void 0:le.replace(/<br(\/|)>/g,""))&&i.createElement("div",{className:"room-details--content-description u-marg-bottom--light"},i.createElement(y.ZP,{color:A.Il.DarkGrey,type:y.yG.Small},i.createElement("span",{dangerouslySetInnerHTML:{__html:(null==le?void 0:le.replace(/<br(\/|)>/g,""))||""}})))),i.createElement("div",{className:"row"},!(null!=X&&X.perksHideOnRoomRow)&&i.createElement("div",{className:"col-12 u-flex u-marg-bottom@m- flex-column align-items-start"},i.createElement("div",{className:"room-details--content-perks u-marg-bottom@m-"},re&&i.createElement("div",{className:"u-marg-bottom"},i.createElement(y.ZP,{type:y.yG.Small,bold:!0,color:A.Il.Accent},J(w.W.Misc.Perks.AndYouGetAll))),i.createElement(N,{perks:ge}))),(null==X?void 0:X.showDescriptionOnRoomDetails)&&i.createElement("div",{className:"col-12"},i.createElement(f.Z,{noMargins:!0}),i.createElement("div",{className:"u-marg-top u-text-overflow-ellipsis-3 u-marg-bottom"},i.createElement(y.ZP,{type:y.yG.Small,color:A.Il.Graphite},i.createElement("span",{dangerouslySetInnerHTML:{__html:e.room.getLongDescription()||""}})))),i.createElement("div",{className:"col-md-6 u-flex u-marg-bottom@m- flex-column align-items-start"},i.createElement(d.Z,{icon:v.Tu.ArrowRight2,isText:!0,primary:!0,size:"tiny",iconPosition:"right",onClick:function(){T.ZP.instance.sendInteraction("More Room Details",T.s_.LINK,T._J.ROOMS),$(!0)}},J(w.W.Step.Room.RoomInfo.MoreDetails))),i.createElement("div",{className:"col-md-6 u-flex justify-content-end flex-column align-items-start align-items-md-end"},i.createElement(y.ZP,{type:y.yG.Small,color:A.Il.Navy,inline:!0},J(w.W.Misc.From)),i.createElement("div",{className:"room-details--content-price flex-row align-items-end"},i.createElement(p.Z,{size:ne,bold:!0},i.createElement(g.Z,{hideDecimals:!0},oe)),i.createElement(y.ZP,{color:A.Il.DarkGrey,inline:!0},"/",J(w.W.Misc.Night))),i.createElement(y.ZP,{type:y.yG.Small,color:A.Il.Grey,inline:!0,className:"u-nowrap"},ee.getLowestPriceType()===x.I.IncludingFeesAndTaxes?J(w.W.Step.Room.RoomInfo.IncludesTaxes):J(w.W.Step.Room.ExcludingTaxes)))),i.createElement("div",{className:"u-flex-direction-column u-flex u-flex-align-flex-end u-flex-align-flex-start@m- u-w-100@m-"},!se&&de?i.createElement("div",{className:"u-marg-top--light"},i.createElement(E.C,{price:ie,checkin:((null==ue?void 0:ue.getStartDate())||K.endDate).format("YYYY-MM-DD"),currency:V.currentCurrency})):null,i.createElement(d.Z,{className:"u-marg-top--light",name:"ViewRatesNowButton",primary:!0,primaryActive:!!ae,filled:!0,stopIconAnimation:!0,icon:ae?v.Tu.ArrowUp2:v.Tu.ArrowDown2,iconPosition:"right",onClick:function(){ae||T.ZP.instance.sendRoomClick(ee,K.startDate,K.endDate),j(!ae)},wide:Q.screenSize<=Z.Z.Large,textColor:(0,A.pJ)(ae?null==X?void 0:X.colors.accent3:null==X?void 0:X.colors.accent)},J(ae?w.W.Step.Room.RoomInfo.CloseRates:w.W.Step.Room.RoomInfo.ViewRates))))),i.createElement(u.Z,{open:!!ae},i.createElement(R.Z,{roomCode:ee.code,rates:z,featuredRates:m})),i.createElement(I.Z,{open:q,room:e.room,rates:z,featuredRates:m,onClose:function(){$(!1)}}),ee.getRates().map((function(e){return i.createElement("script",{key:ee.code+"-"+e.code,type:"application/ld+json"},JSON.stringify({"@context":"http://schema.org/","@type":"Offer",itemOffered:{"@type":"HotelRoom",name:ee.name},name:e.name,identifier:e.code,priceSpecification:{"@type":"UnitPriceSpecification",price:me(e.getAveragePrice(!0)),basePrice:me(e.getTotalPrice(!0)),totalPrice:me(e.getAveragePrice()),priceCurrency:V.currentCurrency,unitText:"Nightly"}}))})))}},8013:function(e,t,l){l.d(t,{R:function(){return s}});var r=l(9331),a=l(7294),o=l(6793),n=l(8886),m=l(584),c=l(9478),i=l(7754);function s(e){var t,l,s,u,d,g,p,v,f,E,y=(0,r.WP)().hotel,h=(0,o.$)().t,S=null==y||null===(t=y.rooms)||void 0===t?void 0:t[null===(l=e.room)||void 0===l?void 0:l.code],Z=null==y||null===(s=y.rooms)||void 0===s||null===(u=s[null===(d=e.room)||void 0===d?void 0:d.code])||void 0===u?void 0:u.roomSize,N=null==y||null===(g=y.overwrites)||void 0===g||null===(p=g[null===(v=e.room)||void 0===v?void 0:v.code])||void 0===p?void 0:p.RoomDimensions,b=null!=N?N:Z?"".concat(Z," m²"):void 0,R=null!==(f=e.textColor)&&void 0!==f?f:i.Il.DarkGrey,I="".concat((null==S?void 0:S.bedQuantity)>0?null==S?void 0:S.bedQuantity:""," ").concat(null==S?void 0:S.bedType);return null!=S&&null!==(E=S.bedTypeOverride)&&void 0!==E&&E.trim()&&(I=S.bedTypeOverride),a.createElement("ul",{className:"u-inline-flex u-flex-gap u-flex-wrap u-marg-bottom"},a.createElement("li",{className:"u-flex align-items-center"},a.createElement(n.ZP,{icon:n.Tu.People,size:"24px",color:i.Il.Navy}),a.createElement("div",{className:"u-pad-left--light"},a.createElement(m.xv,{type:m.yG.Small,inline:!0,color:R},h(c.W.Step.Room.Sleeps,{maxOccupancy:null==S?void 0:S.maxOccupancy})))),!1!==(null==S?void 0:S.showBedType)&&a.createElement("li",{className:"u-flex align-items-center"},a.createElement(n.ZP,{icon:n.Tu.Bed,size:"24px",color:i.Il.Navy}),a.createElement("div",{className:"u-pad-left--light"},a.createElement(m.xv,{type:m.yG.Small,inline:!0,color:R},I))),!!b&&a.createElement("li",{className:"u-flex align-items-center"},a.createElement(n.ZP,{icon:n.Tu.RoomSize,size:"24px",color:i.Il.Navy}),a.createElement("div",{className:"u-pad-left--light"},a.createElement(m.xv,{type:m.yG.Small,inline:!0,color:R},b))))}}}]);
|
|
1
|
+
"use strict";(("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[166],{2258:function(e,t,l){l.d(t,{Z:function(){return h}});var o=l(885),r=l(7791),a=l(7294),n=l(6793),m=l(9478),c=l(1126),i=l(8442),s=l(858),u=l(3010),d=l(8886),g=l(4485),p=l(584),v=l(3349),f=l(4744),E=l(7754),y=l(292);function h(e){var t=(0,n.$)().t,l=(0,a.useContext)(r.g7),h=(0,a.useContext)(r.hy),S=(0,a.useState)(!1),Z=(0,o.Z)(S,2),b=Z[0],N=Z[1],R=(0,a.useState)(!0),I=(0,o.Z)(R,2),P=I[0],k=I[1],x=(0,a.useState)(!0),C=(0,o.Z)(x,2),D=C[0],w=C[1],A=(0,a.useState)(""),M=(0,o.Z)(A,2),T=M[0],W=M[1],G=(0,a.useState)(""),Y=(0,o.Z)(G,2),L=Y[0],z=Y[1],B=(0,a.useState)(""),F=(0,o.Z)(B,2),_=F[0],O=F[1],j=(0,a.useState)(""),H=(0,o.Z)(j,2),U=H[0],q=H[1],$=(0,a.useState)([]),J=(0,o.Z)($,2),Q=J[0],K=J[1],V=(0,v.o)().memberNumber;return(0,a.useEffect)((function(){var t=h.selectedBasketRow;t&&i.Z.Availability.getCheapestPricePerDay(t.getStartDate(),t.getEndDate(),t.getAdults(),t.getChildren(),t.getInfants(),t.getPromoCode(),e.hotelId,V,!0).catch().then((function(l){if(l){for(var o=!0,r=t.getStartDate();r.isBefore(t.getEndDate(),"day");r=r.add(1,"day"))if(!l[r.format(c.yJ)]){o=!1;break}if(N(o),k(!0),o){w(!0);var a=i.Z.Availability.getCrossSellHotelInfo(e.hotelId);z(a.name),W(a.image),O(a.description);var n=["arrive="+t.getStartDate().format("YYYY-M-D"),"depart="+t.getEndDate().format("YYYY-M-D")];t.getAdults()>1&&n.push("adults="+t.getAdults()),t.getChildren()>0&&n.push("children="+t.getChildren()),t.getInfants()>0&&n.push("infants="+t.getInfants()),t.getPromoCode()&&n.push("promocode="+t.getPromoCode()),q(a.checkoutUrl+"#/step/room/?"+n.join("&")),i.Z.Availability.fetchAvailabilityData(t,e.hotelId,V).catch((function(e){return[]})).then((function(e){null!=e&&e.length?(K(e),w(!1)):(k(!1),w(!1))}))}}}))}),[h.selectedBasketRow]),b?a.createElement("div",{className:"u-marg-top--heavy u-marg-bottom"},a.createElement("div",{className:"cross-sell-module"},a.createElement("div",{className:"cross-sell-module--image",style:{backgroundImage:"url('".concat(f.Z.resizeImage(T,f.h.Original),"')")}}),a.createElement("div",{className:"cross-sell-module--content u-pad--heavy u-pad@m-"},a.createElement("div",{className:"u-marg-bottom--heavy"},a.createElement("div",{className:"cross-sell-module--content-title u-marg-bottom--light"},a.createElement(u.Z,{bold:!0,size:P?"large":"normal"},t(D?m.W.Step.Room.CrossSellBlock.AvailabilityNearBy1:P?m.W.Step.Room.CrossSellBlock.AvailabilityNearBy2:m.W.Step.Room.CrossSellBlock.DateUnavailable))),P&&a.createElement("div",{className:"cross-sell-module--content-description u-marg-bottom--light"},a.createElement(p.ZP,{color:E.Il.DarkGrey,type:p.yG.Body},a.createElement("strong",{style:{color:E.Il.Accent}},L),a.createElement("div",{dangerouslySetInnerHTML:{__html:_}})))),D?a.createElement(g.Z,null):a.createElement(a.Fragment,null,Q.slice(0,4).map((function(e,l){var o=U+"&room="+e.code,r="u-flex align-items-end";return l<Q.length-1&&(r+=" u-pad-bottom u-border-bottom u-marg-bottom"),a.createElement("a",{key:e.code,className:r,href:o,target:"_blank",rel:"noreferrer"},a.createElement("div",{className:"u-flex flex-column align-items-start justify-content-start"},a.createElement(p.ZP,{type:p.yG.Body,color:E.Il.Accent,bold:!0},e.name),a.createElement(p.ZP,{type:p.yG.Small,color:E.Il.DarkGrey},t(m.W.Step.Room.Sleeps,{maxOccupancy:e.occupancy}))),a.createElement("div",{className:"u-flex flex-column align-items-end align-items-md-end"},a.createElement(p.ZP,{type:p.yG.Small,color:E.Il.DarkGrey,inline:!0},t(m.W.Misc.From)),a.createElement(p.ZP,{type:p.yG.Body,color:E.Il.Accent,bold:!0},a.createElement(s.Z,null,e.getLowestPrice(!0)))))}))),P&&a.createElement("div",{className:"u-marg-top--light u-flex justify-content-start u-w-100@m- u-marg-top--heavy"},a.createElement("a",{className:"link-button --primary --filled --success --icon-right --normal"+(l.screenSize<=y.Z.Medium?" --wide":""),tabIndex:0,type:"button",href:U,target:"_blank",rel:"noreferrer"},a.createElement("span",null,"See all ",Q.length," rooms",a.createElement(d.ZP,{icon:d.Tu.ArrowRight,size:"1em"}))))))):null}},2458:function(e,t,l){l.d(t,{Z:function(){return y}});var o=l(2982),r=l(9331),a=l(7294),n=l(6793),m=l(9478),c=l(3010),i=l(8886),s=l(9874),u=l(5128),d=l(584),g=l(291),p=l(8013),v=l(4354),f=l(7754),E=l(8631);function y(e){var t,l=(0,n.$)().t,y=(0,r.WP)().hotel,h=y.rooms,S=e.room.getRoomPerks({hotel:y,room:e.room}),Z=S.roomPerks,b=S.prePerkDisclaimer,N=null==h?void 0:h[e.room.code],R=null!=N&&N.amenities?(0,o.Z)(N.amenities):[];null!=N&&null!==(t=N.features)&&void 0!==t&&t.length&&N.features.forEach((function(e){R.push(e)}));var I=(null==b?void 0:b.replace(/<br(\/|)>/g,""))||"";return a.createElement(u.Z,{title:e.room.name+" "+l(m.W.Step.Room.RoomInfo.Information),open:e.open,size:u.g.Small,onClose:e.onClose},a.createElement("div",null,a.createElement("div",{style:{height:"350px"}},a.createElement(g.Z,{images:e.room.getImages()})),a.createElement("div",{className:"u-marg-heavy u-marg@m-"},a.createElement("div",{className:"u-marg-bottom--light"},a.createElement(c.Z,{bold:!0,size:"large"},e.room.name)),a.createElement(p.R,{room:e.room}),a.createElement("div",{className:"u-marg-bottom--heavy"},a.createElement(d.ZP,{color:f.Il.DarkGrey,type:d.yG.Small},a.createElement("span",{dangerouslySetInnerHTML:{__html:e.room.getShortDescription(!1)||""}}))),!(null!=y&&y.perksHideOnRoomDetail)&&Z&&a.createElement("div",{className:"u-marg-bottom--heavy"},a.createElement("div",{className:"row"},a.createElement(E.Z,{hotel:y,room:e.room,roomPerks:Z})),(null==y?void 0:y.perksShowDisclaimer)&&a.createElement("div",{className:"row u-marg-top--lighter"},a.createElement("small",{className:"col-12"},l(m.W.Misc.PerksDisclaimer)))),!(null==R||!R.length)&&a.createElement(a.Fragment,null,a.createElement("div",{className:"u-marg-bottom"},a.createElement(d.ZP,{color:f.Il.Accent,type:d.yG.Small},a.createElement("strong",null,l(m.W.Step.Room.RoomInfo.RoomAmenities)))),a.createElement("div",{className:"row"},R.map((function(e){return a.createElement("div",{key:e.description,className:"col-sm-6 u-marg-bottom--light u-flex justify-content-start"},a.createElement(i.ZP,{icon:i.Tu.Check,color:f.Il.White,backgroundColor:f.Il.Navy,borderRadius:"round",noPadding:!0,size:"16px"}),a.createElement("div",{className:"u-marg-left--light u-flex"},a.createElement(d.ZP,{type:d.yG.Small,inline:!0},e.description)))})))),a.createElement(s.Z,null),a.createElement("div",{className:"u-marg-bottom--heavy"},a.createElement(d.ZP,{type:d.yG.Small,color:f.Il.Graphite},a.createElement("span",{dangerouslySetInnerHTML:{__html:e.room.getLongDescription()||""}}))),!!I&&a.createElement("div",{className:"u-marg-bottom--heavy"},a.createElement(d.ZP,{type:d.yG.Small},a.createElement("strong",null,l(m.W.Step.Room.RoomInfo.Disclaimer))),a.createElement(d.ZP,{type:d.yG.Small},a.createElement("span",{dangerouslySetInnerHTML:{__html:I}})))),a.createElement(v.Z,{featuredRates:e.featuredRates,rates:e.rates,roomCode:e.room.code})))}},9368:function(e,t,l){l.d(t,{F:function(){return P}});var o=l(7462),r=l(5861),a=l(885),n=l(4687),m=l.n(n),c=l(7791),i=l(7484),s=l.n(i),u=l(7294),d=l(7536),g=l(6793),p=l(9478),v=l(9740),f=l(8442),E=l(7933),y=l(4854),h=l(3010),S=l(8886),Z=l(584),b=l(1432),N=l(514),R=l(7754),I=l(6431),P=function(){var e=(0,d.cI)(),t=e.register,l=e.handleSubmit,n=e.formState,i=(0,N.W)().hotel,P=(0,u.useContext)(c.hy),k=(0,g.$)().t,x=(0,u.useState)({}),C=(0,a.Z)(x,2),D=C[0],w=C[1],A=(0,u.useState)(!1),M=(0,a.Z)(A,2),T=M[0],W=M[1],G=function(){var e=(0,r.Z)(m().mark((function e(t){var l,o;return m().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return w({}),W(!0),e.prev=2,l=P.selectedBasketRow,o="",[{name:"Adults",value:l.getAdults()},{name:"Children",value:l.getChildren()},{name:"Infants",value:l.getInfants()},{name:"Promo Code",value:l.getPromoCode()},{name:"Dates range",value:l.getStayDateRange("ddd D MMM YYYY"," till ")},{name:"Date Sent",value:s()().format("dd D MMM YYYY")}].forEach((function(e){var t=e.name,l=e.value;l&&(o+="".concat(t,": ").concat(l,"\n"))})),e.next=8,f.Z.Error.sendRoomFallbackForm(null==i?void 0:i.hotelID,{name:t.name,telephone:t.telephone,email:t.email,searchQuery:o});case 8:w({success:!0}),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(2),w({success:!1,message:k(p.W.Step.Room.ErrorForm.APIError)});case 14:W(!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(S.ZP,{icon:S.Tu.Error,color:R.Il.Alert,size:"24px"})),u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(h.Z,{bold:!0,color:R.Il.Alert},u.createElement("span",{style:{color:"inherit"},dangerouslySetInnerHTML:{__html:k(p.W.Step.Room.ErrorForm.Title)}}))),u.createElement(Z.ZP,{type:Z.yG.Small},u.createElement("span",{dangerouslySetInnerHTML:{__html:k(p.W.Step.Room.ErrorForm.Description)}}))),u.createElement("div",{className:"col-lg-6"},u.createElement("form",null,u.createElement(v.Z,{open:!!n.errors},Object.values(n.errors).map((function(e,t){return u.createElement(E.ZP,{key:t,type:E.NK.Danger},u.createElement(Z.ZP,{type:Z.yG.Small},null==e?void 0:e.message))}))),u.createElement("div",{className:"u-marg-bottom--light u-marg-top"},u.createElement(b.Z,(0,o.Z)({placeholder:k(p.W.Step.Room.ErrorForm.Inputs.Name)},t("name",{required:{value:!0,message:"".concat(k(p.W.Step.Room.ErrorForm.Inputs.Name)," is a required field")}})))),u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(b.Z,(0,o.Z)({placeholder:k(p.W.Step.Room.ErrorForm.Inputs.Email)},t("email",{required:{value:!0,message:"".concat(k(p.W.Step.Room.ErrorForm.Inputs.Email)," is a required field")},pattern:{value:I.CU,message:"Email must be valid"}})))),u.createElement("div",{className:"u-marg-bottom--light"},u.createElement(b.Z,(0,o.Z)({placeholder:k(p.W.Step.Room.ErrorForm.Inputs.Telephone)},t("telephone",{required:{value:!0,message:"".concat(k(p.W.Step.Room.ErrorForm.Inputs.Telephone)," is a required field")}})))),u.createElement(y.Z,{filled:!0,primary:!0,onClick:l(G),isLoading:T,disabled:T||D.success},k(p.W.Step.Room.ErrorForm.ContactUsButton)),u.createElement(v.Z,{open:!!D.success},u.createElement("div",{className:"u-pad-top"},u.createElement(Z.ZP,{color:R.Il.Success},k(p.W.Step.Room.ErrorForm.ConfirmationMessage)))),u.createElement(v.Z,{open:!1===D.success},u.createElement("div",{className:"u-pad-top"},u.createElement(Z.ZP,{color:R.Il.Alert},D.message)))))))}},2870:function(e,t,l){l.d(t,{y:function(){return a}});var o=l(7791),r=l(7294),a=function(){var e,t,l=(0,r.useContext)(o.hy).selectedBasketRow;return r.createElement("script",{type:"application/ld+json"},JSON.stringify({"@context":"https://structured-data.triptease.io","@type":"LodgingSearch",checkinTime:null==l||null===(e=l.getStartDate())||void 0===e?void 0:e.format("YYYY-M-D"),checkoutTime:null==l||null===(t=l.getEndDate())||void 0===t?void 0:t.format("YYYY-M-D"),numAdults:null==l?void 0:l.getAdults(),numChildren:null==l?void 0:l.getChildren(),numInfants:null==l?void 0:l.getInfants(),numRooms:"1",offerCode:null==l?void 0:l.getPromoCode()}))}},4101:function(e,t,l){l.d(t,{Z:function(){return G}});var o=l(4942),r=l(885),a=l(7791),n=l(9331),m=l(4184),c=l.n(m),i=l(7294),s=l(6793),u=l(9740),d=l(4854),g=l(858),p=l(3010),v=l(8886),f=l(9874),E=l(6573),y=l(584),h=l(291),S=l(8013),Z=l(292);function b(e){var t,l=(0,i.useContext)(a.g7),o=(0,n.WP)().hotel,m=e.perks,s=e.room,u=l.screenSize<=Z.Z.Large,d=(0,i.useState)(null===(t=m[0])||void 0===t?void 0:t.name),g=(0,r.Z)(d,2),p=g[0],f=g[1],E=c()("room-perk-icon",{"--has-bg":u});return i.createElement(i.Fragment,null,!(null==m||!m.length)&&i.createElement("ul",null,m.map((function(e,t){if(!(u&&t>=4))return i.createElement("li",{key:t,onClick:function(){f(e.name)}},i.createElement("div",{className:E},e.iconElement?e.iconElement:i.createElement(v.ZP,{icon:e.icon})),i.createElement("div",{className:"u-marg-right u-none@l- u-block@m- "+(u&&p!==e.name||l.screenSize===Z.Z.Tiny?"u-none-2":"")},i.createElement(y.xv,{type:y.yG.Small},null!=e&&e.perkNameRenderer?e.perkNameRenderer({hotel:o,room:s}):e.name)))}))))}var N=l(7700),R=l(4354),I=l(2458),P=l(9723),k=l(6716),x=l(8361),C=l(3633),D=l(4744),w=l(9478),A=l(7754),M=l(1715),T=l(4544);function W(e,t){(null==t||t>e.length)&&(t=e.length);for(var l=0,o=new Array(t);l<t;l++)o[l]=e[l];return o}function G(e){var t=(0,i.useState)([]),l=(0,r.Z)(t,2),m=l[0],G=l[1],Y=(0,i.useState)([]),L=(0,r.Z)(Y,2),z=L[0],B=L[1],F=(0,i.useState)(null),_=(0,r.Z)(F,2),O=_[0],j=_[1],H=(0,i.useState)(!1),U=(0,r.Z)(H,2),q=U[0],$=U[1],J=(0,s.$)().t,Q=(0,i.useContext)(a.g7),K=(0,i.useContext)(a.hy),V=(0,i.useContext)(a.Qm),X=(0,n.WP)().hotel,ee=e.room,te=c()("room-details",(0,o.Z)({},"+is-open",O));(0,i.useEffect)((function(){var t;null!==(t=K.selectedBasketRow)&&void 0!==t&&t.getRoom()&&K.selectedBasketRow.getRoom().code===e.room.code&&j(!0),T.ZP.instance.addRoomImpression(ee)}),[K.selectedBasketRow]),(0,i.useEffect)((function(){var e=[],t=[];if(C.Z.isActive()){var l,o=function(e,t){var l="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!l){if(Array.isArray(e)||(l=function(e,t){if(e){if("string"==typeof e)return W(e,t);var l=Object.prototype.toString.call(e).slice(8,-1);return"Object"===l&&e.constructor&&(l=e.constructor.name),"Map"===l||"Set"===l?Array.from(e):"Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l)?W(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){l&&(e=l);var o=0,r=function(){};return{s:r,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:r}}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 a,n=!0,m=!1;return{s:function(){l=l.call(e)},n:function(){var e=l.next();return n=e.done,e},e:function(e){m=!0,a=e},f:function(){try{n||null==l.return||l.return()}finally{if(m)throw a}}}}(ee.getRates());try{for(o.s();!(l=o.n()).done;){var r,a,n,m=l.value;(null===(r=m.promoCode)||void 0===r?void 0:r.toLowerCase())===(null===(a=K.selectedBasketRow)||void 0===a||null===(n=a.getPromoCode())||void 0===n?void 0:n.toLowerCase())?t.unshift(m):e.push(m)}}catch(e){o.e(e)}finally{o.f()}t.length>0&&(j(!0),G(t))}else e=ee.getRates();B(e)}),[ee.getRates()]);var le=ee.getShortDescription(),oe=Q.screenSize<=Z.Z.Large,re=O||Q.screenSize<=Z.Z.Medium&&null===O,ae=Math.round(ee.getLowestPrice(!1,!0)),ne=Q.screenSize>Z.Z.Medium&&ae.toLocaleString().length<7?"large":"normal",me=function(e){return Math.round(M.z7(e,!0,V.currentCurrency,null==X?void 0:X.defaultCurrency))},ce=(0,P.Z)({hideDecimals:!0,children:ae}),ie=ce.value,se=ce.isLoading,ue=K.selectedBasketRow,de=(0,k.Z)().hasPricePreview,ge=ee.getRoomPerks({hotel:X,room:ee,perksLimitNumber:5}).roomPerks;return i.createElement("div",{className:"room-details-container ".concat(e.disableMarginBottom?"":"u-marg-bottom")},i.createElement("div",{className:te},i.createElement("div",{className:"room-details--image"},i.createElement(h.Z,{images:e.room.getImages(),imageSize:D.h.Medium})),i.createElement("div",{className:"room-details--content u-pad--heavy u-pad@l-"},i.createElement("div",{className:"u-marg-bottom"},Q.screenSize>Z.Z.Large&&i.createElement(i.Fragment,null,i.createElement("div",{className:"u-marg-bottom"},i.createElement(N.Z,{room:ee,limit:2}))),i.createElement("div",{className:"room-details--content-title u-marg-bottom--light"},i.createElement(p.Z,{bold:!0},ee.name)),i.createElement(S.R,{room:ee}),(null==le?void 0:le.replace(/<br(\/|)>/g,""))&&i.createElement("div",{className:"room-details--content-description u-marg-bottom--light"},i.createElement(y.ZP,{color:A.Il.DarkGrey,type:y.yG.Small},i.createElement("span",{dangerouslySetInnerHTML:{__html:(null==le?void 0:le.replace(/<br(\/|)>/g,""))||""}})))),i.createElement("div",{className:"row"},!(null!=X&&X.perksHideOnRoomRow)&&i.createElement("div",{className:"col-12 u-flex u-marg-bottom@m- flex-column align-items-start"},i.createElement("div",{className:"room-details--content-perks u-marg-bottom@m-"},oe&&i.createElement("div",{className:"u-marg-bottom"},i.createElement(y.ZP,{type:y.yG.Small,bold:!0,color:A.Il.Accent},J(w.W.Misc.Perks.AndYouGetAll))),i.createElement(b,{perks:ge,room:ee}))),(null==X?void 0:X.showDescriptionOnRoomDetails)&&i.createElement("div",{className:"col-12"},i.createElement(f.Z,{noMargins:!0}),i.createElement("div",{className:"u-marg-top u-text-overflow-ellipsis-3 u-marg-bottom"},i.createElement(y.ZP,{type:y.yG.Small,color:A.Il.Graphite},i.createElement("span",{dangerouslySetInnerHTML:{__html:e.room.getLongDescription()||""}})))),i.createElement("div",{className:"col-md-6 u-flex u-marg-bottom@m- flex-column align-items-start"},i.createElement(d.Z,{icon:v.Tu.ArrowRight2,isText:!0,primary:!0,size:"tiny",iconPosition:"right",onClick:function(){T.ZP.instance.sendInteraction("More Room Details",T.s_.LINK,T._J.ROOMS),$(!0)}},J(w.W.Step.Room.RoomInfo.MoreDetails))),i.createElement("div",{className:"col-md-6 u-flex justify-content-end flex-column align-items-start align-items-md-end"},i.createElement(y.ZP,{type:y.yG.Small,color:A.Il.Navy,inline:!0},J(w.W.Misc.From)),i.createElement("div",{className:"room-details--content-price flex-row align-items-end"},i.createElement(p.Z,{size:ne,bold:!0},i.createElement(g.Z,{hideDecimals:!0},ae)),i.createElement(y.ZP,{color:A.Il.DarkGrey,inline:!0},"/",J(w.W.Misc.Night))),i.createElement(y.ZP,{type:y.yG.Small,color:A.Il.Grey,inline:!0,className:"u-nowrap"},ee.getLowestPriceType()===x.I.IncludingFeesAndTaxes?J(w.W.Step.Room.RoomInfo.IncludesTaxes):J(w.W.Step.Room.ExcludingTaxes)))),i.createElement("div",{className:"u-flex-direction-column u-flex u-flex-align-flex-end u-flex-align-flex-start@m- u-w-100@m-"},!se&&de?i.createElement("div",{className:"u-marg-top--light"},i.createElement(E.C,{price:ie,checkin:((null==ue?void 0:ue.getStartDate())||K.endDate).format("YYYY-MM-DD"),currency:V.currentCurrency})):null,i.createElement(d.Z,{className:"u-marg-top--light",name:"ViewRatesNowButton",primary:!0,primaryActive:!!re,filled:!0,stopIconAnimation:!0,icon:re?v.Tu.ArrowUp2:v.Tu.ArrowDown2,iconPosition:"right",onClick:function(){re||T.ZP.instance.sendRoomClick(ee,K.startDate,K.endDate),j(!re)},wide:Q.screenSize<=Z.Z.Large,textColor:(0,A.pJ)(re?null==X?void 0:X.colors.accent3:null==X?void 0:X.colors.accent)},J(re?w.W.Step.Room.RoomInfo.CloseRates:w.W.Step.Room.RoomInfo.ViewRates))))),i.createElement(u.Z,{open:!!re},i.createElement(R.Z,{roomCode:ee.code,rates:z,featuredRates:m})),i.createElement(I.Z,{open:q,room:e.room,rates:z,featuredRates:m,onClose:function(){$(!1)}}),ee.getRates().map((function(e){return i.createElement("script",{key:ee.code+"-"+e.code,type:"application/ld+json"},JSON.stringify({"@context":"http://schema.org/","@type":"Offer",itemOffered:{"@type":"HotelRoom",name:ee.name},name:e.name,identifier:e.code,priceSpecification:{"@type":"UnitPriceSpecification",price:me(e.getAveragePrice(!0)),basePrice:me(e.getTotalPrice(!0)),totalPrice:me(e.getAveragePrice()),priceCurrency:V.currentCurrency,unitText:"Nightly"}}))})))}},8013:function(e,t,l){l.d(t,{R:function(){return s}});var o=l(9331),r=l(7294),a=l(6793),n=l(8886),m=l(584),c=l(9478),i=l(7754);function s(e){var t,l,s,u,d,g,p,v,f,E,y=(0,o.WP)().hotel,h=(0,a.$)().t,S=null==y||null===(t=y.rooms)||void 0===t?void 0:t[null===(l=e.room)||void 0===l?void 0:l.code],Z=null==y||null===(s=y.rooms)||void 0===s||null===(u=s[null===(d=e.room)||void 0===d?void 0:d.code])||void 0===u?void 0:u.roomSize,b=null==y||null===(g=y.overwrites)||void 0===g||null===(p=g[null===(v=e.room)||void 0===v?void 0:v.code])||void 0===p?void 0:p.RoomDimensions,N=null!=b?b:Z?"".concat(Z," m²"):void 0,R=null!==(f=e.textColor)&&void 0!==f?f:i.Il.DarkGrey,I="".concat((null==S?void 0:S.bedQuantity)>0?null==S?void 0:S.bedQuantity:""," ").concat(null==S?void 0:S.bedType);return null!=S&&null!==(E=S.bedTypeOverride)&&void 0!==E&&E.trim()&&(I=S.bedTypeOverride),r.createElement("ul",{className:"u-inline-flex u-flex-gap u-flex-wrap u-marg-bottom"},r.createElement("li",{className:"u-flex align-items-center"},r.createElement(n.ZP,{icon:n.Tu.People,size:"24px",color:i.Il.Navy}),r.createElement("div",{className:"u-pad-left--light"},r.createElement(m.xv,{type:m.yG.Small,inline:!0,color:R},h(c.W.Step.Room.Sleeps,{maxOccupancy:null==S?void 0:S.maxOccupancy})))),!1!==(null==S?void 0:S.showBedType)&&r.createElement("li",{className:"u-flex align-items-center"},r.createElement(n.ZP,{icon:n.Tu.Bed,size:"24px",color:i.Il.Navy}),r.createElement("div",{className:"u-pad-left--light"},r.createElement(m.xv,{type:m.yG.Small,inline:!0,color:R},I))),!!N&&r.createElement("li",{className:"u-flex align-items-center"},r.createElement(n.ZP,{icon:n.Tu.RoomSize,size:"24px",color:i.Il.Navy}),r.createElement("div",{className:"u-pad-left--light"},r.createElement(m.xv,{type:m.yG.Small,inline:!0,color:R},N))))}}}]);
|