@roomstay/frontend 2.9.0 → 2.9.1-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.
Files changed (105) hide show
  1. package/dist/177.bundle.js +1 -1
  2. package/dist/219.bundle.js +2 -0
  3. package/dist/288.bundle.js +1 -1
  4. package/dist/291.bundle.js +1 -0
  5. package/dist/446.bundle.js +1 -1
  6. package/dist/537.bundle.js +1 -1
  7. package/dist/596.bundle.js +1 -1
  8. package/dist/625.bundle.js +1 -1
  9. package/dist/836.bundle.js +1 -1
  10. package/dist/main.bundle.js +1 -1
  11. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.js +6 -0
  12. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.js.map +1 -1
  13. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/ShadowDomBottomSheet.d.ts +22 -0
  14. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/ShadowDomBottomSheet.js +131 -0
  15. package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/ShadowDomBottomSheet.js.map +1 -0
  16. package/dist/src/components/generic/Portal/Portal.js +5 -1
  17. package/dist/src/components/generic/Portal/Portal.js.map +1 -1
  18. package/dist/src/components/generic/Select/InputSelect.js +3 -2
  19. package/dist/src/components/generic/Select/InputSelect.js.map +1 -1
  20. package/dist/src/components/generic/Select/Select.js +5 -5
  21. package/dist/src/components/generic/Select/Select.js.map +1 -1
  22. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.d.ts +2 -2
  23. package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js.map +1 -1
  24. package/dist/src/components/members/SignInModal/EmailAndFullnameMemberModal.d.ts +4 -0
  25. package/dist/src/components/members/SignInModal/EmailAndFullnameMemberModal.js +105 -30
  26. package/dist/src/components/members/SignInModal/EmailAndFullnameMemberModal.js.map +1 -1
  27. package/dist/src/components/members/SignInModal/ExternalMemberModal.d.ts +9 -3
  28. package/dist/src/components/members/SignInModal/ExternalMemberModal.js +45 -6
  29. package/dist/src/components/members/SignInModal/ExternalMemberModal.js.map +1 -1
  30. package/dist/src/components/steps/confirmation/RoomContactDetails.js +2 -3
  31. package/dist/src/components/steps/confirmation/RoomContactDetails.js.map +1 -1
  32. package/dist/src/components/steps/date/BEPeoplePickerBlock.js +3 -1
  33. package/dist/src/components/steps/date/BEPeoplePickerBlock.js.map +1 -1
  34. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js +2 -0
  35. package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js.map +1 -1
  36. package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
  37. package/dist/src/contexts/BasketContext/BasketContextWrapper.js +1 -1
  38. package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
  39. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +1 -0
  40. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -1
  41. package/dist/src/contexts/ShadowDomContext/ShadowDomContext.d.ts +10 -0
  42. package/dist/src/contexts/ShadowDomContext/ShadowDomContext.js +12 -0
  43. package/dist/src/contexts/ShadowDomContext/ShadowDomContext.js.map +1 -0
  44. package/dist/src/contexts/ShadowDomContext/ShadowDomContextProvider.d.ts +8 -0
  45. package/dist/src/contexts/ShadowDomContext/ShadowDomContextProvider.js +13 -0
  46. package/dist/src/contexts/ShadowDomContext/ShadowDomContextProvider.js.map +1 -0
  47. package/dist/src/contexts/index.d.ts +2 -0
  48. package/dist/src/contexts/index.js +2 -0
  49. package/dist/src/contexts/index.js.map +1 -1
  50. package/dist/src/engines/BaseEngine.d.ts +13 -0
  51. package/dist/src/engines/BaseEngine.js +32 -0
  52. package/dist/src/engines/BaseEngine.js.map +1 -1
  53. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js +1 -0
  54. package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js.map +1 -1
  55. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js +3 -1
  56. package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js.map +1 -1
  57. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.js +1 -0
  58. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngine.js.map +1 -1
  59. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +12 -10
  60. package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js.map +1 -1
  61. package/dist/src/engines/MemberPortalWidget/MemberPortalWidget.js +1 -0
  62. package/dist/src/engines/MemberPortalWidget/MemberPortalWidget.js.map +1 -1
  63. package/dist/src/engines/MemberPortalWidget/MemberPortalWidgetElement.js +11 -9
  64. package/dist/src/engines/MemberPortalWidget/MemberPortalWidgetElement.js.map +1 -1
  65. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.js +1 -0
  66. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.js.map +1 -1
  67. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js +4 -2
  68. package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js.map +1 -1
  69. package/dist/src/handlers/membership/SalesforceMemberHandler.js +1 -1
  70. package/dist/src/handlers/membership/SalesforceMemberHandler.js.map +1 -1
  71. package/dist/src/hooks/BodyClickHook.d.ts +2 -2
  72. package/dist/src/hooks/BodyClickHook.js +7 -3
  73. package/dist/src/hooks/BodyClickHook.js.map +1 -1
  74. package/dist/src/pages/findReservation/FindReservationResults.js +1 -1
  75. package/dist/src/pages/findReservation/FindReservationResults.js.map +1 -1
  76. package/dist/src/pages/findReservation/ReservationRow.js +10 -9
  77. package/dist/src/pages/findReservation/ReservationRow.js.map +1 -1
  78. package/dist/src/pages/hotel/HotelInfo.js +7 -6
  79. package/dist/src/pages/hotel/HotelInfo.js.map +1 -1
  80. package/dist/src/providers/RoomstayThemeEngine.js +7 -2
  81. package/dist/src/providers/RoomstayThemeEngine.js.map +1 -1
  82. package/dist/src/providers/ShadowDomManager.d.ts +21 -0
  83. package/dist/src/providers/ShadowDomManager.js +55 -0
  84. package/dist/src/providers/ShadowDomManager.js.map +1 -0
  85. package/dist/src/providers/StyleInjector.d.ts +42 -0
  86. package/dist/src/providers/StyleInjector.js +118 -0
  87. package/dist/src/providers/StyleInjector.js.map +1 -0
  88. package/dist/src/providers/storage/SessionProvider.js.map +1 -1
  89. package/dist/src/stories/EnhancedPhoneNumberField.stories.d.ts +1 -1
  90. package/dist/src/translations/Translation.d.ts +3 -0
  91. package/dist/src/translations/Translation.js +3 -0
  92. package/dist/src/translations/Translation.js.map +1 -1
  93. package/dist/src/translations/languages/en-gb.js +3 -0
  94. package/dist/src/translations/languages/en-gb.js.map +1 -1
  95. package/dist/src/util/Analytics/Analytics.js +1 -0
  96. package/dist/src/util/Analytics/Analytics.js.map +1 -1
  97. package/dist/src/util/ObjectHelper.d.ts +1 -0
  98. package/dist/src/util/ObjectHelper.js +5 -1
  99. package/dist/src/util/ObjectHelper.js.map +1 -1
  100. package/dist/test.bundle.js +1 -1
  101. package/dist/vendors.bundle.js +1 -1
  102. package/package.json +1 -1
  103. package/dist/326.bundle.js +0 -2
  104. package/dist/686.bundle.js +0 -1
  105. /package/dist/{326.bundle.js.LICENSE.txt → 219.bundle.js.LICENSE.txt} +0 -0
@@ -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(38342),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(51690),E=n(7832),f=n(23365),p=n(72258),h=n(39136),C=n(60281),y=n(84544),w=n(90292),R=n(67023),Z=n(70885),N=n(64854),S=n(20858),x=n(78886),P=n(33409),b=n(2927),I=n(30584),A=n(73633),k=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,F=(0,r.$)().t;(0,a.useEffect)((function(){var e=[],n=[];if(A.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 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:k.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:x.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(S.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),$=n(43261);function Y(e){(0,g.WP)().hotel;var t,n,l,o,i,s=(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(),infants:null===(l=e.row)||void 0===l?void 0:l.getInfants()}),m=(0,r.$)().t,u=null!==(o=null===(i=e.row)||void 0===i?void 0:i.getAdults())&&void 0!==o?o:1;return a.createElement(V.P,{nativeOnMobile:!0,options:(0,v.Z)(Array(s)).map((function(e,t){return t+=1,{text:$.Z.pluralWithDictAndCount(t,c.W.Step.Date.Adult,m),value:t.toString()}})),value:null==u?void 0:u.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:$.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,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:$.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,o,i,s=(0,a.useContext)(l.hy),m=(0,a.useContext)(l.g7),u=(0,g.WP)().hotel,d=(0,g._)().guestDateFormat,v=(0,J.X)().showChildren,E=(0,r.$)().t,f=(0,K.i)().isMobile,p=(0,a.useState)(!1),h=(0,Z.Z)(p,2),C=h[0],R=h[1],S=(0,a.useState)(!0),b=(0,Z.Z)(S,2),A=b[0],k=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=F()("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],Q=_[1];(0,a.useEffect)((function(){C&&!B&&R(!1)}),[s.selectBasketRow]);var ee=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)},te=function(e,t){e&&D.setStartDate(e),t&&D.setEndDate(t),s.updateBasketRow(D)},ne=function(e){s.onDatePickerOpenChange(e)},le=s.currentBasketRows.length>1,ae=a.createElement("div",{className:"room-builder-progress--remove"},a.createElement(z.Z,{title:le?"Remove this room":"Cannot remove this room as at least one must be selected."},a.createElement(N.Z,{isText:!0,icon:x.Tu.Close,iconPosition:"right",stopIconAnimation:!0,disabled:!le,onClick:function(){y.ZP.instance.sendInteraction("Remove Room",y.s_.BUTTON,y._J.ROOMS),s.removeBasketRow(D)}}))),re=a.createElement("div",{className:"room-builder-progress--collapse"},a.createElement(N.Z,{isText:!0,icon:A?x.Tu.ArrowDown3:x.Tu.ArrowUp3,iconPosition:"right",stopIconAnimation:!0,onClick:function(){k((function(e){return!e}))}})),oe=m.screenSize>w.Z.ExtraLarge,ie=oe||B,ce=(0,a.useMemo)((function(){return 1!==s.currentBasketRows.length?e.number+1:""}),[s.currentBasketRows.length,e.number]),se=(null==D?void 0:D.getPromoCodeTooltip(E,c.W))||"",me=function(){Q(!0)},ue=function(e){ee({adults:+e})},de=function(e){ee({children:+e})},ve=function(e){ee({infants:+e})},ge=D.getPromoCode(null==u?void 0:u.memberOnlyPromoCode),Ee=(0,a.useMemo)((function(){return a.createElement("div",{className:"room-builder-progress--value"},a.createElement(G.Z,{startDate:D.getStartDate(),endDate:D.getEndDate(),selectedDateChanged:te,className:"u-w-100@xl- d-flex align-items-center justify-content-center",isAboveNav:!0,onDatePickerOpenChange:ne},a.createElement(z.Z,{title:E(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(d)),a.createElement(x.ZP,{icon:x.Tu.ArrowRight2}),a.createElement(I.ZP,{color:M.Il.Accent,bold:!0,className:"u-nowrap"},D.getDepartureDate(d))))))}),[D,ne]),fe=(0,a.useMemo)((function(){var e;return a.createElement(a.Fragment,null,a.createElement(z.Z,{title:E(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(Y,{row:D,onChange:ue}))),v?a.createElement(z.Z,{title:E(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:de}))):null,null!=u&&null!==(e=u.childConfiguration)&&void 0!==e&&e.supportInfants?a.createElement(z.Z,{title:E(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:ve}))):null,a.createElement(a.Fragment,null,f?null:Ee,a.createElement(z.Z,{title:se,wrapperClasses:"u-w-100@xl- d-flex"},a.createElement("div",{className:"room-builder-progress--value u-cursor-pointer",ref:W,onClick:me},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:ge?D.getPromoCodeColour():M.Il.Navy},ge||E(c.W.Step.Date.PromoCode)),a.createElement(x.ZP,{icon:x.Tu.Dropdown,color:M.Il.DarkGrey}))))))}),[D,f,ge,se,v,null==u?void 0:u.childConfiguration,ue,de,ve]);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"},E(c.W.Step.Room.EditingRoom)," ",ce)):a.createElement(I.ZP,null,a.createElement("strong",{className:"u-nowrap"},E(c.W.Step.Room.SelectRoom)," ",ce))),ie?a.createElement(a.Fragment,null,!oe&&a.createElement("div",{className:"w-100 d-flex"+(ie?" u-marg-bottom@xl-":"")},a.createElement(I.ZP,{type:I.yG.Small,color:M.Il.DarkGrey,inline:!0},E(c.W.Step.Room.ChooseRoomBelow))),a.createElement(a.Fragment,null,f?Ee:null),f?a.createElement("div",{className:"w-100"},a.createElement(U.Z,{open:!A},a.createElement("div",{className:"w-100 u-flex flex-column"},fe))):fe,a.createElement(L.a,{open:V,followElement:W.current,onClose:function(){Q(!1)}},a.createElement("div",{className:"u-pad--heavy"},a.createElement("div",null,a.createElement(j.Z,{value:ge,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&&Q(!1))},valid:(null===(n=s.selectedBasketRow)||void 0===n?void 0:n.getPromoCodeStatus())!==X.V.New&&ge?(null===(o=s.selectedBasketRow)||void 0===o?void 0:o.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),Q(!1)}},E(c.W.Misc.Cancel))))),!oe&&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)}},E(c.W.Misc.Save))):a.createElement("div",{className:"w-100"},a.createElement(I.ZP,{type:I.yG.Small,color:M.Il.DarkGrey},E(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)}},E(c.W.Misc.Cancel).toUpperCase())))),a.createElement("div",{className:"u-flex align-items-center flex-row"},f&&re,ae))):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,D.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"},$.Z.pluralWithDictAndCount(D.getAdults(),c.W.Step.Date.Adult,E),v?a.createElement(a.Fragment,null,", ",$.Z.pluralWithDictAndCount(D.getChildren(),c.W.Step.Date.Child,E)):null,null!=u&&null!==(i=u.childConfiguration)&&void 0!==i&&i.supportInfants?a.createElement(a.Fragment,null,", ",$.Z.pluralWithDictAndCount(D.getInfants(),c.W.Step.Date.Infant,E)):null))),a.createElement(I.ZP,{type:I.yG.Caption,color:M.Il.DarkGrey},a.createElement("strong",null,D.getStayDateRange(d," -")))),ge&&D.isPromoCodeValid()&&a.createElement("div",{className:"u-marg-left d-flex align-items-center"},a.createElement(P.ZP,{type:P.Rm.Success,icon:x.Tu.Money},ge))),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:E(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)}},E(c.W.Misc.Edit).toUpperCase())))),ae)))}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,o=e.canAddAnotherRoom,i=(0,r.$)().t,s=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})})),o?a.createElement("div",{className:"u-flex justify-content-end"},a.createElement(te,{icon:x.Tu.Add,onClick:s,stopIconAnimation:!0},i(c.W.Step.Room.RoomInfo.AddRoom))):a.createElement(a.Fragment,null)),a.createElement(ee.y,null))}),[t,i])}var le=n(87933),ae=n(4511);function re(){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(ae.Z,null),a.createElement(U.Z,{open:n},a.createElement(le.ZP,{icon:x.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 oe=function(e){return(0,a.useContext)(l.g7).screenSize<=w.Z.Medium?a.createElement(a.Fragment,null,a.createElement(re,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(re,null))},ie=n(49368);function ce(){var e=(0,a.useContext)(l.hy),t=(0,a.useContext)(l.g7),n=t.roomRateCalendarInteractivity,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),S=(0,a.useRef)(null),x=t.currentRoomSort,P=(0,a.useRef)(null);return(0,a.useEffect)((function(){return function(){S.current&&clearTimeout(S.current)}}),[]),(0,a.useMemo)((function(){var l,i=(0,v.Z)(c);0!==i.length&&i.sort(C.Z.getSortByFunction(x)),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==n||!n.rateCode||null==n||!n.roomCode),g=m||!s;u&&(P.current=c),!e.isDatePickerOpen&&!m&&i.length>0&&(S.current&&clearTimeout(S.current),S.current=setTimeout((function(){u||function(){if(N.current&&P.current!==c){P.current=c;var e=t.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==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(oe,null,!m&&Z?a.createElement(T,{key:Z.code,room:Z}):null),h)}),[c,m,s,u,x,t.currentFilters,e.loadedPromotion,e.isDatePickerOpen,r,n])}var se=n(38279),me=n(31972),ue=n(40370),de=n(4221),ve=n(95692),ge=function(){var e=(0,a.useContext)(l.g7),t=e.roomRateCalendarInteractivity,n=e.setRoomRateCalendarInteractivity,v=(0,a.useContext)(l.aN).currentStep,g=(0,o.TH)(),E=(0,r.$)().t;return(0,a.useEffect)((function(){return function(){t&&n(null)}}),[v]),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(v),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(38342),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(51690),E=n(7832),f=n(23365),p=n(72258),h=n(39136),C=n(60281),y=n(84544),w=n(90292),R=n(67023),Z=n(70885),N=n(64854),S=n(20858),x=n(78886),P=n(33409),b=n(2927),I=n(30584),A=n(73633),k=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,F=(0,r.$)().t;(0,a.useEffect)((function(){var e=[],n=[];if(A.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 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:k.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:x.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(S.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),$=n(43261);function Y(e){(0,g.WP)().hotel;var t,n,l,o,i,s=(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(),infants:null===(l=e.row)||void 0===l?void 0:l.getInfants()}),m=(0,r.$)().t,u=null!==(o=null===(i=e.row)||void 0===i?void 0:i.getAdults())&&void 0!==o?o:1;return a.createElement(V.P,{nativeOnMobile:!0,options:(0,v.Z)(Array(s)).map((function(e,t){return t+=1,{text:$.Z.pluralWithDictAndCount(t,c.W.Step.Date.Adult,m),value:t.toString()}})),value:null==u?void 0:u.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:$.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:$.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,g._)().guestDateFormat,v=(0,J.X)().showChildren,E=(0,r.$)().t,f=(0,X.i)().isMobile,p=((0,K.t)().signedInUser,(0,a.useState)(!1)),h=(0,Z.Z)(p,2),C=h[0],R=h[1],S=(0,a.useState)(!0),b=(0,Z.Z)(S,2),A=b[0],k=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=F()("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:x.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:A?x.Tu.ArrowDown3:x.Tu.ArrowUp3,iconPosition:"right",stopIconAnimation:!0,onClick:function(){k((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(E,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.getPromoCode(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:E(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(d)),a.createElement(x.ZP,{icon:x.Tu.ArrowRight2}),a.createElement(I.ZP,{color:M.Il.Accent,bold:!0,className:"u-nowrap"},D.getDepartureDate(d))))))}),[D,le]),pe=(0,a.useMemo)((function(){var e;return a.createElement(a.Fragment,null,a.createElement(z.Z,{title:E(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(Y,{row:D,onChange:de}))),v?a.createElement(z.Z,{title:E(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:E(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,f?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||E(c.W.Step.Date.PromoCode)),a.createElement(x.ZP,{icon:x.Tu.Dropdown,color:M.Il.DarkGrey}))))))}),[D,f,Ee,me,v,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"},E(c.W.Step.Room.EditingRoom)," ",se)):a.createElement(I.ZP,null,a.createElement("strong",{className:"u-nowrap"},E(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},E(c.W.Step.Room.ChooseRoomBelow))),a.createElement(a.Fragment,null,f?fe:null),f?a.createElement("div",{className:"w-100"},a.createElement(U.Z,{open:!A},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)}},E(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)}},E(c.W.Misc.Save))):a.createElement("div",{className:"w-100"},a.createElement(I.ZP,{type:I.yG.Small,color:M.Il.DarkGrey},E(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)}},E(c.W.Misc.Cancel).toUpperCase())))),a.createElement("div",{className:"u-flex align-items-center flex-row"},f&&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"},$.Z.pluralWithDictAndCount(D.getAdults(),c.W.Step.Date.Adult,E),v?a.createElement(a.Fragment,null,", ",$.Z.pluralWithDictAndCount(D.getChildren(),c.W.Step.Date.Child,E)):null,null!=u&&null!==(i=u.childConfiguration)&&void 0!==i&&i.supportInfants?a.createElement(a.Fragment,null,", ",$.Z.pluralWithDictAndCount(D.getInfants(),c.W.Step.Date.Infant,E)):null))),a.createElement(I.ZP,{type:I.yG.Caption,color:M.Il.DarkGrey},a.createElement("strong",null,D.getStayDateRange(d," -")))),Ee&&D.isPromoCodeValid()&&a.createElement("div",{className:"u-marg-left d-flex align-items-center"},a.createElement(P.ZP,{type:P.Rm.Success,icon:x.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:E(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)}},E(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.canAddAnotherRoom,i=(0,r.$)().t,s=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})})),o?a.createElement("div",{className:"u-flex justify-content-end"},a.createElement(ne,{icon:x.Tu.Add,onClick:s,stopIconAnimation:!0},i(c.W.Step.Room.RoomInfo.AddRoom))):a.createElement(a.Fragment,null)),a.createElement(te.y,null))}),[t,i])}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(U.Z,{open:n},a.createElement(ae.ZP,{icon:x.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.hy),t=(0,a.useContext)(l.g7),n=t.roomRateCalendarInteractivity,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),S=(0,a.useRef)(null),x=t.currentRoomSort,P=(0,a.useRef)(null);return(0,a.useEffect)((function(){return function(){S.current&&clearTimeout(S.current)}}),[]),(0,a.useMemo)((function(){var l,i=(0,v.Z)(c);0!==i.length&&i.sort(C.Z.getSortByFunction(x)),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==n||!n.rateCode||null==n||!n.roomCode),g=m||!s;u&&(P.current=c),!e.isDatePickerOpen&&!m&&i.length>0&&(S.current&&clearTimeout(S.current),S.current=setTimeout((function(){u||function(){if(N.current&&P.current!==c){P.current=c;var e=t.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,x,t.currentFilters,e.loadedPromotion,e.isDatePickerOpen,r,n])}var me=n(38279),ue=n(31972),de=n(40370),ve=n(4221),ge=n(95692),Ee=function(){var e=(0,a.useContext)(l.g7),t=e.roomRateCalendarInteractivity,n=e.setRoomRateCalendarInteractivity,v=(0,a.useContext)(l.aN).currentStep,g=(0,o.TH)(),E=(0,r.$)().t;return(0,a.useEffect)((function(){return function(){t&&n(null)}}),[v]),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(v),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))))}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[291],{71291:function(e,n,t){t.d(n,{c:function(){return Z},u:function(){return O}});var r=t(42982),o=t(4942),a=t(15861),u=t(70885),i=t(64687),s=t.n(i),l=t(94184),c=t.n(l),f=t(67294),d=t(62364),v=t(41321),p=t(514);function m(e,n){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!t){if(Array.isArray(e)||(t=function(e,n){if(e){if("string"==typeof e)return y(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?y(e,n):void 0}}(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}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,u=!0,i=!1;return{s:function(){t=t.call(e)},n:function(){var e=t.next();return u=e.done,e},e:function(e){i=!0,a=e},f:function(){try{u||null==t.return||t.return()}finally{if(i)throw a}}}}function y(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function h(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,r)}return t}function g(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?h(Object(t),!0).forEach((function(n){(0,o.Z)(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):h(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var b,w=null,S=null,j=function(){var e,n,t,r,o,a,u=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"standard",i=(0,p.W)().hotel,s=null!==(e=null==i||null===(n=i.vgs)||void 0===n||null===(t=n.vaultNames)||void 0===t?void 0:t.members)&&void 0!==e?e:"tntjyo5u2pi",l=null!==(r=null==i||null===(o=i.vgs)||void 0===o||null===(a=o.vaultNames)||void 0===a?void 0:a.standard)&&void 0!==r?r:"tntmupn9ras";return"members"===u?s:l};window.VGSCollect=window.VGSCollect||{};var O=function(e){var n=j("members"),t=(0,f.useState)(btoa((Math.random()*Math.random()*Date.now()).toString()).replace(/=/gi,"")),r=(0,u.Z)(t,1)[0],i=(0,f.useState)(!1),l=(0,u.Z)(i,2),c=l[0],p=l[1],m=(0,f.useRef)(null);(0,f.useEffect)((function(){null===w&&(w=(0,a.Z)(s().mark((function e(){return s().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,d.Z.loadScript("https://js.verygoodvault.com/vgs-show/2.0.2/show.js","vgs-show");case 3:b=window.VGSShow.create(n,(function(e){})).setEnvironment("live"),e.next=9;break;case 6:e.prev=6,e.t0=e.catch(0),console.error("Unable to load vgs-show "+e.t0.message);case 9:case"end":return e.stop()}}),e,null,[[0,6]])})))())}),[]);var y=function(){var n=(0,a.Z)(s().mark((function n(){var t;return s().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,(0,v.v)();case 2:t=n.sent,b&&null!=m&&m.current&&(m.current.classList.add(r),p(!0),t.currentAuthenticatedUser().then((function(n){var t=n.signInUserSession.idToken.jwtToken,a=b.request({name:e.name,method:"POST",path:"/members/vgs-auth",payload:(0,o.Z)({},e.name,"".concat(e.value)),headers:{Authorization:t},serializers:[b.SERIALIZERS.replace("(\\d{4})(\\d{4})(\\d{4})(\\d{4})","$1 $2 $3 $4")],htmlWrapper:"text",jsonPathSelector:"".concat(e.name)});a.on("revealSuccess",(function(){p(!1)})),a.on("revealFail",(function(){p(!1)})),m.current&&(m.current.innerHTML=""),a.render(".".concat(r),e.styles)})));case 4:case"end":return n.stop()}}),n)})));return function(){return n.apply(this,arguments)}}();return(0,f.useEffect)((function(){y()}),[b,m,e.name,e.value]),{targetRef:m,isLoading:c}},Z=function(e){var n=j(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"standard"),t=e.map((function(){return(0,f.useRef)(null)})),o=function(e){return g(g({name:e.name,type:e.type},e.vgsProps),{},{disabled:e.vgsProps.disabled||void 0})},i=(0,f.useState)(!1),l=(0,u.Z)(i,2),v=l[0],p=l[1],y=(0,f.useState)(null),h=(0,u.Z)(y,2),b=h[0],w=h[1],O=(0,f.useState)(e.map((function(e){return{isFocused:!1,isValid:!1,name:e.name,label:e.label,type:e.type,vgsInput:null}}))),Z=(0,u.Z)(O,2),P=Z[0],k=Z[1];return(0,f.useEffect)((function(){var e=!1;return null===S?S=(0,a.Z)(s().mark((function n(){return s().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,d.Z.loadScript("https://js.verygoodvault.com/vgs-collect/2.18.1/vgs-collect.js","vgs-collect");case 2:e||p(!0);case 3:case"end":return n.stop()}}),n)})))():S.then((function(){e||p(!0)})),function(){e=!0}}),[]),(0,f.useEffect)((function(){var a,u=m(t);try{for(u.s();!(a=u.n()).done;){var i=a.value;if(null==i||!i.current)return}}catch(e){u.e(e)}finally{u.f()}if(v&&!b){var s=window.VGSCollect.create(n,"live",(function(e){k((function(n){var t,o=(0,r.Z)(n),a=m(o);try{for(a.s();!(t=a.n()).done;){var u=t.value,i=e[u.name];i&&(u.isFocused=i.isFocused,u.isValid=i.isEmpty?null:i.isValid,"card-number"===u.type&&(u.cardType=i.cardType))}}catch(e){a.e(e)}finally{a.f()}return o}))}));w(s),k((function(n){for(var a=(0,r.Z)(n),u=0;u<a.length;u++){var i=a[u],l=e[u];i.vgsInput=s.field(t[u].current,o(l))}return a}))}}),[v,b,t]),{fields:e.map((function(n,r){return{ref:t[r],state:P[r],getClasses:function(n){return function(n,t){var r,o=P[n],a=e[n];return o?c()("c-input","c-input--vgs",t,{"--selected":o.isFocused,"--success":null!==o.isValid&&o.isValid,"--error":null!==o.isValid&&!o.isValid,"--disabled":!(null==a||null===(r=a.vgsProps)||void 0===r||!r.disabled)}):""}(r,n)}}})),triggerFieldUpdate:function(){var n,r=m(t);try{for(r.s();!(n=r.n()).done;){var a=n.value;if(null==a||!a.current)return}}catch(e){r.e(e)}finally{r.f()}if(b)for(var u=0;u<P.length;u++){var i,s,l=P[u],c=e[u];l.vgsInput&&(null===(i=(s=l.vgsInput).update)||void 0===i||i.call(s,o(c)))}},vgsForm:b}}}}]);
@@ -1 +1 @@
1
- (("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[446],{50683:function(e,t,n){"use strict";n.d(t,{O:function(){return r}}),n(67294);var r=function(){throw new Error("The `Tab` component is not meant to be rendered! It's an abstract component that is only valid as a direct Child of the `Tabs` Component. For custom tabs components use TabPane and TabsContainer directly")}},71639:function(e,t,n){"use strict";n.d(t,{Z:function(){return x}});var r=n(87462),a=n(67294),o=n(50221),i=n(14289),l=n(19874);function s(e,t){var n=0;return a.Children.map(e,(function(e){return a.isValidElement(e)?t(e,n++):e}))}var c=n(70885),u=a.createContext({activeKey:"",lastIndex:0,currentIndex:0,onChange:function(){}}),p=function(e){var t=e.children,n=e.defaultActiveKey,r=e.onChange,o=(0,a.useState)(""),i=(0,c.Z)(o,2),l=i[0],s=i[1],p=(0,a.useState)(0),d=(0,c.Z)(p,2),f=d[0],v=d[1],m=(0,a.useState)(0),b=(0,c.Z)(m,2),h=b[0],y=b[1],C={activeKey:l,lastIndex:f,currentIndex:h,onChange:function(e,t){null==r||r(e),v(h),y(t),s(e)}};return(0,a.useEffect)((function(){s(n)}),[]),a.createElement(u.Provider,{value:C},t)},d=n(94184),f=n.n(d),v=n(89250),m=n(79655),b=n(30584),h=n(97754),y=function(e){var t=e.index,n=e.title,r=e.navPath,o=e.disabled,i=e.preventScrollTop;if(!n)return null;var l=(0,v.TH)(),s=(0,v.s0)(),c=(0,a.useContext)(u),p={pathname:r,search:l.search};return a.createElement("li",null,a.createElement(m.OL,{to:p,state:{preventScrollTop:i},className:function(e){var t=e.isActive;return f()("c-nav-item",{active:t,disabled:o})},end:!0,onClick:function(e){e.preventDefault(),o||(s(p,{state:{preventScrollTop:i}}),c.onChange(r,t))}},a.createElement("span",{className:f()("c-nav-link")},a.createElement(b.ZP,{color:h.Il.DarkGrey,bold:!0},n))))},C=n(4942),w=n(88144);function A(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function g(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?A(Object(n),!0).forEach((function(t){(0,C.Z)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):A(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function E(e){var t=e.children,n=(0,a.useContext)(u),r=(0,v.TH)(),o=(0,w.Yz)(n.activeKey,{from:{opacity:0,position:"absolute"},to:{opacity:1,position:"relative"},enter:{opacity:1,position:"relative"},leave:{opacity:0,position:"absolute"},config:{friction:25}}),i=t[0].props.navPath;return a.createElement("div",{className:"u-pos-rel"},o((function(e){return a.createElement(w.q.div,{style:g({left:0,right:0},e)},a.createElement(v.Z5,null,s(t,(function(e){return a.createElement(v.AW,{path:e.props.navPath,element:e.props.children,key:e.props.navPath})})),a.createElement(v.AW,{path:"*",element:a.createElement(v.Fg,{to:{pathname:i,search:r.search},replace:!0})})))})))}var _=n(16625),O=n.n(_),P={slidesPerView:"auto",allowTouchMove:!0,spaceBetween:32,noSwiping:!1},x=function(e){var t=(0,i.Ch)(e,{activeKey:"onSelect"}),n=t.onSelect,c=t.children,u=t.variant,d=void 0===u?"tabs":u,f=t.activeKey,v=void 0===f?null:f,m=t.fullBleedOnLineBreak,b=void 0===m||m;return a.createElement(p,{defaultActiveKey:v||"",onChange:n},a.createElement("ul",{className:"c-nav c-nav-".concat(d," ").concat(O().tabCarousel)},a.createElement(o.tq,P,s(c,(function(e,t){return a.createElement(o.o5,{key:t},a.createElement(y,(0,r.Z)({index:t},e.props),e))})))),a.createElement(l.Z,{noMargins:!0,fullBleed:b}),a.createElement(E,null,e.children))}},42695:function(e,t,n){(t=n(23645)(!0)).push([e.id,".tabs-module__tabCarousel___2yGDn{width:100%}.tabs-module__tabCarousel___2yGDn .swiper{width:100%;overflow:visible;z-index:0}.tabs-module__tabCarousel___2yGDn .swiper .swiper-wrapper .swiper-slide{width:auto}","",{version:3,sources:["tabs.module.scss"],names:[],mappings:"AAAA,kCAAa,UAAU,CAAC,0CAA6B,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,wEAA2D,UAAU",file:"tabs.module.scss",sourcesContent:[".tabCarousel{width:100%}.tabCarousel :global .swiper{width:100%;overflow:visible;z-index:0}.tabCarousel :global .swiper .swiper-wrapper .swiper-slide{width:auto}"]}]),t.locals={tabCarousel:"tabs-module__tabCarousel___2yGDn"},e.exports=t},16625:function(e,t,n){var r=n(93379),a=n(42695);"string"==typeof(a=a.__esModule?a.default:a)&&(a=[[e.id,a,""]]);r(a,{insert:"head",singleton:!1}),e.exports=a.locals||{}}}]);
1
+ (("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[446],{50683:function(e,t,n){"use strict";n.d(t,{O:function(){return r}}),n(67294);var r=function(){throw new Error("The `Tab` component is not meant to be rendered! It's an abstract component that is only valid as a direct Child of the `Tabs` Component. For custom tabs components use TabPane and TabsContainer directly")}},71639:function(e,t,n){"use strict";n.d(t,{Z:function(){return S}});var r=n(87462),a=n(67294),o=n(50221),i=n(14289),l=n(19874);function s(e,t){var n=0;return a.Children.map(e,(function(e){return a.isValidElement(e)?t(e,n++):e}))}var c=n(70885),u=a.createContext({activeKey:"",lastIndex:0,currentIndex:0,onChange:function(){}}),p=function(e){var t=e.children,n=e.defaultActiveKey,r=e.onChange,o=(0,a.useState)(""),i=(0,c.Z)(o,2),l=i[0],s=i[1],p=(0,a.useState)(0),d=(0,c.Z)(p,2),f=d[0],v=d[1],m=(0,a.useState)(0),h=(0,c.Z)(m,2),b=h[0],y=h[1],C={activeKey:l,lastIndex:f,currentIndex:b,onChange:function(e,t){null==r||r(e),v(b),y(t),s(e)}};return(0,a.useEffect)((function(){s(n)}),[]),a.createElement(u.Provider,{value:C},t)},d=n(94184),f=n.n(d),v=n(89250),m=n(79655),h=n(30584),b=n(97754),y=function(e){var t=e.index,n=e.title,r=e.navPath,o=e.disabled,i=e.preventScrollTop;if(!n)return null;var l=(0,v.TH)(),s=(0,v.s0)(),c=(0,a.useContext)(u),p={pathname:r,search:l.search};return a.createElement("li",null,a.createElement(m.OL,{to:p,state:{preventScrollTop:i},className:function(e){var t=e.isActive;return f()("c-nav-item",{active:t,disabled:o})},end:!0,onClick:function(e){e.preventDefault(),o||(s(p,{state:{preventScrollTop:i}}),c.onChange(r,t))}},a.createElement("span",{className:f()("c-nav-link")},a.createElement(h.ZP,{color:b.Il.DarkGrey,bold:!0},n))))},C=n(4942),w=n(88144);function A(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function g(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?A(Object(n),!0).forEach((function(t){(0,C.Z)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):A(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function E(e){var t=e.children,n=(0,a.useContext)(u),r=(0,v.TH)(),o=(0,w.Yz)(n.activeKey,{from:{opacity:0,position:"absolute"},to:{opacity:1,position:"relative"},enter:{opacity:1,position:"relative"},leave:{opacity:0,position:"absolute"},config:{friction:25}}),i=t[0].props.navPath;return a.createElement("div",{className:"u-pos-rel"},o((function(e){return a.createElement(w.q.div,{style:g({left:0,right:0},e)},a.createElement(v.Z5,null,s(t,(function(e){return a.createElement(v.AW,{path:e.props.navPath,element:e.props.children,key:e.props.navPath})})),a.createElement(v.AW,{path:"*",element:a.createElement(v.Fg,{to:{pathname:i,search:r.search},replace:!0})})))})))}var _=n(66573),O=n.n(_),P={slidesPerView:"auto",allowTouchMove:!0,spaceBetween:32,noSwiping:!1},S=function(e){var t=(0,i.Ch)(e,{activeKey:"onSelect"}),n=t.onSelect,c=t.children,u=t.variant,d=void 0===u?"tabs":u,f=t.activeKey,v=void 0===f?null:f,m=t.fullBleedOnLineBreak,h=void 0===m||m;return a.createElement(p,{defaultActiveKey:v||"",onChange:n},a.createElement("ul",{className:"c-nav c-nav-".concat(d," ").concat(O().tabCarousel)},a.createElement(o.tq,P,s(c,(function(e,t){return a.createElement(o.o5,{key:t},a.createElement(y,(0,r.Z)({index:t},e.props),e))})))),a.createElement(l.Z,{noMargins:!0,fullBleed:h}),a.createElement(E,null,e.children))}},42695:function(e,t,n){(t=n(23645)(!0)).push([e.id,".tabs-module__tabCarousel___2yGDn{width:100%}.tabs-module__tabCarousel___2yGDn .swiper{width:100%;overflow:visible;z-index:0}.tabs-module__tabCarousel___2yGDn .swiper .swiper-wrapper .swiper-slide{width:auto}","",{version:3,sources:["tabs.module.scss"],names:[],mappings:"AAAA,kCAAa,UAAU,CAAC,0CAA6B,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,wEAA2D,UAAU",file:"tabs.module.scss",sourcesContent:[".tabCarousel{width:100%}.tabCarousel :global .swiper{width:100%;overflow:visible;z-index:0}.tabCarousel :global .swiper .swiper-wrapper .swiper-slide{width:auto}"]}]),t.locals={tabCarousel:"tabs-module__tabCarousel___2yGDn"},e.exports=t},66573:function(e,t,n){var r=n(93379),a=n(42695);"string"==typeof(a=a.__esModule?a.default:a)&&(a=[[e.id,a,""]]),r(a,{insert:function(e){var t=window.__roomstayStyleInjector;t?t.insertStyle(e):document.head.appendChild(e)},singleton:!1}),e.exports=a.locals||{}}}]);