@roomstay/frontend 2.6.97-1 → 2.6.98

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 (114) hide show
  1. package/dist/177.bundle.js +1 -1
  2. package/dist/288.bundle.js +1 -1
  3. package/dist/328.bundle.js +1 -1
  4. package/dist/370.bundle.js +1 -1
  5. package/dist/434.bundle.js +1 -0
  6. package/dist/449.bundle.js +1 -1
  7. package/dist/537.bundle.js +1 -1
  8. package/dist/978.bundle.js +1 -1
  9. package/dist/main.bundle.js +1 -1
  10. package/dist/src/api/AvailabilityAPI.d.ts +5 -5
  11. package/dist/src/api/AvailabilityAPI.js +12 -12
  12. package/dist/src/api/AvailabilityAPI.js.map +1 -1
  13. package/dist/src/api/BaseAPI.d.ts +1 -2
  14. package/dist/src/api/BaseAPI.js.map +1 -1
  15. package/dist/src/api/HotelAPI.d.ts +1 -1
  16. package/dist/src/api/HotelAPI.js +18 -11
  17. package/dist/src/api/HotelAPI.js.map +1 -1
  18. package/dist/src/api/ReservationAPI.d.ts +2 -2
  19. package/dist/src/api/ReservationAPI.js +13 -3
  20. package/dist/src/api/ReservationAPI.js.map +1 -1
  21. package/dist/src/components/generic/PaymentCard/InlinePaymentOption.js +6 -1
  22. package/dist/src/components/generic/PaymentCard/InlinePaymentOption.js.map +1 -1
  23. package/dist/src/components/generic/TaxInclusionNotice/TaxInclusionNotice.d.ts +10 -0
  24. package/dist/src/components/generic/TaxInclusionNotice/TaxInclusionNotice.js +57 -0
  25. package/dist/src/components/generic/TaxInclusionNotice/TaxInclusionNotice.js.map +1 -0
  26. package/dist/src/components/generic/date/DatePicker.d.ts +5 -0
  27. package/dist/src/components/generic/date/DatePicker.js +10 -6
  28. package/dist/src/components/generic/date/DatePicker.js.map +1 -1
  29. package/dist/src/components/generic/date/DatePickerDay.js +2 -1
  30. package/dist/src/components/generic/date/DatePickerDay.js.map +1 -1
  31. package/dist/src/components/steps/addons/AddonCard.js +46 -7
  32. package/dist/src/components/steps/addons/AddonCard.js.map +1 -1
  33. package/dist/src/components/steps/confirmation/GiftCardRedemption.d.ts +2 -0
  34. package/dist/src/components/steps/confirmation/GiftCardRedemption.js +46 -0
  35. package/dist/src/components/steps/confirmation/GiftCardRedemption.js.map +1 -0
  36. package/dist/src/components/steps/confirmation/StepConfirmationForm.js +29 -11
  37. package/dist/src/components/steps/confirmation/StepConfirmationForm.js.map +1 -1
  38. package/dist/src/components/steps/date/StepDatePricePerRoom.js +3 -1
  39. package/dist/src/components/steps/date/StepDatePricePerRoom.js.map +1 -1
  40. package/dist/src/components/steps/hotel/HotelCard.js +3 -1
  41. package/dist/src/components/steps/hotel/HotelCard.js.map +1 -1
  42. package/dist/src/components/steps/hotel/HotelCardModal.js +3 -1
  43. package/dist/src/components/steps/hotel/HotelCardModal.js.map +1 -1
  44. package/dist/src/components/steps/room/AvailableUpgradesModal.js +2 -1
  45. package/dist/src/components/steps/room/AvailableUpgradesModal.js.map +1 -1
  46. package/dist/src/components/steps/room/LargeRoomCard.js +2 -6
  47. package/dist/src/components/steps/room/LargeRoomCard.js.map +1 -1
  48. package/dist/src/components/steps/room/RoomList.js +27 -6
  49. package/dist/src/components/steps/room/RoomList.js.map +1 -1
  50. package/dist/src/components/steps/room/RoomListCrossSellBlock.js +1 -1
  51. package/dist/src/components/steps/room/RoomListCrossSellBlock.js.map +1 -1
  52. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.js +4 -1
  53. package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.js.map +1 -1
  54. package/dist/src/components/steps/room/roomDetails/RoomDetails.js +2 -6
  55. package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
  56. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js +2 -6
  57. package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js.map +1 -1
  58. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +2 -1
  59. package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
  60. package/dist/src/components/steps/room/roomDetails/roomRates/ReadMoreRoomRateRow.js +2 -6
  61. package/dist/src/components/steps/room/roomDetails/roomRates/ReadMoreRoomRateRow.js.map +1 -1
  62. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js +27 -5
  63. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js.map +1 -1
  64. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js +12 -7
  65. package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js.map +1 -1
  66. package/dist/src/components/summary/BEMobileSummaryModal.js +2 -1
  67. package/dist/src/components/summary/BEMobileSummaryModal.js.map +1 -1
  68. package/dist/src/components/summary/BESummary.js +3 -2
  69. package/dist/src/components/summary/BESummary.js.map +1 -1
  70. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +37 -22
  71. package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -1
  72. package/dist/src/contexts/DatePickerContext.d.ts +1 -0
  73. package/dist/src/contexts/DatePickerContext.js.map +1 -1
  74. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextTypes.d.ts +8 -0
  75. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextTypes.js.map +1 -1
  76. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +3 -1
  77. package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
  78. package/dist/src/contexts/HotelOverridesContext.d.ts +1 -0
  79. package/dist/src/contexts/HotelOverridesContext.js +19 -0
  80. package/dist/src/contexts/HotelOverridesContext.js.map +1 -1
  81. package/dist/src/hooks/useCalendarNightStay.d.ts +2 -2
  82. package/dist/src/hooks/useCalendarNightStay.js +4 -4
  83. package/dist/src/hooks/useCalendarNightStay.js.map +1 -1
  84. package/dist/src/index.d.ts +1 -0
  85. package/dist/src/index.js +4 -2
  86. package/dist/src/index.js.map +1 -1
  87. package/dist/src/models/Addon/Addon.d.ts +1 -0
  88. package/dist/src/models/Addon/Addon.js.map +1 -1
  89. package/dist/src/models/Confirmation.d.ts +4 -0
  90. package/dist/src/models/Confirmation.js.map +1 -1
  91. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js +26 -3
  92. package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js.map +1 -1
  93. package/dist/src/pages/findReservation/FindReservationResults.js +2 -1
  94. package/dist/src/pages/findReservation/FindReservationResults.js.map +1 -1
  95. package/dist/src/pages/findReservation/ReservationRow.js +11 -6
  96. package/dist/src/pages/findReservation/ReservationRow.js.map +1 -1
  97. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomComponent.js +8 -1
  98. package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomComponent.js.map +1 -1
  99. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js +8 -0
  100. package/dist/src/pages/steps/StepRoom/StepRoomComponent.js.map +1 -1
  101. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js +2 -1
  102. package/dist/src/pages/steps/StepThanks/StepThanksComponent.js.map +1 -1
  103. package/dist/src/translations/Translation.d.ts +0 -4
  104. package/dist/src/translations/Translation.js +0 -4
  105. package/dist/src/translations/Translation.js.map +1 -1
  106. package/dist/src/translations/languages/en-gb.js +0 -4
  107. package/dist/src/translations/languages/en-gb.js.map +1 -1
  108. package/dist/src/util/Analytics/GoogleAnalytics4.d.ts +2 -2
  109. package/dist/src/util/Analytics/GoogleAnalytics4.js +2 -2
  110. package/dist/src/util/Analytics/GoogleAnalytics4.js.map +1 -1
  111. package/dist/test.bundle.js +1 -1
  112. package/dist/vendors.bundle.js +1 -1
  113. package/package.json +3 -3
  114. package/dist/870.bundle.js +0 -1
@@ -1 +1 @@
1
- "use strict";(("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[978],{26712:function(e,t,n){n.d(t,{e:function(){return o}});var l=n(15671),a=n(43144),i=n(60136),r=n(82963),c=n(61120);var o=function(e){(0,i.Z)(u,e);var t,n,o=(t=u,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,l=(0,c.Z)(t);if(n){var a=(0,c.Z)(this).constructor;e=Reflect.construct(l,arguments,a)}else e=l.apply(this,arguments);return(0,r.Z)(this,e)});function u(e){var t;return(0,l.Z)(this,u),(t=o.call(this)).basketRows=void 0,t.basketRows=e,t}return(0,a.Z)(u,null,[{key:"getLabel",value:function(){return"View/Addon"}}]),u}(n(97112).x)},19370:function(e,t,n){n.r(t),n.d(t,{default:function(){return Q}});var l=n(6058),a=n(26712),i=n(67294),r=n(26793),c=n(89250),o=n(79655),u=n(79478),d=n(13821),m=n(13010),s=n(46409),g=n(19874),E=n(47304),f=n(70885),v=n(89331),p=n(83893),y=n(7832),P=n(76598),h=n(94184),N=n.n(h),A=n(97754),S=function(e){return i.createElement("div",{className:e.className},i.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},i.createElement("rect",{width:"24",height:"24",rx:"12",fill:A.Il.Accent}),i.createElement("path",{d:"M7.33333 12L10.6667 15.3333L16.6667 9.33332L15.7267 8.38666L10.6667 13.4467L8.27333 11.06L7.33333 12Z",fill:"white"})))},R=n(64854),T=n(20858),b=n(11830),Z=n(16380),x=n(63351),_=n(30584),w=n(44744),C=n(84544),I=function(e){var t,n,a=e.addon,c=e.className,o=(0,r.$)().t,d=(0,v.WP)().hotel,s=i.useContext(l.hy),g=s.getRowForAddon(a),E=(0,i.useState)(1),p=(0,f.Z)(E,2),y=p[0],h=p[1],I=(0,i.useState)(g?g.getAdultQuantity():1),k=(0,f.Z)(I,2),D=k[0],W=k[1],G=(0,i.useState)(g?g.getChildQuantity():0),L=(0,f.Z)(G,2),O=L[0],M=L[1],H=(0,i.useState)({quantity:1}),Q=(0,f.Z)(H,2),z=Q[0],F=Q[1],U=(0,i.useState)(g?g.getSelectedDate():""),q=(0,f.Z)(U,2),Y=q[0],B=q[1],V=(0,i.useState)(g?g.getSelectedTime():""),j=(0,f.Z)(V,2),$=j[0],J=j[1];(0,i.useEffect)((function(){var e,t,n,l,i,r,c;g?(F(null!==(e=a.availability[g.getSelectedDate()])&&void 0!==e?e:a.availability[a.firstDate]),B(null!==(t=g.getSelectedDate())&&void 0!==t?t:a.firstDate),J(null!==(n=g.getSelectedTime())&&void 0!==n?n:""),h(g.getQuantity()),W(g.getAdultQuantity()),M(g.getChildQuantity())):(F(null!==(l=a.availability[a.firstDate])&&void 0!==l?l:[]),B(a.firstDate),J((null===(i=a.availability[a.firstDate])||void 0===i||null===(r=i.selectorTimes)||void 0===r||null===(c=r[0])||void 0===c?void 0:c.value)||""))}),[]);var K=N()({"--active":!!s.getRowForAddon(a)}),X=[{name:"Date",enabled:(null==g||null===(t=g.getNumberOfAvailableNights)||void 0===t?void 0:t.call(g))>1&&!(null!=g&&g.getAddon().hideDatePicker),element:i.createElement(x.P,{nativeOnMobile:!0,options:a.selectorDates,value:Y,onChange:function(e){var t,n,l,i;t=e,F(a.availability[t]),B(t),J((null===(n=a.availability[t])||void 0===n||null===(l=n.selectorTimes)||void 0===l||null===(i=l[0])||void 0===i?void 0:i.value)||""),a.availability[t].quantity<y&&h(a.availability[t].quantity)},keyName:"value",labelName:"text",className:"u-flex align-items-center"})},{name:"Time",enabled:0!==(null==z||null===(n=z.selectorTimes)||void 0===n?void 0:n.length),element:i.createElement(x.P,{nativeOnMobile:!0,options:(null==z?void 0:z.selectorTimes)||[],value:$,onChange:function(e){J(e)},keyName:"value",labelName:"text",className:"u-flex align-items-center"})},{name:u.W.Step.Addon.Quantity,enabled:(null==z?void 0:z.price)&&(null==z?void 0:z.quantity)>1,element:i.createElement(Z.Z,{number:y,min:1,max:z.quantity,onChange:function(e){h(e)}})},{name:u.W.Step.Date.Adult_plural,enabled:(null==z?void 0:z.adultPrice)&&a.pricingType!==P.EAddonPricingType.PER_ALL_PERSONS&&a.pricingType!==P.EAddonPricingType.PER_ALL_PERSONS_PER_NIGHT,element:i.createElement(Z.Z,{number:D,min:0,max:z.quantity-O,onChange:function(e){W(e)}})},{name:u.W.Step.Date.Child_plural,enabled:(null==z?void 0:z.childPrice)&&a.pricingType!==P.EAddonPricingType.PER_ALL_PERSONS&&a.pricingType!==P.EAddonPricingType.PER_ALL_PERSONS_PER_NIGHT,element:i.createElement(Z.Z,{number:O,min:0,max:z.quantity-D,onChange:function(e){M(e)}})}],ee=function(){switch(a.pricingType){case P.EAddonPricingType.PER_STAY:return o(u.W.Misc.QTY);case P.EAddonPricingType.PER_PERSON:return o(u.W.Misc.Person);case P.EAddonPricingType.PER_PERSON_OCCUPANCY_PER_NIGHT:case P.EAddonPricingType.PER_PERSON_PER_NIGHT:return o(u.W.Misc.PersonPerNight);case P.EAddonPricingType.PER_ADULT_OCCUPANCY_PER_NIGHT:case P.EAddonPricingType.PER_CHILD_OCCUPANCY_PER_NIGHT:return o(u.W.Misc.AdultPerNight);case P.EAddonPricingType.PER_NIGHT:case P.EAddonPricingType.PER_QUANTITY_NAME_PER_NIGHT:return o(u.W.Misc.Night);case P.EAddonPricingType.PER_ROOM_QUANTITY_PER_NIGHT:return o(u.W.Misc.PerRoomDay)}}(),te={};a.image?te.backgroundImage="url('".concat(w.Z.resizeImage(a.image,w.h.Original),"')"):(te.backgroundImage="url('".concat((null==d?void 0:d.logo)&&w.Z.resizeImage(null==d?void 0:d.logo,w.h.Original),"')"),te.backgroundSize="50%",te.backgroundRepeat="no-repeat");var ne=(null==d?void 0:d.fees)&&d.fees.filter((function(e){return e.appliesToAddons})).length>0;return i.createElement("div",{className:N()("u-flex u-flex-flex-start u-rounded addon-card-wrapper",c,K),style:{backgroundColor:A.Il.White}},i.createElement("div",{className:"addon-card-image",style:te}),i.createElement("div",{className:"u-marg-heavy u-marg@m- u-w-100@xl"},i.createElement("div",{className:"u-flex"},i.createElement(m.Z,{bold:!0},a.name),g?i.createElement(S,null):i.createElement(i.Fragment,null)),i.createElement(_.ZP,{color:A.Il.DarkGrey,type:_.yG.Small,asDiv:!0},i.createElement(b.R,{content:a.description})),i.createElement("div",{className:"addon-card-wrapper--price u-flex u-flex-align-flex-end"},i.createElement("div",{className:"u-w-100"},X.map((function(e){if(e.enabled)return i.createElement("div",{key:e.name,className:"u-flex justify-content-start u-marg-bot u-marg-top"},i.createElement(_.ZP,{className:"u-mw-100",bold:!0},o(e.name)),e.element)}))),i.createElement("div",{className:"addon-card-wrapper--price-action"},i.createElement("div",{className:"u-flex u-flex-direction-column u-flex-align-flex-end",style:{alignSelf:"flex-end"}},i.createElement(_.ZP,{type:_.yG.Small,color:A.Il.Navy,inline:!0},o(u.W.Misc.From)),i.createElement("div",{className:"room-details--content-price flex-align-items-baseline flex-row"},(null==z?void 0:z.price)&&i.createElement(i.Fragment,null,i.createElement("div",{className:"u-flex align-items-end"},i.createElement(m.Z,{size:"large",bold:!0,lineHeight:"1em"},i.createElement(T.Z,{hideDecimals:!0},z.price)),i.createElement(_.ZP,{type:_.yG.Small,color:A.Il.DarkGrey,inline:!0,className:"u-marg-left--light u-clear-font-weight"},"/ ",ee))),(!(null==z||!z.adultPrice)||!(null==z||!z.childPrice))&&i.createElement("h2",{className:"u-marg-none d-flex flex-wrap justify-content-end"},!!z.adultPrice&&i.createElement("div",{className:"d-flex align-items-end flex-row"},i.createElement(m.Z,{size:"large",bold:!0,lineHeight:"1em"},i.createElement(T.Z,null,z.adultPrice)),i.createElement(_.ZP,{type:_.yG.Small,color:A.Il.DarkGrey,inline:!0,className:"u-marg-left--light u-clear-font-weight"},"/"," ",a.pricingType===P.EAddonPricingType.PER_ALL_PERSONS_PER_NIGHT?o(u.W.Misc.AdultPerNight):o(u.W.Step.Date.Adult))),!!z.adultPrice&&!!z.childPrice&&i.createElement("br",null),!!z.childPrice&&i.createElement("div",{className:"d-flex align-items-end flex-row"},i.createElement(m.Z,{size:"large",bold:!0,lineHeight:"1em"},i.createElement(T.Z,null,z.childPrice)),i.createElement(_.ZP,{type:_.yG.Small,color:A.Il.DarkGrey,inline:!0,className:"u-marg-left--light u-clear-font-weight"},"/"," ",a.pricingType===P.EAddonPricingType.PER_ALL_PERSONS_PER_NIGHT?o(u.W.Misc.ChildPerNight):o(u.W.Step.Date.Child))))),i.createElement("div",{className:"u-marg-bottom--light"},i.createElement(_.ZP,{type:_.yG.Small,color:A.Il.Grey,inline:!0,className:"u-nowrap"},null!=d&&d.enableCreditCardSurcharge||ne?o(u.W.Step.Addon.ExcludingFees):o(u.W.Step.Addon.IncludingFeesAndTaxes)))),i.createElement("div",{className:"u-marg-top--light u-flex justify-content-end u-w-100@l- flex-column flex-lg-row"},g?i.createElement("div",{className:"u-marg-right--light@l u-marg-bottom--light@l-"},i.createElement(R.Z,{onClick:function(){var e=s.basketAddonRows.find((function(e){return e.getAddon().code===a.code}));e&&s.removeBasketAddonRow(e)},textColor:A.Il.White,backgroundColor:A.Il.Navy,wide:!0},o(u.W.Step.Addon.Remove))):i.createElement(i.Fragment,null),i.createElement(R.Z,{onClick:function(){s.setAddonQuantities(a,{quantity:y,adult:D,child:O},Y,$);var e=s.basketAddonRows.find((function(e){return e.getAddon().code===a.code})),t=s.currentBasketRows[0];e&&t&&C.ZP.instance.sendRoomAddonAddToCart(e,y,t.getStartDate(),t.getStartDate())},primary:!0,filled:!0,wide:!0},o(g?u.W.Step.Addon.UpdateCart:u.W.Step.Addon.AddToCart)))))))},k=n(62734),D=n(31972),W=function(){var e=(0,i.useContext)(l.hy),t=(0,i.useContext)(l.Qm),n=(0,v.WP)().hotel,a=e.getAllValidRows(),r=(0,i.useState)(null),c=(0,f.Z)(r,2),o=c[0],u=c[1],d=(0,i.useState)(!1),m=(0,f.Z)(d,2),g=m[0],E=m[1];return i.useEffect((function(){E(!0),p.Z.Addons.findAddons(a,null==n?void 0:n.hotelID).then((function(e){E(!1),u(e)}))}),[t.currentLanguage]),i.createElement("div",{className:"u-flex"},i.createElement(s.i5,null,i.createElement(s.mV,null,g?i.createElement(y.Z,null):null!=o&&o.length?o.map((function(e,t){return i.createElement(I,{key:t,className:"u-marg-bottom",addon:e})})):i.createElement(k.Z,null)),i.createElement(s.f,null,i.createElement(D.Z,null))))},G=n(38279),L=n(40370),O=n(16337),M=n(90292),H=n(95692);function Q(){var e=(0,i.useContext)(l.g7),t=(0,i.useContext)(l.aN).currentStep,n=(0,i.useContext)(l.hy).currentBasketRows,f=(0,c.TH)(),v=(0,r.$)().t,p=(0,O.z)().raise;return(0,i.useEffect)((function(){var e=new a.e(n);p(e)}),[]),i.createElement("div",{className:"container rs-step-addon"},i.createElement(E.V,{step:"Addon"}),i.createElement(L.default,null),i.createElement(s.i5,null,i.createElement(s.mV,null,e.screenSize>M.Z.Medium&&i.createElement(i.Fragment,null,i.createElement(o.rU,{to:{pathname:H.Z.getPreviousStepUrl(t),search:f.search}},i.createElement(d.Z,null)),i.createElement("div",{className:"u-marg-top--light u-marg-bottom--heavy"},i.createElement(m.Z,{bold:!0},v(u.W.Navigation.Steps.Addon))))),e.screenSize>M.Z.Medium&&i.createElement(s.f,null,i.createElement(G.Z,null))),e.screenSize>M.Z.Medium&&i.createElement(g.Z,null),i.createElement(W,null))}}}]);
1
+ "use strict";(("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[978],{26712:function(e,t,n){n.d(t,{e:function(){return u}});var l=n(15671),a=n(43144),i=n(60136),r=n(82963),c=n(61120);var u=function(e){(0,i.Z)(o,e);var t,n,u=(t=o,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,l=(0,c.Z)(t);if(n){var a=(0,c.Z)(this).constructor;e=Reflect.construct(l,arguments,a)}else e=l.apply(this,arguments);return(0,r.Z)(this,e)});function o(e){var t;return(0,l.Z)(this,o),(t=u.call(this)).basketRows=void 0,t.basketRows=e,t}return(0,a.Z)(o,null,[{key:"getLabel",value:function(){return"View/Addon"}}]),o}(n(97112).x)},19370:function(e,t,n){n.r(t),n.d(t,{default:function(){return z}});var l=n(6058),a=n(26712),i=n(67294),r=n(26793),c=n(89250),u=n(79655),o=n(79478),d=n(13821),s=n(13010),m=n(46409),g=n(19874),f=n(47304),E=n(70885),v=n(89331),y=n(83893),h=n(7832),p=n(76598),P=n(94184),N=n.n(P),A=n(97754),R=function(e){return i.createElement("div",{className:e.className},i.createElement("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},i.createElement("rect",{width:"24",height:"24",rx:"12",fill:A.Il.Accent}),i.createElement("path",{d:"M7.33333 12L10.6667 15.3333L16.6667 9.33332L15.7267 8.38666L10.6667 13.4467L8.27333 11.06L7.33333 12Z",fill:"white"})))},S=n(64854),b=n(20858),T=n(11830),Z=n(16380),x=n(63351),_=n(2927),w=n(30584),C=n(44744),k=n(84544),I=function(e){var t,n=e.addon,a=e.className,c=(0,r.$)().t,u=(0,v.WP)().hotel,d=i.useContext(l.hy),m=d.getRowForAddon(n),g=(0,i.useState)(1),f=(0,E.Z)(g,2),y=f[0],h=f[1],P=(0,i.useState)(m?m.getAdultQuantity():1),I=(0,E.Z)(P,2),D=I[0],G=I[1],W=(0,i.useState)(m?m.getChildQuantity():0),O=(0,E.Z)(W,2),L=O[0],M=O[1],H=(0,i.useState)({quantity:1}),Q=(0,E.Z)(H,2),z=Q[0],U=Q[1],q=(0,i.useState)(m?m.getSelectedDate():""),B=(0,E.Z)(q,2),F=B[0],Y=B[1],V=(0,i.useState)(m?m.getSelectedTime():""),j=(0,E.Z)(V,2),$=j[0],J=j[1];(0,i.useEffect)((function(){var e,t,l,a,i,r,c;m?(U(null!==(e=n.availability[m.getSelectedDate()])&&void 0!==e?e:n.availability[n.firstDate]),Y(null!==(t=m.getSelectedDate())&&void 0!==t?t:n.firstDate),J(null!==(l=m.getSelectedTime())&&void 0!==l?l:""),h(m.getQuantity()),G(m.getAdultQuantity()),M(m.getChildQuantity())):(U(null!==(a=n.availability[n.firstDate])&&void 0!==a?a:[]),Y(n.firstDate),J((null===(i=n.availability[n.firstDate])||void 0===i||null===(r=i.selectorTimes)||void 0===r||null===(c=r[0])||void 0===c?void 0:c.value)||""))}),[]);var K=N()({"--active":!!d.getRowForAddon(n)}),X=[p.EAddonPricingType.PER_PERSON,p.EAddonPricingType.PER_PERSON_PER_NIGHT].includes(n.pricingType),ee=[p.EAddonPricingType.PER_ALL_PERSONS,p.EAddonPricingType.PER_ALL_PERSONS_PER_NIGHT].includes(n.pricingType),te=X&&n.hideQuantity;(0,i.useEffect)((function(){if(X){var e=d.currentBasketRows;if(e&&0!==e.length){var t=e.reduce((function(e,t){return e+t.getAdults()}),0),n=e.reduce((function(e,t){return e+t.getChildren()}),0);G(t),null!=z&&z.childPrice?M(n):h(t)}}}),[n.code,X,null==z?void 0:z.childPrice,d.currentBasketRows]);var ne,le=[{name:"Date",enabled:(null==m||null===(ne=m.getNumberOfAvailableNights)||void 0===ne?void 0:ne.call(m))>1&&!(null!=m&&m.getAddon().hideDatePicker),element:i.createElement(x.P,{nativeOnMobile:!0,options:n.selectorDates,value:F,onChange:function(e){var t,l,a,i;t=e,U(n.availability[t]),Y(t),J((null===(l=n.availability[t])||void 0===l||null===(a=l.selectorTimes)||void 0===a||null===(i=a[0])||void 0===i?void 0:i.value)||""),n.availability[t].quantity<y&&h(n.availability[t].quantity)},keyName:"value",labelName:"text",className:"u-flex align-items-center"})},{name:"Time",enabled:0!==(null==z||null===(t=z.selectorTimes)||void 0===t?void 0:t.length),element:i.createElement(x.P,{nativeOnMobile:!0,options:(null==z?void 0:z.selectorTimes)||[],value:$,onChange:function(e){J(e)},keyName:"value",labelName:"text",className:"u-flex align-items-center"})},{name:o.W.Step.Addon.Quantity,enabled:!(null==z||!z.price)&&(null==z?void 0:z.quantity)>1&&!te,element:i.createElement(Z.Z,{number:y,min:1,max:z.quantity,onChange:function(e){h(e)}})},{name:o.W.Step.Date.Adult_plural,enabled:!ee&&!(null==z||!z.adultPrice)&&!te,element:i.createElement(Z.Z,{number:D,min:0,max:z.quantity-L,onChange:function(e){G(e)}})},{name:o.W.Step.Date.Child_plural,enabled:!ee&&!(null==z||!z.childPrice)&&!te,element:i.createElement(Z.Z,{number:L,min:0,max:z.quantity-D,onChange:function(e){M(e)}})}],ae=function(){switch(n.pricingType){case p.EAddonPricingType.PER_STAY:return c(o.W.Misc.QTY);case p.EAddonPricingType.PER_PERSON:return c(o.W.Misc.Person);case p.EAddonPricingType.PER_PERSON_OCCUPANCY_PER_NIGHT:case p.EAddonPricingType.PER_PERSON_PER_NIGHT:return c(o.W.Misc.PersonPerNight);case p.EAddonPricingType.PER_ADULT_OCCUPANCY_PER_NIGHT:case p.EAddonPricingType.PER_CHILD_OCCUPANCY_PER_NIGHT:return c(o.W.Misc.AdultPerNight);case p.EAddonPricingType.PER_NIGHT:case p.EAddonPricingType.PER_QUANTITY_NAME_PER_NIGHT:return c(o.W.Misc.Night);case p.EAddonPricingType.PER_ROOM_QUANTITY_PER_NIGHT:return c(o.W.Misc.PerRoomDay)}}(),ie={};n.image?ie.backgroundImage="url('".concat(C.Z.resizeImage(n.image,C.h.Original),"')"):(ie.backgroundImage="url('".concat((null==u?void 0:u.logo)&&C.Z.resizeImage(null==u?void 0:u.logo,C.h.Original),"')"),ie.backgroundSize="50%",ie.backgroundRepeat="no-repeat");var re=(null==u?void 0:u.fees)&&u.fees.filter((function(e){return e.appliesToAddons})).length>0;return i.createElement("div",{className:N()("u-flex u-flex-flex-start u-rounded addon-card-wrapper",a,K),style:{backgroundColor:A.Il.White}},i.createElement("div",{className:"addon-card-image",style:ie}),i.createElement("div",{className:"u-marg-heavy u-marg@m- u-w-100@xl"},i.createElement("div",{className:"u-flex"},i.createElement(s.Z,{bold:!0},n.name),m?i.createElement(R,null):i.createElement(i.Fragment,null)),i.createElement(w.ZP,{color:A.Il.DarkGrey,type:w.yG.Small,asDiv:!0},i.createElement(T.R,{content:n.description})),i.createElement("div",{className:"addon-card-wrapper--price u-flex u-flex-align-flex-end"},i.createElement("div",{className:"u-w-100"},le.map((function(e){if(e.enabled)return i.createElement("div",{key:e.name,className:"u-flex justify-content-start u-marg-bot u-marg-top"},i.createElement(w.ZP,{className:"u-mw-100",bold:!0},c(e.name)),e.element)}))),i.createElement("div",{className:"addon-card-wrapper--price-action"},i.createElement("div",{className:"u-flex u-flex-direction-column u-flex-align-flex-end",style:{alignSelf:"flex-end"}},i.createElement(w.ZP,{type:w.yG.Small,color:A.Il.Navy,inline:!0},c(o.W.Misc.From)),i.createElement("div",{className:"room-details--content-price flex-align-items-baseline flex-row"},(null==z?void 0:z.price)&&i.createElement(i.Fragment,null,i.createElement("div",{className:"u-flex align-items-end"},i.createElement(s.Z,{size:"large",bold:!0,lineHeight:"1em"},i.createElement(b.Z,{hideDecimals:!0},z.price)),i.createElement(w.ZP,{type:w.yG.Small,color:A.Il.DarkGrey,inline:!0,className:"u-marg-left--light u-clear-font-weight"},"/ ",ae))),(!(null==z||!z.adultPrice)||!(null==z||!z.childPrice))&&i.createElement("h2",{className:"u-marg-none d-flex flex-wrap justify-content-end"},!!z.adultPrice&&i.createElement("div",{className:"d-flex align-items-end flex-row"},i.createElement(s.Z,{size:"large",bold:!0,lineHeight:"1em"},i.createElement(b.Z,null,z.adultPrice)),i.createElement(w.ZP,{type:w.yG.Small,color:A.Il.DarkGrey,inline:!0,className:"u-marg-left--light u-clear-font-weight"},"/"," ",n.pricingType===p.EAddonPricingType.PER_ALL_PERSONS_PER_NIGHT?c(o.W.Misc.AdultPerNight):c(o.W.Step.Date.Adult))),!!z.adultPrice&&!!z.childPrice&&i.createElement("br",null),!!z.childPrice&&i.createElement("div",{className:"d-flex align-items-end flex-row"},i.createElement(s.Z,{size:"large",bold:!0,lineHeight:"1em"},i.createElement(b.Z,null,z.childPrice)),i.createElement(w.ZP,{type:w.yG.Small,color:A.Il.DarkGrey,inline:!0,className:"u-marg-left--light u-clear-font-weight"},"/"," ",n.pricingType===p.EAddonPricingType.PER_ALL_PERSONS_PER_NIGHT?c(o.W.Misc.ChildPerNight):c(o.W.Step.Date.Child))))),i.createElement("div",{className:"u-marg-bottom--light"},i.createElement(w.ZP,{type:w.yG.Small,color:A.Il.Grey,inline:!0,className:"u-nowrap"},i.createElement(_._,{hasTax:!(null==u||!u.enableCreditCardSurcharge)||!!re})))),i.createElement("div",{className:"u-marg-top--light u-flex justify-content-end u-w-100@l- flex-column flex-lg-row"},m?i.createElement("div",{className:"u-marg-right--light@l u-marg-bottom--light@l-"},i.createElement(S.Z,{onClick:function(){var e=d.basketAddonRows.find((function(e){return e.getAddon().code===n.code}));e&&d.removeBasketAddonRow(e)},textColor:A.Il.White,backgroundColor:A.Il.Navy,wide:!0},c(o.W.Step.Addon.Remove))):i.createElement(i.Fragment,null),i.createElement(S.Z,{onClick:function(){d.setAddonQuantities(n,{quantity:y,adult:D,child:L},F,$);var e=d.basketAddonRows.find((function(e){return e.getAddon().code===n.code})),t=d.currentBasketRows[0];e&&t&&k.ZP.instance.sendRoomAddonAddToCart(e,y,t.getStartDate(),t.getStartDate())},primary:!0,filled:!0,wide:!0},c(m?o.W.Step.Addon.UpdateCart:o.W.Step.Addon.AddToCart)))))))},D=n(62734),G=n(31972),W=function(){var e=(0,i.useContext)(l.hy),t=(0,i.useContext)(l.Qm),n=(0,v.WP)().hotel,a=e.getAllValidRows(),r=(0,i.useState)(null),c=(0,E.Z)(r,2),u=c[0],o=c[1],d=(0,i.useState)(!1),s=(0,E.Z)(d,2),g=s[0],f=s[1];return i.useEffect((function(){f(!0),y.Z.Addons.findAddons(a,null==n?void 0:n.hotelID).then((function(e){f(!1),o(e)}))}),[t.currentLanguage]),i.createElement("div",{className:"u-flex"},i.createElement(m.i5,null,i.createElement(m.mV,null,g?i.createElement(h.Z,null):null!=u&&u.length?u.map((function(e,t){return i.createElement(I,{key:t,className:"u-marg-bottom",addon:e})})):i.createElement(D.Z,null)),i.createElement(m.f,null,i.createElement(G.Z,null))))},O=n(38279),L=n(40370),M=n(16337),H=n(90292),Q=n(95692);function z(){var e=(0,i.useContext)(l.g7),t=(0,i.useContext)(l.aN).currentStep,n=(0,i.useContext)(l.hy).currentBasketRows,E=(0,c.TH)(),v=(0,r.$)().t,y=(0,M.z)().raise;return(0,i.useEffect)((function(){var e=new a.e(n);y(e)}),[]),i.createElement("div",{className:"container rs-step-addon"},i.createElement(f.V,{step:"Addon"}),i.createElement(L.default,null),i.createElement(m.i5,null,i.createElement(m.mV,null,e.screenSize>H.Z.Medium&&i.createElement(i.Fragment,null,i.createElement(u.rU,{to:{pathname:Q.Z.getPreviousStepUrl(t),search:E.search}},i.createElement(d.Z,null)),i.createElement("div",{className:"u-marg-top--light u-marg-bottom--heavy"},i.createElement(s.Z,{bold:!0},v(o.W.Navigation.Steps.Addon))))),e.screenSize>H.Z.Medium&&i.createElement(m.f,null,i.createElement(O.Z,null))),e.screenSize>H.Z.Medium&&i.createElement(g.Z,null),i.createElement(W,null))}}}]);