@roomstay/frontend 2.6.99 → 2.6.100-0
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/288.bundle.js +1 -1
- package/dist/main.bundle.js +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizard.d.ts +1 -0
- package/dist/src/components/generic/BookingWizard/BookingWizard.js +8 -1
- package/dist/src/components/generic/BookingWizard/BookingWizard.js.map +1 -1
- package/dist/src/components/generic/PromoCodeInput.js +5 -0
- package/dist/src/components/generic/PromoCodeInput.js.map +1 -1
- package/dist/src/components/steps/date/PeoplePicker.js +5 -3
- package/dist/src/components/steps/date/PeoplePicker.js.map +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js +3 -1
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js.map +1 -1
- package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
- package/dist/src/contexts/BasketContext/BasketContextWrapper.js +17 -13
- package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.d.ts +1 -0
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js.map +1 -1
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js +1 -0
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js.map +1 -1
- package/dist/src/models/BasketRow.d.ts +2 -0
- package/dist/src/models/BasketRow.js +21 -0
- package/dist/src/models/BasketRow.js.map +1 -1
- package/dist/test.bundle.js +1 -1
- package/package.json +1 -1
package/dist/288.bundle.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[288],{12288:function(e,t,n){n.r(t),n.d(t,{default:function(){return ge}});var l=n(6058),a=n(67294),o=n(26793),r=n(89250),i=n(79655),c=n(79478),s=n(13821),m=n(13010),u=n(46409),d=n(19874),v=n(42982),g=n(89331),E=n(7832),f=n(3473),p=n(72258),h=n(39136),C=n(60281),y=n(84544),w=n(90292),R=n(67023),Z=n(70885),N=n(64854),x=n(20858),S=n(78886),P=n(33409),b=n(2927),I=n(30584),k=n(73633),A=n(44744),M=n(97754),D=n(40291),B=n(32458),O=n(98013);function W(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=new Array(t);n<t;n++)l[n]=e[n];return l}var T=function(e){var t=e.room,n=(0,a.useState)([]),r=(0,Z.Z)(n,2),i=r[0],s=r[1],u=(0,a.useState)([]),d=(0,Z.Z)(u,2),v=d[0],E=d[1],f=(0,a.useState)(!1),p=(0,Z.Z)(f,2),h=p[0],C=p[1],R=a.useContext(l.g7),T=(0,a.useContext)(l.hy),_=(0,g.WP)().hotel,F=(0,o.$)().t;(0,a.useEffect)((function(){var e=[],n=[];if(k.Z.isActive()){var l,a=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return W(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?W(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var l=0,a=function(){};return{s:a,n:function(){return l>=e.length?{done:!0}:{done:!1,value:e[l++]}},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,r=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return r=e.done,e},e:function(e){i=!0,o=e},f:function(){try{r||null==n.return||n.return()}finally{if(i)throw o}}}}(t.getRates());try{for(a.s();!(l=a.n()).done;){var o,r,i,c=l.value;(null===(o=c.promoCode)||void 0===o?void 0:o.toLowerCase())===(null===(r=T.selectedBasketRow)||void 0===r||null===(i=r.getPromoCode())||void 0===i?void 0:i.toLowerCase())?n.unshift(c):e.push(c)}}catch(e){a.e(e)}finally{a.f()}n.length>0&&s(n)}else e=t.getRates();E(e)}),[t.getRates()]);var U=t.getShortDescription(),G=R.screenSize<=w.Z.Large,L=Math.round(t.getLowestPrice(!1,!0)),j=R.screenSize>w.Z.Medium&&L.toLocaleString().length<7?"large":"normal";return a.createElement("div",{className:"room-details-container --theme-retargeting u-marg-top u-marg-bottom"},a.createElement("div",{className:"room-details"},a.createElement("div",{className:"room-details--image"},a.createElement(D.Z,{images:t.getImages(),imageSize:A.h.Medium})),a.createElement("div",{className:"room-details--content u-pad--heavy u-pad@l-"},a.createElement("div",{className:"u-marg-bottom"},a.createElement("div",{className:"u-marg-bottom"},a.createElement(P.ZP,{type:P.Rm.Primary,icon:S.Tu.Add},F(c.W.Step.Room.YouBookedThisRoomRecently))),a.createElement("div",{className:"room-details--content-title u-marg-bottom--light"},a.createElement(m.Z,{bold:!0},t.name)),a.createElement(O.R,{room:t,textColor:M.Il.Navy}),a.createElement("div",{className:"room-details--content-description u-marg-bottom--light"},a.createElement(I.ZP,{color:M.Il.Navy,type:I.yG.Small},a.createElement("span",{dangerouslySetInnerHTML:{__html:(null==U?void 0:U.replace(/<br(\/|)>/g,""))||""}})))),a.createElement("div",{className:"row"},a.createElement("div",{className:"col-md-6 u-flex u-marg-bottom@m- flex-column align-items-start"},a.createElement("div",{className:"room-details--content-perks u-marg-bottom@m-"},G&&a.createElement("div",{className:"u-marg-bottom"},a.createElement(I.ZP,{type:I.yG.Small,bold:!0,color:M.Il.Accent},(null==_?void 0:_.perkTitle)||F(c.W.Misc.Perks.AndYouGetAll))))),a.createElement("div",{className:"col-md-6 u-flex justify-content-end flex-column align-items-start align-items-md-end"},a.createElement(I.ZP,{type:I.yG.Small,color:M.Il.Navy,inline:!0},F(c.W.Misc.From)),a.createElement("div",{className:"room-details--content-price flex-row align-items-end"},a.createElement(m.Z,{size:j,bold:!0},a.createElement(x.Z,{hideDecimals:!0},L)),a.createElement(I.ZP,{color:M.Il.Navy,inline:!0},"/",F(c.W.Misc.Night))),a.createElement("div",{className:"u-marg-bottom"},a.createElement(I.ZP,{type:I.yG.Small,color:M.Il.Navy,className:"u-nowrap"},a.createElement(b._,{room:t}))),a.createElement("div",{className:"u-marg-top--light u-flex justify-content-end u-w-100@m-"},a.createElement(N.Z,{name:"ViewRatesNowButton",primary:!0,filled:!0,stopIconAnimation:!0,iconPosition:"right",wide:R.screenSize<=w.Z.Large,onClick:function(){y.ZP.instance.sendInteraction("More Room Details",y.s_.LINK,y._J.ROOMS),C(!0)}},F(c.W.Step.Room.RoomInfo.ViewRates))))))),a.createElement(B.Z,{open:h,room:e.room,rates:v,featuredRates:i,onClose:function(){C(!1)}}))},_=n(94184),F=n.n(_),U=n(79740),G=n(42530),L=n(89089),j=n(65986),z=n(25112),V=n(63351),J=n(95494),Y=n(43261);function $(e){(0,g.WP)().hotel;var t,n,l,r,i=(0,(0,J.X)().getMaxSelectableAdults)({adults:null===(t=e.row)||void 0===t?void 0:t.getAdults(),children:null===(n=e.row)||void 0===n?void 0:n.getChildren()}),s=(0,o.$)().t,m=null!==(l=null===(r=e.row)||void 0===r?void 0:r.getAdults())&&void 0!==l?l:1;return a.createElement(V.P,{nativeOnMobile:!0,options:(0,v.Z)(Array(i)).map((function(e,t){return t+=1,{text:Y.Z.pluralWithDictAndCount(t,c.W.Step.Date.Adult,s),value:t.toString()}})),value:null==m?void 0:m.toString(),onChange:e.onChange,keyName:"value",labelName:"text",inputLabelColor:e.labelColor})}function H(e){var t,n,l,r=(0,g.WP)().hotel,i=(0,o.$)().t,s=null!==(t=null===(n=e.row)||void 0===n?void 0:n.getChildren())&&void 0!==t?t:1,m=Math.max((null==r?void 0:r.maxOccupancy)+1-(null===(l=e.row)||void 0===l?void 0:l.getAdults()));return(m<1||isNaN(m))&&(m=1),a.createElement(V.P,{nativeOnMobile:!0,options:(0,v.Z)(Array(m)).map((function(e,t){return{text:Y.Z.pluralWithDictAndCount(t,c.W.Step.Date.Child,i),value:t.toString()}})),value:null==s?void 0:s.toString(),onChange:e.onChange,keyName:"value",labelName:"text",inputLabelColor:e.labelColor})}var K=n(50234),X=n(41092);function q(e){var t,n,l,r=(0,g.WP)().hotel,i=(0,o.$)().t,s=null!==(t=null===(n=e.row)||void 0===n?void 0:n.getInfants())&&void 0!==t?t:1,m=Math.max((null==r?void 0:r.maxOccupancy)+1-(null===(l=e.row)||void 0===l?void 0:l.getAdults()));return(m<1||isNaN(m))&&(m=1),a.createElement(V.P,{nativeOnMobile:!0,options:(0,v.Z)(Array(m)).map((function(e,t){return{text:Y.Z.pluralWithDictAndCount(t,c.W.Step.Date.Infant,i),value:t.toString()}})),value:null==s?void 0:s.toString(),onChange:e.onChange,keyName:"value",labelName:"text",inputLabelColor:e.labelColor})}function Q(e){var t,n,r,i,s=(0,a.useContext)(l.hy),m=(0,a.useContext)(l.g7),u=(0,g.WP)().hotel,d=(0,J.X)().showChildren,v=(0,o.$)().t,E=(0,K.i)().isMobile,f=(0,a.useState)(!1),p=(0,Z.Z)(f,2),h=p[0],C=p[1],R=(0,a.useState)(!0),x=(0,Z.Z)(R,2),b=x[0],k=x[1],A=e.row,D=(0,a.useMemo)((function(){var e;return s.selectedBasketRow&&(null===(e=s.selectedBasketRow)||void 0===e?void 0:e.getID())===(null==A?void 0:A.getID())}),[s.selectedBasketRow,null===(t=s.selectedBasketRow)||void 0===t?void 0:t.getID(),null==A?void 0:A.getID()]),B=F()("room-builder-progress--item",{"--current":D,"--complete":A.isValid()}),O=(0,a.useRef)(null),W=(0,a.useState)(!1),T=(0,Z.Z)(W,2),_=T[0],V=T[1];(0,a.useEffect)((function(){h&&!D&&C(!1)}),[s.selectBasketRow]);var Q=function(e){var t=e.adults,n=e.children,l=e.infants,a=e.updatedPromoCode;t&&t!==A.getAdults()&&(y.ZP.instance.sendInteraction("Guests",y.s_.NUMBER_INPUT,y._J.ROOMS),A.setAdults(t)),!n&&0!==n||n===A.getChildren()||(y.ZP.instance.sendInteraction("Guests",y.s_.NUMBER_INPUT,y._J.ROOMS),A.setChildren(n)),!l&&0!==l||l===A.getInfants()||(y.ZP.instance.sendInteraction("Guests",y.s_.NUMBER_INPUT,y._J.ROOMS),A.setInfants(l)),!a&&""!==a||a===A.getPromoCode()||(y.ZP.instance.sendInteraction("Promo Code",y.s_.FORM_FIELD,y._J.ROOMS),A.setPromoCode(a)),s.updateBasketRow(A)},ee=function(e,t){e&&A.setStartDate(e),t&&A.setEndDate(t),s.updateBasketRow(A)},te=function(e){s.onDatePickerOpenChange(e)},ne=s.currentBasketRows.length>1,le=a.createElement("div",{className:"room-builder-progress--remove"},a.createElement(z.Z,{title:ne?"Remove this room":"Cannot remove this room as at least one must be selected."},a.createElement(N.Z,{isText:!0,icon:S.Tu.Close,iconPosition:"right",stopIconAnimation:!0,disabled:!ne,onClick:function(){y.ZP.instance.sendInteraction("Remove Room",y.s_.BUTTON,y._J.ROOMS),s.removeBasketRow(A)}}))),ae=a.createElement("div",{className:"room-builder-progress--collapse"},a.createElement(N.Z,{isText:!0,icon:b?S.Tu.ArrowDown3:S.Tu.ArrowUp3,iconPosition:"right",stopIconAnimation:!0,onClick:function(){k((function(e){return!e}))}})),oe=m.screenSize>w.Z.ExtraLarge,re=oe||D,ie=(0,a.useMemo)((function(){return 1!==s.currentBasketRows.length?e.number+1:""}),[s.currentBasketRows.length,e.number]),ce=(null==A?void 0:A.getPromoCodeTooltip(v,c.W))||"",se=function(){V(!0)},me=function(e){Q({adults:+e})},ue=function(e){Q({children:+e})},de=function(e){Q({infants:+e})},ve=A.getPromoCode(null==u?void 0:u.memberOnlyPromoCode),ge=(0,a.useMemo)((function(){return a.createElement("div",{className:"room-builder-progress--value"},a.createElement(G.Z,{startDate:A.getStartDate(),endDate:A.getEndDate(),selectedDateChanged:ee,className:"u-w-100@xl- d-flex align-items-center justify-content-center",isAboveNav:!0,onDatePickerOpenChange:te},a.createElement(z.Z,{title:v(c.W.Step.Date.SelectArrivalAndDepartureDatesByClickingHere)},a.createElement("div",{className:"u-flex align-items-center justify-content-center u-w-100@xl- u-cursor-pointer"},a.createElement(I.ZP,{color:M.Il.Accent,bold:!0,className:"u-nowrap"},A.getArrivalDate()),a.createElement(S.ZP,{icon:S.Tu.ArrowRight2}),a.createElement(I.ZP,{color:M.Il.Accent,bold:!0,className:"u-nowrap"},A.getDepartureDate())))))}),[A,te]),Ee=(0,a.useMemo)((function(){var e;return a.createElement(a.Fragment,null,a.createElement(z.Z,{title:v(c.W.Step.Date.UpdateAdults),wrapperClasses:"u-w-100@xl- d-flex"},a.createElement("div",{className:"room-builder-progress--value u-flex-justify-center u-flex"},a.createElement($,{row:A,onChange:me}))),d?a.createElement(z.Z,{title:v(c.W.Step.Date.UpdateChildren),wrapperClasses:"u-w-100@xl- d-flex"},a.createElement("div",{className:"room-builder-progress--value u-flex-justify-center u-flex"},a.createElement(H,{row:A,onChange:ue}))):null,null!=u&&null!==(e=u.childConfiguration)&&void 0!==e&&e.supportInfants?a.createElement(z.Z,{title:v(c.W.Step.Date.UpdateInfants),wrapperClasses:"u-w-100@xl- d-flex"},a.createElement("div",{className:"room-builder-progress--value u-flex-justify-center u-flex"},a.createElement(q,{row:A,onChange:de}))):null,a.createElement(a.Fragment,null,E?null:ge,a.createElement(z.Z,{title:ce,wrapperClasses:"u-w-100@xl- d-flex"},a.createElement("div",{className:"room-builder-progress--value u-cursor-pointer",ref:O,onClick:se},a.createElement("div",{className:"u-flex align-items-center justify-content-center u-w-100@xl-"},a.createElement(I.ZP,{className:"u-pad-right--light",type:I.yG.Body,color:ve?A.getPromoCodeColour():M.Il.Navy},ve||v(c.W.Step.Date.PromoCode)),a.createElement(S.ZP,{icon:S.Tu.Dropdown,color:M.Il.DarkGrey}))))))}),[A,E,ve,ce,d,null==u?void 0:u.childConfiguration,me,ue,de]);return a.createElement("div",{className:B},D||!A.isValid()?a.createElement("div",{className:"u-flex w-100 001"},a.createElement("div",{className:"u-flex flex-wrap flex-xl-nowrap flex-row u-w-100@xl- align-items-center"},a.createElement("div",null,A.isValid()?a.createElement(I.ZP,null,a.createElement("strong",{className:"u-nowrap"},v(c.W.Step.Room.EditingRoom)," ",ie)):a.createElement(I.ZP,null,a.createElement("strong",{className:"u-nowrap"},v(c.W.Step.Room.SelectRoom)," ",ie))),re?a.createElement(a.Fragment,null,!oe&&a.createElement("div",{className:"w-100 d-flex"+(re?" u-marg-bottom@xl-":"")},a.createElement(I.ZP,{type:I.yG.Small,color:M.Il.DarkGrey,inline:!0},v(c.W.Step.Room.ChooseRoomBelow))),a.createElement(a.Fragment,null,E?ge:null),E?a.createElement("div",{className:"w-100"},a.createElement(U.Z,{open:!b},a.createElement("div",{className:"w-100 u-flex flex-column"},Ee))):Ee,a.createElement(L.a,{open:_,followElement:O.current,onClose:function(){V(!1)}},a.createElement("div",{className:"u-pad--heavy"},a.createElement("div",null,a.createElement(j.Z,{value:ve,onChange:function(e){var t;t=e,y.ZP.instance.sendInteraction("Promo Code",y.s_.FORM_FIELD,y._J.ROOMS),s.selectedBasketRow&&(s.selectedBasketRow.setPromoCode(t),s.selectedBasketRow.setManualInputPromoCode(!!t),s.updateBasketRow(s.selectedBasketRow),t&&V(!1))},valid:(null===(n=s.selectedBasketRow)||void 0===n?void 0:n.getPromoCodeStatus())!==X.V.New&&ve?(null===(r=s.selectedBasketRow)||void 0===r?void 0:r.getPromoCodeStatus())===X.V.Valid:void 0,row:s.selectedBasketRow})),a.createElement("div",{className:"u-flex justify-content-end align-items-center u-marg-top"},a.createElement(N.Z,{isText:!0,size:"small",onClick:function(){y.ZP.instance.sendInteraction("Cancel Promo Popup",y.s_.BUTTON,y._J.ROOMS),V(!1)}},v(c.W.Misc.Cancel))))),!oe&&A.isValid()&&a.createElement(N.Z,{wide:!0,primary:!0,filled:!0,onClick:function(){y.ZP.instance.sendInteraction("Save Room Changes",y.s_.BUTTON,y._J.ROOMS),s.selectBasketRow(null),C(!1)}},v(c.W.Misc.Save))):a.createElement("div",{className:"w-100"},a.createElement(I.ZP,{type:I.yG.Small,color:M.Il.DarkGrey},v(c.W.Step.Room.NextRoom)))),a.createElement("div",{className:"u-flex align-items-center"},A.isValid()&&a.createElement("div",{className:"u-none@xl-"},a.createElement(z.Z,{title:"Cancel changes"},a.createElement("div",{className:"u-flex align-items-center"},a.createElement(N.Z,{isText:!0,size:"tiny",onClick:function(){y.ZP.instance.sendInteraction("Cancel Room Changes",y.s_.LINK,y._J.ROOMS),s.selectBasketRow(null),C(!1)}},v(c.W.Misc.Cancel).toUpperCase())))),a.createElement("div",{className:"u-flex align-items-center flex-row"},E&&ae,le))):a.createElement("div",{className:"u-flex w-100 002"},a.createElement("div",{className:"u-flex justify-content-start"},a.createElement("div",{className:"u-flex flex-column"},a.createElement("span",null,a.createElement(I.ZP,{inline:oe},a.createElement("strong",null,A.getRoom().name)),a.createElement(I.ZP,{inline:oe,type:oe?I.yG.Body:I.yG.Small},a.createElement("span",{className:"u-marg-left--light@xl"},Y.Z.pluralWithDictAndCount(A.getAdults(),c.W.Step.Date.Adult,v),d?a.createElement(a.Fragment,null,", ",Y.Z.pluralWithDictAndCount(A.getChildren(),c.W.Step.Date.Child,v)):null,null!=u&&null!==(i=u.childConfiguration)&&void 0!==i&&i.supportInfants?a.createElement(a.Fragment,null,", ",Y.Z.pluralWithDictAndCount(A.getInfants(),c.W.Step.Date.Infant,v)):null))),a.createElement(I.ZP,{type:I.yG.Caption,color:M.Il.DarkGrey},a.createElement("strong",null,A.getStayDateRange("ddd, MMM D, YYYY"," -")))),ve&&A.isPromoCodeValid()&&a.createElement("div",{className:"u-marg-left d-flex align-items-center"},a.createElement(P.ZP,{type:P.Rm.Success,icon:S.Tu.Money},ve))),a.createElement("div",{className:"u-flex align-items-center"},a.createElement("div",{className:"u-flex align-items-center room-builder-progress--edit"},a.createElement(z.Z,{title:v(c.W.Step.Room.EditThisRoom)},a.createElement("div",{className:"u-flex align-items-center"},a.createElement(N.Z,{isText:!0,size:"tiny",onClick:function(){y.ZP.instance.sendInteraction("Edit Room",y.s_.LINK,y._J.ROOMS),s.selectBasketRow(A),C(!0)}},v(c.W.Misc.Edit).toUpperCase())))),le)))}var ee=n(72870),te=(0,n(32941).A)(N.Z);function ne(){var e=(0,a.useContext)(l.hy),t=e.currentBasketRows,n=e.addBasketRow,r=(e.selectedBasketRow,(0,o.$)().t),i=function(){y.ZP.instance.sendInteraction("Add Room Row",y.s_.BUTTON,y._J.ROOMS),n(new X.Z)};return(0,a.useMemo)((function(){return a.createElement(a.Fragment,null,a.createElement("div",{className:"room-builder-progress"},!!t.length&&t.map((function(e,t){return a.createElement(Q,{row:e,key:e.getID(),number:t})})),a.createElement("div",{className:"u-flex justify-content-end"},a.createElement(te,{icon:S.Tu.Add,onClick:i,stopIconAnimation:!0},r(c.W.Step.Room.RoomInfo.AddRoom)))),a.createElement(ee.y,null))}),[t,r])}var le=n(87933),ae=n(4511);function oe(){var e=(0,a.useContext)(l.hy),t=(0,o.$)().t,n=!(!e.selectedBasketRow||!e.selectedBasketRow.isValid());return a.createElement("div",{className:"u-marg-top u-marg-bottom"},a.createElement(ae.Z,null),a.createElement(U.Z,{open:n},a.createElement(le.ZP,{icon:S.Tu.Edit,type:le.NK.Accent1},a.createElement(I.ZP,{type:I.yG.Small},a.createElement("strong",null,t(c.W.Misc.Alerts.YouAreEditing))," - ",t(c.W.Misc.Alerts.YouAreEditingAlert)))))}var re=function(e){return(0,a.useContext)(l.g7).screenSize<=w.Z.Medium?a.createElement(a.Fragment,null,a.createElement(oe,null),a.createElement(d.Z,{smallMargins:!0}),a.createElement(ne,null),e.children,a.createElement(d.Z,{smallMargins:!0})):a.createElement(a.Fragment,null,a.createElement(ne,null),e.children,a.createElement(oe,null))},ie=n(49368);function ce(){var e=(0,a.useContext)(l.aN).roomRateCalendarInteractivity,t=(0,a.useContext)(l.hy),n=(0,a.useContext)(l.g7),o=(0,a.useContext)(l.O8).orderUnavailableRoomsLast,r=(0,g.WP)().hotel,i=(0,h.w)(),c=i.rooms,s=i.loadingAttempted,m=i.isLoading,u=i.openRoom,d=i.apiHasError,Z=i.retargetingRoom,N=(0,a.useRef)(null),x=(0,a.useRef)(null),S=n.currentRoomSort,P=(0,a.useRef)(null);return(0,a.useEffect)((function(){return function(){x.current&&clearTimeout(x.current)}}),[]),(0,a.useMemo)((function(){var l,i=(0,v.Z)(c);0!==i.length&&i.sort(C.Z.getSortByFunction(S)),null!=r&&r.showUnavailableRooms&&o&&i.sort((function(e,t){return e.isAvailable()&&!t.isAvailable()?-1:!e.isAvailable()&&t.isAvailable()?1:0}));var u=!(null==e||!e.rateCode||null==e||!e.roomCode),g=m||!s;u&&(P.current=c),!t.isDatePickerOpen&&!m&&i.length>0&&(x.current&&clearTimeout(x.current),x.current=setTimeout((function(){u||function(){if(N.current&&P.current!==c){P.current=c;var e=n.screenSize<=w.Z.Medium?185:350;window.scrollTo({top:window.scrollY+(N.current.getBoundingClientRect().top-e),behavior:"smooth"})}}()}),100));var h=a.createElement("div",{ref:N,className:"room-list"},g&&!u?a.createElement(E.Z,null):i.length?a.createElement("div",{className:"room-list__container"},g&&u?a.createElement(E.Z,null):a.createElement(a.Fragment,null),i.map((function(e,t){return a.createElement(f.Z,{key:e.code,room:e,disableMarginBottom:t===i.length-1})}))):a.createElement(a.Fragment,null,d?a.createElement(ie.F,null):a.createElement(R.Z,null),null==r||null===(l=r.crossSellHotelIds)||void 0===l?void 0:l.map((function(e){return a.createElement(p.Z,{key:e,hotelId:e})}))));return y.ZP.instance.sendRoomImpressions(),a.createElement(a.Fragment,null,a.createElement(re,null,!m&&Z?a.createElement(T,{key:Z.code,room:Z}):null),h)}),[c,m,s,u,S,n.currentFilters,t.loadedPromotion,t.isDatePickerOpen,o,e])}var se=n(38279),me=n(31972),ue=n(40370),de=n(50840),ve=n(95692),ge=function(){var e=(0,a.useContext)(l.g7),t=(0,a.useContext)(l.aN),n=t.roomRateCalendarInteractivity,v=t.setRoomRateCalendarInteractivity,g=(0,r.TH)(),E=(0,o.$)().t,f=(0,a.useContext)(l.aN).currentStep;return(0,a.useEffect)((function(){return function(){n&&v(null)}}),[f]),a.createElement("div",{className:"container rs-step-room"},a.createElement(ue.default,null),a.createElement(u.i5,null,a.createElement(u.mV,null,e.screenSize>w.Z.Medium&&a.createElement(a.Fragment,null,a.createElement(i.rU,{to:{pathname:ve.Z.getPreviousStepUrl(f),search:g.search}},a.createElement(s.Z,null)),a.createElement("div",{className:"u-marg-top--light u-marg-bottom--heavy"},a.createElement(m.Z,{bold:!0},E(c.W.Step.Room.ChooseRoom)))),a.createElement(de.Y,null)),e.screenSize>w.Z.Medium&&a.createElement(u.f,null,a.createElement(se.Z,null))),e.screenSize>w.Z.Medium&&a.createElement(d.Z,null),a.createElement(u.i5,null,a.createElement(u.mV,null,a.createElement(ce,null)),a.createElement(u.f,null,a.createElement(me.Z,null))))}}}]);
|
|
1
|
+
"use strict";(("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[288],{12288:function(e,t,n){n.r(t),n.d(t,{default:function(){return Ee}});var l=n(6058),a=n(67294),r=n(26793),o=n(89250),i=n(79655),c=n(79478),s=n(13821),m=n(13010),u=n(46409),d=n(19874),v=n(42982),g=n(89331),E=n(7832),f=n(3473),p=n(72258),h=n(39136),C=n(60281),y=n(84544),w=n(90292),R=n(67023),Z=n(70885),N=n(64854),x=n(20858),S=n(78886),P=n(33409),b=n(2927),I=n(30584),k=n(73633),A=n(44744),M=n(97754),D=n(40291),B=n(32458),O=n(98013);function W(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=new Array(t);n<t;n++)l[n]=e[n];return l}var T=function(e){var t=e.room,n=(0,a.useState)([]),o=(0,Z.Z)(n,2),i=o[0],s=o[1],u=(0,a.useState)([]),d=(0,Z.Z)(u,2),v=d[0],E=d[1],f=(0,a.useState)(!1),p=(0,Z.Z)(f,2),h=p[0],C=p[1],R=a.useContext(l.g7),T=(0,a.useContext)(l.hy),_=(0,g.WP)().hotel,U=(0,r.$)().t;(0,a.useEffect)((function(){var e=[],n=[];if(k.Z.isActive()){var l,a=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return W(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?W(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var l=0,a=function(){};return{s:a,n:function(){return l>=e.length?{done:!0}:{done:!1,value:e[l++]}},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 r,o=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){i=!0,r=e},f:function(){try{o||null==n.return||n.return()}finally{if(i)throw r}}}}(t.getRates());try{for(a.s();!(l=a.n()).done;){var r,o,i,c=l.value;(null===(r=c.promoCode)||void 0===r?void 0:r.toLowerCase())===(null===(o=T.selectedBasketRow)||void 0===o||null===(i=o.getPromoCode())||void 0===i?void 0:i.toLowerCase())?n.unshift(c):e.push(c)}}catch(e){a.e(e)}finally{a.f()}n.length>0&&s(n)}else e=t.getRates();E(e)}),[t.getRates()]);var F=t.getShortDescription(),G=R.screenSize<=w.Z.Large,L=Math.round(t.getLowestPrice(!1,!0)),j=R.screenSize>w.Z.Medium&&L.toLocaleString().length<7?"large":"normal";return a.createElement("div",{className:"room-details-container --theme-retargeting u-marg-top u-marg-bottom"},a.createElement("div",{className:"room-details"},a.createElement("div",{className:"room-details--image"},a.createElement(D.Z,{images:t.getImages(),imageSize:A.h.Medium})),a.createElement("div",{className:"room-details--content u-pad--heavy u-pad@l-"},a.createElement("div",{className:"u-marg-bottom"},a.createElement("div",{className:"u-marg-bottom"},a.createElement(P.ZP,{type:P.Rm.Primary,icon:S.Tu.Add},U(c.W.Step.Room.YouBookedThisRoomRecently))),a.createElement("div",{className:"room-details--content-title u-marg-bottom--light"},a.createElement(m.Z,{bold:!0},t.name)),a.createElement(O.R,{room:t,textColor:M.Il.Navy}),a.createElement("div",{className:"room-details--content-description u-marg-bottom--light"},a.createElement(I.ZP,{color:M.Il.Navy,type:I.yG.Small},a.createElement("span",{dangerouslySetInnerHTML:{__html:(null==F?void 0:F.replace(/<br(\/|)>/g,""))||""}})))),a.createElement("div",{className:"row"},a.createElement("div",{className:"col-md-6 u-flex u-marg-bottom@m- flex-column align-items-start"},a.createElement("div",{className:"room-details--content-perks u-marg-bottom@m-"},G&&a.createElement("div",{className:"u-marg-bottom"},a.createElement(I.ZP,{type:I.yG.Small,bold:!0,color:M.Il.Accent},(null==_?void 0:_.perkTitle)||U(c.W.Misc.Perks.AndYouGetAll))))),a.createElement("div",{className:"col-md-6 u-flex justify-content-end flex-column align-items-start align-items-md-end"},a.createElement(I.ZP,{type:I.yG.Small,color:M.Il.Navy,inline:!0},U(c.W.Misc.From)),a.createElement("div",{className:"room-details--content-price flex-row align-items-end"},a.createElement(m.Z,{size:j,bold:!0},a.createElement(x.Z,{hideDecimals:!0},L)),a.createElement(I.ZP,{color:M.Il.Navy,inline:!0},"/",U(c.W.Misc.Night))),a.createElement("div",{className:"u-marg-bottom"},a.createElement(I.ZP,{type:I.yG.Small,color:M.Il.Navy,className:"u-nowrap"},a.createElement(b._,{room:t}))),a.createElement("div",{className:"u-marg-top--light u-flex justify-content-end u-w-100@m-"},a.createElement(N.Z,{name:"ViewRatesNowButton",primary:!0,filled:!0,stopIconAnimation:!0,iconPosition:"right",wide:R.screenSize<=w.Z.Large,onClick:function(){y.ZP.instance.sendInteraction("More Room Details",y.s_.LINK,y._J.ROOMS),C(!0)}},U(c.W.Step.Room.RoomInfo.ViewRates))))))),a.createElement(B.Z,{open:h,room:e.room,rates:v,featuredRates:i,onClose:function(){C(!1)}}))},_=n(94184),U=n.n(_),F=n(79740),G=n(42530),L=n(89089),j=n(65986),z=n(25112),V=n(63351),J=n(95494),Y=n(43261);function $(e){(0,g.WP)().hotel;var t,n,l,o,i=(0,(0,J.X)().getMaxSelectableAdults)({adults:null===(t=e.row)||void 0===t?void 0:t.getAdults(),children:null===(n=e.row)||void 0===n?void 0:n.getChildren()}),s=(0,r.$)().t,m=null!==(l=null===(o=e.row)||void 0===o?void 0:o.getAdults())&&void 0!==l?l:1;return a.createElement(V.P,{nativeOnMobile:!0,options:(0,v.Z)(Array(i)).map((function(e,t){return t+=1,{text:Y.Z.pluralWithDictAndCount(t,c.W.Step.Date.Adult,s),value:t.toString()}})),value:null==m?void 0:m.toString(),onChange:e.onChange,keyName:"value",labelName:"text",inputLabelColor:e.labelColor})}function H(e){var t,n,l,o=(0,g.WP)().hotel,i=(0,r.$)().t,s=null!==(t=null===(n=e.row)||void 0===n?void 0:n.getChildren())&&void 0!==t?t:1,m=Math.max((null==o?void 0:o.maxOccupancy)+1-(null===(l=e.row)||void 0===l?void 0:l.getAdults()));return(m<1||isNaN(m))&&(m=1),a.createElement(V.P,{nativeOnMobile:!0,options:(0,v.Z)(Array(m)).map((function(e,t){return{text:Y.Z.pluralWithDictAndCount(t,c.W.Step.Date.Child,i),value:t.toString()}})),value:null==s?void 0:s.toString(),onChange:e.onChange,keyName:"value",labelName:"text",inputLabelColor:e.labelColor})}var K=n(57133),X=n(50234),q=n(41092);function Q(e){var t,n,l,o=(0,g.WP)().hotel,i=(0,r.$)().t,s=null!==(t=null===(n=e.row)||void 0===n?void 0:n.getInfants())&&void 0!==t?t:1,m=Math.max((null==o?void 0:o.maxOccupancy)+1-(null===(l=e.row)||void 0===l?void 0:l.getAdults()));return(m<1||isNaN(m))&&(m=1),a.createElement(V.P,{nativeOnMobile:!0,options:(0,v.Z)(Array(m)).map((function(e,t){return{text:Y.Z.pluralWithDictAndCount(t,c.W.Step.Date.Infant,i),value:t.toString()}})),value:null==s?void 0:s.toString(),onChange:e.onChange,keyName:"value",labelName:"text",inputLabelColor:e.labelColor})}function ee(e){var t,n,o,i,s=(0,a.useContext)(l.hy),m=(0,a.useContext)(l.g7),u=(0,g.WP)().hotel,d=(0,J.X)().showChildren,v=(0,r.$)().t,E=(0,X.i)().isMobile,f=(0,K.t)().signedInUser,p=(0,a.useState)(!1),h=(0,Z.Z)(p,2),C=h[0],R=h[1],x=(0,a.useState)(!0),b=(0,Z.Z)(x,2),k=b[0],A=b[1],D=e.row,B=(0,a.useMemo)((function(){var e;return s.selectedBasketRow&&(null===(e=s.selectedBasketRow)||void 0===e?void 0:e.getID())===(null==D?void 0:D.getID())}),[s.selectedBasketRow,null===(t=s.selectedBasketRow)||void 0===t?void 0:t.getID(),null==D?void 0:D.getID()]),O=U()("room-builder-progress--item",{"--current":B,"--complete":D.isValid()}),W=(0,a.useRef)(null),T=(0,a.useState)(!1),_=(0,Z.Z)(T,2),V=_[0],ee=_[1];(0,a.useEffect)((function(){C&&!B&&R(!1)}),[s.selectBasketRow]);var te=function(e){var t=e.adults,n=e.children,l=e.infants,a=e.updatedPromoCode;t&&t!==D.getAdults()&&(y.ZP.instance.sendInteraction("Guests",y.s_.NUMBER_INPUT,y._J.ROOMS),D.setAdults(t)),!n&&0!==n||n===D.getChildren()||(y.ZP.instance.sendInteraction("Guests",y.s_.NUMBER_INPUT,y._J.ROOMS),D.setChildren(n)),!l&&0!==l||l===D.getInfants()||(y.ZP.instance.sendInteraction("Guests",y.s_.NUMBER_INPUT,y._J.ROOMS),D.setInfants(l)),!a&&""!==a||a===D.getPromoCode()||(y.ZP.instance.sendInteraction("Promo Code",y.s_.FORM_FIELD,y._J.ROOMS),D.setPromoCode(a)),s.updateBasketRow(D)},ne=function(e,t){e&&D.setStartDate(e),t&&D.setEndDate(t),s.updateBasketRow(D)},le=function(e){s.onDatePickerOpenChange(e)},ae=s.currentBasketRows.length>1,re=a.createElement("div",{className:"room-builder-progress--remove"},a.createElement(z.Z,{title:ae?"Remove this room":"Cannot remove this room as at least one must be selected."},a.createElement(N.Z,{isText:!0,icon:S.Tu.Close,iconPosition:"right",stopIconAnimation:!0,disabled:!ae,onClick:function(){y.ZP.instance.sendInteraction("Remove Room",y.s_.BUTTON,y._J.ROOMS),s.removeBasketRow(D)}}))),oe=a.createElement("div",{className:"room-builder-progress--collapse"},a.createElement(N.Z,{isText:!0,icon:k?S.Tu.ArrowDown3:S.Tu.ArrowUp3,iconPosition:"right",stopIconAnimation:!0,onClick:function(){A((function(e){return!e}))}})),ie=m.screenSize>w.Z.ExtraLarge,ce=ie||B,se=(0,a.useMemo)((function(){return 1!==s.currentBasketRows.length?e.number+1:""}),[s.currentBasketRows.length,e.number]),me=(null==D?void 0:D.getPromoCodeTooltip(v,c.W))||"",ue=function(){ee(!0)},de=function(e){te({adults:+e})},ve=function(e){te({children:+e})},ge=function(e){te({infants:+e})},Ee=D.getDefaultInputPromoCode(f,null==u?void 0:u.memberOnlyPromoCode),fe=(0,a.useMemo)((function(){return a.createElement("div",{className:"room-builder-progress--value"},a.createElement(G.Z,{startDate:D.getStartDate(),endDate:D.getEndDate(),selectedDateChanged:ne,className:"u-w-100@xl- d-flex align-items-center justify-content-center",isAboveNav:!0,onDatePickerOpenChange:le},a.createElement(z.Z,{title:v(c.W.Step.Date.SelectArrivalAndDepartureDatesByClickingHere)},a.createElement("div",{className:"u-flex align-items-center justify-content-center u-w-100@xl- u-cursor-pointer"},a.createElement(I.ZP,{color:M.Il.Accent,bold:!0,className:"u-nowrap"},D.getArrivalDate()),a.createElement(S.ZP,{icon:S.Tu.ArrowRight2}),a.createElement(I.ZP,{color:M.Il.Accent,bold:!0,className:"u-nowrap"},D.getDepartureDate())))))}),[D,le]),pe=(0,a.useMemo)((function(){var e;return a.createElement(a.Fragment,null,a.createElement(z.Z,{title:v(c.W.Step.Date.UpdateAdults),wrapperClasses:"u-w-100@xl- d-flex"},a.createElement("div",{className:"room-builder-progress--value u-flex-justify-center u-flex"},a.createElement($,{row:D,onChange:de}))),d?a.createElement(z.Z,{title:v(c.W.Step.Date.UpdateChildren),wrapperClasses:"u-w-100@xl- d-flex"},a.createElement("div",{className:"room-builder-progress--value u-flex-justify-center u-flex"},a.createElement(H,{row:D,onChange:ve}))):null,null!=u&&null!==(e=u.childConfiguration)&&void 0!==e&&e.supportInfants?a.createElement(z.Z,{title:v(c.W.Step.Date.UpdateInfants),wrapperClasses:"u-w-100@xl- d-flex"},a.createElement("div",{className:"room-builder-progress--value u-flex-justify-center u-flex"},a.createElement(Q,{row:D,onChange:ge}))):null,a.createElement(a.Fragment,null,E?null:fe,a.createElement(z.Z,{title:me,wrapperClasses:"u-w-100@xl- d-flex"},a.createElement("div",{className:"room-builder-progress--value u-cursor-pointer",ref:W,onClick:ue},a.createElement("div",{className:"u-flex align-items-center justify-content-center u-w-100@xl-"},a.createElement(I.ZP,{className:"u-pad-right--light",type:I.yG.Body,color:Ee?D.getPromoCodeColour():M.Il.Navy},Ee||v(c.W.Step.Date.PromoCode)),a.createElement(S.ZP,{icon:S.Tu.Dropdown,color:M.Il.DarkGrey}))))))}),[D,E,Ee,me,d,null==u?void 0:u.childConfiguration,de,ve,ge]);return a.createElement("div",{className:O},B||!D.isValid()?a.createElement("div",{className:"u-flex w-100 001"},a.createElement("div",{className:"u-flex flex-wrap flex-xl-nowrap flex-row u-w-100@xl- align-items-center"},a.createElement("div",null,D.isValid()?a.createElement(I.ZP,null,a.createElement("strong",{className:"u-nowrap"},v(c.W.Step.Room.EditingRoom)," ",se)):a.createElement(I.ZP,null,a.createElement("strong",{className:"u-nowrap"},v(c.W.Step.Room.SelectRoom)," ",se))),ce?a.createElement(a.Fragment,null,!ie&&a.createElement("div",{className:"w-100 d-flex"+(ce?" u-marg-bottom@xl-":"")},a.createElement(I.ZP,{type:I.yG.Small,color:M.Il.DarkGrey,inline:!0},v(c.W.Step.Room.ChooseRoomBelow))),a.createElement(a.Fragment,null,E?fe:null),E?a.createElement("div",{className:"w-100"},a.createElement(F.Z,{open:!k},a.createElement("div",{className:"w-100 u-flex flex-column"},pe))):pe,a.createElement(L.a,{open:V,followElement:W.current,onClose:function(){ee(!1)}},a.createElement("div",{className:"u-pad--heavy"},a.createElement("div",null,a.createElement(j.Z,{value:Ee,onChange:function(e){var t;t=e,y.ZP.instance.sendInteraction("Promo Code",y.s_.FORM_FIELD,y._J.ROOMS),s.selectedBasketRow&&(s.selectedBasketRow.setPromoCode(t),s.selectedBasketRow.setManualInputPromoCode(!!t),s.updateBasketRow(s.selectedBasketRow),t&&ee(!1))},valid:(null===(n=s.selectedBasketRow)||void 0===n?void 0:n.getPromoCodeStatus())!==q.V.New&&Ee?(null===(o=s.selectedBasketRow)||void 0===o?void 0:o.getPromoCodeStatus())===q.V.Valid:void 0,row:s.selectedBasketRow})),a.createElement("div",{className:"u-flex justify-content-end align-items-center u-marg-top"},a.createElement(N.Z,{isText:!0,size:"small",onClick:function(){y.ZP.instance.sendInteraction("Cancel Promo Popup",y.s_.BUTTON,y._J.ROOMS),ee(!1)}},v(c.W.Misc.Cancel))))),!ie&&D.isValid()&&a.createElement(N.Z,{wide:!0,primary:!0,filled:!0,onClick:function(){y.ZP.instance.sendInteraction("Save Room Changes",y.s_.BUTTON,y._J.ROOMS),s.selectBasketRow(null),R(!1)}},v(c.W.Misc.Save))):a.createElement("div",{className:"w-100"},a.createElement(I.ZP,{type:I.yG.Small,color:M.Il.DarkGrey},v(c.W.Step.Room.NextRoom)))),a.createElement("div",{className:"u-flex align-items-center"},D.isValid()&&a.createElement("div",{className:"u-none@xl-"},a.createElement(z.Z,{title:"Cancel changes"},a.createElement("div",{className:"u-flex align-items-center"},a.createElement(N.Z,{isText:!0,size:"tiny",onClick:function(){y.ZP.instance.sendInteraction("Cancel Room Changes",y.s_.LINK,y._J.ROOMS),s.selectBasketRow(null),R(!1)}},v(c.W.Misc.Cancel).toUpperCase())))),a.createElement("div",{className:"u-flex align-items-center flex-row"},E&&oe,re))):a.createElement("div",{className:"u-flex w-100 002"},a.createElement("div",{className:"u-flex justify-content-start"},a.createElement("div",{className:"u-flex flex-column"},a.createElement("span",null,a.createElement(I.ZP,{inline:ie},a.createElement("strong",null,D.getRoom().name)),a.createElement(I.ZP,{inline:ie,type:ie?I.yG.Body:I.yG.Small},a.createElement("span",{className:"u-marg-left--light@xl"},Y.Z.pluralWithDictAndCount(D.getAdults(),c.W.Step.Date.Adult,v),d?a.createElement(a.Fragment,null,", ",Y.Z.pluralWithDictAndCount(D.getChildren(),c.W.Step.Date.Child,v)):null,null!=u&&null!==(i=u.childConfiguration)&&void 0!==i&&i.supportInfants?a.createElement(a.Fragment,null,", ",Y.Z.pluralWithDictAndCount(D.getInfants(),c.W.Step.Date.Infant,v)):null))),a.createElement(I.ZP,{type:I.yG.Caption,color:M.Il.DarkGrey},a.createElement("strong",null,D.getStayDateRange("ddd, MMM D, YYYY"," -")))),Ee&&D.isPromoCodeValid()&&a.createElement("div",{className:"u-marg-left d-flex align-items-center"},a.createElement(P.ZP,{type:P.Rm.Success,icon:S.Tu.Money},Ee))),a.createElement("div",{className:"u-flex align-items-center"},a.createElement("div",{className:"u-flex align-items-center room-builder-progress--edit"},a.createElement(z.Z,{title:v(c.W.Step.Room.EditThisRoom)},a.createElement("div",{className:"u-flex align-items-center"},a.createElement(N.Z,{isText:!0,size:"tiny",onClick:function(){y.ZP.instance.sendInteraction("Edit Room",y.s_.LINK,y._J.ROOMS),s.selectBasketRow(D),R(!0)}},v(c.W.Misc.Edit).toUpperCase())))),re)))}var te=n(72870),ne=(0,n(32941).A)(N.Z);function le(){var e=(0,a.useContext)(l.hy),t=e.currentBasketRows,n=e.addBasketRow,o=(e.selectedBasketRow,(0,r.$)().t),i=function(){y.ZP.instance.sendInteraction("Add Room Row",y.s_.BUTTON,y._J.ROOMS),n(new q.Z)};return(0,a.useMemo)((function(){return a.createElement(a.Fragment,null,a.createElement("div",{className:"room-builder-progress"},!!t.length&&t.map((function(e,t){return a.createElement(ee,{row:e,key:e.getID(),number:t})})),a.createElement("div",{className:"u-flex justify-content-end"},a.createElement(ne,{icon:S.Tu.Add,onClick:i,stopIconAnimation:!0},o(c.W.Step.Room.RoomInfo.AddRoom)))),a.createElement(te.y,null))}),[t,o])}var ae=n(87933),re=n(4511);function oe(){var e=(0,a.useContext)(l.hy),t=(0,r.$)().t,n=!(!e.selectedBasketRow||!e.selectedBasketRow.isValid());return a.createElement("div",{className:"u-marg-top u-marg-bottom"},a.createElement(re.Z,null),a.createElement(F.Z,{open:n},a.createElement(ae.ZP,{icon:S.Tu.Edit,type:ae.NK.Accent1},a.createElement(I.ZP,{type:I.yG.Small},a.createElement("strong",null,t(c.W.Misc.Alerts.YouAreEditing))," - ",t(c.W.Misc.Alerts.YouAreEditingAlert)))))}var ie=function(e){return(0,a.useContext)(l.g7).screenSize<=w.Z.Medium?a.createElement(a.Fragment,null,a.createElement(oe,null),a.createElement(d.Z,{smallMargins:!0}),a.createElement(le,null),e.children,a.createElement(d.Z,{smallMargins:!0})):a.createElement(a.Fragment,null,a.createElement(le,null),e.children,a.createElement(oe,null))},ce=n(49368);function se(){var e=(0,a.useContext)(l.aN).roomRateCalendarInteractivity,t=(0,a.useContext)(l.hy),n=(0,a.useContext)(l.g7),r=(0,a.useContext)(l.O8).orderUnavailableRoomsLast,o=(0,g.WP)().hotel,i=(0,h.w)(),c=i.rooms,s=i.loadingAttempted,m=i.isLoading,u=i.openRoom,d=i.apiHasError,Z=i.retargetingRoom,N=(0,a.useRef)(null),x=(0,a.useRef)(null),S=n.currentRoomSort,P=(0,a.useRef)(null);return(0,a.useEffect)((function(){return function(){x.current&&clearTimeout(x.current)}}),[]),(0,a.useMemo)((function(){var l,i=(0,v.Z)(c);0!==i.length&&i.sort(C.Z.getSortByFunction(S)),null!=o&&o.showUnavailableRooms&&r&&i.sort((function(e,t){return e.isAvailable()&&!t.isAvailable()?-1:!e.isAvailable()&&t.isAvailable()?1:0}));var u=!(null==e||!e.rateCode||null==e||!e.roomCode),g=m||!s;u&&(P.current=c),!t.isDatePickerOpen&&!m&&i.length>0&&(x.current&&clearTimeout(x.current),x.current=setTimeout((function(){u||function(){if(N.current&&P.current!==c){P.current=c;var e=n.screenSize<=w.Z.Medium?185:350;window.scrollTo({top:window.scrollY+(N.current.getBoundingClientRect().top-e),behavior:"smooth"})}}()}),100));var h=a.createElement("div",{ref:N,className:"room-list"},g&&!u?a.createElement(E.Z,null):i.length?a.createElement("div",{className:"room-list__container"},g&&u?a.createElement(E.Z,null):a.createElement(a.Fragment,null),i.map((function(e,t){return a.createElement(f.Z,{key:e.code,room:e,disableMarginBottom:t===i.length-1})}))):a.createElement(a.Fragment,null,d?a.createElement(ce.F,null):a.createElement(R.Z,null),null==o||null===(l=o.crossSellHotelIds)||void 0===l?void 0:l.map((function(e){return a.createElement(p.Z,{key:e,hotelId:e})}))));return y.ZP.instance.sendRoomImpressions(),a.createElement(a.Fragment,null,a.createElement(ie,null,!m&&Z?a.createElement(T,{key:Z.code,room:Z}):null),h)}),[c,m,s,u,S,n.currentFilters,t.loadedPromotion,t.isDatePickerOpen,r,e])}var me=n(38279),ue=n(31972),de=n(40370),ve=n(50840),ge=n(95692),Ee=function(){var e=(0,a.useContext)(l.g7),t=(0,a.useContext)(l.aN),n=t.roomRateCalendarInteractivity,v=t.setRoomRateCalendarInteractivity,g=(0,o.TH)(),E=(0,r.$)().t,f=(0,a.useContext)(l.aN).currentStep;return(0,a.useEffect)((function(){return function(){n&&v(null)}}),[f]),a.createElement("div",{className:"container rs-step-room"},a.createElement(de.default,null),a.createElement(u.i5,null,a.createElement(u.mV,null,e.screenSize>w.Z.Medium&&a.createElement(a.Fragment,null,a.createElement(i.rU,{to:{pathname:ge.Z.getPreviousStepUrl(f),search:g.search}},a.createElement(s.Z,null)),a.createElement("div",{className:"u-marg-top--light u-marg-bottom--heavy"},a.createElement(m.Z,{bold:!0},E(c.W.Step.Room.ChooseRoom)))),a.createElement(ve.Y,null)),e.screenSize>w.Z.Medium&&a.createElement(u.f,null,a.createElement(me.Z,null))),e.screenSize>w.Z.Medium&&a.createElement(d.Z,null),a.createElement(u.i5,null,a.createElement(u.mV,null,a.createElement(se,null)),a.createElement(u.f,null,a.createElement(ue.Z,null))))}}}]);
|