@roomstay/frontend 2.1.28 → 2.1.29

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.
@@ -1 +1 @@
1
- (("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[559],{559:function(e,t,a){"use strict";a.r(t),a.d(t,{AccountRouter:function(){return Zt}});var r,n=a(7294),o=a(6550),l=function(e){return n.createElement("div",{style:{backgroundColor:"white"}},n.createElement("div",{className:"container u-pad-top u-pad-bottom--massive"},e.children))},i=a(7462),c=a(1612),s=a(7972),m=a(4184),u=a.n(m),d=a(4854),p=a(3010),g=a(8886),A=a(584),v=a(291),f=a(7484),y=a.n(f),C=a(514),h=a(9815),E=a(4744),b=a(4478),_=a(3727),x=a(9478),N=a(7754),P=a(292),w=a(9605),Z=a(2851),k=a.n(Z),I=a(5692);!function(e){e.MoreDetails="MoreDetails",e.BookAgain="BookAgain",e.Cancel="Cancel",e.Modify="Modify"}(r||(r={}));var S=[r.MoreDetails],B=function(e){var t,a,o,l,m=e.itineraryItem,f=e.disableMarginBottom,Z=e.actions,B=void 0===Z?S:Z,T=e.showCancelledNotifications,D=void 0!==T&&T,O=(0,b.$)().t,R=(0,n.useContext)(c.g7),W=(0,C.W)().hotel,j=R.screenSize<=P.Z.Large,M=j?"normal":"large",Y=j?A.ZP:p.Z;if(!m)return n.createElement(n.Fragment,null);var U=Object.keys(m.nights),G=y()(m.checkInDate),L=y()(m.checkOutDate),z=m.adults+((null==m?void 0:m.children)||0),q=m.status===s.IBookingStatus.Cancelled;return n.createElement(n.Fragment,null,D&&q&&n.createElement("div",{className:k().cancelledNotification},n.createElement("div",{className:k()["cancelledNotification-icon"]},n.createElement(g.ZP,{icon:g.Tu.Error,size:"44px",color:N.I.Danger})),n.createElement("div",null,n.createElement(A.ZP,{type:A.yG.Small,bold:!0,color:N.I.Danger,className:k()["cancelledNotification-title"]},"This room is cancelled!"),n.createElement(A.ZP,{type:A.yG.Small},"This room has been cancelled, please"," ",n.createElement("span",{style:{color:N.I.Accent}},n.createElement(_.rU,{to:h.P.Help.path},"get in touch"))," ","if you find this to be a mistake"))),n.createElement("div",{className:u()("reservation-item-container",{"u-marg-bottom--heavy u-marg-bottom@m-":!f})},n.createElement("div",{className:"reservation-item"},n.createElement("div",{className:u()("reservation-item--image u-border-rounded u-print-none",{"reservation-item--disabled":q})},n.createElement(v.Z,{images:m.images,imageSize:E.h.Medium}),n.createElement("div",{className:"reservation-item--floating-date"},n.createElement(p.Z,{size:"extra-large",color:q?N.I.DarkGrey:N.I.White,align:w.P.Center},G.format("DD")),n.createElement(A.ZP,{type:A.yG.Small,color:q?N.I.DarkGrey:N.I.White,bold:!0},G.format("MMM YYYY")))),n.createElement("div",{className:"reservation-item--content u-pad--heavy u-pad-left-none@m- u-pad-right-none@m- u-pad-bottom-none@m- u-print-pad-left-none"},n.createElement("div",{className:"reservation-item--content-title u-marg-bottom--light"},n.createElement(p.Z,{bold:!0,size:M},m.roomName)),n.createElement("div",{className:"text-body u-marg-bottom"},(null!==(t=null==m||null===(a=m.profile)||void 0===a?void 0:a.firstName)&&void 0!==t?t:"")+" "+(null!==(o=null==m||null===(l=m.profile)||void 0===l?void 0:l.lastName)&&void 0!==o?o:"")),n.createElement("div",{className:"reservation-item--info u-marg-bottom--heavy"},n.createElement("div",{className:"u-flex u-flex-gap--light"},n.createElement("div",{className:"u-flex u-flex-nowrap u-flex-gap--light"},n.createElement(g.ZP,{icon:g.Tu.Calendar,color:N.I.Grey}),n.createElement(A.ZP,{type:A.yG.Small},G.format("D MMM, YYYY"))),n.createElement("div",{className:"u-flex u-flex-nowrap u-flex-gap--light"},n.createElement(g.ZP,{icon:g.Tu.ArrowRight2,color:N.I.Grey}),n.createElement(A.ZP,{type:A.yG.Small},L.format("D MMM, YYYY")))),n.createElement("div",{className:"u-flex u-flex-gap"},n.createElement("div",{className:"u-flex u-flex-nowrap u-flex-gap--light"},n.createElement(g.ZP,{icon:g.Tu.LateCheckout,color:N.I.Grey}),n.createElement(A.ZP,{type:A.yG.Small},"".concat(U.length," night").concat(U.length>1?"s":""))),n.createElement("div",{className:"u-flex u-flex-nowrap u-flex-gap--light"},n.createElement(g.ZP,{icon:g.Tu.Person,color:N.I.Grey}),n.createElement(A.ZP,{type:A.yG.Small},"".concat(z," guest").concat(z>1?"s":""))))),n.createElement("div",{className:"reservation-item--checkin-checkout u-flex justify-content-start u-pad u-border-rounded"},n.createElement("div",{className:"u-marg-right--heavy"},n.createElement(A.ZP,{type:A.yG.Small,color:N.I.DarkGrey,className:"u-marg-bottom--light"},O(x.W.Misc.CheckIn)),n.createElement(Y,null,O(x.W.Reservation.After)," ",null==W?void 0:W.checkInTime)),n.createElement("div",null,n.createElement(A.ZP,{type:A.yG.Small,color:N.I.DarkGrey,className:"u-marg-bottom--light"},O(x.W.Misc.CheckOut)),n.createElement(Y,null,O(x.W.Reservation.Before)," ",null==W?void 0:W.checkOutTime))),n.createElement("div",{className:"reservation-item--actions u-flex justify-content-start u-print-none u-marg-top--heavy"},B.map((function(t,a){var o={mobileWidth:!0,rounded:!0,wide:j,className:u()({"u-marg-right@m":0===a})},l=function(){e.onActionClick&&e.onActionClick(t,m)};if((!q||t!==r.Cancel)&&(q||t!==r.BookAgain))switch(t){case r.Modify:return n.createElement(d.Z,(0,i.Z)({},o,{icon:g.Tu.ArrowRight,iconPosition:"right",onClick:l}),O(x.W.Reservation.ModifyThisRoom));case r.Cancel:return n.createElement(d.Z,(0,i.Z)({},o,{danger:!0,onClick:l,disabled:!m.isCancellable}),O(x.W.Reservation.CancelReservation));case r.BookAgain:return n.createElement(_.rU,{to:I.Z.getFirstStep().getStepUrl()},n.createElement(d.Z,(0,i.Z)({},o,{icon:g.Tu.ArrowRight,iconPosition:"right",onClick:l}),O(x.W.Reservation.BookAgain)));case r.MoreDetails:return n.createElement(_.rU,{to:"".concat(h.P.SingleReservation.path).concat(m.bookingId,"/item")},n.createElement(d.Z,(0,i.Z)({},o,{primary:!0,filled:!0,icon:g.Tu.ArrowRight,iconPosition:"right"}),O(x.W.Reservation.MoreDetails)))}})))))))},T=a(2792),D=a.n(T),O=function(e){var t,a=e.title,r=e.icon,o=e.description,l=e.link,i=function(){switch(null==l?void 0:l.icon){case"arrow":return g.Tu.ArrowRight;case"open-new":return g.Tu.LogOut}}();return null!=l&&l.pathTo?n.createElement(_.rU,{to:l.pathTo},n.createElement("div",{className:D().iconNavCard},!!r&&n.createElement(g.ZP,{icon:r,color:N.I.Grey,size:"26px"}),n.createElement(A.ZP,{bold:!0,className:"u-marg-top--light"},a),n.createElement(A.ZP,{className:"u-marg-top--light u-marg-bottom--medium",color:N.I.DarkGrey,type:A.yG.Small},o),n.createElement(d.Z,{size:"tiny",isText:!0,textColor:null!==(t=l.color)&&void 0!==t?t:N.I.Accent,icon:i,iconPosition:"right"},n.createElement("span",{className:"u-uppercase"},l.text)))):null},R=a(7688),W=a(2364),j=function(){var e=(0,R.Kb)(),t=e.fullName,a=e.upcomingBookings,r=(0,b.$)().t,o=(0,n.useContext)(c.g7).screenSize<=P.Z.Large,l=I.Z.getFirstStep().getStepUrl(),i=(null==a?void 0:a.length)>0;return n.createElement("div",null,n.createElement("div",{className:"u-marg-top--heavy@m u-marg-top@m- u-marg-bottom"},n.createElement(_.rU,{to:I.Z.getFirstStep().getStepUrl()},n.createElement(d.Z,{isText:!0,icon:g.Tu.ArrowLeft,size:"small"},r(x.W.UserPortal.HomeScreen.BackToBooking)))),n.createElement("div",{className:"u-marg-bottom--heavy u-pad-top@m"},n.createElement(p.Z,{size:"extra-large",className:"u-marg-bottom"},r(x.W.UserPortal.HomeScreen.Title)," ",t,"!"),i?n.createElement(A.ZP,{type:A.yG.Body},r(x.W.UserPortal.HomeScreen.Subtitle)):n.createElement(A.ZP,{className:"u-marg-top"},r(x.W.Reservation.EmptyPage.SubTitle))),n.createElement("div",{className:"u-marg-bottom--heavy"},i?n.createElement(B,{itineraryItem:null==a?void 0:a[0]}):n.createElement("div",{className:"u-marg-top--heavy u-flex u-flex-align-center u-flex-direction-column@l- u-flex-gap"},n.createElement("div",null,n.createElement("img",{className:"mw-100",src:W.Z.getImageAssetUrl("account/account-home-empty-graphic.svg"),alt:"Account homepage image"})),n.createElement("div",{className:"u-marg-top--heavy@m-"},n.createElement(p.Z,{size:"large"},r(x.W.Reservation.EmptyPage.Message)),n.createElement(A.ZP,{color:N.I.DarkGrey,type:A.yG.Small,className:"u-marg-top--light"},r(x.W.Reservation.EmptyPage.SubMessage)),n.createElement("div",{className:"u-marg-top--heavy u-flex u-flex-flex-start u-flex-gap--light u-flex-direction-column@l-"},n.createElement(_.rU,{to:l},n.createElement(d.Z,{wide:o,rounded:!0,filled:!0,icon:g.Tu.ArrowRight,iconPosition:"right",primary:!0},r(x.W.Reservation.EmptyPage.SearchRooms))),n.createElement(_.rU,{to:h.P.Reservations.path},n.createElement(d.Z,{wide:o,rounded:!0,icon:g.Tu.ArrowRight,iconPosition:"right"},r(x.W.Reservation.EmptyPage.SeeAll))))))),n.createElement("div",{className:"row"},n.createElement("div",{className:"col-md-3"},n.createElement(O,{icon:g.Tu.Info,title:"View all bookings",description:"See all of your bookings, past, present and cancelled.",link:{text:"See list",pathTo:h.P.Reservations.path,icon:"arrow",color:N.I.Accent}})),n.createElement("div",{className:"col-md-3"},n.createElement(O,{icon:g.Tu.Person,title:"Profile Information",description:"Edit your personal details, like address, and name",link:{text:"Edit Info",pathTo:h.P.ProfileDetails.path,icon:"arrow",color:N.I.Accent}})),n.createElement("div",{className:"col-md-3"},n.createElement(O,{icon:g.Tu.CreditCard,title:"Payment Information",description:"Effortlessly manage cards for smoother checkout",link:{text:"Manage cards",pathTo:h.P.CardDetails.path,icon:"arrow",color:N.I.Accent}})),n.createElement("div",{className:"col-md-3"},n.createElement(O,{icon:g.Tu.Time,title:"Need Help?",description:"Connect with our hotel staff for prompt assistance",link:{text:"Contact now",pathTo:h.P.Help.path,icon:"arrow",color:N.I.Accent}}))))},M=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")},Y=a(4289),U=a(9200),G=a(9874);function L(e,t){var a=0;return n.Children.map(e,(function(e){return n.isValidElement(e)?t(e,a++):e}))}var z=a(885),q=n.createContext({activeKey:"",lastIndex:0,currentIndex:0,onChange:function(){}}),F=function(e){var t=e.children,a=e.defaultActiveKey,r=e.onChange,o=(0,n.useState)(""),l=(0,z.Z)(o,2),i=l[0],c=l[1],s=(0,n.useState)(0),m=(0,z.Z)(s,2),u=m[0],d=m[1],p=(0,n.useState)(0),g=(0,z.Z)(p,2),A=g[0],v=g[1],f={activeKey:i,lastIndex:u,currentIndex:A,onChange:function(e,t){null==r||r(e),d(A),v(t),c(e)}};return(0,n.useEffect)((function(){c(a)}),[]),n.createElement(q.Provider,{value:f},t)},Q=function(e){var t=(0,n.useContext)(q),a=e.title,r=e.navPath,o=e.disabled,l=e.index;return a?n.createElement("li",null,n.createElement(_.OL,{to:r,activeClassName:"active",className:u()("c-nav-item ",{disabled:o}),onClick:function(e){o?e.preventDefault():t.onChange(r,l)}},n.createElement("span",{className:u()("c-nav-link")},n.createElement(A.ZP,{color:N.I.DarkGrey,bold:!0},a)))):null},H=a(4942),K=a(8144);function V(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function $(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?V(Object(a),!0).forEach((function(t){(0,H.Z)(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):V(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function J(e){var t=e.children,a=(0,n.useContext)(q),r=(0,K.Yz)(a.activeKey,{from:{opacity:0,position:"absolute"},to:{opacity:1,position:"relative"},enter:{opacity:1,position:"relative"},leave:{opacity:0,position:"absolute"},config:{friction:25}});return n.createElement("div",{className:"u-pos-rel"},r((function(e){return n.createElement(K.q.div,{style:$({left:0,right:0},e)},n.createElement(o.rs,null,L(t,(function(e){return n.createElement(o.AW,{path:e.props.navPath},e.props.children)})),n.createElement(o.AW,{path:"*"},n.createElement(o.l_,{to:t[0].props.navPath,push:!1}))))})))}var X=a(6625),ee=a.n(X),te=function(e){var t=void 0;return function(e,a){n.Children.forEach(e,(function(e){n.isValidElement(e)&&function(e){t||(t=e.props.eventKey)}(e,0)}))}(e),t},ae={slidesPerView:"auto",allowTouchMove:!0,spaceBetween:32,noSwiping:!1},re=function(e){var t=(0,Y.Ch)(e,{activeKey:"onSelect"}),a=t.onSelect,r=t.children,o=t.variant,l=void 0===o?"tabs":o,c=t.activeKey,s=void 0===c?te(r):c;return n.createElement(F,{defaultActiveKey:s||"",onChange:a},n.createElement("ul",{className:"c-nav c-nav-".concat(l," ").concat(ee().tabCarousel)},n.createElement(U.tq,ae,L(r,(function(e,t){return n.createElement(U.o5,{key:t},n.createElement(Q,(0,i.Z)({index:t},e.props),e))})))),n.createElement(G.Z,{noMargins:!0,fullBleed:!0}),n.createElement(J,null,e.children))},ne=function(e){var t=e.isCancelled,a=(0,b.$)().t,r=(0,n.useContext)(c.g7).screenSize<=P.Z.Medium,o=a(t?"Reservation.YourReservationPage.EmptyCancelledStays":"Reservation.YourReservationPage.EmptyStays"),l=a(t?"Reservation.YourReservationPage.EmptyCancelledDescriptionStays":"Reservation.YourReservationPage.EmptyStaysDescription");return n.createElement("div",{className:"u-flex u-flex-direction-column u-align-center"},n.createElement("div",null,n.createElement("img",{style:{maxWidth:r?345:322},src:W.Z.getImageAssetUrl("/account/account-home-empty-graphic.svg"),alt:""})),n.createElement(p.Z,{size:r?void 0:"large",bold:!0,color:N.I.Navy,className:"u-marg-top--heavy"},o),n.createElement(A.ZP,{type:r?A.yG.Small:void 0,color:N.I.Navy,className:"u-marg-top"},l))},oe=function(e){var t=e.reservationItems,a=void 0===t?[]:t,r=e.actions,o=e.isCancelled;return a.length?n.createElement("div",null,a.map((function(t,o){return n.createElement(B,{key:t.id,itineraryItem:t,disableMarginBottom:o===a.length-1,actions:r,onActionClick:e.onActionClick,showCancelledNotifications:e.showCancelledNotifications})}))):n.createElement(ne,{isCancelled:o})},le=function(){var e=(0,b.$)().t,t=(0,R.Kb)(),a=t.cancelledBookings,o=t.upcomingBookings,l=t.pastBookings;return n.createElement(n.Fragment,null,n.createElement("div",{className:"u-marg-top--heavy@m u-marg-top@- u-marg-bottom--heavy"},n.createElement(_.rU,{to:h.P.Home.path},n.createElement(d.Z,{isText:!0,icon:g.Tu.ArrowLeft,size:"small"},e(x.W.Reservation.BackToYourAccount)))),n.createElement("div",{className:"u-marg-bottom--heavy"},n.createElement(p.Z,{size:"extra-large",bold:!0},e(x.W.Reservation.YourReservationPage.Title))),n.createElement(re,{defaultActiveKey:"upcoming-stays"},n.createElement(M,{navPath:"".concat(h.P.Reservations.path,"/upcoming-stays"),title:e(x.W.Reservation.YourReservationPage.UpcomingStays)},n.createElement("div",{className:"u-pad-top--heavy u-marg-bottom--heavy"},n.createElement(oe,{reservationItems:o}))),n.createElement(M,{navPath:"".concat(h.P.Reservations.path,"/past-stays"),title:e(x.W.Reservation.YourReservationPage.PastStays)},n.createElement("div",{className:"u-pad-top--heavy u-marg-bottom--heavy"},n.createElement(oe,{reservationItems:l,actions:[r.MoreDetails,r.BookAgain]}))),n.createElement(M,{navPath:"".concat(h.P.Reservations.path,"/cancelled-stays"),title:e(x.W.Reservation.YourReservationPage.CancelledStays)},n.createElement("div",{className:"u-pad-top--heavy u-marg-bottom--heavy"},n.createElement(oe,{isCancelled:!0,reservationItems:a,actions:[r.MoreDetails,r.BookAgain]})))))},ie=a(4735),ce=a.n(ie),se=function(e){var t=e.title,a=e.children,r=e.className;return n.createElement("div",{className:u()(ce().root,r)},t&&n.createElement(A.ZP,{bold:!0},t),a&&n.createElement("div",{className:"u-marg-top--medium"},a))},me=a(576),ue=a.n(me);function de(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function pe(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?de(Object(a),!0).forEach((function(t){(0,H.Z)(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):de(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}var ge={type:A.yG.Small},Ae={color:N.I.Grey},ve=function(e){var t=e.IconProps,a=e.TextProps,r=e.icon,o=e.children;return n.createElement("div",{className:u()("u-flex","u-flex-flex-start",ue().root)},r&&n.createElement("div",{className:ue().icon},n.createElement(g.ZP,(0,i.Z)({icon:r},pe(pe({},Ae),t)))),n.createElement(A.ZP,pe(pe({},ge),a||{}),o))},fe=a(3409),ye=a(9527),Ce=a(3261),he=a(5128),Ee=a(4516),be=a(858);function _e(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function xe(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?_e(Object(a),!0).forEach((function(t){(0,H.Z)(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):_e(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function Ne(e,t){var a="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!a){if(Array.isArray(e)||(a=function(e,t){if(e){if("string"==typeof e)return Pe(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?Pe(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){a&&(e=a);var r=0,n=function(){};return{s:n,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,l=!0,i=!1;return{s:function(){a=a.call(e)},n:function(){var e=a.next();return l=e.done,e},e:function(e){i=!0,o=e},f:function(){try{l||null==a.return||a.return()}finally{if(i)throw o}}}}function Pe(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=new Array(t);a<t;a++)r[a]=e[a];return r}var we=function(e){var t=e.items,a=e.booking,r=e.visible,o=e.onClose,l=(0,n.useContext)(c.P0).fetchRoomstayMember,i=(0,n.useState)(!1),s=(0,z.Z)(i,2),m=s[0],u=s[1],p=n.createElement("div",{className:"d-flex u-pad align-items-center justify-content-center"},n.createElement("div",{className:"u-marg-right"},n.createElement(d.Z,{isText:!0,onClick:o},"Abort")),n.createElement(d.Z,{filled:!0,primary:!0,onClick:function(){var e=[];u(!0);var r,n=Ne(t);try{for(n.s();!(r=n.n()).done;){var i=r.value;e.push(Ee.Z.Reservation.cancelReservation(i.id,i.profile.email,a.hotelId))}}catch(e){n.e(e)}finally{n.f()}Promise.all(e).then((function(){null==l||l().then((function(){u(!1),o()}))}))},isLoading:m},"Yes i'm sure"));return n.createElement(he.Z,{title:"Cancelling Reservation",open:r,size:he.g.ExtraSmall,desktopFooter:p,mobileFooter:p,onClose:o},n.createElement("div",{className:"u-pad"},n.createElement(A.ZP,null,"This will cancel...")))},Ze=function(e){var t=e.itineraries,a=e.booking,r=(0,b.$)().t,o=(0,n.useMemo)((function(){var e,a=[],r=[],n=Ne(t);try{for(n.s();!(e=n.n()).done;){var o=e.value;o.status===s.IBookingStatus.Cancelled?a.push(o):r.push(o)}}catch(e){n.e(e)}finally{n.f()}return[a,r]}),t),l=(0,z.Z)(o,2),i=l[0],c=l[1];return n.createElement(se,{className:"w-100",title:r(x.W.Reservation.CodeNumberInformation)},[{label:"Cancelled",value:i,type:fe.Rm.Danger},{label:"Confirmed",value:c,type:fe.Rm.Success}].map((function(e){if(e.value.length>0)return n.createElement(n.Fragment,null,n.createElement(A.ZP,{className:"u-marg-right--light",inline:!0,type:A.yG.Small},e.label),e.value.map((function(t,a){return n.createElement(n.Fragment,{key:a},n.createElement(A.ZP,{className:"u-marg-right",inline:!0,type:A.yG.Small},n.createElement(fe.ZP,{type:e.type},"#",t.id)))})),n.createElement("br",null))})),n.createElement("div",{className:"u-marg-top"},n.createElement(A.ZP,{className:"u-marg-right--light",inline:!0,type:A.yG.Small},"Itinerary"),n.createElement(fe.ZP,{variant:fe.oG.Outlined,type:fe.Rm.Grey},"#",a.itineraryId)))},ke=function(){var e,t,a,l,i,m,u,v=(0,b.$)().t,f=(0,n.useContext)(c.g7),y=(0,n.useContext)(c.Qm).getHotel,C=(0,ye.K)().getItinerary,E=(0,n.useState)(null),w=(0,z.Z)(E,2),Z=w[0],k=w[1],I=(0,n.useState)(),S=(0,z.Z)(I,2),B=S[0],T=S[1],D=f.screenSize<=P.Z.Medium,O=(0,o.UO)(),R=(0,n.useMemo)((function(){var e=[],t=C(O.resId);if(null!=t&&t.itinerary)for(var a=0,r=Object.values(t.itinerary);a<r.length;a++){var n=r[a];e.push(xe(xe({},n),{},{bookingId:t.itineraryId}))}return[t,e]}),[O,C]),W=(0,z.Z)(R,2),j=W[0],M=W[1];(0,n.useEffect)((function(){j&&j.hotelId&&y(j.hotelId).then((function(e){T(e)}))}),[j,y]);var Y=(0,n.useMemo)((function(){var e,t=Ne(M);try{for(t.s();!(e=t.n()).done;)return e.value.status===s.IBookingStatus.Cancelled}catch(e){t.e(e)}finally{t.f()}}),[M]);if(!j)return n.createElement(n.Fragment,null,"Loading");var U=null!==(e=null==B?void 0:B.address)&&void 0!==e?e:{},L=U.line1,q=U.line2,F=U.postalCode,Q=U.country;return n.createElement("div",null,n.createElement("div",{className:"u-marg-top--heavy@m u-marg-top@m- u-marg-bottom--heavy u-print-none"},n.createElement(_.rU,{to:h.P.Reservations.path},n.createElement(d.Z,{isText:!0,icon:g.Tu.ArrowLeft,size:"small"},v(x.W.Reservation.BackToYourReservations)))),n.createElement("div",{className:"u-flex-align-stretch@m- u-flex u-flex-align-flex-end u-marg-bottom--heavy u-pad-top@m u-flex-direction-column@m- u-print-none"},n.createElement("div",null,n.createElement(A.ZP,{className:"u-marg-bottom--light"},Ce.Z.pluralWithCount(M.length,"Room")),n.createElement(p.Z,{size:"extra-large",className:"u-marg-bottom--light"},function(e){var t,a={},r=Ne(e);try{for(r.s();!(t=r.n()).done;){var n,o=t.value;a[o.roomName]=(null!==(n=a[o.roomName])&&void 0!==n?n:0)+1}}catch(e){r.e(e)}finally{r.f()}return Object.keys(a).map((function(e){if(a[e]<=1)return"".concat(e)})).join(" + ")}(M)),n.createElement(A.ZP,{type:A.yG.Body},null==B?void 0:B.name," • ",[L,q,F,Q].filter((function(e){return!!e})).join(" "))),n.createElement("div",{className:"u-flex u-flex-gap u-flex-direction-column@m- u-flex-gap--light@m- u-marg-top--heavy@m-"},n.createElement(d.Z,{wide:D,rounded:D,textColor:N.I.Navy,isText:!D,icon:g.Tu.Share,iconPosition:"left"},v(x.W.Reservation.Share)),n.createElement(d.Z,{wide:D,mobileWidth:!0,rounded:D,textColor:N.I.Navy,className:"",isText:!D,icon:g.Tu.Print,iconPosition:"left",onClick:function(){window.print()}},v(x.W.Reservation.Print)),!Y&&n.createElement(d.Z,{danger:!0,wide:D,mobileWidth:!0,rounded:D,textColor:N.I.Alert,isText:!D,onClick:function(){return k(M)}},Ce.Z.plural(M.length,v(x.W.Reservation.CancelReservation))))),n.createElement("span",{className:"u-print-none"},n.createElement(G.Z,{fullBleed:!0})),n.createElement("div",{className:"u-marg-bottom--massive u-marg-bottom--none@m- u-print-marg-none"},n.createElement(oe,{actions:[r.Cancel,r.BookAgain],reservationItems:M,onActionClick:function(e,t){e===r.Cancel&&k([t])},showCancelledNotifications:!0})),n.createElement(G.Z,{noMargins:D}),n.createElement("div",{className:"u-flex u-marg-top--heavy@m-"},n.createElement(p.Z,{size:"large",bold:!0},v(x.W.Reservation.Total)),n.createElement("div",{className:"u-flex align-items-end flex-column"},n.createElement(p.Z,{lineThrough:!0,size:"large",bold:!0},n.createElement(be.Z,null,(0,s.calculateTotalForMemberBooking)(j))),n.createElement(A.ZP,{type:A.yG.Small,color:N.I.DarkGrey},v(x.W.Reservation.PriceNote)))),n.createElement("div",{className:"row u-marg-top--massive@m u-marg-top--heavy@m-"},n.createElement("div",{className:"col-md-4 u-flex u-print-col-md-4"},n.createElement(se,{className:"w-100",title:v(x.W.Reservation.ProfileInformation)},n.createElement(ve,{icon:g.Tu.Person},(null==M||null===(t=M[0])||void 0===t||null===(a=t.profile)||void 0===a?void 0:a.firstName)+" "+(null==M||null===(l=M[0])||void 0===l||null===(i=l.profile)||void 0===i?void 0:i.lastName)),n.createElement(ve,{icon:g.Tu.Email},null==M||null===(m=M[0])||void 0===m||null===(u=m.profile)||void 0===u?void 0:u.email),n.createElement(ve,{icon:g.Tu.CreditCard},n.createElement(A.ZP,{type:A.yG.Small},"•••• •••• •••• 1111"," ",n.createElement(A.ZP,{inline:!0,type:A.yG.Small,color:N.I.DarkGrey},"(Visa)"))))),n.createElement("div",{className:"col-md-4 u-flex u-print-col-md-4"},n.createElement(se,{className:"w-100",title:v(x.W.Reservation.HotelInformation)},n.createElement(ve,{icon:g.Tu.Map},L,n.createElement("br",null),q," ",F,", ",Q),n.createElement(ve,{icon:g.Tu.Phone},null==B?void 0:B.phone))),n.createElement("div",{className:"col-md-4 u-flex u-print-col-md-4"},n.createElement(Ze,{itineraries:M,booking:j}))),n.createElement("div",{className:"u-marg-top--massive@m u-marg-top@m- u-background--snow u-w-fluid u-pad-top--massive@m u-pad-top--heavy@m- u-pad-bottom--heavy @m- u-pad-bottom--massive@m"},n.createElement("div",{className:"container"},n.createElement(A.ZP,{bold:!0}," ",v(x.W.Reservation.Policies)),n.createElement("div",{className:"u-marg-top--medium"},n.createElement("div",{className:"u-w-100"},n.createElement("div",{className:"u-flex u-flex-direction-column@m- u-flex-gap--medium@m-"},n.createElement(A.ZP,{type:A.yG.Small},n.createElement("strong",null,v(x.W.Reservation.CheckIn)),n.createElement("br",null),v(x.W.Reservation.After)," 2:00 PM"),n.createElement(A.ZP,{type:A.yG.Small},n.createElement("strong",null,v(x.W.Reservation.CheckOut)),n.createElement("br",null),v(x.W.Reservation.After)," 2:00 PM"),n.createElement("div",null,M.map((function(e){return n.createElement(A.ZP,{type:A.yG.Small,key:e.id},e.roomName," - ",e.rateName)})))))),n.createElement(A.ZP,{className:"u-marg-top--medium",type:A.yG.Caption},v(x.W.Reservation.Policy1),n.createElement("br",null),n.createElement("br",null),v(x.W.Reservation.Policy2)))),n.createElement(we,{onClose:function(){k(null)},items:Z,booking:j,visible:!!Z}))},Ie=a(5987),Se=a(6604),Be=a(1432),Te=a(5762),De=a(7536),Oe=a(6431),Re=a(5867),We=["ref"],je=function(e){var t=e.label,a=e.component,r=e.hint,o=e.error;return n.createElement("div",{className:"row u-marg-bottom--heavy"},n.createElement("div",{className:"col-md-4"},n.createElement(A.ZP,{type:A.yG.Small,bold:!0},t)),n.createElement("div",{className:"col-md-8"},a,!!o&&n.createElement("p",{className:"text-small",style:{color:"#ED4362"}},o.message),!!r&&n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Grey},r)))},Me=function(){var e=(0,n.useContext)(c.P0),t=e.roomstayMember,a=e.loading,r=e.updateMemberDetails,o=(0,n.useContext)(c.uj),l=(0,b.$)().t,s=(0,De.cI)({mode:"onChange"}),m=s.watch,u=s.register,v=s.formState,f=v.errors,y=v.isDirty,C=s.handleSubmit,E=s.reset,N=s.control,P=function(e){return f[e]?"error":void 0};(0,n.useEffect)((function(){t&&E(t)}),[t]);var w=!y||a||!!Object.keys(f).length;return n.createElement(n.Fragment,null,n.createElement("div",{className:"u-marg-top--heavy@m u-marg-top@- u-marg-bottom--heavy"},n.createElement(_.rU,{to:h.P.Home.path},n.createElement(d.Z,{isText:!0,icon:g.Tu.ArrowLeft,size:"small"},l(x.W.Reservation.BackToYourAccount)))),n.createElement("div",{className:"u-marg-bottom--heavy@m"},n.createElement(p.Z,{size:"extra-large",bold:!0},"Profile Information")),n.createElement("form",{onSubmit:C((function(e){null==r||r(e).then((function(){o.addNotification({icon:g.Tu.Check,children:n.createElement(A.ZP,null,"Details saved succesfully")})}))}))},n.createElement("div",{className:"row"},n.createElement("div",{className:"col-md-8"},n.createElement("div",null,n.createElement(je,{label:"First Name",component:n.createElement(Be.Z,(0,i.Z)({validationStatus:P("forename")},u("forename",{required:{message:"First name is required",value:!0}}))),error:f.forename}),n.createElement(je,{label:"Last Name",component:n.createElement(Be.Z,(0,i.Z)({validationStatus:P("surname")},u("surname",{required:{message:"Last name is required",value:!0}}))),error:f.surname}),n.createElement(je,{label:"Email Address",component:n.createElement(Be.Z,{validationStatus:P("email"),inputProps:{disabled:!0},value:null==t?void 0:t.email}),error:f.email}),n.createElement(je,{label:"Phone Number",component:n.createElement(De.Qr,{rules:{pattern:{value:/.*\s\d+/,message:"Phone Number is required"}},control:N,name:"phoneNumber",render:function(e){var t=e.field;return n.createElement(Se.Z,(0,i.Z)({},t,{onChange:function(e){t.onChange(e)},validationStatus:P("phoneNumber")}))}}),error:f.phoneNumber}),n.createElement(G.Z,null),n.createElement(je,{label:"Password",component:n.createElement(Re.J,(0,i.Z)({placeholder:"•••••••••••••••"},u("password",{pattern:Oe.hL}),{validationStatus:P("password")})),hint:"At least 8 characters long, case sensitive, can contain !$#%, no spaces.",error:f.password}),n.createElement(je,{label:"Repeat Password",component:n.createElement(Re.J,(0,i.Z)({placeholder:"•••••••••••••••"},u("passwordRepeat",{required:{value:!!m("password"),message:"Repeat Password is required"},validate:{isSame:(0,Oe.N0)(m("password"))}}),{validationStatus:P("passwordRepeat")})),error:f.passwordRepeat}),n.createElement(G.Z,null),n.createElement(je,{label:"Address",component:n.createElement(Be.Z,u("address.address"))}),n.createElement(je,{label:"City",component:n.createElement(Be.Z,u("address.city"))}),n.createElement(je,{label:"ZIP/Post Code",component:n.createElement(Be.Z,u("address.zip"))}),n.createElement(je,{label:"Country",component:n.createElement(De.Qr,{control:N,name:"address.country",render:function(e){var t=e.field,a=(t.ref,(0,Ie.Z)(t,We));return n.createElement(Te.Z,a)}})})))),n.createElement("div",{className:"u-flex justify-content-start u-marg-top--heavy"},n.createElement(_.rU,{to:"/account/home",className:"u-marg-right"},n.createElement(d.Z,null,"Cancel")),n.createElement(d.Z,{disabled:w,isLoading:a,primary:!0,filled:!0,htmlType:"submit"},"Save all changes"))))},Ye=a(5861),Ue=a(4687),Ge=a.n(Ue),Le=a(7074),ze=a.n(Le),qe=a(2327),Fe=a.n(qe),Qe=a(3733),He=function(e){var t=e.options,a=void 0===t?[]:t,r=e.onChange,o=e.value,l=e.onNewCardClicked;return n.createElement(n.Fragment,null,n.createElement("div",{className:Fe()["card-list"]},n.createElement(U.tq,{className:u()(Fe()["card-list-swiper"],"u-marg-bottom--heavy","u-marg-bottom--none@l"),breakpoints:{992:{enabled:!1,spaceBetween:0}},spaceBetween:8,enabled:!0,slidesPerView:"auto"},a.map((function(e){return n.createElement(U.o5,{key:e.cardId,style:{width:"auto"}},n.createElement(Qe.c,{selected:(null==o?void 0:o.cardId)===e.cardId,item:e,onClick:function(){!function(e){null==r||r(e)}(e)}}))})),n.createElement(U.o5,{style:{width:"auto"}},n.createElement(Qe.c,{selected:!(null!=o&&o.cardId),onClick:function(){return null==l?void 0:l()}})))))},Ke=a(6895),Ve=a.n(Ke),$e=a(5993),Je=a(4098),Xe=a.n(Je),et=a(1291),tt=a(4485),at=a(3551);function rt(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function nt(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?rt(Object(a),!0).forEach((function(t){(0,H.Z)(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):rt(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}var ot,lt=function(e){var t=e.card,a={"@font-face":{src:"url(".concat(W.Z.wrapAssetUrl("assets/fonts/cadiz/Cadiz-Bold.otf"),")"),"font-weight":"bold","font-display":"swap","font-family":"Cadiz"},"font-size":"18px","line-height":"24px","font-weight":"bold","font-family":"Cadiz",color:"white"},r=(0,et.u)({name:"credit-card",value:t.cardNumber,styles:nt(nt({},a),{},{"word-spacing":"16px"})}),o=r.targetRef,l=r.isLoading,i=(0,et.u)({name:"card-name",value:t.name,styles:a}),c=i.targetRef,s=i.isLoading,m=(0,at.Y)(t.type);return n.createElement("div",{className:Xe().card},n.createElement("img",{className:"u-w-100",src:m.backgroundUrl,alt:"Payment card background color"}),n.createElement("div",{className:Xe().chip},n.createElement("img",{src:W.Z.getImageAssetUrl()+"chip.svg",alt:"Chip"})),n.createElement("div",{className:Xe().type},n.createElement("img",{src:m.cardNameIconUrl,alt:"Payment card type ".concat(t.type)})),n.createElement("div",{className:Xe().number},l&&n.createElement(tt.Z,null),n.createElement("span",{ref:o})),n.createElement("div",{className:Xe().name},n.createElement("div",{className:Xe().label},"Card Holder Name"),n.createElement("div",{className:Xe().cardholderName},s&&n.createElement(tt.Z,null),n.createElement("span",{ref:c}))),n.createElement("div",{className:Xe().date},n.createElement("div",{className:Xe().label},"Expiry Date"),t.expiry?n.createElement("div",{className:Xe().value},t.expiry):n.createElement("br",{className:Xe().value})))},it=a(3392),ct=a(2497),st=a.n(ct),mt=a(6874),ut=(ot={},(0,H.Z)(ot,it.X.Visa,mt.H.Visa),(0,H.Z)(ot,it.X.Mastercard,mt.H.Mastercard),(0,H.Z)(ot,it.X.AmericanExpress,mt.H.AmericanExpress),(0,H.Z)(ot,it.X.JCB,mt.H.JCB),ot),dt=function(e){var t=e.value,a=e.onChange,r=(0,R.WP)().hotel;return n.createElement("div",{className:st().root,onChange:a},Object.values(it.X).filter((function(e){var t,a=ut[e];return a&&(null==r||null===(t=r.paymentCardTypes)||void 0===t?void 0:t.includes(a))})).map((function(e){var a=(0,at.Y)(e).cardIconUrl;return n.createElement("div",{key:e,className:u()(st().icon,(0,H.Z)({},st().isSelected,t===e))},n.createElement("img",{src:a,alt:e}))})))},pt=a(9740),gt=a(7933),At=a(3078),vt=a(1321),ft=function(e){var t=e.card,a=e.onSubmit,r=e.onDeleteClicked,o=e.onMarkedAsDefaultClicked,l=(0,ye.K)(),i=l.user,c=l.fullName,s=(0,n.useState)({}),m=(0,z.Z)(s,2),u=m[0],p=m[1],v=(0,n.useState)(null),f=(0,z.Z)(v,2),y=f[0],C=f[1],h=(0,n.useState)(!1),E=(0,z.Z)(h,2),b=E[0],_=E[1],x=(0,n.useState)(!1),P=(0,z.Z)(x,2),w=P[0],Z=P[1],k=(0,n.useState)(!1),I=(0,z.Z)(k,2),S=I[0],B=I[1],T=(null==i?void 0:i.defaultCard)===(null==t?void 0:t.cardId),D=!(null==t||!t.cardId),O={fontSize:"13px",lineHeight:"18px","&::placeholder":{color:"#8B8F9A",opacity:1}},R=(0,et.c)([{name:"credit-card",label:"Credit Card",type:"card-number",vgsProps:{validations:["required","validCardNumber"],css:O,autoComplete:["cc-number"],successColor:"#4F8A10",errorColor:"#D8000C",showCardIcon:!1,placeholder:"5913 2207 9578 4291",disabled:D}},{name:"card-name",label:"Card Name",type:"text",vgsProps:{validations:["required"],css:O,disabled:D,placeholder:c}},{name:"expiration-date",label:"Expiration Date",type:"card-expiration-date",vgsProps:{validations:["required","validCardExpirationDate"],css:O,disabled:D,placeholder:"12/27"}},{name:"security-code",label:"Security Code",type:"card-security-code",vgsProps:{validations:["required","validCardSecurityCode"],css:O,disabled:D,placeholder:"552"}}]),W=(0,z.Z)(R.fields,4),j=W[0],M=W[1],Y=W[2],U=W[3],G=R.triggerFieldUpdate,L=R.vgsForm;(0,n.useEffect)((function(){G()}),[t]),(0,n.useEffect)((function(){null!=j&&j.state.cardType&&C(j.state.cardType)}),[j]);var q=function(e){var t={};Object.keys(e).forEach((function(a){var r="";switch(a){case"credit-card":r="Credit Card";break;case"expiration-date":r="Expiration Date";break;case"security-code":r="Security Code";break;default:r="Card Name"}t[a]=r+" "+e[a].errorMessages[e[a].errorMessages.length-1]})),p(t)},F=function(){var e=(0,Ye.Z)(Ge().mark((function e(){var r;return Ge().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,vt.v)();case 2:r=e.sent,L?(_(!0),r.currentAuthenticatedUser().then((function(e){var r=e.signInUserSession.idToken.jwtToken;L.submit("/members/vgs-hide",{serializer:"deep",methods:"POST",headers:{Authorization:r}},function(){var e=(0,Ye.Z)(Ge().mark((function e(r,n){var o,l,i;return Ge().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(!(o=n["expiration-date"].match(/^(\d+)\s*\/\s*(\d+)$/))||o[1].length>2||4!==o[2].length&&2!==o[2].length)){e.next=4;break}return q({"expiration-date":{errorMessages:["Invalid - it must be in the format MM / YY or MM / YYYY"]}}),e.abrupt("return");case 4:return l=(1===o[1].length?"0":"")+o[1]+(2===o[2].length?o[2]:o[2].substr(2)),i={username:t.username,cardId:t.cardId,securityCode:n["security-code"],expiry:l,name:n["card-name"],cardNumber:n["credit-card"],type:y},e.next=8,null==a?void 0:a(i);case 8:L.reset(),_(!1);case 10:case"end":return e.stop()}}),e)})));return function(t,a){return e.apply(this,arguments)}}(),(function(e){q(e),_(!1)}))}))):console.error("VGS not on element, problem has occurred");case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return n.createElement(n.Fragment,null,n.createElement("div",{className:Ve()["card-inputs"]},n.createElement("div",{className:"u-marg-bottom--medium u-marg-top--heavy@l-"},n.createElement(dt,{value:y||void 0})),n.createElement("div",{className:"u-margin-bottom"},["credit-card","card-name","expiration-date","security-code"].map((function(e){var t=u[e];return n.createElement(pt.Z,{open:!!t,key:e},n.createElement("div",{className:"u-flex"},n.createElement(gt.ZP,{type:gt.NK.Danger,icon:g.Tu.Error},n.createElement(A.ZP,{type:A.yG.Small},t))))}))),n.createElement("div",{className:"u-marg-bottom"},n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Card Number")),n.createElement("div",{className:j.getClasses(),ref:j.ref})),n.createElement("div",{className:"u-marg-bottom"},n.createElement($e.Z,{dimensions:"2/2"},n.createElement(n.Fragment,null,n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Expiry Month / Year")),n.createElement("div",{className:Y.getClasses(),ref:Y.ref})),n.createElement(n.Fragment,null,n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Security code")),n.createElement("div",{className:U.getClasses(),ref:U.ref})))),n.createElement("div",{className:"u-marg-bottom"},n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Name on Credit Card")),n.createElement("div",{className:M.getClasses(),ref:M.ref})),n.createElement("div",{className:"u-marg-bottom"},null!=t&&t.cardId?n.createElement(d.Z,{className:"u-marg-top--heavier@l u-marg-top--heavy@l- u-flex u-flex-justify-center",isLoading:w,textColor:N.I.Danger,isText:!0,icon:g.Tu.Delete,onClick:function(){Z(!0),null==r||r(t).finally((function(){Z(!1)}))},stopIconAnimation:!0},"Delete Card"):n.createElement(d.Z,{className:"u-marg-top--heavier@l u-marg-top--heavy@l- u-flex u-flex-justify-center",isLoading:b,rounded:!0,primary:!0,filled:!0,mobileWidth:!0,onClick:F},"Save Card"))),n.createElement(At.Z,{open:!(null==t||!t.cardId)},n.createElement("div",{className:Ve()["card-large"]},n.createElement(lt,{card:t}),n.createElement("div",{className:"u-marg-top u-marg-top--heavy@l-"},n.createElement(d.Z,{onClick:function(){B(!0),null==o||o(t).finally((function(){B(!1)}))},isLoading:S,disabled:T,filled:!0,primary:!0,size:"small"},"Mark as Default")))))},yt=a(6468),Ct=function(e){var t=e.onAddNewCard,a=(0,n.useContext)(c.g7).screenSize<=P.Z.Medium;return n.createElement("div",{className:"u-align-center u-marg-top@m-"},n.createElement("img",{className:"u-max-width-full",src:W.Z.getImageAssetUrl("account/account-details-no-cards-graphic.svg"),alt:""}),n.createElement(p.Z,{className:"u-marg-top--heavy",bold:!0,size:a?"normal":"large",color:N.I.Navy},"You don't have any cards yet!"),n.createElement(A.ZP,{style:{maxWidth:660},className:"u-marg-top u-marg-left-right--auto",color:N.I.Graphite,type:a?A.yG.Small:A.yG.Body},"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."),n.createElement(d.Z,{className:"u-marg-top",filled:!0,primary:!0,rounded:!0,onClick:t},"Add new card"))},ht=a(7832);function Et(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function bt(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?Et(Object(a),!0).forEach((function(t){(0,H.Z)(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):Et(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}var _t=function(e){var t,a,r=(0,n.useContext)(c.P0),o=r.roomstayMember,l=r.cards,i=r.updateCardToMemberDetail,s=r.fetchRoomstayMember,m=r.updateMemberDetails,u=r.loading,v=(0,n.useMemo)((function(){return{cardId:"",cardNumber:"",expiry:"",name:"",securityCode:"",type:"",username:(null==o?void 0:o.username)||""}}),[o]),f=(0,n.useState)(null),y=(0,z.Z)(f,2),C=y[0],h=y[1],E=(0,n.useState)(!(null==o||null===(t=o.cards)||void 0===t||!t.length)),b=(0,z.Z)(E,2),x=b[0],N=b[1];(0,n.useEffect)((function(){var e;null!=o&&null!==(e=o.cards)&&void 0!==e&&e.length&&N(!0)}),[null==o||null===(a=o.cards)||void 0===a?void 0:a.length]),(0,n.useEffect)((function(){var e=!1;if(C)for(var t=0,a=l;t<a.length;t++)if(a[t].cardId===C.cardId){e=!0;break}if(0!==(null==l?void 0:l.length)){if((!C||(null==C?void 0:C.cardId)===v.cardId)&&(null==l?void 0:l.length)>0||!e&&""!==(null==C?void 0:C.cardId)){if(null!=o&&o.defaultCard)for(var r=0,n=l;r<n.length;r++)if(n[r].cardId===o.defaultCard)return void h(null==l?void 0:l[0]);h(null==l?void 0:l[0])}}else h(v)}),[o,null==l?void 0:l.length]);var P=function(){var e=(0,Ye.Z)(Ge().mark((function e(t){return Ge().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t.cardId?(0,yt.F5)(t).then((function(e){h(t),null==i||i(e)})):(0,yt.lP)(t).then((function(e){h(bt(bt({},t),e)),null==i||i(e)}));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),w=function(){var e=(0,Ye.Z)(Ge().mark((function e(t){return Ge().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,(0,yt.My)(t);case 3:return e.next=5,null==s?void 0:s();case 5:e.next=10;break;case 7:e.prev=7,e.t0=e.catch(0),console.log("Failed deleting card");case 10:case"end":return e.stop()}}),e,null,[[0,7]])})));return function(t){return e.apply(this,arguments)}}(),Z=function(){var e=(0,Ye.Z)(Ge().mark((function e(t){return Ge().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,null==m?void 0:m(bt(bt({},o),{},{defaultCard:null==t?void 0:t.cardId}));case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return u?n.createElement(ht.Z,null):n.createElement(n.Fragment,null,n.createElement("div",{className:"u-marg-top--heavy@m u-marg-top@m- u-marg-bottom--heavy"},n.createElement(_.rU,{to:"/account/home"},n.createElement(d.Z,{isText:!0,icon:g.Tu.ArrowLeft,size:"small"},"BACK TO YOUR ACCOUNT"))),n.createElement("div",{className:"u-marg-bottom--heavy@m"},n.createElement(p.Z,{size:"extra-large",bold:!0},"Payment Information")),n.createElement(At.Z,{open:x},n.createElement("div",{className:ze()["layout-grid"]},n.createElement("div",{className:ze()["card-list"]},n.createElement(A.ZP,{bold:!0,className:"u-marg-bottom"},"Saved Cards"),n.createElement(He,{onNewCardClicked:function(){h(v)},value:C,onChange:function(e){return h(e)},options:l})),n.createElement(ft,{card:C,onSubmit:P,onDeleteClicked:w,onMarkedAsDefaultClicked:Z}))),!x&&n.createElement(Ct,{onAddNewCard:function(){return N(!0)}}))},xt=a(258),Nt=function(){var e=(0,b.$)().t,t=(0,R.WP)().hotel,a=(0,R.Kb)(),r=a.user,o=a.fullName,l=(0,De.cI)({mode:"onChange",reValidateMode:"onBlur"}),c=l.register,s=l.formState,m=l.handleSubmit,u=l.reset,v=l.control,f=(0,n.useState)({}),y=(0,z.Z)(f,2),C=y[0],E=y[1],P=(0,n.useState)(!1),w=(0,z.Z)(P,2),Z=w[0],k=w[1];(0,n.useEffect)((function(){r&&u({name:o,email:r.email,telephone:r.phoneNumber})}),[o,r]);var I=function(){var a=(0,Ye.Z)(Ge().mark((function a(r){return Ge().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return E({}),k(!0),a.prev=2,a.next=5,Ee.Z.Error.sendMemberAreaContactForm(null==t?void 0:t.hotelID,{name:r.name,telephone:r.telephone,email:r.email,message:r.message});case 5:E({success:!0}),a.next=11;break;case 8:a.prev=8,a.t0=a.catch(2),E({success:!1,message:e(x.W.Step.Room.ErrorForm.APIError)});case 11:k(!1);case 12:case"end":return a.stop()}}),a,null,[[2,8]])})));return function(e){return a.apply(this,arguments)}}(),S=function(e){if(s.errors)return s.errors[e]?"error":"success"};return n.createElement("div",null,n.createElement("div",{className:"u-marg-top--heavy@m u-marg-top@m- u-marg-bottom--heavy"},n.createElement(_.rU,{to:h.P.Home.path},n.createElement(d.Z,{isText:!0,icon:g.Tu.ArrowLeft,size:"small"},"BACK TO YOUR ACCOUNT"))),n.createElement("div",{className:"u-marg-bottom--heavy u-pad-top@m"},n.createElement(p.Z,{size:"extra-large",className:"u-marg-bottom"},"Need some help?")),n.createElement("form",{onSubmit:m(I),className:"u-marg-bottom",style:{maxWidth:500}},n.createElement(pt.Z,{open:!!s.errors},n.createElement("div",{className:"u-flex flex-column"},Object.keys(s.errors).map((function(e,t){var a;return n.createElement(gt.ZP,{type:gt.NK.Danger,icon:g.Tu.Error,key:t},n.createElement(A.ZP,{type:A.yG.Small},null===(a=s.errors[e])||void 0===a?void 0:a.message))})))),n.createElement("div",{className:"u-marg-bottom"},n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Name")),n.createElement(Be.Z,(0,i.Z)({required:!0,validationStatus:S("name")},c("name",{required:{message:"Name is required",value:!0}})))),n.createElement("div",{className:"u-marg-bottom"},n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},e(x.W.Navigation.SignIn.EmailAddress))),n.createElement(Be.Z,(0,i.Z)({placeholder:"example@mail.com",required:!0,validationStatus:S("email")},c("email",{required:{message:"".concat(e(x.W.Navigation.SignIn.EmailAddress)," is required"),value:!0},pattern:{value:/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i,message:e(x.W.FindReservation.InvalidEmailAddress)}})))),n.createElement("div",{className:"u-marg-bottom"},n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Telephone")),n.createElement(De.Qr,{rules:{pattern:{value:/.*\s\d+/,message:"Telephone is required"}},control:v,name:"telephone",render:function(e){var t=e.field;return n.createElement(Se.Z,(0,i.Z)({},t,{onChange:function(e){t.onChange(e)},validationStatus:S("telephone")}))}})),n.createElement("div",{className:"u-marg-bottom"},n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Message")),n.createElement(xt.Z,(0,i.Z)({required:!0},c("message",{required:{message:"Message is required",value:!0}})))),n.createElement(d.Z,{icon:g.Tu.ArrowRight,iconPosition:"right",filled:!0,primary:!0,htmlType:"submit",isLoading:Z,disabled:Z||C.success},"Submit")),n.createElement(pt.Z,{open:!!C.success},n.createElement("div",{className:"u-pad-top"},n.createElement(A.ZP,{color:N.I.Success},e(x.W.Step.Room.ErrorForm.ConfirmationMessage)))),n.createElement(pt.Z,{open:!1===C.success},n.createElement("div",{className:"u-pad-top"},n.createElement(A.ZP,{color:N.I.Alert},C.message))))},Pt=["children","render"],wt=function(e){var t=e.children,a=e.render,r=(0,Ie.Z)(e,Pt),l=(0,c.JL)(),s=l.cognitoLoginState,m=l.loading,u=s===c.hH.Success;return n.createElement(o.AW,(0,i.Z)({},r,{render:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return m||u?null==a?void 0:a.apply(void 0,t):n.createElement(o.l_,{to:{pathname:"/find-reservation"}})}}),u?t:null)},Zt=function(){return n.createElement(n.Fragment,null,n.createElement(wt,{path:"/account"},n.createElement(l,null,n.createElement(o.AW,{path:h.P.Home.path,component:j}),n.createElement(o.AW,{path:h.P.Reservations.matchPath,component:le,exact:!0}),n.createElement(o.AW,{path:h.P.SingleReservation.matchPath,component:ke}),n.createElement(o.AW,{path:h.P.ProfileDetails.path,component:Me}),n.createElement(o.AW,{path:h.P.CardDetails.path,component:_t}),n.createElement(o.AW,{path:h.P.Help.path,component:Nt}))))}},2904:function(e,t,a){(t=a(3645)(!0)).push([e.id,".Card-module__root___2ks2i{display:flex;flex-direction:column;border-radius:8px;border:1px solid var(--rs-color-light-grey);padding:24px;margin-bottom:16px}","",{version:3,sources:["Card.module.scss"],names:[],mappings:"AAAA,2BAAM,YAAY,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,2CAA2C,CAAC,YAAY,CAAC,kBAAkB",file:"Card.module.scss",sourcesContent:[".root{display:flex;flex-direction:column;border-radius:8px;border:1px solid var(--rs-color-light-grey);padding:24px;margin-bottom:16px}"]}]),t.locals={root:"Card-module__root___2ks2i"},e.exports=t},8989:function(e,t,a){(t=a(3645)(!0)).push([e.id,".IconNavCard-module__iconNavCard___2CKIi{display:flex;flex-direction:column;border-radius:8px;border:1px solid var(--rs-color-light-grey);padding:24px;margin-bottom:16px;transition:border-color .2s}.IconNavCard-module__iconNavCard___2CKIi:hover{border-color:var(--rs-color-accent-1)}.IconNavCard-module__iconNavCard___2CKIi:hover .IconNavCard-module__diji-icon___rH7u3{color:var(--rs-color-accent-1) !important}","",{version:3,sources:["IconNavCard.module.scss"],names:[],mappings:"AAAA,yCAAa,YAAY,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,2CAA2C,CAAC,YAAY,CAAC,kBAAkB,CAAC,2BAA2B,CAAC,+CAAmB,qCAAqC,CAAC,sFAA8B,yCAAyC",file:"IconNavCard.module.scss",sourcesContent:[".iconNavCard{display:flex;flex-direction:column;border-radius:8px;border:1px solid var(--rs-color-light-grey);padding:24px;margin-bottom:16px;transition:border-color .2s}.iconNavCard:hover{border-color:var(--rs-color-accent-1)}.iconNavCard:hover .diji-icon{color:var(--rs-color-accent-1) !important}"]}]),t.locals={iconNavCard:"IconNavCard-module__iconNavCard___2CKIi","diji-icon":"IconNavCard-module__diji-icon___rH7u3"},e.exports=t},7766:function(e,t,a){(t=a(3645)(!0)).push([e.id,".IconText-module__root___mQl94{gap:14px}.IconText-module__root___mQl94+.IconText-module__root___mQl94{margin-top:16px}.IconText-module__icon___GJPs-{margin-top:2px}","",{version:3,sources:["IconText.module.scss"],names:[],mappings:"AAAA,+BAAM,QAAQ,CAAC,8DAAY,eAAe,CAAC,+BAAM,cAAc",file:"IconText.module.scss",sourcesContent:[".root{gap:14px}.root+.root{margin-top:16px}.icon{margin-top:2px}"]}]),t.locals={root:"IconText-module__root___mQl94",icon:"IconText-module__icon___GJPs-"},e.exports=t},7414:function(e,t,a){(t=a(3645)(!0)).push([e.id,".CardTypeSelect-module__root___bVAvH{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.CardTypeSelect-module__icon___2B6_5{transition:300ms;opacity:.25;border:1px solid var(--rs-color-dark-grey);width:48px;height:32px;border-radius:5px;display:flex;justify-content:center;align-items:center}.CardTypeSelect-module__icon___2B6_5.CardTypeSelect-module__isSelected___26iC-{opacity:1}","",{version:3,sources:["CardTypeSelect.module.scss"],names:[],mappings:"AAAA,qCAAM,YAAY,CAAC,kBAAkB,CAAC,QAAQ,CAAC,cAAc,CAAC,qCAAM,gBAAgB,CAAC,WAAW,CAAC,0CAA0C,CAAC,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,+EAAiB,SAAS",file:"CardTypeSelect.module.scss",sourcesContent:[".root{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.icon{transition:300ms;opacity:.25;border:1px solid var(--rs-color-dark-grey);width:48px;height:32px;border-radius:5px;display:flex;justify-content:center;align-items:center}.icon.isSelected{opacity:1}"]}]),t.locals={root:"CardTypeSelect-module__root___bVAvH",icon:"CardTypeSelect-module__icon___2B6_5",isSelected:"CardTypeSelect-module__isSelected___26iC-"},e.exports=t},1796:function(e,t,a){(t=a(3645)(!0)).push([e.id,".roomstay-booking-container .PaymentCard-module__card___WwYAA{position:relative;width:100%;margin-left:auto;margin-right:auto;min-width:300px;max-width:345px}.roomstay-booking-container .PaymentCard-module__card___WwYAA svg{width:100%;height:100%}.roomstay-booking-container .PaymentCard-module__chip___2jx_t{position:absolute;top:22px;left:22px}.roomstay-booking-container .PaymentCard-module__type___2l0L-{position:absolute;top:22px;right:22px}.roomstay-booking-container .PaymentCard-module__number___1DVfI{position:absolute;left:22px;right:22px;height:35px;top:75px;color:#fff;font-weight:700;font-size:18px;line-height:24px}.roomstay-booking-container .PaymentCard-module__number___1DVfI iframe{max-height:35px}.roomstay-booking-container .PaymentCard-module__name___uZBkQ{position:absolute;left:22px;bottom:22px}.roomstay-booking-container .PaymentCard-module__name___uZBkQ iframe{max-height:24px}.roomstay-booking-container .PaymentCard-module__label___3jhpF{font-weight:700;font-size:12px;line-height:16px;color:#fff;margin-bottom:4px}.roomstay-booking-container .PaymentCard-module__value___1W-VY{font-weight:700;font-size:18px;line-height:24px;color:#fff}.roomstay-booking-container .PaymentCard-module__date___2EEWd{position:absolute;right:22px;bottom:22px}","",{version:3,sources:["PaymentCard.module.scss"],names:[],mappings:"AAAA,8DAA2C,iBAAiB,CAAC,UAAU,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,eAAe,CAAC,eAAe,CAAC,kEAA+C,UAAU,CAAC,WAAW,CAAC,8DAA2C,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,8DAA2C,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,gEAA6C,iBAAiB,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,cAAc,CAAC,gBAAgB,CAAC,uEAAoD,eAAe,CAAC,8DAA2C,iBAAiB,CAAC,SAAS,CAAC,WAAW,CAAC,qEAAkD,eAAe,CAAC,+DAA4C,eAAe,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,iBAAiB,CAAC,+DAA4C,eAAe,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,8DAA2C,iBAAiB,CAAC,UAAU,CAAC,WAAW",file:"PaymentCard.module.scss",sourcesContent:[":global(.roomstay-booking-container) .card{position:relative;width:100%;margin-left:auto;margin-right:auto;min-width:300px;max-width:345px}:global(.roomstay-booking-container) .card svg{width:100%;height:100%}:global(.roomstay-booking-container) .chip{position:absolute;top:22px;left:22px}:global(.roomstay-booking-container) .type{position:absolute;top:22px;right:22px}:global(.roomstay-booking-container) .number{position:absolute;left:22px;right:22px;height:35px;top:75px;color:#fff;font-weight:700;font-size:18px;line-height:24px}:global(.roomstay-booking-container) .number iframe{max-height:35px}:global(.roomstay-booking-container) .name{position:absolute;left:22px;bottom:22px}:global(.roomstay-booking-container) .name iframe{max-height:24px}:global(.roomstay-booking-container) .label{font-weight:700;font-size:12px;line-height:16px;color:#fff;margin-bottom:4px}:global(.roomstay-booking-container) .value{font-weight:700;font-size:18px;line-height:24px;color:#fff}:global(.roomstay-booking-container) .date{position:absolute;right:22px;bottom:22px}"]}]),t.locals={card:"PaymentCard-module__card___WwYAA",chip:"PaymentCard-module__chip___2jx_t",type:"PaymentCard-module__type___2l0L-",number:"PaymentCard-module__number___1DVfI",name:"PaymentCard-module__name___uZBkQ",label:"PaymentCard-module__label___3jhpF",value:"PaymentCard-module__value___1W-VY",date:"PaymentCard-module__date___2EEWd"},e.exports=t},2010:function(e,t,a){(t=a(3645)(!0)).push([e.id,".PaymentCardInput-module__card-inputs___TtisQ{grid-area:inputs}@media(min-width: 991px){.PaymentCardInput-module__card-inputs___TtisQ{margin-right:30px}}.PaymentCardInput-module__card-large___1L0fI{grid-area:large}","",{version:3,sources:["PaymentCardInput.module.scss"],names:[],mappings:"AAAA,8CAAa,gBAAgB,CAAC,yBAAyB,8CAAa,iBAAiB,CAAC,CAAC,6CAAY,eAAe",file:"PaymentCardInput.module.scss",sourcesContent:[".card-inputs{grid-area:inputs}@media(min-width: 991px){.card-inputs{margin-right:30px}}.card-large{grid-area:large}"]}]),t.locals={"card-inputs":"PaymentCardInput-module__card-inputs___TtisQ","card-large":"PaymentCardInput-module__card-large___1L0fI"},e.exports=t},2695:function(e,t,a){(t=a(3645)(!0)).push([e.id,".tabs-module__tabCarousel___2yGDn{width:100%}.tabs-module__tabCarousel___2yGDn .swiper{width:100%;overflow:visible}.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,wEAA2D,UAAU",file:"tabs.module.scss",sourcesContent:[".tabCarousel{width:100%}.tabCarousel :global .swiper{width:100%;overflow:visible}.tabCarousel :global .swiper .swiper-wrapper .swiper-slide{width:auto}"]}]),t.locals={tabCarousel:"tabs-module__tabCarousel___2yGDn"},e.exports=t},6913:function(e,t,a){(t=a(3645)(!0)).push([e.id,".CardList-module__card-list___1lQc4{display:flex;flex-direction:column;overflow-x:auto}@media(max-width: 991px){.CardList-module__card-list___1lQc4{flex-direction:row;overflow-x:initial;overflow-y:auto}}.roomstay-booking-container .swiper.CardList-module__card-list-swiper___2A6rY{width:100%;overflow:hidden;margin-left:unset}@media(min-width: 991px){.roomstay-booking-container .swiper.CardList-module__card-list-swiper___2A6rY{max-height:381px;overflow:visible}}.roomstay-booking-container .swiper.CardList-module__card-list-swiper___2A6rY .swiper-wrapper{flex-direction:row}@media(min-width: 991px){.roomstay-booking-container .swiper.CardList-module__card-list-swiper___2A6rY .swiper-wrapper{flex-direction:column}}","",{version:3,sources:["CardList.module.scss"],names:[],mappings:"AAAA,oCAAW,YAAY,CAAC,qBAAqB,CAAC,eAAe,CAAC,yBAAyB,oCAAW,kBAAkB,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC,8EAAuE,UAAU,CAAC,eAAe,CAAC,iBAAiB,CAAC,yBAAyB,8EAAuE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,8FAA+F,kBAAkB,CAAC,yBAAyB,8FAA+F,qBAAqB,CAAC",file:"CardList.module.scss",sourcesContent:[".card-list{display:flex;flex-direction:column;overflow-x:auto}@media(max-width: 991px){.card-list{flex-direction:row;overflow-x:initial;overflow-y:auto}}:global(.roomstay-booking-container) :global(.swiper).card-list-swiper{width:100%;overflow:hidden;margin-left:unset}@media(min-width: 991px){:global(.roomstay-booking-container) :global(.swiper).card-list-swiper{max-height:381px;overflow:visible}}:global(.roomstay-booking-container) :global(.swiper).card-list-swiper :global .swiper-wrapper{flex-direction:row}@media(min-width: 991px){:global(.roomstay-booking-container) :global(.swiper).card-list-swiper :global .swiper-wrapper{flex-direction:column}}"]}]),t.locals={"card-list":"CardList-module__card-list___1lQc4","card-list-swiper":"CardList-module__card-list-swiper___2A6rY"},e.exports=t},1918:function(e,t,a){(t=a(3645)(!0)).push([e.id,".ReservationItem-module__cancelledNotification___3NWe_{display:block;border-radius:8px;padding:20px;background-color:rgba(237,67,98,.1);display:flex;align-items:center;justify-content:flex-start;margin-bottom:32px}.ReservationItem-module__cancelledNotification-icon___fpiYY{margin-right:16px}.ReservationItem-module__cancelledNotification-title___1J49B{margin-bottom:4px !important}","",{version:3,sources:["ReservationItem.module.scss"],names:[],mappings:"AAAA,uDAAuB,aAAa,CAAC,iBAAiB,CAAC,YAAY,CAAC,mCAAmC,CAAC,YAAY,CAAC,kBAAkB,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,4DAA4B,iBAAiB,CAAC,6DAA6B,4BAA4B",file:"ReservationItem.module.scss",sourcesContent:[".cancelledNotification{display:block;border-radius:8px;padding:20px;background-color:rgba(237,67,98,.1);display:flex;align-items:center;justify-content:flex-start;margin-bottom:32px}.cancelledNotification-icon{margin-right:16px}.cancelledNotification-title{margin-bottom:4px !important}"]}]),t.locals={cancelledNotification:"ReservationItem-module__cancelledNotification___3NWe_","cancelledNotification-icon":"ReservationItem-module__cancelledNotification-icon___fpiYY","cancelledNotification-title":"ReservationItem-module__cancelledNotification-title___1J49B"},e.exports=t},7155:function(e,t,a){(t=a(3645)(!0)).push([e.id,'.AccountDetailsCardsPage-module__layout-grid___3heVP{display:grid;grid-template-columns:max(25%, 310px) auto minmax(300px, 345px);grid-template-areas:"list inputs large"}@media(max-width: 991px){.AccountDetailsCardsPage-module__layout-grid___3heVP{grid-template-columns:minmax(0, 1fr);grid-template-areas:"list" "large" "inputs"}}.AccountDetailsCardsPage-module__card-list___1CUP7{grid-area:list}@media(min-width: 991px){.AccountDetailsCardsPage-module__card-list___1CUP7{margin-right:30px;border-right:1px solid var(--rs-color-light-grey)}}',"",{version:3,sources:["AccountDetailsCardsPage.module.scss"],names:[],mappings:"AAAA,qDAAa,YAAY,CAAC,+DAA+D,CAAC,uCAAuC,CAAC,yBAAyB,qDAAa,oCAAoC,CAAC,2CAA2C,CAAC,CAAC,mDAAW,cAAc,CAAC,yBAAyB,mDAAW,iBAAiB,CAAC,iDAAiD,CAAC",file:"AccountDetailsCardsPage.module.scss",sourcesContent:['.layout-grid{display:grid;grid-template-columns:max(25%, 310px) auto minmax(300px, 345px);grid-template-areas:"list inputs large"}@media(max-width: 991px){.layout-grid{grid-template-columns:minmax(0, 1fr);grid-template-areas:"list" "large" "inputs"}}.card-list{grid-area:list}@media(min-width: 991px){.card-list{margin-right:30px;border-right:1px solid var(--rs-color-light-grey)}}']}]),t.locals={"layout-grid":"AccountDetailsCardsPage-module__layout-grid___3heVP","card-list":"AccountDetailsCardsPage-module__card-list___1CUP7"},e.exports=t},4735:function(e,t,a){var r=a(3379),n=a(2904);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},2792:function(e,t,a){var r=a(3379),n=a(8989);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},576:function(e,t,a){var r=a(3379),n=a(7766);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},2497:function(e,t,a){var r=a(3379),n=a(7414);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},4098:function(e,t,a){var r=a(3379),n=a(1796);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},6895:function(e,t,a){var r=a(3379),n=a(2010);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},6625:function(e,t,a){var r=a(3379),n=a(2695);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},2327:function(e,t,a){var r=a(3379),n=a(6913);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},2851:function(e,t,a){var r=a(3379),n=a(1918);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},7074:function(e,t,a){var r=a(3379),n=a(7155);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}}}]);
1
+ (("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[559],{559:function(e,t,a){"use strict";a.r(t),a.d(t,{AccountRouter:function(){return Zt}});var r,n=a(7294),o=a(6550),l=function(e){return n.createElement("div",{style:{backgroundColor:"white"}},n.createElement("div",{className:"container u-pad-top u-pad-bottom--massive"},e.children))},i=a(7462),c=a(1612),s=a(4632),m=a(4184),u=a.n(m),d=a(4854),p=a(3010),g=a(8886),A=a(584),v=a(291),f=a(7484),y=a.n(f),C=a(514),h=a(9815),E=a(4744),b=a(4478),_=a(3727),x=a(9478),N=a(7754),P=a(292),w=a(9605),Z=a(2851),k=a.n(Z),I=a(5692);!function(e){e.MoreDetails="MoreDetails",e.BookAgain="BookAgain",e.Cancel="Cancel",e.Modify="Modify"}(r||(r={}));var S=[r.MoreDetails],B=function(e){var t,a,o,l,m=e.itineraryItem,f=e.disableMarginBottom,Z=e.actions,B=void 0===Z?S:Z,D=e.showCancelledNotifications,T=void 0!==D&&D,O=(0,b.$)().t,R=(0,n.useContext)(c.g7),W=(0,C.W)().hotel,j=R.screenSize<=P.Z.Large,M=j?"normal":"large",Y=j?A.ZP:p.Z;if(!m)return n.createElement(n.Fragment,null);var U=Object.keys(m.nights),G=y()(m.checkInDate),L=y()(m.checkOutDate),z=m.adults+((null==m?void 0:m.children)||0),q=m.status===s.Et.Cancelled;return n.createElement(n.Fragment,null,T&&q&&n.createElement("div",{className:k().cancelledNotification},n.createElement("div",{className:k()["cancelledNotification-icon"]},n.createElement(g.ZP,{icon:g.Tu.Error,size:"44px",color:N.I.Danger})),n.createElement("div",null,n.createElement(A.ZP,{type:A.yG.Small,bold:!0,color:N.I.Danger,className:k()["cancelledNotification-title"]},"This room is cancelled!"),n.createElement(A.ZP,{type:A.yG.Small},"This room has been cancelled, please"," ",n.createElement("span",{style:{color:N.I.Accent}},n.createElement(_.rU,{to:h.P.Help.path},"get in touch"))," ","if you find this to be a mistake"))),n.createElement("div",{className:u()("reservation-item-container",{"u-marg-bottom--heavy u-marg-bottom@m-":!f})},n.createElement("div",{className:"reservation-item"},n.createElement("div",{className:u()("reservation-item--image u-border-rounded u-print-none",{"reservation-item--disabled":q})},n.createElement(v.Z,{images:m.images,imageSize:E.h.Medium}),n.createElement("div",{className:"reservation-item--floating-date"},n.createElement(p.Z,{size:"extra-large",color:q?N.I.DarkGrey:N.I.White,align:w.P.Center},G.format("DD")),n.createElement(A.ZP,{type:A.yG.Small,color:q?N.I.DarkGrey:N.I.White,bold:!0},G.format("MMM YYYY")))),n.createElement("div",{className:"reservation-item--content u-pad--heavy u-pad-left-none@m- u-pad-right-none@m- u-pad-bottom-none@m- u-print-pad-left-none"},n.createElement("div",{className:"reservation-item--content-title u-marg-bottom--light"},n.createElement(p.Z,{bold:!0,size:M},m.roomName)),n.createElement("div",{className:"text-body u-marg-bottom"},(null!==(t=null==m||null===(a=m.profile)||void 0===a?void 0:a.firstName)&&void 0!==t?t:"")+" "+(null!==(o=null==m||null===(l=m.profile)||void 0===l?void 0:l.lastName)&&void 0!==o?o:"")),n.createElement("div",{className:"reservation-item--info u-marg-bottom--heavy"},n.createElement("div",{className:"u-flex u-flex-gap--light"},n.createElement("div",{className:"u-flex u-flex-nowrap u-flex-gap--light"},n.createElement(g.ZP,{icon:g.Tu.Calendar,color:N.I.Grey}),n.createElement(A.ZP,{type:A.yG.Small},G.format("D MMM, YYYY"))),n.createElement("div",{className:"u-flex u-flex-nowrap u-flex-gap--light"},n.createElement(g.ZP,{icon:g.Tu.ArrowRight2,color:N.I.Grey}),n.createElement(A.ZP,{type:A.yG.Small},L.format("D MMM, YYYY")))),n.createElement("div",{className:"u-flex u-flex-gap"},n.createElement("div",{className:"u-flex u-flex-nowrap u-flex-gap--light"},n.createElement(g.ZP,{icon:g.Tu.LateCheckout,color:N.I.Grey}),n.createElement(A.ZP,{type:A.yG.Small},"".concat(U.length," night").concat(U.length>1?"s":""))),n.createElement("div",{className:"u-flex u-flex-nowrap u-flex-gap--light"},n.createElement(g.ZP,{icon:g.Tu.Person,color:N.I.Grey}),n.createElement(A.ZP,{type:A.yG.Small},"".concat(z," guest").concat(z>1?"s":""))))),n.createElement("div",{className:"reservation-item--checkin-checkout u-flex justify-content-start u-pad u-border-rounded"},n.createElement("div",{className:"u-marg-right--heavy"},n.createElement(A.ZP,{type:A.yG.Small,color:N.I.DarkGrey,className:"u-marg-bottom--light"},O(x.W.Misc.CheckIn)),n.createElement(Y,null,O(x.W.Reservation.After)," ",null==W?void 0:W.checkInTime)),n.createElement("div",null,n.createElement(A.ZP,{type:A.yG.Small,color:N.I.DarkGrey,className:"u-marg-bottom--light"},O(x.W.Misc.CheckOut)),n.createElement(Y,null,O(x.W.Reservation.Before)," ",null==W?void 0:W.checkOutTime))),n.createElement("div",{className:"reservation-item--actions u-flex justify-content-start u-print-none u-marg-top--heavy"},B.map((function(t,a){var o={mobileWidth:!0,rounded:!0,wide:j,className:u()({"u-marg-right@m":0===a})},l=function(){e.onActionClick&&e.onActionClick(t,m)};if((!q||t!==r.Cancel)&&(q||t!==r.BookAgain))switch(t){case r.Modify:return n.createElement(d.Z,(0,i.Z)({},o,{icon:g.Tu.ArrowRight,iconPosition:"right",onClick:l}),O(x.W.Reservation.ModifyThisRoom));case r.Cancel:return n.createElement(d.Z,(0,i.Z)({},o,{danger:!0,onClick:l,disabled:!m.isCancellable}),O(x.W.Reservation.CancelReservation));case r.BookAgain:return n.createElement(_.rU,{to:I.Z.getFirstStep().getStepUrl()},n.createElement(d.Z,(0,i.Z)({},o,{icon:g.Tu.ArrowRight,iconPosition:"right",onClick:l}),O(x.W.Reservation.BookAgain)));case r.MoreDetails:return n.createElement(_.rU,{to:"".concat(h.P.SingleReservation.path).concat(m.bookingId,"/item")},n.createElement(d.Z,(0,i.Z)({},o,{primary:!0,filled:!0,icon:g.Tu.ArrowRight,iconPosition:"right"}),O(x.W.Reservation.MoreDetails)))}})))))))},D=a(2792),T=a.n(D),O=function(e){var t,a=e.title,r=e.icon,o=e.description,l=e.link,i=function(){switch(null==l?void 0:l.icon){case"arrow":return g.Tu.ArrowRight;case"open-new":return g.Tu.LogOut}}();return null!=l&&l.pathTo?n.createElement(_.rU,{to:l.pathTo},n.createElement("div",{className:T().iconNavCard},!!r&&n.createElement(g.ZP,{icon:r,color:N.I.Grey,size:"26px"}),n.createElement(A.ZP,{bold:!0,className:"u-marg-top--light"},a),n.createElement(A.ZP,{className:"u-marg-top--light u-marg-bottom--medium",color:N.I.DarkGrey,type:A.yG.Small},o),n.createElement(d.Z,{size:"tiny",isText:!0,textColor:null!==(t=l.color)&&void 0!==t?t:N.I.Accent,icon:i,iconPosition:"right"},n.createElement("span",{className:"u-uppercase"},l.text)))):null},R=a(7688),W=a(2364),j=function(){var e=(0,R.Kb)(),t=e.fullName,a=e.upcomingBookings,r=(0,b.$)().t,o=(0,n.useContext)(c.g7).screenSize<=P.Z.Large,l=I.Z.getFirstStep().getStepUrl(),i=(null==a?void 0:a.length)>0;return n.createElement("div",null,n.createElement("div",{className:"u-marg-top--heavy@m u-marg-top@m- u-marg-bottom"},n.createElement(_.rU,{to:I.Z.getFirstStep().getStepUrl()},n.createElement(d.Z,{isText:!0,icon:g.Tu.ArrowLeft,size:"small"},r(x.W.UserPortal.HomeScreen.BackToBooking)))),n.createElement("div",{className:"u-marg-bottom--heavy u-pad-top@m"},n.createElement(p.Z,{size:"extra-large",className:"u-marg-bottom"},r(x.W.UserPortal.HomeScreen.Title)," ",t,"!"),i?n.createElement(A.ZP,{type:A.yG.Body},r(x.W.UserPortal.HomeScreen.Subtitle)):n.createElement(A.ZP,{className:"u-marg-top"},r(x.W.Reservation.EmptyPage.SubTitle))),n.createElement("div",{className:"u-marg-bottom--heavy"},i?n.createElement(B,{itineraryItem:null==a?void 0:a[0]}):n.createElement("div",{className:"u-marg-top--heavy u-flex u-flex-align-center u-flex-direction-column@l- u-flex-gap"},n.createElement("div",null,n.createElement("img",{className:"mw-100",src:W.Z.getImageAssetUrl("account/account-home-empty-graphic.svg"),alt:"Account homepage image"})),n.createElement("div",{className:"u-marg-top--heavy@m-"},n.createElement(p.Z,{size:"large"},r(x.W.Reservation.EmptyPage.Message)),n.createElement(A.ZP,{color:N.I.DarkGrey,type:A.yG.Small,className:"u-marg-top--light"},r(x.W.Reservation.EmptyPage.SubMessage)),n.createElement("div",{className:"u-marg-top--heavy u-flex u-flex-flex-start u-flex-gap--light u-flex-direction-column@l-"},n.createElement(_.rU,{to:l},n.createElement(d.Z,{wide:o,rounded:!0,filled:!0,icon:g.Tu.ArrowRight,iconPosition:"right",primary:!0},r(x.W.Reservation.EmptyPage.SearchRooms))),n.createElement(_.rU,{to:h.P.Reservations.path},n.createElement(d.Z,{wide:o,rounded:!0,icon:g.Tu.ArrowRight,iconPosition:"right"},r(x.W.Reservation.EmptyPage.SeeAll))))))),n.createElement("div",{className:"row"},n.createElement("div",{className:"col-md-3"},n.createElement(O,{icon:g.Tu.Info,title:"View all bookings",description:"See all of your bookings, past, present and cancelled.",link:{text:"See list",pathTo:h.P.Reservations.path,icon:"arrow",color:N.I.Accent}})),n.createElement("div",{className:"col-md-3"},n.createElement(O,{icon:g.Tu.Person,title:"Profile Information",description:"Edit your personal details, like address, and name",link:{text:"Edit Info",pathTo:h.P.ProfileDetails.path,icon:"arrow",color:N.I.Accent}})),n.createElement("div",{className:"col-md-3"},n.createElement(O,{icon:g.Tu.CreditCard,title:"Payment Information",description:"Effortlessly manage cards for smoother checkout",link:{text:"Manage cards",pathTo:h.P.CardDetails.path,icon:"arrow",color:N.I.Accent}})),n.createElement("div",{className:"col-md-3"},n.createElement(O,{icon:g.Tu.Time,title:"Need Help?",description:"Connect with our hotel staff for prompt assistance",link:{text:"Contact now",pathTo:h.P.Help.path,icon:"arrow",color:N.I.Accent}}))))},M=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")},Y=a(4289),U=a(9200),G=a(9874);function L(e,t){var a=0;return n.Children.map(e,(function(e){return n.isValidElement(e)?t(e,a++):e}))}var z=a(885),q=n.createContext({activeKey:"",lastIndex:0,currentIndex:0,onChange:function(){}}),F=function(e){var t=e.children,a=e.defaultActiveKey,r=e.onChange,o=(0,n.useState)(""),l=(0,z.Z)(o,2),i=l[0],c=l[1],s=(0,n.useState)(0),m=(0,z.Z)(s,2),u=m[0],d=m[1],p=(0,n.useState)(0),g=(0,z.Z)(p,2),A=g[0],v=g[1],f={activeKey:i,lastIndex:u,currentIndex:A,onChange:function(e,t){null==r||r(e),d(A),v(t),c(e)}};return(0,n.useEffect)((function(){c(a)}),[]),n.createElement(q.Provider,{value:f},t)},Q=function(e){var t=(0,n.useContext)(q),a=e.title,r=e.navPath,o=e.disabled,l=e.index;return a?n.createElement("li",null,n.createElement(_.OL,{to:r,activeClassName:"active",className:u()("c-nav-item ",{disabled:o}),onClick:function(e){o?e.preventDefault():t.onChange(r,l)}},n.createElement("span",{className:u()("c-nav-link")},n.createElement(A.ZP,{color:N.I.DarkGrey,bold:!0},a)))):null},H=a(4942),K=a(8144);function V(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function $(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?V(Object(a),!0).forEach((function(t){(0,H.Z)(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):V(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function J(e){var t=e.children,a=(0,n.useContext)(q),r=(0,K.Yz)(a.activeKey,{from:{opacity:0,position:"absolute"},to:{opacity:1,position:"relative"},enter:{opacity:1,position:"relative"},leave:{opacity:0,position:"absolute"},config:{friction:25}});return n.createElement("div",{className:"u-pos-rel"},r((function(e){return n.createElement(K.q.div,{style:$({left:0,right:0},e)},n.createElement(o.rs,null,L(t,(function(e){return n.createElement(o.AW,{path:e.props.navPath},e.props.children)})),n.createElement(o.AW,{path:"*"},n.createElement(o.l_,{to:t[0].props.navPath,push:!1}))))})))}var X=a(6625),ee=a.n(X),te=function(e){var t=void 0;return function(e,a){n.Children.forEach(e,(function(e){n.isValidElement(e)&&function(e){t||(t=e.props.eventKey)}(e,0)}))}(e),t},ae={slidesPerView:"auto",allowTouchMove:!0,spaceBetween:32,noSwiping:!1},re=function(e){var t=(0,Y.Ch)(e,{activeKey:"onSelect"}),a=t.onSelect,r=t.children,o=t.variant,l=void 0===o?"tabs":o,c=t.activeKey,s=void 0===c?te(r):c;return n.createElement(F,{defaultActiveKey:s||"",onChange:a},n.createElement("ul",{className:"c-nav c-nav-".concat(l," ").concat(ee().tabCarousel)},n.createElement(U.tq,ae,L(r,(function(e,t){return n.createElement(U.o5,{key:t},n.createElement(Q,(0,i.Z)({index:t},e.props),e))})))),n.createElement(G.Z,{noMargins:!0,fullBleed:!0}),n.createElement(J,null,e.children))},ne=function(e){var t=e.isCancelled,a=(0,b.$)().t,r=(0,n.useContext)(c.g7).screenSize<=P.Z.Medium,o=a(t?"Reservation.YourReservationPage.EmptyCancelledStays":"Reservation.YourReservationPage.EmptyStays"),l=a(t?"Reservation.YourReservationPage.EmptyCancelledDescriptionStays":"Reservation.YourReservationPage.EmptyStaysDescription");return n.createElement("div",{className:"u-flex u-flex-direction-column u-align-center"},n.createElement("div",null,n.createElement("img",{style:{maxWidth:r?345:322},src:W.Z.getImageAssetUrl("/account/account-home-empty-graphic.svg"),alt:""})),n.createElement(p.Z,{size:r?void 0:"large",bold:!0,color:N.I.Navy,className:"u-marg-top--heavy"},o),n.createElement(A.ZP,{type:r?A.yG.Small:void 0,color:N.I.Navy,className:"u-marg-top"},l))},oe=function(e){var t=e.reservationItems,a=void 0===t?[]:t,r=e.actions,o=e.isCancelled;return a.length?n.createElement("div",null,a.map((function(t,o){return n.createElement(B,{key:t.id,itineraryItem:t,disableMarginBottom:o===a.length-1,actions:r,onActionClick:e.onActionClick,showCancelledNotifications:e.showCancelledNotifications})}))):n.createElement(ne,{isCancelled:o})},le=function(){var e=(0,b.$)().t,t=(0,R.Kb)(),a=t.cancelledBookings,o=t.upcomingBookings,l=t.pastBookings;return n.createElement(n.Fragment,null,n.createElement("div",{className:"u-marg-top--heavy@m u-marg-top@- u-marg-bottom--heavy"},n.createElement(_.rU,{to:h.P.Home.path},n.createElement(d.Z,{isText:!0,icon:g.Tu.ArrowLeft,size:"small"},e(x.W.Reservation.BackToYourAccount)))),n.createElement("div",{className:"u-marg-bottom--heavy"},n.createElement(p.Z,{size:"extra-large",bold:!0},e(x.W.Reservation.YourReservationPage.Title))),n.createElement(re,{defaultActiveKey:"upcoming-stays"},n.createElement(M,{navPath:"".concat(h.P.Reservations.path,"/upcoming-stays"),title:e(x.W.Reservation.YourReservationPage.UpcomingStays)},n.createElement("div",{className:"u-pad-top--heavy u-marg-bottom--heavy"},n.createElement(oe,{reservationItems:o}))),n.createElement(M,{navPath:"".concat(h.P.Reservations.path,"/past-stays"),title:e(x.W.Reservation.YourReservationPage.PastStays)},n.createElement("div",{className:"u-pad-top--heavy u-marg-bottom--heavy"},n.createElement(oe,{reservationItems:l,actions:[r.MoreDetails,r.BookAgain]}))),n.createElement(M,{navPath:"".concat(h.P.Reservations.path,"/cancelled-stays"),title:e(x.W.Reservation.YourReservationPage.CancelledStays)},n.createElement("div",{className:"u-pad-top--heavy u-marg-bottom--heavy"},n.createElement(oe,{isCancelled:!0,reservationItems:a,actions:[r.MoreDetails,r.BookAgain]})))))},ie=a(4735),ce=a.n(ie),se=function(e){var t=e.title,a=e.children,r=e.className;return n.createElement("div",{className:u()(ce().root,r)},t&&n.createElement(A.ZP,{bold:!0},t),a&&n.createElement("div",{className:"u-marg-top--medium"},a))},me=a(576),ue=a.n(me);function de(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function pe(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?de(Object(a),!0).forEach((function(t){(0,H.Z)(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):de(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}var ge={type:A.yG.Small},Ae={color:N.I.Grey},ve=function(e){var t=e.IconProps,a=e.TextProps,r=e.icon,o=e.children;return n.createElement("div",{className:u()("u-flex","u-flex-flex-start",ue().root)},r&&n.createElement("div",{className:ue().icon},n.createElement(g.ZP,(0,i.Z)({icon:r},pe(pe({},Ae),t)))),n.createElement(A.ZP,pe(pe({},ge),a||{}),o))},fe=a(3409),ye=a(9527),Ce=a(3261),he=a(5128),Ee=a(4516),be=a(858);function _e(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function xe(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?_e(Object(a),!0).forEach((function(t){(0,H.Z)(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):_e(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function Ne(e,t){var a="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!a){if(Array.isArray(e)||(a=function(e,t){if(e){if("string"==typeof e)return Pe(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?Pe(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){a&&(e=a);var r=0,n=function(){};return{s:n,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,l=!0,i=!1;return{s:function(){a=a.call(e)},n:function(){var e=a.next();return l=e.done,e},e:function(e){i=!0,o=e},f:function(){try{l||null==a.return||a.return()}finally{if(i)throw o}}}}function Pe(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=new Array(t);a<t;a++)r[a]=e[a];return r}var we=function(e){var t=e.items,a=e.booking,r=e.visible,o=e.onClose,l=(0,n.useContext)(c.P0).fetchRoomstayMember,i=(0,n.useState)(!1),s=(0,z.Z)(i,2),m=s[0],u=s[1],p=n.createElement("div",{className:"d-flex u-pad align-items-center justify-content-center"},n.createElement("div",{className:"u-marg-right"},n.createElement(d.Z,{isText:!0,onClick:o},"Abort")),n.createElement(d.Z,{filled:!0,primary:!0,onClick:function(){var e=[];u(!0);var r,n=Ne(t);try{for(n.s();!(r=n.n()).done;){var i=r.value;e.push(Ee.Z.Reservation.cancelReservation(i.id,i.profile.email,a.hotelId))}}catch(e){n.e(e)}finally{n.f()}Promise.all(e).then((function(){null==l||l().then((function(){u(!1),o()}))}))},isLoading:m},"Yes i'm sure"));return n.createElement(he.Z,{title:"Cancelling Reservation",open:r,size:he.g.ExtraSmall,desktopFooter:p,mobileFooter:p,onClose:o},n.createElement("div",{className:"u-pad"},n.createElement(A.ZP,null,"This will cancel...")))},Ze=function(e){var t=e.itineraries,a=e.booking,r=(0,b.$)().t,o=(0,n.useMemo)((function(){var e,a=[],r=[],n=Ne(t);try{for(n.s();!(e=n.n()).done;){var o=e.value;o.status===s.Et.Cancelled?a.push(o):r.push(o)}}catch(e){n.e(e)}finally{n.f()}return[a,r]}),t),l=(0,z.Z)(o,2),i=l[0],c=l[1];return n.createElement(se,{className:"w-100",title:r(x.W.Reservation.CodeNumberInformation)},[{label:"Cancelled",value:i,type:fe.Rm.Danger},{label:"Confirmed",value:c,type:fe.Rm.Success}].map((function(e){if(e.value.length>0)return n.createElement(n.Fragment,null,n.createElement(A.ZP,{className:"u-marg-right--light",inline:!0,type:A.yG.Small},e.label),e.value.map((function(t,a){return n.createElement(n.Fragment,{key:a},n.createElement(A.ZP,{className:"u-marg-right",inline:!0,type:A.yG.Small},n.createElement(fe.ZP,{type:e.type},"#",t.id)))})),n.createElement("br",null))})),n.createElement("div",{className:"u-marg-top"},n.createElement(A.ZP,{className:"u-marg-right--light",inline:!0,type:A.yG.Small},"Itinerary"),n.createElement(fe.ZP,{variant:fe.oG.Outlined,type:fe.Rm.Grey},"#",a.itineraryId)))},ke=function(){var e,t,a,l,i,m,u,v=(0,b.$)().t,f=(0,n.useContext)(c.g7),y=(0,n.useContext)(c.Qm).getHotel,C=(0,ye.K)().getItinerary,E=(0,n.useState)(null),w=(0,z.Z)(E,2),Z=w[0],k=w[1],I=(0,n.useState)(),S=(0,z.Z)(I,2),B=S[0],D=S[1],T=f.screenSize<=P.Z.Medium,O=(0,o.UO)(),R=(0,n.useMemo)((function(){var e=[],t=C(O.resId);if(null!=t&&t.itinerary)for(var a=0,r=Object.values(t.itinerary);a<r.length;a++){var n=r[a];e.push(xe(xe({},n),{},{bookingId:t.itineraryId}))}return[t,e]}),[O,C]),W=(0,z.Z)(R,2),j=W[0],M=W[1];(0,n.useEffect)((function(){j&&j.hotelId&&y(j.hotelId).then((function(e){D(e)}))}),[j,y]);var Y=(0,n.useMemo)((function(){var e,t=Ne(M);try{for(t.s();!(e=t.n()).done;)return e.value.status===s.Et.Cancelled}catch(e){t.e(e)}finally{t.f()}}),[M]);if(!j)return n.createElement(n.Fragment,null,"Loading");var U=null!==(e=null==B?void 0:B.address)&&void 0!==e?e:{},L=U.line1,q=U.line2,F=U.postalCode,Q=U.country;return n.createElement("div",null,n.createElement("div",{className:"u-marg-top--heavy@m u-marg-top@m- u-marg-bottom--heavy u-print-none"},n.createElement(_.rU,{to:h.P.Reservations.path},n.createElement(d.Z,{isText:!0,icon:g.Tu.ArrowLeft,size:"small"},v(x.W.Reservation.BackToYourReservations)))),n.createElement("div",{className:"u-flex-align-stretch@m- u-flex u-flex-align-flex-end u-marg-bottom--heavy u-pad-top@m u-flex-direction-column@m- u-print-none"},n.createElement("div",null,n.createElement(A.ZP,{className:"u-marg-bottom--light"},Ce.Z.pluralWithCount(M.length,"Room")),n.createElement(p.Z,{size:"extra-large",className:"u-marg-bottom--light"},function(e){var t,a={},r=Ne(e);try{for(r.s();!(t=r.n()).done;){var n,o=t.value;a[o.roomName]=(null!==(n=a[o.roomName])&&void 0!==n?n:0)+1}}catch(e){r.e(e)}finally{r.f()}return Object.keys(a).map((function(e){if(a[e]<=1)return"".concat(e)})).join(" + ")}(M)),n.createElement(A.ZP,{type:A.yG.Body},null==B?void 0:B.name," • ",[L,q,F,Q].filter((function(e){return!!e})).join(" "))),n.createElement("div",{className:"u-flex u-flex-gap u-flex-direction-column@m- u-flex-gap--light@m- u-marg-top--heavy@m-"},n.createElement(d.Z,{wide:T,rounded:T,textColor:N.I.Navy,isText:!T,icon:g.Tu.Share,iconPosition:"left"},v(x.W.Reservation.Share)),n.createElement(d.Z,{wide:T,mobileWidth:!0,rounded:T,textColor:N.I.Navy,className:"",isText:!T,icon:g.Tu.Print,iconPosition:"left",onClick:function(){window.print()}},v(x.W.Reservation.Print)),!Y&&n.createElement(d.Z,{danger:!0,wide:T,mobileWidth:!0,rounded:T,textColor:N.I.Alert,isText:!T,onClick:function(){return k(M)}},Ce.Z.plural(M.length,v(x.W.Reservation.CancelReservation))))),n.createElement("span",{className:"u-print-none"},n.createElement(G.Z,{fullBleed:!0})),n.createElement("div",{className:"u-marg-bottom--massive u-marg-bottom--none@m- u-print-marg-none"},n.createElement(oe,{actions:[r.Cancel,r.BookAgain],reservationItems:M,onActionClick:function(e,t){e===r.Cancel&&k([t])},showCancelledNotifications:!0})),n.createElement(G.Z,{noMargins:T}),n.createElement("div",{className:"u-flex u-marg-top--heavy@m-"},n.createElement(p.Z,{size:"large",bold:!0},v(x.W.Reservation.Total)),n.createElement("div",{className:"u-flex align-items-end flex-column"},n.createElement(p.Z,{lineThrough:!0,size:"large",bold:!0},n.createElement(be.Z,null,(0,s.Rr)(j))),n.createElement(A.ZP,{type:A.yG.Small,color:N.I.DarkGrey},v(x.W.Reservation.PriceNote)))),n.createElement("div",{className:"row u-marg-top--massive@m u-marg-top--heavy@m-"},n.createElement("div",{className:"col-md-4 u-flex u-print-col-md-4"},n.createElement(se,{className:"w-100",title:v(x.W.Reservation.ProfileInformation)},n.createElement(ve,{icon:g.Tu.Person},(null==M||null===(t=M[0])||void 0===t||null===(a=t.profile)||void 0===a?void 0:a.firstName)+" "+(null==M||null===(l=M[0])||void 0===l||null===(i=l.profile)||void 0===i?void 0:i.lastName)),n.createElement(ve,{icon:g.Tu.Email},null==M||null===(m=M[0])||void 0===m||null===(u=m.profile)||void 0===u?void 0:u.email),n.createElement(ve,{icon:g.Tu.CreditCard},n.createElement(A.ZP,{type:A.yG.Small},"•••• •••• •••• 1111"," ",n.createElement(A.ZP,{inline:!0,type:A.yG.Small,color:N.I.DarkGrey},"(Visa)"))))),n.createElement("div",{className:"col-md-4 u-flex u-print-col-md-4"},n.createElement(se,{className:"w-100",title:v(x.W.Reservation.HotelInformation)},n.createElement(ve,{icon:g.Tu.Map},L,n.createElement("br",null),q," ",F,", ",Q),n.createElement(ve,{icon:g.Tu.Phone},null==B?void 0:B.phone))),n.createElement("div",{className:"col-md-4 u-flex u-print-col-md-4"},n.createElement(Ze,{itineraries:M,booking:j}))),n.createElement("div",{className:"u-marg-top--massive@m u-marg-top@m- u-background--snow u-w-fluid u-pad-top--massive@m u-pad-top--heavy@m- u-pad-bottom--heavy @m- u-pad-bottom--massive@m"},n.createElement("div",{className:"container"},n.createElement(A.ZP,{bold:!0}," ",v(x.W.Reservation.Policies)),n.createElement("div",{className:"u-marg-top--medium"},n.createElement("div",{className:"u-w-100"},n.createElement("div",{className:"u-flex u-flex-direction-column@m- u-flex-gap--medium@m-"},n.createElement(A.ZP,{type:A.yG.Small},n.createElement("strong",null,v(x.W.Reservation.CheckIn)),n.createElement("br",null),v(x.W.Reservation.After)," 2:00 PM"),n.createElement(A.ZP,{type:A.yG.Small},n.createElement("strong",null,v(x.W.Reservation.CheckOut)),n.createElement("br",null),v(x.W.Reservation.After)," 2:00 PM"),n.createElement("div",null,M.map((function(e){return n.createElement(A.ZP,{type:A.yG.Small,key:e.id},e.roomName," - ",e.rateName)})))))),n.createElement(A.ZP,{className:"u-marg-top--medium",type:A.yG.Caption},v(x.W.Reservation.Policy1),n.createElement("br",null),n.createElement("br",null),v(x.W.Reservation.Policy2)))),n.createElement(we,{onClose:function(){k(null)},items:Z,booking:j,visible:!!Z}))},Ie=a(5987),Se=a(6604),Be=a(1432),De=a(5762),Te=a(7536),Oe=a(6431),Re=a(5867),We=["ref"],je=function(e){var t=e.label,a=e.component,r=e.hint,o=e.error;return n.createElement("div",{className:"row u-marg-bottom--heavy"},n.createElement("div",{className:"col-md-4"},n.createElement(A.ZP,{type:A.yG.Small,bold:!0},t)),n.createElement("div",{className:"col-md-8"},a,!!o&&n.createElement("p",{className:"text-small",style:{color:"#ED4362"}},o.message),!!r&&n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Grey},r)))},Me=function(){var e=(0,n.useContext)(c.P0),t=e.roomstayMember,a=e.loading,r=e.updateMemberDetails,o=(0,n.useContext)(c.uj),l=(0,b.$)().t,s=(0,Te.cI)({mode:"onChange"}),m=s.watch,u=s.register,v=s.formState,f=v.errors,y=v.isDirty,C=s.handleSubmit,E=s.reset,N=s.control,P=function(e){return f[e]?"error":void 0};(0,n.useEffect)((function(){t&&E(t)}),[t]);var w=!y||a||!!Object.keys(f).length;return n.createElement(n.Fragment,null,n.createElement("div",{className:"u-marg-top--heavy@m u-marg-top@- u-marg-bottom--heavy"},n.createElement(_.rU,{to:h.P.Home.path},n.createElement(d.Z,{isText:!0,icon:g.Tu.ArrowLeft,size:"small"},l(x.W.Reservation.BackToYourAccount)))),n.createElement("div",{className:"u-marg-bottom--heavy@m"},n.createElement(p.Z,{size:"extra-large",bold:!0},"Profile Information")),n.createElement("form",{onSubmit:C((function(e){null==r||r(e).then((function(){o.addNotification({icon:g.Tu.Check,children:n.createElement(A.ZP,null,"Details saved succesfully")})}))}))},n.createElement("div",{className:"row"},n.createElement("div",{className:"col-md-8"},n.createElement("div",null,n.createElement(je,{label:"First Name",component:n.createElement(Be.Z,(0,i.Z)({validationStatus:P("forename")},u("forename",{required:{message:"First name is required",value:!0}}))),error:f.forename}),n.createElement(je,{label:"Last Name",component:n.createElement(Be.Z,(0,i.Z)({validationStatus:P("surname")},u("surname",{required:{message:"Last name is required",value:!0}}))),error:f.surname}),n.createElement(je,{label:"Email Address",component:n.createElement(Be.Z,{validationStatus:P("email"),inputProps:{disabled:!0},value:null==t?void 0:t.email}),error:f.email}),n.createElement(je,{label:"Phone Number",component:n.createElement(Te.Qr,{rules:{pattern:{value:/.*\s\d+/,message:"Phone Number is required"}},control:N,name:"phoneNumber",render:function(e){var t=e.field;return n.createElement(Se.Z,(0,i.Z)({},t,{onChange:function(e){t.onChange(e)},validationStatus:P("phoneNumber")}))}}),error:f.phoneNumber}),n.createElement(G.Z,null),n.createElement(je,{label:"Password",component:n.createElement(Re.J,(0,i.Z)({placeholder:"•••••••••••••••"},u("password",{pattern:Oe.hL}),{validationStatus:P("password")})),hint:"At least 8 characters long, case sensitive, can contain !$#%, no spaces.",error:f.password}),n.createElement(je,{label:"Repeat Password",component:n.createElement(Re.J,(0,i.Z)({placeholder:"•••••••••••••••"},u("passwordRepeat",{required:{value:!!m("password"),message:"Repeat Password is required"},validate:{isSame:(0,Oe.N0)(m("password"))}}),{validationStatus:P("passwordRepeat")})),error:f.passwordRepeat}),n.createElement(G.Z,null),n.createElement(je,{label:"Address",component:n.createElement(Be.Z,u("address.address"))}),n.createElement(je,{label:"City",component:n.createElement(Be.Z,u("address.city"))}),n.createElement(je,{label:"ZIP/Post Code",component:n.createElement(Be.Z,u("address.zip"))}),n.createElement(je,{label:"Country",component:n.createElement(Te.Qr,{control:N,name:"address.country",render:function(e){var t=e.field,a=(t.ref,(0,Ie.Z)(t,We));return n.createElement(De.Z,a)}})})))),n.createElement("div",{className:"u-flex justify-content-start u-marg-top--heavy"},n.createElement(_.rU,{to:"/account/home",className:"u-marg-right"},n.createElement(d.Z,null,"Cancel")),n.createElement(d.Z,{disabled:w,isLoading:a,primary:!0,filled:!0,htmlType:"submit"},"Save all changes"))))},Ye=a(5861),Ue=a(4687),Ge=a.n(Ue),Le=a(7074),ze=a.n(Le),qe=a(2327),Fe=a.n(qe),Qe=a(3733),He=function(e){var t=e.options,a=void 0===t?[]:t,r=e.onChange,o=e.value,l=e.onNewCardClicked;return n.createElement(n.Fragment,null,n.createElement("div",{className:Fe()["card-list"]},n.createElement(U.tq,{className:u()(Fe()["card-list-swiper"],"u-marg-bottom--heavy","u-marg-bottom--none@l"),breakpoints:{992:{enabled:!1,spaceBetween:0}},spaceBetween:8,enabled:!0,slidesPerView:"auto"},a.map((function(e){return n.createElement(U.o5,{key:e.cardId,style:{width:"auto"}},n.createElement(Qe.c,{selected:(null==o?void 0:o.cardId)===e.cardId,item:e,onClick:function(){!function(e){null==r||r(e)}(e)}}))})),n.createElement(U.o5,{style:{width:"auto"}},n.createElement(Qe.c,{selected:!(null!=o&&o.cardId),onClick:function(){return null==l?void 0:l()}})))))},Ke=a(6895),Ve=a.n(Ke),$e=a(5993),Je=a(4098),Xe=a.n(Je),et=a(1291),tt=a(4485),at=a(3551);function rt(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function nt(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?rt(Object(a),!0).forEach((function(t){(0,H.Z)(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):rt(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}var ot,lt=function(e){var t=e.card,a={"@font-face":{src:"url(".concat(W.Z.wrapAssetUrl("assets/fonts/cadiz/Cadiz-Bold.otf"),")"),"font-weight":"bold","font-display":"swap","font-family":"Cadiz"},"font-size":"18px","line-height":"24px","font-weight":"bold","font-family":"Cadiz",color:"white"},r=(0,et.u)({name:"credit-card",value:t.cardNumber,styles:nt(nt({},a),{},{"word-spacing":"16px"})}),o=r.targetRef,l=r.isLoading,i=(0,et.u)({name:"card-name",value:t.name,styles:a}),c=i.targetRef,s=i.isLoading,m=(0,at.Y)(t.type);return n.createElement("div",{className:Xe().card},n.createElement("img",{className:"u-w-100",src:m.backgroundUrl,alt:"Payment card background color"}),n.createElement("div",{className:Xe().chip},n.createElement("img",{src:W.Z.getImageAssetUrl()+"chip.svg",alt:"Chip"})),n.createElement("div",{className:Xe().type},n.createElement("img",{src:m.cardNameIconUrl,alt:"Payment card type ".concat(t.type)})),n.createElement("div",{className:Xe().number},l&&n.createElement(tt.Z,null),n.createElement("span",{ref:o})),n.createElement("div",{className:Xe().name},n.createElement("div",{className:Xe().label},"Card Holder Name"),n.createElement("div",{className:Xe().cardholderName},s&&n.createElement(tt.Z,null),n.createElement("span",{ref:c}))),n.createElement("div",{className:Xe().date},n.createElement("div",{className:Xe().label},"Expiry Date"),t.expiry?n.createElement("div",{className:Xe().value},t.expiry):n.createElement("br",{className:Xe().value})))},it=a(3392),ct=a(2497),st=a.n(ct),mt=a(6874),ut=(ot={},(0,H.Z)(ot,it.X.Visa,mt.H.Visa),(0,H.Z)(ot,it.X.Mastercard,mt.H.Mastercard),(0,H.Z)(ot,it.X.AmericanExpress,mt.H.AmericanExpress),(0,H.Z)(ot,it.X.JCB,mt.H.JCB),ot),dt=function(e){var t=e.value,a=e.onChange,r=(0,R.WP)().hotel;return n.createElement("div",{className:st().root,onChange:a},Object.values(it.X).filter((function(e){var t,a=ut[e];return a&&(null==r||null===(t=r.paymentCardTypes)||void 0===t?void 0:t.includes(a))})).map((function(e){var a=(0,at.Y)(e).cardIconUrl;return n.createElement("div",{key:e,className:u()(st().icon,(0,H.Z)({},st().isSelected,t===e))},n.createElement("img",{src:a,alt:e}))})))},pt=a(9740),gt=a(7933),At=a(3078),vt=a(1321),ft=function(e){var t=e.card,a=e.onSubmit,r=e.onDeleteClicked,o=e.onMarkedAsDefaultClicked,l=(0,ye.K)(),i=l.user,c=l.fullName,s=(0,n.useState)({}),m=(0,z.Z)(s,2),u=m[0],p=m[1],v=(0,n.useState)(null),f=(0,z.Z)(v,2),y=f[0],C=f[1],h=(0,n.useState)(!1),E=(0,z.Z)(h,2),b=E[0],_=E[1],x=(0,n.useState)(!1),P=(0,z.Z)(x,2),w=P[0],Z=P[1],k=(0,n.useState)(!1),I=(0,z.Z)(k,2),S=I[0],B=I[1],D=(null==i?void 0:i.defaultCard)===(null==t?void 0:t.cardId),T=!(null==t||!t.cardId),O={fontSize:"13px",lineHeight:"18px","&::placeholder":{color:"#8B8F9A",opacity:1}},R=(0,et.c)([{name:"credit-card",label:"Credit Card",type:"card-number",vgsProps:{validations:["required","validCardNumber"],css:O,autoComplete:["cc-number"],successColor:"#4F8A10",errorColor:"#D8000C",showCardIcon:!1,placeholder:"5913 2207 9578 4291",disabled:T}},{name:"card-name",label:"Card Name",type:"text",vgsProps:{validations:["required"],css:O,disabled:T,placeholder:c}},{name:"expiration-date",label:"Expiration Date",type:"card-expiration-date",vgsProps:{validations:["required","validCardExpirationDate"],css:O,disabled:T,placeholder:"12/27"}},{name:"security-code",label:"Security Code",type:"card-security-code",vgsProps:{validations:["required","validCardSecurityCode"],css:O,disabled:T,placeholder:"552"}}]),W=(0,z.Z)(R.fields,4),j=W[0],M=W[1],Y=W[2],U=W[3],G=R.triggerFieldUpdate,L=R.vgsForm;(0,n.useEffect)((function(){G()}),[t]),(0,n.useEffect)((function(){null!=j&&j.state.cardType&&C(j.state.cardType)}),[j]);var q=function(e){var t={};Object.keys(e).forEach((function(a){var r="";switch(a){case"credit-card":r="Credit Card";break;case"expiration-date":r="Expiration Date";break;case"security-code":r="Security Code";break;default:r="Card Name"}t[a]=r+" "+e[a].errorMessages[e[a].errorMessages.length-1]})),p(t)},F=function(){var e=(0,Ye.Z)(Ge().mark((function e(){var r;return Ge().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,vt.v)();case 2:r=e.sent,L?(_(!0),r.currentAuthenticatedUser().then((function(e){var r=e.signInUserSession.idToken.jwtToken;L.submit("/members/vgs-hide",{serializer:"deep",methods:"POST",headers:{Authorization:r}},function(){var e=(0,Ye.Z)(Ge().mark((function e(r,n){var o,l,i;return Ge().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(!(o=n["expiration-date"].match(/^(\d+)\s*\/\s*(\d+)$/))||o[1].length>2||4!==o[2].length&&2!==o[2].length)){e.next=4;break}return q({"expiration-date":{errorMessages:["Invalid - it must be in the format MM / YY or MM / YYYY"]}}),e.abrupt("return");case 4:return l=(1===o[1].length?"0":"")+o[1]+(2===o[2].length?o[2]:o[2].substr(2)),i={username:t.username,cardId:t.cardId,securityCode:n["security-code"],expiry:l,name:n["card-name"],cardNumber:n["credit-card"],type:y},e.next=8,null==a?void 0:a(i);case 8:L.reset(),_(!1);case 10:case"end":return e.stop()}}),e)})));return function(t,a){return e.apply(this,arguments)}}(),(function(e){q(e),_(!1)}))}))):console.error("VGS not on element, problem has occurred");case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return n.createElement(n.Fragment,null,n.createElement("div",{className:Ve()["card-inputs"]},n.createElement("div",{className:"u-marg-bottom--medium u-marg-top--heavy@l-"},n.createElement(dt,{value:y||void 0})),n.createElement("div",{className:"u-margin-bottom"},["credit-card","card-name","expiration-date","security-code"].map((function(e){var t=u[e];return n.createElement(pt.Z,{open:!!t,key:e},n.createElement("div",{className:"u-flex"},n.createElement(gt.ZP,{type:gt.NK.Danger,icon:g.Tu.Error},n.createElement(A.ZP,{type:A.yG.Small},t))))}))),n.createElement("div",{className:"u-marg-bottom"},n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Card Number")),n.createElement("div",{className:j.getClasses(),ref:j.ref})),n.createElement("div",{className:"u-marg-bottom"},n.createElement($e.Z,{dimensions:"2/2"},n.createElement(n.Fragment,null,n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Expiry Month / Year")),n.createElement("div",{className:Y.getClasses(),ref:Y.ref})),n.createElement(n.Fragment,null,n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Security code")),n.createElement("div",{className:U.getClasses(),ref:U.ref})))),n.createElement("div",{className:"u-marg-bottom"},n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Name on Credit Card")),n.createElement("div",{className:M.getClasses(),ref:M.ref})),n.createElement("div",{className:"u-marg-bottom"},null!=t&&t.cardId?n.createElement(d.Z,{className:"u-marg-top--heavier@l u-marg-top--heavy@l- u-flex u-flex-justify-center",isLoading:w,textColor:N.I.Danger,isText:!0,icon:g.Tu.Delete,onClick:function(){Z(!0),null==r||r(t).finally((function(){Z(!1)}))},stopIconAnimation:!0},"Delete Card"):n.createElement(d.Z,{className:"u-marg-top--heavier@l u-marg-top--heavy@l- u-flex u-flex-justify-center",isLoading:b,rounded:!0,primary:!0,filled:!0,mobileWidth:!0,onClick:F},"Save Card"))),n.createElement(At.Z,{open:!(null==t||!t.cardId)},n.createElement("div",{className:Ve()["card-large"]},n.createElement(lt,{card:t}),n.createElement("div",{className:"u-marg-top u-marg-top--heavy@l-"},n.createElement(d.Z,{onClick:function(){B(!0),null==o||o(t).finally((function(){B(!1)}))},isLoading:S,disabled:D,filled:!0,primary:!0,size:"small"},"Mark as Default")))))},yt=a(6468),Ct=function(e){var t=e.onAddNewCard,a=(0,n.useContext)(c.g7).screenSize<=P.Z.Medium;return n.createElement("div",{className:"u-align-center u-marg-top@m-"},n.createElement("img",{className:"u-max-width-full",src:W.Z.getImageAssetUrl("account/account-details-no-cards-graphic.svg"),alt:""}),n.createElement(p.Z,{className:"u-marg-top--heavy",bold:!0,size:a?"normal":"large",color:N.I.Navy},"You don't have any cards yet!"),n.createElement(A.ZP,{style:{maxWidth:660},className:"u-marg-top u-marg-left-right--auto",color:N.I.Graphite,type:a?A.yG.Small:A.yG.Body},"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."),n.createElement(d.Z,{className:"u-marg-top",filled:!0,primary:!0,rounded:!0,onClick:t},"Add new card"))},ht=a(7832);function Et(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function bt(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?Et(Object(a),!0).forEach((function(t){(0,H.Z)(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):Et(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}var _t=function(e){var t,a,r=(0,n.useContext)(c.P0),o=r.roomstayMember,l=r.cards,i=r.updateCardToMemberDetail,s=r.fetchRoomstayMember,m=r.updateMemberDetails,u=r.loading,v=(0,n.useMemo)((function(){return{cardId:"",cardNumber:"",expiry:"",name:"",securityCode:"",type:"",username:(null==o?void 0:o.username)||""}}),[o]),f=(0,n.useState)(null),y=(0,z.Z)(f,2),C=y[0],h=y[1],E=(0,n.useState)(!(null==o||null===(t=o.cards)||void 0===t||!t.length)),b=(0,z.Z)(E,2),x=b[0],N=b[1];(0,n.useEffect)((function(){var e;null!=o&&null!==(e=o.cards)&&void 0!==e&&e.length&&N(!0)}),[null==o||null===(a=o.cards)||void 0===a?void 0:a.length]),(0,n.useEffect)((function(){var e=!1;if(C)for(var t=0,a=l;t<a.length;t++)if(a[t].cardId===C.cardId){e=!0;break}if(0!==(null==l?void 0:l.length)){if((!C||(null==C?void 0:C.cardId)===v.cardId)&&(null==l?void 0:l.length)>0||!e&&""!==(null==C?void 0:C.cardId)){if(null!=o&&o.defaultCard)for(var r=0,n=l;r<n.length;r++)if(n[r].cardId===o.defaultCard)return void h(null==l?void 0:l[0]);h(null==l?void 0:l[0])}}else h(v)}),[o,null==l?void 0:l.length]);var P=function(){var e=(0,Ye.Z)(Ge().mark((function e(t){return Ge().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t.cardId?(0,yt.F5)(t).then((function(e){h(t),null==i||i(e)})):(0,yt.lP)(t).then((function(e){h(bt(bt({},t),e)),null==i||i(e)}));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),w=function(){var e=(0,Ye.Z)(Ge().mark((function e(t){return Ge().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,(0,yt.My)(t);case 3:return e.next=5,null==s?void 0:s();case 5:e.next=10;break;case 7:e.prev=7,e.t0=e.catch(0),console.log("Failed deleting card");case 10:case"end":return e.stop()}}),e,null,[[0,7]])})));return function(t){return e.apply(this,arguments)}}(),Z=function(){var e=(0,Ye.Z)(Ge().mark((function e(t){return Ge().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,null==m?void 0:m(bt(bt({},o),{},{defaultCard:null==t?void 0:t.cardId}));case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return u?n.createElement(ht.Z,null):n.createElement(n.Fragment,null,n.createElement("div",{className:"u-marg-top--heavy@m u-marg-top@m- u-marg-bottom--heavy"},n.createElement(_.rU,{to:"/account/home"},n.createElement(d.Z,{isText:!0,icon:g.Tu.ArrowLeft,size:"small"},"BACK TO YOUR ACCOUNT"))),n.createElement("div",{className:"u-marg-bottom--heavy@m"},n.createElement(p.Z,{size:"extra-large",bold:!0},"Payment Information")),n.createElement(At.Z,{open:x},n.createElement("div",{className:ze()["layout-grid"]},n.createElement("div",{className:ze()["card-list"]},n.createElement(A.ZP,{bold:!0,className:"u-marg-bottom"},"Saved Cards"),n.createElement(He,{onNewCardClicked:function(){h(v)},value:C,onChange:function(e){return h(e)},options:l})),n.createElement(ft,{card:C,onSubmit:P,onDeleteClicked:w,onMarkedAsDefaultClicked:Z}))),!x&&n.createElement(Ct,{onAddNewCard:function(){return N(!0)}}))},xt=a(258),Nt=function(){var e=(0,b.$)().t,t=(0,R.WP)().hotel,a=(0,R.Kb)(),r=a.user,o=a.fullName,l=(0,Te.cI)({mode:"onChange",reValidateMode:"onBlur"}),c=l.register,s=l.formState,m=l.handleSubmit,u=l.reset,v=l.control,f=(0,n.useState)({}),y=(0,z.Z)(f,2),C=y[0],E=y[1],P=(0,n.useState)(!1),w=(0,z.Z)(P,2),Z=w[0],k=w[1];(0,n.useEffect)((function(){r&&u({name:o,email:r.email,telephone:r.phoneNumber})}),[o,r]);var I=function(){var a=(0,Ye.Z)(Ge().mark((function a(r){return Ge().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return E({}),k(!0),a.prev=2,a.next=5,Ee.Z.Error.sendMemberAreaContactForm(null==t?void 0:t.hotelID,{name:r.name,telephone:r.telephone,email:r.email,message:r.message});case 5:E({success:!0}),a.next=11;break;case 8:a.prev=8,a.t0=a.catch(2),E({success:!1,message:e(x.W.Step.Room.ErrorForm.APIError)});case 11:k(!1);case 12:case"end":return a.stop()}}),a,null,[[2,8]])})));return function(e){return a.apply(this,arguments)}}(),S=function(e){if(s.errors)return s.errors[e]?"error":"success"};return n.createElement("div",null,n.createElement("div",{className:"u-marg-top--heavy@m u-marg-top@m- u-marg-bottom--heavy"},n.createElement(_.rU,{to:h.P.Home.path},n.createElement(d.Z,{isText:!0,icon:g.Tu.ArrowLeft,size:"small"},"BACK TO YOUR ACCOUNT"))),n.createElement("div",{className:"u-marg-bottom--heavy u-pad-top@m"},n.createElement(p.Z,{size:"extra-large",className:"u-marg-bottom"},"Need some help?")),n.createElement("form",{onSubmit:m(I),className:"u-marg-bottom",style:{maxWidth:500}},n.createElement(pt.Z,{open:!!s.errors},n.createElement("div",{className:"u-flex flex-column"},Object.keys(s.errors).map((function(e,t){var a;return n.createElement(gt.ZP,{type:gt.NK.Danger,icon:g.Tu.Error,key:t},n.createElement(A.ZP,{type:A.yG.Small},null===(a=s.errors[e])||void 0===a?void 0:a.message))})))),n.createElement("div",{className:"u-marg-bottom"},n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Name")),n.createElement(Be.Z,(0,i.Z)({required:!0,validationStatus:S("name")},c("name",{required:{message:"Name is required",value:!0}})))),n.createElement("div",{className:"u-marg-bottom"},n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},e(x.W.Navigation.SignIn.EmailAddress))),n.createElement(Be.Z,(0,i.Z)({placeholder:"example@mail.com",required:!0,validationStatus:S("email")},c("email",{required:{message:"".concat(e(x.W.Navigation.SignIn.EmailAddress)," is required"),value:!0},pattern:{value:/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i,message:e(x.W.FindReservation.InvalidEmailAddress)}})))),n.createElement("div",{className:"u-marg-bottom"},n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Telephone")),n.createElement(Te.Qr,{rules:{pattern:{value:/.*\s\d+/,message:"Telephone is required"}},control:v,name:"telephone",render:function(e){var t=e.field;return n.createElement(Se.Z,(0,i.Z)({},t,{onChange:function(e){t.onChange(e)},validationStatus:S("telephone")}))}})),n.createElement("div",{className:"u-marg-bottom"},n.createElement("div",{className:"u-marg-bottom--light"},n.createElement(A.ZP,{type:A.yG.Label,color:N.I.Navy,bold:!0},"Message")),n.createElement(xt.Z,(0,i.Z)({required:!0},c("message",{required:{message:"Message is required",value:!0}})))),n.createElement(d.Z,{icon:g.Tu.ArrowRight,iconPosition:"right",filled:!0,primary:!0,htmlType:"submit",isLoading:Z,disabled:Z||C.success},"Submit")),n.createElement(pt.Z,{open:!!C.success},n.createElement("div",{className:"u-pad-top"},n.createElement(A.ZP,{color:N.I.Success},e(x.W.Step.Room.ErrorForm.ConfirmationMessage)))),n.createElement(pt.Z,{open:!1===C.success},n.createElement("div",{className:"u-pad-top"},n.createElement(A.ZP,{color:N.I.Alert},C.message))))},Pt=["children","render"],wt=function(e){var t=e.children,a=e.render,r=(0,Ie.Z)(e,Pt),l=(0,c.JL)(),s=l.cognitoLoginState,m=l.loading,u=s===c.hH.Success;return n.createElement(o.AW,(0,i.Z)({},r,{render:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return m||u?null==a?void 0:a.apply(void 0,t):n.createElement(o.l_,{to:{pathname:"/find-reservation"}})}}),u?t:null)},Zt=function(){return n.createElement(n.Fragment,null,n.createElement(wt,{path:"/account"},n.createElement(l,null,n.createElement(o.AW,{path:h.P.Home.path,component:j}),n.createElement(o.AW,{path:h.P.Reservations.matchPath,component:le,exact:!0}),n.createElement(o.AW,{path:h.P.SingleReservation.matchPath,component:ke}),n.createElement(o.AW,{path:h.P.ProfileDetails.path,component:Me}),n.createElement(o.AW,{path:h.P.CardDetails.path,component:_t}),n.createElement(o.AW,{path:h.P.Help.path,component:Nt}))))}},2904:function(e,t,a){(t=a(3645)(!0)).push([e.id,".Card-module__root___2ks2i{display:flex;flex-direction:column;border-radius:8px;border:1px solid var(--rs-color-light-grey);padding:24px;margin-bottom:16px}","",{version:3,sources:["Card.module.scss"],names:[],mappings:"AAAA,2BAAM,YAAY,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,2CAA2C,CAAC,YAAY,CAAC,kBAAkB",file:"Card.module.scss",sourcesContent:[".root{display:flex;flex-direction:column;border-radius:8px;border:1px solid var(--rs-color-light-grey);padding:24px;margin-bottom:16px}"]}]),t.locals={root:"Card-module__root___2ks2i"},e.exports=t},8989:function(e,t,a){(t=a(3645)(!0)).push([e.id,".IconNavCard-module__iconNavCard___2CKIi{display:flex;flex-direction:column;border-radius:8px;border:1px solid var(--rs-color-light-grey);padding:24px;margin-bottom:16px;transition:border-color .2s}.IconNavCard-module__iconNavCard___2CKIi:hover{border-color:var(--rs-color-accent-1)}.IconNavCard-module__iconNavCard___2CKIi:hover .IconNavCard-module__diji-icon___rH7u3{color:var(--rs-color-accent-1) !important}","",{version:3,sources:["IconNavCard.module.scss"],names:[],mappings:"AAAA,yCAAa,YAAY,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,2CAA2C,CAAC,YAAY,CAAC,kBAAkB,CAAC,2BAA2B,CAAC,+CAAmB,qCAAqC,CAAC,sFAA8B,yCAAyC",file:"IconNavCard.module.scss",sourcesContent:[".iconNavCard{display:flex;flex-direction:column;border-radius:8px;border:1px solid var(--rs-color-light-grey);padding:24px;margin-bottom:16px;transition:border-color .2s}.iconNavCard:hover{border-color:var(--rs-color-accent-1)}.iconNavCard:hover .diji-icon{color:var(--rs-color-accent-1) !important}"]}]),t.locals={iconNavCard:"IconNavCard-module__iconNavCard___2CKIi","diji-icon":"IconNavCard-module__diji-icon___rH7u3"},e.exports=t},7766:function(e,t,a){(t=a(3645)(!0)).push([e.id,".IconText-module__root___mQl94{gap:14px}.IconText-module__root___mQl94+.IconText-module__root___mQl94{margin-top:16px}.IconText-module__icon___GJPs-{margin-top:2px}","",{version:3,sources:["IconText.module.scss"],names:[],mappings:"AAAA,+BAAM,QAAQ,CAAC,8DAAY,eAAe,CAAC,+BAAM,cAAc",file:"IconText.module.scss",sourcesContent:[".root{gap:14px}.root+.root{margin-top:16px}.icon{margin-top:2px}"]}]),t.locals={root:"IconText-module__root___mQl94",icon:"IconText-module__icon___GJPs-"},e.exports=t},7414:function(e,t,a){(t=a(3645)(!0)).push([e.id,".CardTypeSelect-module__root___bVAvH{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.CardTypeSelect-module__icon___2B6_5{transition:300ms;opacity:.25;border:1px solid var(--rs-color-dark-grey);width:48px;height:32px;border-radius:5px;display:flex;justify-content:center;align-items:center}.CardTypeSelect-module__icon___2B6_5.CardTypeSelect-module__isSelected___26iC-{opacity:1}","",{version:3,sources:["CardTypeSelect.module.scss"],names:[],mappings:"AAAA,qCAAM,YAAY,CAAC,kBAAkB,CAAC,QAAQ,CAAC,cAAc,CAAC,qCAAM,gBAAgB,CAAC,WAAW,CAAC,0CAA0C,CAAC,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,+EAAiB,SAAS",file:"CardTypeSelect.module.scss",sourcesContent:[".root{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.icon{transition:300ms;opacity:.25;border:1px solid var(--rs-color-dark-grey);width:48px;height:32px;border-radius:5px;display:flex;justify-content:center;align-items:center}.icon.isSelected{opacity:1}"]}]),t.locals={root:"CardTypeSelect-module__root___bVAvH",icon:"CardTypeSelect-module__icon___2B6_5",isSelected:"CardTypeSelect-module__isSelected___26iC-"},e.exports=t},1796:function(e,t,a){(t=a(3645)(!0)).push([e.id,".roomstay-booking-container .PaymentCard-module__card___WwYAA{position:relative;width:100%;margin-left:auto;margin-right:auto;min-width:300px;max-width:345px}.roomstay-booking-container .PaymentCard-module__card___WwYAA svg{width:100%;height:100%}.roomstay-booking-container .PaymentCard-module__chip___2jx_t{position:absolute;top:22px;left:22px}.roomstay-booking-container .PaymentCard-module__type___2l0L-{position:absolute;top:22px;right:22px}.roomstay-booking-container .PaymentCard-module__number___1DVfI{position:absolute;left:22px;right:22px;height:35px;top:75px;color:#fff;font-weight:700;font-size:18px;line-height:24px}.roomstay-booking-container .PaymentCard-module__number___1DVfI iframe{max-height:35px}.roomstay-booking-container .PaymentCard-module__name___uZBkQ{position:absolute;left:22px;bottom:22px}.roomstay-booking-container .PaymentCard-module__name___uZBkQ iframe{max-height:24px}.roomstay-booking-container .PaymentCard-module__label___3jhpF{font-weight:700;font-size:12px;line-height:16px;color:#fff;margin-bottom:4px}.roomstay-booking-container .PaymentCard-module__value___1W-VY{font-weight:700;font-size:18px;line-height:24px;color:#fff}.roomstay-booking-container .PaymentCard-module__date___2EEWd{position:absolute;right:22px;bottom:22px}","",{version:3,sources:["PaymentCard.module.scss"],names:[],mappings:"AAAA,8DAA2C,iBAAiB,CAAC,UAAU,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,eAAe,CAAC,eAAe,CAAC,kEAA+C,UAAU,CAAC,WAAW,CAAC,8DAA2C,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,8DAA2C,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,gEAA6C,iBAAiB,CAAC,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,cAAc,CAAC,gBAAgB,CAAC,uEAAoD,eAAe,CAAC,8DAA2C,iBAAiB,CAAC,SAAS,CAAC,WAAW,CAAC,qEAAkD,eAAe,CAAC,+DAA4C,eAAe,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,iBAAiB,CAAC,+DAA4C,eAAe,CAAC,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,8DAA2C,iBAAiB,CAAC,UAAU,CAAC,WAAW",file:"PaymentCard.module.scss",sourcesContent:[":global(.roomstay-booking-container) .card{position:relative;width:100%;margin-left:auto;margin-right:auto;min-width:300px;max-width:345px}:global(.roomstay-booking-container) .card svg{width:100%;height:100%}:global(.roomstay-booking-container) .chip{position:absolute;top:22px;left:22px}:global(.roomstay-booking-container) .type{position:absolute;top:22px;right:22px}:global(.roomstay-booking-container) .number{position:absolute;left:22px;right:22px;height:35px;top:75px;color:#fff;font-weight:700;font-size:18px;line-height:24px}:global(.roomstay-booking-container) .number iframe{max-height:35px}:global(.roomstay-booking-container) .name{position:absolute;left:22px;bottom:22px}:global(.roomstay-booking-container) .name iframe{max-height:24px}:global(.roomstay-booking-container) .label{font-weight:700;font-size:12px;line-height:16px;color:#fff;margin-bottom:4px}:global(.roomstay-booking-container) .value{font-weight:700;font-size:18px;line-height:24px;color:#fff}:global(.roomstay-booking-container) .date{position:absolute;right:22px;bottom:22px}"]}]),t.locals={card:"PaymentCard-module__card___WwYAA",chip:"PaymentCard-module__chip___2jx_t",type:"PaymentCard-module__type___2l0L-",number:"PaymentCard-module__number___1DVfI",name:"PaymentCard-module__name___uZBkQ",label:"PaymentCard-module__label___3jhpF",value:"PaymentCard-module__value___1W-VY",date:"PaymentCard-module__date___2EEWd"},e.exports=t},2010:function(e,t,a){(t=a(3645)(!0)).push([e.id,".PaymentCardInput-module__card-inputs___TtisQ{grid-area:inputs}@media(min-width: 991px){.PaymentCardInput-module__card-inputs___TtisQ{margin-right:30px}}.PaymentCardInput-module__card-large___1L0fI{grid-area:large}","",{version:3,sources:["PaymentCardInput.module.scss"],names:[],mappings:"AAAA,8CAAa,gBAAgB,CAAC,yBAAyB,8CAAa,iBAAiB,CAAC,CAAC,6CAAY,eAAe",file:"PaymentCardInput.module.scss",sourcesContent:[".card-inputs{grid-area:inputs}@media(min-width: 991px){.card-inputs{margin-right:30px}}.card-large{grid-area:large}"]}]),t.locals={"card-inputs":"PaymentCardInput-module__card-inputs___TtisQ","card-large":"PaymentCardInput-module__card-large___1L0fI"},e.exports=t},2695:function(e,t,a){(t=a(3645)(!0)).push([e.id,".tabs-module__tabCarousel___2yGDn{width:100%}.tabs-module__tabCarousel___2yGDn .swiper{width:100%;overflow:visible}.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,wEAA2D,UAAU",file:"tabs.module.scss",sourcesContent:[".tabCarousel{width:100%}.tabCarousel :global .swiper{width:100%;overflow:visible}.tabCarousel :global .swiper .swiper-wrapper .swiper-slide{width:auto}"]}]),t.locals={tabCarousel:"tabs-module__tabCarousel___2yGDn"},e.exports=t},6913:function(e,t,a){(t=a(3645)(!0)).push([e.id,".CardList-module__card-list___1lQc4{display:flex;flex-direction:column;overflow-x:auto}@media(max-width: 991px){.CardList-module__card-list___1lQc4{flex-direction:row;overflow-x:initial;overflow-y:auto}}.roomstay-booking-container .swiper.CardList-module__card-list-swiper___2A6rY{width:100%;overflow:hidden;margin-left:unset}@media(min-width: 991px){.roomstay-booking-container .swiper.CardList-module__card-list-swiper___2A6rY{max-height:381px;overflow:visible}}.roomstay-booking-container .swiper.CardList-module__card-list-swiper___2A6rY .swiper-wrapper{flex-direction:row}@media(min-width: 991px){.roomstay-booking-container .swiper.CardList-module__card-list-swiper___2A6rY .swiper-wrapper{flex-direction:column}}","",{version:3,sources:["CardList.module.scss"],names:[],mappings:"AAAA,oCAAW,YAAY,CAAC,qBAAqB,CAAC,eAAe,CAAC,yBAAyB,oCAAW,kBAAkB,CAAC,kBAAkB,CAAC,eAAe,CAAC,CAAC,8EAAuE,UAAU,CAAC,eAAe,CAAC,iBAAiB,CAAC,yBAAyB,8EAAuE,gBAAgB,CAAC,gBAAgB,CAAC,CAAC,8FAA+F,kBAAkB,CAAC,yBAAyB,8FAA+F,qBAAqB,CAAC",file:"CardList.module.scss",sourcesContent:[".card-list{display:flex;flex-direction:column;overflow-x:auto}@media(max-width: 991px){.card-list{flex-direction:row;overflow-x:initial;overflow-y:auto}}:global(.roomstay-booking-container) :global(.swiper).card-list-swiper{width:100%;overflow:hidden;margin-left:unset}@media(min-width: 991px){:global(.roomstay-booking-container) :global(.swiper).card-list-swiper{max-height:381px;overflow:visible}}:global(.roomstay-booking-container) :global(.swiper).card-list-swiper :global .swiper-wrapper{flex-direction:row}@media(min-width: 991px){:global(.roomstay-booking-container) :global(.swiper).card-list-swiper :global .swiper-wrapper{flex-direction:column}}"]}]),t.locals={"card-list":"CardList-module__card-list___1lQc4","card-list-swiper":"CardList-module__card-list-swiper___2A6rY"},e.exports=t},1918:function(e,t,a){(t=a(3645)(!0)).push([e.id,".ReservationItem-module__cancelledNotification___3NWe_{display:block;border-radius:8px;padding:20px;background-color:rgba(237,67,98,.1);display:flex;align-items:center;justify-content:flex-start;margin-bottom:32px}.ReservationItem-module__cancelledNotification-icon___fpiYY{margin-right:16px}.ReservationItem-module__cancelledNotification-title___1J49B{margin-bottom:4px !important}","",{version:3,sources:["ReservationItem.module.scss"],names:[],mappings:"AAAA,uDAAuB,aAAa,CAAC,iBAAiB,CAAC,YAAY,CAAC,mCAAmC,CAAC,YAAY,CAAC,kBAAkB,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,4DAA4B,iBAAiB,CAAC,6DAA6B,4BAA4B",file:"ReservationItem.module.scss",sourcesContent:[".cancelledNotification{display:block;border-radius:8px;padding:20px;background-color:rgba(237,67,98,.1);display:flex;align-items:center;justify-content:flex-start;margin-bottom:32px}.cancelledNotification-icon{margin-right:16px}.cancelledNotification-title{margin-bottom:4px !important}"]}]),t.locals={cancelledNotification:"ReservationItem-module__cancelledNotification___3NWe_","cancelledNotification-icon":"ReservationItem-module__cancelledNotification-icon___fpiYY","cancelledNotification-title":"ReservationItem-module__cancelledNotification-title___1J49B"},e.exports=t},7155:function(e,t,a){(t=a(3645)(!0)).push([e.id,'.AccountDetailsCardsPage-module__layout-grid___3heVP{display:grid;grid-template-columns:max(25%, 310px) auto minmax(300px, 345px);grid-template-areas:"list inputs large"}@media(max-width: 991px){.AccountDetailsCardsPage-module__layout-grid___3heVP{grid-template-columns:minmax(0, 1fr);grid-template-areas:"list" "large" "inputs"}}.AccountDetailsCardsPage-module__card-list___1CUP7{grid-area:list}@media(min-width: 991px){.AccountDetailsCardsPage-module__card-list___1CUP7{margin-right:30px;border-right:1px solid var(--rs-color-light-grey)}}',"",{version:3,sources:["AccountDetailsCardsPage.module.scss"],names:[],mappings:"AAAA,qDAAa,YAAY,CAAC,+DAA+D,CAAC,uCAAuC,CAAC,yBAAyB,qDAAa,oCAAoC,CAAC,2CAA2C,CAAC,CAAC,mDAAW,cAAc,CAAC,yBAAyB,mDAAW,iBAAiB,CAAC,iDAAiD,CAAC",file:"AccountDetailsCardsPage.module.scss",sourcesContent:['.layout-grid{display:grid;grid-template-columns:max(25%, 310px) auto minmax(300px, 345px);grid-template-areas:"list inputs large"}@media(max-width: 991px){.layout-grid{grid-template-columns:minmax(0, 1fr);grid-template-areas:"list" "large" "inputs"}}.card-list{grid-area:list}@media(min-width: 991px){.card-list{margin-right:30px;border-right:1px solid var(--rs-color-light-grey)}}']}]),t.locals={"layout-grid":"AccountDetailsCardsPage-module__layout-grid___3heVP","card-list":"AccountDetailsCardsPage-module__card-list___1CUP7"},e.exports=t},4735:function(e,t,a){var r=a(3379),n=a(2904);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},2792:function(e,t,a){var r=a(3379),n=a(8989);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},576:function(e,t,a){var r=a(3379),n=a(7766);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},2497:function(e,t,a){var r=a(3379),n=a(7414);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},4098:function(e,t,a){var r=a(3379),n=a(1796);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},6895:function(e,t,a){var r=a(3379),n=a(2010);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},6625:function(e,t,a){var r=a(3379),n=a(2695);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},2327:function(e,t,a){var r=a(3379),n=a(6913);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},2851:function(e,t,a){var r=a(3379),n=a(1918);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},7074:function(e,t,a){var r=a(3379),n=a(7155);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.id,n,""]]);r(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}}}]);
@@ -0,0 +1 @@
1
+ (("undefined"!=typeof self?self:this).webpackChunkroomstay=("undefined"!=typeof self?self:this).webpackChunkroomstay||[]).push([[848],{5032:function(e,t,n){"use strict";n.d(t,{z:function(){return c}});var r=n(5671),a=n(3144),o=n(136),l=n(2963),i=n(1120);var c=function(e){(0,o.Z)(s,e);var t,n,c=(t=s,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,r=(0,i.Z)(t);if(n){var a=(0,i.Z)(this).constructor;e=Reflect.construct(r,arguments,a)}else e=r.apply(this,arguments);return(0,l.Z)(this,e)});function s(e){var t;return(0,r.Z)(this,s),(t=c.call(this)).basketRows=void 0,t.basketRows=e,t}return(0,a.Z)(s,null,[{key:"getLabel",value:function(){return"View/Checkout"}}]),s}(n(7112).x)},5758:function(e,t,n){"use strict";n.d(t,{a:function(){return l},u:function(){return o}});var r=n(6550),a=n(7294);function o(){var e=(0,r.TH)().search;return a.useMemo((function(){return new URLSearchParams(e)}),[e])}function l(){return a.useMemo((function(){return new URLSearchParams(window.location.search)}),[window.location.search])}},2848:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return lt}});var r=n(7294),a=n(3010),o=n(5692),l=n(3933),i=n(3727),c=n(9874),s=n(3821),u=n(9478),m=n(370),d=n(292),f=n(8279),p=n(4478),v=n(7462),g=n(885),h=n(8886),y=n(584),E=n(7754),C=n(4744);function A(e){var t=e.addon;return r.createElement("div",{className:"additional-offers--column "+(e.selected?"--selected":""),style:{backgroundImage:"url('".concat(t.image&&C.Z.resizeImage(t.image,C.h.Original),"')")},onClick:function(){var t;null===(t=e.cardClicked)||void 0===t||t.call(e)}},r.createElement("div",{className:"additional-offers--column-body"},r.createElement(y.ZP,{type:y.yG.Small,color:E.I.White},r.createElement("strong",null,t.name)),r.createElement("div",{className:"u-flex"},r.createElement(y.ZP,{inline:!0,type:y.yG.Small,color:E.I.White},"See details"),r.createElement(h.ZP,{icon:h.Tu.ArrowRight,color:E.I.White}))))}var b=n(8144),_=n(3460),x=n(7582),k=n(5128),Z=n(6380),w=n(4854),S=n(858),P=n(1612),N=n(3351);function R(e){var t,n=e.addon,o=((0,p.$)().t,(0,r.useContext)(P.hy)),l=(0,r.useState)(e.basketAddonRow?e.basketAddonRow.getSelectedDate():""),i=(0,g.Z)(l,2),c=i[0],s=i[1],u=(0,r.useState)(e.basketAddonRow?e.basketAddonRow.getSelectedTime():""),m=(0,g.Z)(u,2),d=m[0],f=m[1],v=(0,r.useState)({quantity:1}),h=(0,g.Z)(v,2),A=h[0],b=h[1],_=(0,r.useState)(e.basketAddonRow?e.basketAddonRow.getQuantity():1),x=(0,g.Z)(_,2),R=x[0],I=x[1],B=(0,r.useState)(e.basketAddonRow?e.basketAddonRow.getAdultQuantity():1),W=(0,g.Z)(B,2),D=W[0],T=W[1],M=(0,r.useState)(e.basketAddonRow?e.basketAddonRow.getChildQuantity():0),G=(0,g.Z)(M,2),q=G[0],U=G[1];return r.useEffect((function(){var t,r,a,o,l,i;if(n)return e.basketAddonRow?(b(null!==(t=n.availability[e.basketAddonRow.getSelectedDate()])&&void 0!==t?t:n.availability[n.firstDate]),s(null!==(r=e.basketAddonRow.getSelectedDate())&&void 0!==r?r:n.firstDate),f(null!==(a=e.basketAddonRow.getSelectedTime())&&void 0!==a?a:""),I(e.basketAddonRow.getQuantity()),T(e.basketAddonRow.getAdultQuantity()),U(e.basketAddonRow.getChildQuantity())):(b(n.availability[n.firstDate]),s(n.firstDate),f((null===(o=n.availability[n.firstDate])||void 0===o||null===(l=o.selectorTimes)||void 0===l||null===(i=l[0])||void 0===i?void 0:i.value)||"")),function(){I(1),T(1),U(0)}}),[n]),r.createElement(k.Z,{open:e.isOpen,onClose:e.onClose,size:k.g.Small,title:n?n.name:""},n&&r.createElement(r.Fragment,null,r.createElement("div",{style:{height:"350px",width:"100%",backgroundImage:'url("'.concat(n.image&&C.Z.resizeImage(n.image,C.h.Original),'")'),backgroundPosition:"center",backgroundRepeat:"no-repeat",backgroundSize:"cover"}}),r.createElement("div",{className:"u-marg-heavy u-marg@m-"},r.createElement("div",{className:"u-marg-bottom"},r.createElement(a.Z,{bold:!0},n.name)),r.createElement("div",{className:"u-marg-bottom--heavy"},r.createElement(y.ZP,{type:y.yG.Small,color:E.I.DarkGrey},n.description)),r.createElement("div",{className:"row u-marg-top"},r.createElement("div",{className:"u-flex col-md-6"},r.createElement(y.ZP,null,"Date"),r.createElement(N.P,{nativeOnMobile:!0,options:n.selectorDates,value:c,onChange:function(e){var t,r,a,o;t=e,b(n.availability[t]),s(t),f((null===(r=n.availability[t])||void 0===r||null===(a=r.selectorTimes)||void 0===a||null===(o=a[0])||void 0===o?void 0:o.value)||""),n.availability[t].quantity<R&&I(n.availability[t].quantity)},keyName:"value",labelName:"text",className:"u-flex align-items-center"}))),0!==(null==A||null===(t=A.selectorTimes)||void 0===t?void 0:t.length)&&r.createElement("div",{className:"row u-marg-top"},r.createElement("div",{className:"u-flex col-md-6"},r.createElement(y.ZP,null,"Time"),r.createElement(N.P,{nativeOnMobile:!0,options:(null==A?void 0:A.selectorTimes)||[],value:d,onChange:function(e){f(e)},keyName:"value",labelName:"text",className:"u-flex align-items-center"}))),A.price&&r.createElement("div",{className:"row u-marg-top"},r.createElement("div",{className:"u-flex col-md-6"},r.createElement(y.ZP,null,"Quantity"),r.createElement(Z.Z,{number:R,min:1,max:A.quantity,onChange:function(e){I(e)}}))),A.adultPrice&&r.createElement("div",{className:"row u-marg-top"},r.createElement("div",{className:"u-flex col-md-6"},r.createElement(y.ZP,null,"Adults"),r.createElement(Z.Z,{number:D,min:0,max:A.quantity-q,onChange:function(e){T(e)}}))),A.childPrice&&r.createElement("div",{className:"row u-marg-top"},r.createElement("div",{className:"u-flex col-md-6"},r.createElement(y.ZP,null,"Children"),r.createElement(Z.Z,{number:q,min:0,max:A.quantity-D,onChange:function(e){U(e)}}))),r.createElement("div",{className:"u-flex align-items-center u-marg-top"},A.price&&r.createElement("h2",{className:"u-marg-none u-flex u-flex-align-center"},r.createElement(S.Z,null,A.price),"/ Qty"),A.adultPrice&&A.childPrice&&r.createElement("h2",{className:"u-marg-none"},r.createElement("div",{className:"u-marg-none u-flex u-flex-align-center"},r.createElement(S.Z,null,A.adultPrice)," / Adult"),r.createElement("br",null),r.createElement("div",{className:"u-marg-none u-flex u-flex-align-center"},r.createElement(S.Z,null,A.childPrice)," / Child")),A.adultPrice&&!A.childPrice&&r.createElement("h2",{className:"u-marg-none u-flex u-flex-align-center"},r.createElement(S.Z,null,A.adultPrice)," / Adult"),A.childPrice&&!A.adultPrice&&r.createElement("h2",{className:"u-marg-none u-flex u-flex-align-center"},r.createElement(S.Z,null,A.childPrice)," / Child"),r.createElement(w.Z,{filled:!0,primary:!0,onClick:function(){o.setAddonQuantities(n,{quantity:R,adult:D,child:q},c,d),e.onClose()}},e.basketAddonRow?"Update Cart":"Add to Cart")),n.guaranteeDescription&&r.createElement(r.Fragment,null,r.createElement("h4",{className:"u-marg-bottom--light u-marg-top"},"Guarantee"),r.createElement("div",{className:"u-marg-bot--heavy"},r.createElement(y.ZP,{type:y.yG.Small},n.guaranteeDescription))),n.cancelPenalty&&r.createElement(r.Fragment,null,r.createElement("h4",{className:"u-marg-bottom--light u-marg-top"},"Cancellation Policy"),r.createElement("div",{className:"u-marg-bot--heavy"},r.createElement(y.ZP,{type:y.yG.Small},n.cancelPenalty))))))}var I=n(4516),B=n(9740),W=n(7832),D=n(7688);function T(){var e=(0,r.useContext)(P.hy),t=(0,r.useContext)(P.Qm),n=(0,D.WP)().hotel,o=(0,b.q_)((function(){return{x:0}})),l=(0,g.Z)(o,2),i=l[0].x,c=l[1],s=(0,_.Z)(),m=(0,g.Z)(s,2),d=m[0],f=m[1],C=(0,p.$)().t,k=r.useState([]),Z=(0,g.Z)(k,2),w=Z[0],S=Z[1],N=(0,r.useState)(!1),T=(0,g.Z)(N,2),M=T[0],G=T[1],q=(0,r.useState)(null),U=(0,g.Z)(q,2),F=U[0],O=U[1],L=(0,r.useState)(!1),z=(0,g.Z)(L,2),j=z[0],Q=z[1],V=(0,r.useState)(0),Y=(0,g.Z)(V,2),H=Y[0],$=Y[1],J=(0,r.useState)(0),K=(0,g.Z)(J,2),X=(K[0],K[1]),ee=(0,r.useState)(-1),te=(0,g.Z)(ee,2),ne=te[0],re=te[1];r.useEffect((function(){var t=!1,r=e.getAllValidRows();return Q(!0),I.Z.Addons.findAddons(r,null==n?void 0:n.hotelID).then((function(e){t||(Q(!1),S(e))})),function(){Q(!1),t=!0}}),[t.currentLanguage]);var ae=222,oe=ae*w.length>=f.width,le=(0,x.c0)((function(e){var t=e.down,n=(0,g.Z)(e.movement,1)[0];ie(t,n)})),ie=function(e,t){if(oe)if(e)c({x:H+1.5*t});else{var n=H+t,r=(w.length-1)*ae,a=0;if(n>0)a=0,re(-1);else if(n<-(r-f.width+ae))a=-(r-f.width+ae),re(1);else{var o=-n/ae,l=n%ae>-111?Math.floor(o):Math.ceil(o);a=-l*ae,X(l),re(0)}c({x:a}),$(a)}};return r.createElement(B.Z,{open:!j&&0!==(null==w?void 0:w.length)||!(null==n||!n.showAddonLoader)},r.createElement("div",{className:"u-pad-bottom--heavy "},r.createElement("div",{className:"u-marg-bottom"},r.createElement(a.Z,{bold:!0},C(u.W.Step.Confirmation.AdditionalOfferings))),j&&null!=n&&n.showAddonLoader?r.createElement(W.Z,null):0===(null==w?void 0:w.length)?r.createElement("div",null,r.createElement(y.ZP,{color:E.I.DarkGrey},"Sorry, there are currently no additional offerings available.")):r.createElement("div",{className:"additional-offers"+(w.length>2?"":" --wide"),ref:d},oe&&r.createElement("div",{className:"additional-offers--navigation"},r.createElement(h.ZP,{icon:h.Tu.ArrowLeft2,onClick:function(){ie(!1,ae)},color:-1===ne?E.I.DarkGrey:E.I.White,backgroundColor:E.I.Navy,borderRadius:"round",size:"24px"}),r.createElement(h.ZP,{icon:h.Tu.ArrowRight2,onClick:function(){ie(!1,-222)},color:1===ne?E.I.DarkGrey:E.I.White,backgroundColor:E.I.Navy,borderRadius:"round",size:"24px"})),r.createElement("div",{className:"additional-offers--track-container"},r.createElement(b.q.div,(0,v.Z)({className:"additional-offers--track"},le(),{style:{left:i}}),w.map((function(t,n){return r.createElement(A,{selected:!!e.getRowForAddon(t),key:n,addon:t,cardClicked:function(){G(!0),O(t)}})}))))),r.createElement(R,{isOpen:M&&!!F,addon:F,basketAddonRow:e.getRowForAddon(F),onClose:function(){G(!1)}})))}var M=n(7933),G=n(7484),q=n.n(G);function U(e){var t=(0,r.useState)(e.endTimeDate.diff(q()(),"second")),n=(0,g.Z)(t,2),a=n[0],o=n[1];return(0,r.useEffect)((function(){var t=!1,n=setTimeout((function(){t||(a>0?o((function(e){return e-1})):(e.onEnd&&e.onEnd(),t=!0,clearTimeout(n)))}),1e3);return function(){t=!0,clearTimeout(n)}}),[a]),(0,r.useMemo)((function(){var e=[Math.floor(a/60/60),Math.floor(a/60%60),Math.floor(a%60)];return r.createElement(r.Fragment,null,e.map((function(e){return e.toString().padStart(2,"0")})).join(":"))}),[a])}var F=n(4544);function O(e){var t=(0,r.useState)(!1),n=(0,g.Z)(t,2),o=n[0],l=n[1];return r.createElement(M.ZP,{type:M.NK.Accent1},r.createElement("div",{className:"u-flex w-100 flex-wrap align-items-center"},r.createElement("div",null,r.createElement(y.ZP,null,r.createElement("strong",null,"Your room is")),r.createElement(y.ZP,null,r.createElement("strong",null,"being held for"))),r.createElement("div",{className:o?"a-flash":""},r.createElement(a.Z,{size:"large",bold:!0,color:E.I.White},r.createElement(U,{endTimeDate:e.endDate,onEnd:function(){F.ZP.instance.sendInteraction("Countdown End Seen",F.s_.LINK,F._J.GUEST_DETAILS),l(!0)}})))))}var L,z=n(4511),j=n(5400),Q=n(6337),V=n(5032),Y=n(5861),H=n(4687),$=n.n(H),J=n(7536),K=n(5987),X=n(4942),ee=n(5993),te=n(1432),ne=n(5762),re=n(3261),ae=n(6604),oe=n(1248);!function(e){e.Forename="Forename",e.Surname="Surname",e.Email="Email",e.Phone="Phone",e.Address="Address",e.City="City",e.PostCode="PostCode",e.Country="Country"}(L||(L={}));var le=n(9024),ie=n(4632),ce=n(6431),se=["ref","onChange"],ue=function(){var e=(0,J.Gc)(),t=e.register,n=e.formState,o=e.control,l=e.watch,i=e.getValues,s=e.setValue,m=(0,r.useContext)(P.hy),d=m.getAllValidRows(),f=m.basketAddonRows,C=(0,J.Dq)({control:o,name:"userProfiles"}),A=C.update,b=C.fields,_=l(["copyCheckBox","paymentMethod"]),x=(0,g.Z)(_,2),k=x[0],Z=x[1],w=n.errors,S=(0,p.$)().t,N=(0,r.useContext)(P.P0).roomstayMember;(0,r.useEffect)((function(){var e,t;null===(e=w.userProfiles)||void 0===e||null===(t=e.forEach)||void 0===t||t.call(e,(function(e,t){var n;null!==(n=w.userProfiles)&&void 0!==n&&n[t]&&(W[t]=!0)})),D(W.slice(0))}),[w.userProfiles,k]),(0,r.useEffect)((function(){var e=function(e){return 0===e&&arguments.length>1&&void 0!==arguments[1]?arguments[1]:""},t=d.map((function(t,n){var r,a,o,l,i;return i={},(0,X.Z)(i,L.Forename,e(n,null==N?void 0:N.forename)),(0,X.Z)(i,L.Surname,e(n,null==N?void 0:N.surname)),(0,X.Z)(i,L.Email,e(n,null==N?void 0:N.email)),(0,X.Z)(i,L.Phone,e(n,null==N?void 0:N.phoneNumber)),(0,X.Z)(i,L.Address,e(n,null==N||null===(r=N.address)||void 0===r?void 0:r.address)),(0,X.Z)(i,L.City,e(n,null==N||null===(a=N.address)||void 0===a?void 0:a.city)),(0,X.Z)(i,L.PostCode,e(n,null==N||null===(o=N.address)||void 0===o?void 0:o.zip)),(0,X.Z)(i,L.Country,e(n,null==N||null===(l=N.address)||void 0===l?void 0:l.country)),i}));s("userProfiles",t),s("copyCheckBox",!!(null!=d&&d.length&&d.length>1))}),[N,null==d?void 0:d.length]);var R=(0,r.useState)(d.map((function(e,t){return 0===t}))),I=(0,g.Z)(R,2),W=I[0],D=I[1],T=function(e,t){return function(e){F.ZP.instance.sendInteraction(t,F.s_.FORM_FIELD,F._J.GUEST_DETAILS)}};return(0,r.useEffect)((function(){k&&b.forEach((function(e,t){0!==t&&A(t,i("userProfiles.0"))}))}),[k]),(0,r.useEffect)((function(){var e=l((function(e,t){var n=t.name;"change"===t.type&&null!=n&&n.includes("userProfiles")&&"0"===n.split(".")[1]&&e.copyCheckBox&&b.map((function(e,t){0!==t&&A(t,i("userProfiles.0"))}))})).unsubscribe;return function(){e()}}),[b]),(0,r.useEffect)((function(){F.ZP.instance.sendCheckoutView(d,f)}),[]),r.createElement(r.Fragment,null,b.map((function(e,l){var i,s,m,f=function(e){return function(e,t){return"userProfiles.".concat(t,".").concat(e)}(e,l)},p=function(e){var t;if(w.userProfiles&&!(k&&l>=1))return null!==(t=w.userProfiles[l])&&void 0!==t&&t[e]?"error":"success"},g=d[l],C=k&&l>=1||Z===ie.ar.Planpay;return r.createElement("div",{key:e.id},r.createElement("div",{className:0===l?"":"u-marg-bottom--heavy"},r.createElement("div",{className:"u-marg-bottom",onClick:function(){0!==l&&function(e,t){W.splice(e,1,t),D(W.slice(0))}(l,!W[l])}},r.createElement("div",{className:"u-flex u-marg-bottom align-items-center"},r.createElement(a.Z,{bold:!0},S(u.W.Misc.Room)," ",l+1),0!==l&&r.createElement(h.ZP,{icon:W[l]?h.Tu.ArrowDown2:h.Tu.ArrowUp2,color:E.I.Grey})),g&&r.createElement("div",{className:"u-marg-bottom"},r.createElement(y.ZP,null,r.createElement("strong",{className:"u-block@l-"},g.getRoom().name)," for"," ",re.Z.pluralWithDictAndCount(g.getAdults(),u.W.Step.Date.Adult,S),", ",re.Z.pluralWithDictAndCount(g.getChildren(),u.W.Step.Date.Child,S)),r.createElement("div",{className:"step-one-status--dates u-flex justify-content-start"},r.createElement(y.ZP,{type:y.yG.Small,color:E.I.Accent},r.createElement("strong",null,g.getStartDate().format("ddd, MMM D"))),r.createElement(h.ZP,{icon:h.Tu.ArrowRight2,size:"18px"}),r.createElement(y.ZP,{type:y.yG.Small,color:E.I.Accent},r.createElement("strong",null,g.getEndDate().format("ddd, MMM D"))))),(i=l,(m=null===(s=w.userProfiles)||void 0===s?void 0:s[i])&&n.submitCount>=1&&(0===i||!k)&&Object.values(m).map((function(e,t){return r.createElement(B.Z,{key:t,open:!0},r.createElement("div",{className:"u-flex"},r.createElement(M.ZP,{icon:h.Tu.Error,type:M.NK.Danger,noMargin:t===Object.keys(m).length-1},r.createElement(y.ZP,{type:y.yG.Small},null==e?void 0:e.message))))})),null)),r.createElement("div",{className:"room-contact-details--row",style:{maxHeight:W[l]?void 0:0}},r.createElement("div",{className:"u-marg-bottom--heavy"},r.createElement("div",{className:"u-marg-bottom--light"},r.createElement(y.ZP,{type:y.yG.Small},r.createElement("strong",null,S(u.W.Step.Confirmation.ContactInfo)))),r.createElement(ee.Z,{dimensions:"2/2"},r.createElement(te.Z,(0,v.Z)({inputProps:{disabled:C},placeholder:S(u.W.Step.Confirmation.Inputs.Forename)+" *",wide:!0,required:!0,validationStatus:p(L.Forename)},t(f(L.Forename),{onChange:T(f(L.Forename),"Forename - Contact Info"),required:{value:!0,message:S(u.W.Step.Confirmation.Inputs.Required,{field:S(u.W.Step.Confirmation.Inputs.Forename)})}}))),r.createElement(te.Z,(0,v.Z)({inputProps:{disabled:C},placeholder:S(u.W.Step.Confirmation.Inputs.Surname)+" *",wide:!0,required:!0,validationStatus:p(L.Surname)},t(f(L.Surname),{onChange:T(f(L.Surname),"Surname - Contact Info"),required:{value:!0,message:S(u.W.Step.Confirmation.Inputs.Required,{field:S(u.W.Step.Confirmation.Inputs.Surname)})}})))),r.createElement(ee.Z,{dimensions:"2/2"},r.createElement(te.Z,(0,v.Z)({inputProps:{disabled:C},placeholder:S(u.W.Step.Confirmation.Inputs.Email)+" *",wide:!0,validationStatus:p(L.Email),required:!0},t(f(L.Email),{onChange:T(f(L.Email),"Email - Contact Info"),required:{value:!0,message:S(u.W.Step.Confirmation.Inputs.Required,{field:S(u.W.Step.Confirmation.Inputs.Email)})},pattern:{value:ce.CU,message:S(u.W.Step.Confirmation.Inputs.InvalidEmail)}}))),oe.Z.isActive()?r.createElement(J.Qr,{control:o,name:f(L.Phone),rules:{required:{value:!0,message:S(u.W.Step.Confirmation.Inputs.Required,{field:S(u.W.Step.Confirmation.Inputs.Phone)})},minLength:{value:5,message:"Phone number is required"},maxLength:{value:17,message:"Phone number is too long"},pattern:{value:/^[1-9]( |\d){1,15}$/g,message:"Incorrect phone number entered"}},render:function(e){var t=e.field;return r.createElement(ae.Z,(0,v.Z)({disabled:C,validationStatus:p(L.Phone)},t,{onChange:function(e){t.onChange(e),T(f(L.Phone),"Phone - Contact Info")(e)}}))}}):r.createElement(te.Z,(0,v.Z)({inputProps:{disabled:C},placeholder:S(u.W.Step.Confirmation.Inputs.Phone)+" *",wide:!0,required:!0,validationStatus:p(L.Phone)},t(f(L.Phone),{onChange:T(f(L.Phone),"Phone - Contact Info"),required:{value:!0,message:S(u.W.Step.Confirmation.Inputs.Required,{field:S(u.W.Step.Confirmation.Inputs.Phone)})}}))))),r.createElement("div",{className:""},r.createElement("div",{className:"u-marg-bottom--light"},r.createElement(y.ZP,{type:y.yG.Small},r.createElement("strong",null,S(u.W.Step.Confirmation.Address)))),r.createElement(ee.Z,{dimensions:"3/1"},r.createElement(te.Z,(0,v.Z)({inputProps:{disabled:C},placeholder:S(u.W.Step.Confirmation.Inputs.Address)+" *",wide:!0,required:!0,validationStatus:p(L.Address)},t(f(L.Address),{onChange:T(f(L.Address),"Address - Address"),required:{value:!0,message:S(u.W.Step.Confirmation.Inputs.Required,{field:S(u.W.Step.Confirmation.Inputs.Address)})}}))),r.createElement(te.Z,(0,v.Z)({inputProps:{disabled:C},placeholder:S(u.W.Step.Confirmation.Inputs.City)+" *",wide:!0,required:!0,validationStatus:p(L.City)},t(f(L.City),{onChange:T(f(L.City),"City - Address"),required:{value:!0,message:S(u.W.Step.Confirmation.Inputs.Required,{field:S(u.W.Step.Confirmation.Inputs.City)})}})))),r.createElement(ee.Z,{dimensions:"2/2"},r.createElement(te.Z,(0,v.Z)({inputProps:{disabled:C},placeholder:S(u.W.Step.Confirmation.Inputs.PostCode)+" *",wide:!0,required:!0,validationStatus:p(L.PostCode)},t(f(L.PostCode),{onChange:T(f(L.PostCode),"PostCode - Address"),required:{value:!0,message:S(u.W.Step.Confirmation.Inputs.Required,{field:S(u.W.Step.Confirmation.Inputs.PostCode)})}}))),r.createElement(J.Qr,{control:o,name:f(L.Country),rules:{required:{value:!0,message:S(u.W.Step.Confirmation.Inputs.Required,{field:S(u.W.Step.Confirmation.Inputs.Country)})}},render:function(e){var t=e.field,n=(t.ref,t.onChange),a=(0,K.Z)(t,se);return r.createElement(ne.Z,(0,v.Z)({disabled:C,validationStatus:p(L.Country),onChange:function(e){n(e),T(f(L.Country),"Country - Address")(e)}},a))}})))),r.createElement(c.Z,null)),b.length>1&&0===l?r.createElement("div",{className:"u-marg-bottom--heavy"},r.createElement(le.Z,(0,v.Z)({label:S(u.W.Step.Confirmation.ApplySameInfoToOtherRooms)},t("copyCheckBox")))):null)})))};function me(){var e=(0,p.$)().t,t=(0,D.WP)().hotel;return r.createElement(r.Fragment,null,r.createElement("div",{className:"u-marg-bottom"},r.createElement(a.Z,{bold:!0},e(u.W.Step.Confirmation.Policies))),r.createElement("div",{className:"u-marg-bottom"},r.createElement("div",{className:"row"},r.createElement("div",{className:"col-6 col-md-3"},r.createElement(y.ZP,{type:y.yG.Small},r.createElement("strong",null,e(u.W.Misc.CheckIn))),r.createElement(y.ZP,{type:y.yG.Small},e(u.W.Misc.After)," ",null==t?void 0:t.checkInTime)),r.createElement("div",{className:"col-6 col-md-3"},r.createElement(y.ZP,{type:y.yG.Small},r.createElement("strong",null,e(u.W.Misc.CheckOut))),r.createElement(y.ZP,{type:y.yG.Small},e(u.W.Misc.Before)," ",null==t?void 0:t.checkOutTime)))))}var de=n(8029),fe=n(2364),pe=n(5112);function ve(){return r.createElement(pe.Z,{title:"Shop without worries! This site is protected by high level encryption, to ensure every purchase is always safe & secure"},r.createElement("img",{src:fe.Z.getAssetUrl()+"assets/img/ssl-secure-connection.png"}))}var ge=n(3409);function he(e){var t,n,o=(0,r.useContext)(P.hy),l=(0,r.useState)(q()().add(14,"minute")),i=(0,g.Z)(l,2),s=i[0];i[1],(0,r.useEffect)((function(){var t,n=!1,r=null;return(e.differences.length||null!==(t=e.warnings)&&void 0!==t&&t.length)&&(r=setTimeout((function(){n||e.onClose()}),74e4)),function(){n=!0,clearTimeout(r)}}),[e.differences.length,null===(t=e.warnings)||void 0===t?void 0:t.length]);var u=r.createElement("div",{className:"u-flex"},r.createElement(w.Z,{isText:!0,size:"small",icon:h.Tu.ArrowLeft,onClick:e.onClose,isLoading:e.isLoading},"Take me back"),r.createElement(w.Z,{primary:!0,filled:!0,icon:h.Tu.ArrowRight,iconPosition:"right",onClick:e.onProceed,isLoading:e.isLoading},"Continue with reservation"));return r.createElement(k.Z,{open:!!e.differences.length||!(null===(n=e.warnings)||void 0===n||!n.length),title:"Your total price has Changed!",mobileFooter:u,desktopFooter:r.createElement("div",{className:"u-marg-heavy u-marg@m-"},u),size:k.g.Small,alignCenter:!0},r.createElement("div",{className:"u-marg-heavy u-marg@m-"},r.createElement("div",{className:"row"},r.createElement("div",{className:"col-md-8"},r.createElement(y.ZP,{type:y.yG.Small},"We apologize for any inconvenience, but the price for your selected reservation has changed during your checkout, please confirm that you accept the new total shown below.")),r.createElement("div",{className:"col-md-4"},r.createElement(ge.ZP,{icon:h.Tu.Time,type:ge.Rm.Primary},r.createElement("span",{className:"u-marg-right--light"},"Reverts in"),r.createElement(U,{endTimeDate:s})))),r.createElement(c.Z,null),!(!e.differences||!e.differences.length)&&e.differences.map((function(e){var t,n,l,i=o.getAllValidRows().find((function(t){return t.getID()===e.id}));return r.createElement("div",{key:e.id},!!i&&r.createElement("div",{className:"u-marg-bottom--heavy"},r.createElement("div",{className:"u-marg-bottom--light"},r.createElement(a.Z,null,i.getRoom().name)),r.createElement(y.ZP,null,null===(t=i.getRate())||void 0===t?void 0:t.name)),r.createElement("div",{className:"u-flex u-marg-bottom--light"},r.createElement(y.ZP,{type:y.yG.Body},r.createElement("strong",null,"Displayed price:")),r.createElement(y.ZP,{color:E.I.Alert},r.createElement(S.Z,null,null===(n=e.totalPrice)||void 0===n?void 0:n.before))),r.createElement("div",{className:"u-flex"},r.createElement(y.ZP,{type:y.yG.Body},r.createElement("strong",null,"Actual price:")),r.createElement(y.ZP,{color:E.I.Success},r.createElement(S.Z,null,null===(l=e.totalPrice)||void 0===l?void 0:l.after))),r.createElement(c.Z,null))})),!(!e.warnings||!e.warnings.length)&&e.warnings.map((function(e,t){return r.createElement(y.ZP,{key:t},e)}))))}var ye=n(6550),Ee=n(1625);function Ce(){var e=(0,r.useContext)(P.hy),t=(0,p.$)().t,n=t(u.W.Misc.Room);return(0,r.useMemo)((function(){var a={},o=e.getAllValidRows(),l=0;return o.length>1?o.forEach((function(e){l++;var t=e.getRate(),n=a["".concat(null==t?void 0:t.cancelPolicyCode,"-").concat(null==t?void 0:t.guaranteeCode)];n||(n=a["".concat(null==t?void 0:t.cancelPolicyCode,"-").concat(null==t?void 0:t.guaranteeCode)]={rooms:[]}),n.rooms.push({index:l,room:e})})):a[0]={rooms:[{index:1,room:o[0]}]},r.createElement("div",{className:"u-marg-bottom"},Object.values(a).map((function(e,a){var o,l,i=e.rooms[0];return r.createElement("div",{className:"u-marg-bottom--heavy",key:a},r.createElement("div",{className:"u-marg-bottom"},e.rooms.map((function(e){var t;return r.createElement(y.ZP,{key:e.index,type:y.yG.Small},r.createElement("strong",null,n," ",e.index)," ",e.room.getRoom().name," - ",null===(t=e.room.getRate())||void 0===t?void 0:t.name)}))),r.createElement("div",{className:"u-marg-bottom"},r.createElement(y.ZP,{type:y.yG.Small,bold:!0},t(u.W.Misc.GuaranteePolicy)),r.createElement(y.ZP,{type:y.yG.Small,preformatted:!0},r.createElement("span",{dangerouslySetInnerHTML:{__html:(null===(o=i.room.getRate())||void 0===o?void 0:o.getGuaranteePolicy())||""}}))),r.createElement(y.ZP,{type:y.yG.Small,bold:!0},t(u.W.Misc.CancellationPolicy)),r.createElement(y.ZP,{type:y.yG.Small,preformatted:!0},r.createElement("span",{dangerouslySetInnerHTML:{__html:(null===(l=i.room.getRate())||void 0===l?void 0:l.getCancellationPolicy())||""}})))})))}),[e.currentBasketRows])}var Ae=r.forwardRef((function(e,t){var n=(0,p.$)().t,o=e.confirmationPolicyError,l=(0,D.WP)().hotel;return r.createElement(r.Fragment,null,r.createElement("div",{className:"u-marg-bottom"},r.createElement(a.Z,{bold:!0},n(u.W.Step.Confirmation.Acknowledgement))),r.createElement("div",null,r.createElement(le.Z,{label:n(u.W.Step.Confirmation.EmailSpecialOffers)})),r.createElement("div",{className:"u-marg-top--light"},r.createElement(le.Z,{ref:t,label:r.createElement("div",null,n(u.W.Step.Confirmation.IHaveUnderstoodPrivacyPolicy)," ",r.createElement("a",{style:{color:E.I.Accent},className:"--underlined",href:null==l?void 0:l.privacyPolicyUrl,target:"_blank",rel:"noreferrer"},n(u.W.Step.Confirmation.PrivacyPolicy)))})),r.createElement(B.Z,{open:o},r.createElement("div",{className:"u-flex u-marg-top"},r.createElement(M.ZP,{type:M.NK.Danger,icon:h.Tu.Error},r.createElement(y.ZP,{type:y.yG.Small},n(u.W.Step.Confirmation.PrivacyPolicyError))))))})),be=n(4707),_e=n(2912),xe=n(6222),ke=n(8016),Ze=n(3423),we=n(9747),Se=n(514),Pe=function(){return r.createElement("div",null,r.createElement("div",{className:"row no-gutters"},r.createElement("div",{className:"col-md-4"},r.createElement("div",{className:"d-flex justify-content-center"},r.createElement(we.Z,{type:"text",w:"md",h:"sm",blink:!0})),r.createElement(we.Z,{type:"text",h:"md",blink:!0}),r.createElement(we.Z,{type:"text",h:"md",blink:!0})),r.createElement("div",{className:"col-md-4"},r.createElement("div",{className:"d-flex justify-content-center"},r.createElement(we.Z,{type:"text",w:"md",h:"sm",blink:!0})),r.createElement(we.Z,{type:"text",h:"sm",blink:!0}),r.createElement(we.Z,{type:"text",h:"sm",blink:!0}),r.createElement(we.Z,{type:"text",h:"sm",blink:!0})),r.createElement("div",{className:"col-md-4"},r.createElement("div",{className:"d-flex justify-content-center"},r.createElement(we.Z,{type:"text",w:"md",h:"sm",blink:!0})),r.createElement("div",{className:"d-flex justify-content-center u-marg-top u-marg-bottom"},r.createElement(we.Z,{type:"text",w:"xs",h:"sm",blink:!0,noMarg:!0})),r.createElement("div",{className:"d-flex justify-content-center"},r.createElement(we.Z,{type:"text",w:"md",h:"sm",blink:!0,noMarg:!0})),r.createElement("div",{className:"d-flex justify-content-center u-marg-top u-marg-bottom"},r.createElement(we.Z,{type:"text",w:"xs",h:"sm",blink:!0,noMarg:!0})))),r.createElement("div",{className:"row no-gutters"},r.createElement("div",{className:"col-md-4"},r.createElement(we.Z,{type:"text",h:"lg",blink:!0})),r.createElement("div",{className:"offset-md-4 col-md-4 d-flex align-items-center"},r.createElement(we.Z,{type:"text",w:"xl",h:"sm",blink:!0}))))},Ne=function(){var e,t,n=(0,r.useContext)(P.hy),a=(0,Se.W)().hotel,o=null===(e=n.reservationData)||void 0===e||null===(t=e.payment)||void 0===t?void 0:t.planpay;return(0,r.useLayoutEffect)((function(){null!=o&&o.id&&Ze.MQ.checkout.refresh()}),[null==o?void 0:o.id]),(0,r.useEffect)((function(){var e;Ze.MQ.init({environment:null==a||null===(e=a.planpay)||void 0===e?void 0:e.env})}),[a]),r.createElement(r.Fragment,null,r.createElement("div",{className:"planpay-payment-container","data-planpay-checkout-id":null==o?void 0:o.id,style:{minHeight:"204px",display:"flex",justifyContent:"flex-end",flexDirection:"column"}},r.createElement(Pe,null)))},Re=(0,r.createContext)({}),Ie=function(){return(0,r.useContext)(Re)},Be=n(5758),We=function(){var e=(0,Be.u)(),t=(0,Be.a)(),n=(0,r.useMemo)((function(){return["paymentMethod","roomstayId","planpay_checkout_id"].map((function(n){return t.get(n)||e.get(n)}))}),[e,t]),a=(0,g.Z)(n,3);return{queryPaymentMethod:a[0],queryRoomstayId:a[1],queryPlanpayCheckoutId:a[2]}},De=n(9111),Te=n(1291),Me=n(9527),Ge=n(3733);function qe(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Ue=function(e){var t=(0,Me.K)().user,n=(0,r.useContext)(P.P0).cards,a=(0,r.useState)(),o=(0,g.Z)(a,2),l=o[0],i=o[1];return(0,r.useEffect)((function(){if(null!=t&&t.defaultCard&&n){var e,r=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 qe(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)?qe(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,l=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return l=e.done,e},e:function(e){i=!0,o=e},f:function(){try{l||null==n.return||n.return()}finally{if(i)throw o}}}}(n);try{for(r.s();!(e=r.n()).done;){var a=e.value;if(t.defaultCard===a.cardId)return void i(t.defaultCard)}}catch(e){r.e(e)}finally{r.f()}}null!=n&&n.length&&i(n[0].cardId)}),[t,n]),r.createElement(r.Fragment,null,r.createElement("div",null,null==n?void 0:n.map((function(e,t){return r.createElement(Ge.c,{key:t,selected:l===e.cardId,onClick:function(){var t;t=e.cardId,i(t)},item:e})}))))},Fe=n(4184),Oe=n.n(Fe),Le=function(e){var t,n=e.isCurrent,a=e.isDefault,o=e.style,l=(0,D.WP)().hotel,i=(null!==(t=null==l?void 0:l.paymentCardTypes)&&void 0!==t?t:[]).map((function(e){return De.w[e]?{name:De.w[e],status:!1}:null})).filter((function(e){return e}));return r.createElement("div",{className:"u-flex flex-row justify-content-start"},Object.keys(i).map((function(e){var t,l;return r.createElement("div",{key:e,id:null===(t=i[e])||void 0===t?void 0:t.name,className:Oe()("cc-icon u-flex u-marg-right--light",{"-current":null==n?void 0:n(e),"-default":null==a?void 0:a(e)}),style:Object.assign({backgroundImage:"url('".concat(fe.Z.getAssetUrl()+"assets/img/"+(null===(l=i[e])||void 0===l?void 0:l.name)+".png","')"),backgroundSize:"contain"},o||{})})})))};function ze(e,t){var n,a=(0,D.WP)().hotel,o=(0,D.Kb)(),l=(0,r.useState)({}),i=(0,g.Z)(l,2),c=i[0],s=i[1],m=(0,p.$)().t,d=(0,D.b)().focusElement,f={fontSize:"13px",lineHeight:"18px","&::placeholder":{color:"#8B8F9A",opacity:1}},v=(0,Te.c)([{label:m(u.W.Step.Confirmation.Inputs.CardNumber),name:"credit-card",type:"card-number",vgsProps:{autoComplete:["cc-number"],successColor:"#4F8A10",errorColor:"#D8000C",showCardIcon:!1,placeholder:m(u.W.Step.Confirmation.Inputs.CardNumber)+" *",validations:["required","validCardNumber"],css:f}},{label:m(u.W.Step.Confirmation.Inputs.NameOnCard),name:"card-name",type:"text",vgsProps:{validations:["required"],css:f,placeholder:m(u.W.Step.Confirmation.Inputs.NameOnCard)+" *"}},{label:m(u.W.Step.Confirmation.Inputs.CardExpiry),name:"expiration-date",type:"card-expiration-date",vgsProps:{placeholder:m(u.W.Step.Confirmation.Inputs.CardExpiry)+" *",validations:["required","validCardExpirationDate"],css:f}},{label:m(u.W.Step.Confirmation.Inputs.SecurityCode),name:"security-code",type:"card-security-code",vgsProps:{placeholder:m(u.W.Step.Confirmation.Inputs.SecurityCode)+" *",validations:["required","validCardSecurityCode"],css:f}}]),E=(0,g.Z)(v.fields,4),C=E[0],A=E[1],b=E[2],_=E[3],x=(v.triggerFieldUpdate,v.vgsForm),k=function(e){var t={};Object.keys(e).forEach((function(n){var r="";switch(n){case"credit-card":r="Credit Card";break;case"expiration-date":r="Expiration Date";break;case"security-code":r="Security Code";break;default:r="Card Name"}t[n]=r+" "+e[n].errorMessages[e[n].errorMessages.length-1]})),s(t)};(0,r.useEffect)((function(){var e,t;c&&0!==Object.keys(c).length&&null!=C&&null!==(e=C.ref)&&void 0!==e&&e.current&&d(null==C||null===(t=C.ref)||void 0===t?void 0:t.current)}),[c]),(0,r.useImperativeHandle)(t,(function(){return{getTokenizedCode:function(){return new Promise((function(e,t){x?x.submit("/post",{serializer:"deep",methods:"POST"},(function(n,r){var a=JSON.parse(r.data),o=a["expiration-date"].match(/^(\d+)\s*\/\s*(\d+)$/);if(!o||o[1].length>2||4!==o[2].length&&2!==o[2].length)return k({"expiration-date":{errorMessages:["Invalid - it must be in the format MM / YY or MM / YYYY"]}}),void t("invalid expiration date");var l=(1===o[1].length?"0":"")+o[1]+(2===o[2].length?o[2]:o[2].substr(2)),i={CVV:a["security-code"],Expiry:l,Name:a["card-name"],Number:a["credit-card"],Type:C.state.cardType};e(i)}),(function(e){k(e),t(e)})):console.error("VGS not on element, problem has occurred")}))}}}));var Z=(0,r.useRef)(null),w=(null!==(n=null==a?void 0:a.paymentCardTypes)&&void 0!==n?n:[]).map((function(e){return De.w[e]?{name:De.w[e],status:!1}:null})).filter((function(e){return e}));return r.createElement("div",null,r.createElement("div",null,!!o.user&&r.createElement(Ue,{onCardSelected:function(e){}})),r.createElement("div",null,["credit-card","card-name","expiration-date","security-code"].map((function(e){var t=c[e];return r.createElement(B.Z,{open:!!t,key:e},r.createElement("div",{className:"u-flex"},r.createElement(M.ZP,{type:M.NK.Danger,icon:h.Tu.Error},r.createElement(y.ZP,{type:y.yG.Small},t))))})),r.createElement("div",{className:"u-marg-bottom"},r.createElement(Le,{isCurrent:function(e){var t;return null!==C.state.cardType&&(null===(t=w[e])||void 0===t?void 0:t.name)===C.state.cardType},isDefault:function(e){return null===C.state.cardType}})),r.createElement("form",{ref:Z},r.createElement(ee.Z,{dimensions:"2/2"},r.createElement("div",{className:C.getClasses(),ref:C.ref}),r.createElement(ee.Z,{dimensions:"2/2"},r.createElement("div",{className:b.getClasses(),ref:b.ref}),r.createElement("div",{className:_.getClasses(),ref:_.ref}))),r.createElement(ee.Z,{dimensions:"1"},r.createElement("div",{className:A.getClasses(),ref:A.ref})))))}var je=(0,r.forwardRef)(ze),Qe=n(7970),Ve=n.n(Qe),Ye=function(e){var t,n=e.checked,a=e.onChange,o=e.disabled,l=e.label,i=e.renderContent,c=e.className,s=(0,r.useMemo)((function(){return Math.random().toString()}),[]);return r.createElement("label",{htmlFor:s,className:Oe()(Ve().root,c,(t={},(0,X.Z)(t,Ve().disabled,o),(0,X.Z)(t,Ve().checked,n),t))},r.createElement("div",{className:Ve().header},r.createElement("input",{className:Ve().input,hidden:!0,disabled:o,id:s,onChange:a,type:"radio",checked:n}),r.createElement("div",{className:Ve().design}),r.createElement("div",{className:Ve().text},l)),r.createElement("div",null,i&&n&&r.createElement("div",{className:Ve().content},i())))},He=n(9502),$e=n.n(He),Je=function(e){var t=e.options,n=e.value,a=e.onChange;return r.createElement("div",{className:$e().root},t.map((function(e){var t=e.value,o=e.label,l=e.disabled,i=e.disabledReason,c=e.renderContent,s=r.createElement(Ye,{className:$e().item,key:t,checked:!l&&t===n,onChange:function(){l||a(t)},label:o,disabled:l,renderContent:function(){return r.createElement(B.Z,{open:!0},null==c?void 0:c())}});return l&&i?r.createElement(pe.Z,{key:t,wrapperClasses:$e().wrapper,title:i},s):r.createElement("div",{key:t,className:$e().wrapper},s)})))},Ke=n(2710);function Xe(){var e=(0,r.useState)({differences:[],warnings:[]}),t=(0,g.Z)(e,2),n=t[0],o=t[1],l=(0,r.useContext)(P.gr),i=(0,r.useState)(""),s=(0,g.Z)(i,2),m=s[0],d=s[1],f=(0,r.useState)(!1),C=(0,g.Z)(f,2),A=C[0],b=C[1],_=(0,r.useRef)(null),x=(0,r.useRef)(null),k=(0,p.$)().t,Z=We(),S=Z.queryPaymentMethod,N=Z.queryRoomstayId,R=Z.queryPlanpayCheckoutId,I=(0,P.dF)(),B=(0,J.Gc)(),T=Ie(),G=T.isBackFromPlanpay,U=T.isLoading,F=T.apiErrors,O=T.clearApiErrors,L=T.book,z=T.rollbackReservation,j=T.commitReservation,Q=(0,P.Kc)(),V=(0,r.useRef)(null),H=(0,ye.k6)(),K=(0,D.WP)().hotel,X=function(){var e=(0,Y.Z)($().mark((function e(t){var n,r,a,o;return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:e.t0=t,e.next=e.t0===ie.ar.Planpay?3:10;break;case 3:return(a=new URLSearchParams(window.location.search)).set("roomstayId","{{rsId}}"),a.set("session",I.sessionProvider.getCurrentSessionID().toString()),a.set("paymentMethod",ie.ar.Planpay),o="".concat(window.location.origin).concat(window.location.pathname).concat(window.location.search,"#/step/confirmation/?").concat(a),r={Method:ie.ar.Planpay,PlanpayCheckoutId:R||void 0,RedirectUrl:o},e.abrupt("break",15);case 10:return e.t1=ie.ar.Card,e.next=13,null===(n=V.current)||void 0===n?void 0:n.getTokenizedCode();case 13:e.t2=e.sent,r={Method:e.t1,PaymentCard:e.t2};case 15:return e.abrupt("return",r);case 16:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();(0,r.useEffect)((function(){var e,t=Object.values(ie.ar).includes(S)?S:ie.ar.Card;return B.setValue("paymentMethod",t),pe(t),G&&(N===(null===(e=Q.reservationData)||void 0===e?void 0:e.roomstayId)?ee(t):null==z||z()),function(){G||null==z||z()}}),[]);var ee=function(){var e=(0,Y.Z)($().mark((function e(t){return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,null==j?void 0:j(Q.reservationData);case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),ne=B.watch("paymentMethod");I.engine.getSessionProvider().getSession().then((function(e){d(e.source)}));var re=function(){var e=(0,Y.Z)($().mark((function e(){return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:H.push(_e.Z.getStepUrl());case 1:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),ae=function(){var e=(0,Y.Z)($().mark((function e(){return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,se(ne,function(){var e=(0,Y.Z)($().mark((function e(t){return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",null==j?void 0:j(t));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}());case 2:return e.abrupt("return",!1);case 3:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),oe=function(){var e;return!xe.Z.isActive()||!(null==_||null===(e=_.current)||void 0===e||!e.checked)},le=function(e){var t=null==l?void 0:l.errorChecks.every((function(t){return t().validate(e)}));return void 0===t||t},ce=!oe()||!le(!1)||!B.formState.isValid,se=function(){var e=(0,Y.Z)($().mark((function e(t,n){var r;return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,null==L?void 0:L((0,Y.Z)($().mark((function e(){return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",X(t));case 1:case"end":return e.stop()}}),e)}))),null===(r=x.current)||void 0===r?void 0:r.value,(0,Y.Z)($().mark((function e(){return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(oe()){e.next=3;break}return b(!0),e.abrupt("return",!1);case 3:if(le(!0)){e.next=5;break}return e.abrupt("return",!1);case 5:if(e.prev=5,t!==ie.ar.Card){e.next=9;break}return e.next=9,V.current.getTokenizedCode();case 9:return e.abrupt("return",!0);case 12:return e.prev=12,e.t0=e.catch(5),e.abrupt("return",!1);case 15:case"end":return e.stop()}}),e,null,[[5,12]])}))),(function(e){e&&o(e)}),n);case 2:case"end":return e.stop()}}),e)})));return function(t,n){return e.apply(this,arguments)}}(),pe=function(){var e=(0,Y.Z)($().mark((function e(t){return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t===ie.ar.Planpay){e.next=3;break}return e.next=3,null==z?void 0:z();case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return r.createElement("form",null,G?r.createElement(W.Z,null):r.createElement(r.Fragment,null,r.createElement("div",{className:"u-marg-bottom--heavy"},r.createElement("div",{className:"u-marg-bottom--light"},r.createElement(a.Z,{bold:!0},k(u.W.Step.Confirmation.GuestDetails))),r.createElement(y.ZP,{type:y.yG.Small,color:E.I.Success},r.createElement("strong",null,k(u.W.Step.Confirmation.AlmostDone,{required:"*"})))),r.createElement(ue,null),"inline"===m?r.createElement(M.ZP,{type:M.NK.Accent2,heavyPadding:!0},r.createElement("div",{className:"u-flex u-w-100 flex-wrap flex-xl-nowrap"},r.createElement("div",null,r.createElement(y.ZP,{color:E.I.Accent,bold:!0},k(u.W.Step.Confirmation.WantMoreRooms)),r.createElement(y.ZP,{color:E.I.Navy},k(u.W.Step.Confirmation.YouCanAddAndEditRooms))),r.createElement("div",{className:"d-flex align-items-center u-marg-top@xl-"},r.createElement(w.Z,{filled:!0,primary:!0,icon:h.Tu.Add,iconPosition:"left",onClick:re},k(u.W.Step.Confirmation.AddMoreRooms))))):r.createElement(r.Fragment,null),ke.Z.isActive()&&r.createElement(r.Fragment,null,r.createElement("div",{className:"u-marg-bottom--heavy"},r.createElement("div",{className:"u-marg-bottom"},r.createElement(a.Z,{bold:!0},"Travel Agent")),r.createElement("div",{className:"u-marg-bottom--light"},r.createElement(y.ZP,{type:y.yG.Small},r.createElement("strong",null,k(u.W.Step.Confirmation.Inputs.IATANumber)))),r.createElement("div",{className:"u-marg-bottom--light"},r.createElement(y.ZP,{type:y.yG.Small},k(u.W.Step.Confirmation.Inputs.IATANumberGuide))),r.createElement(te.Z,(0,v.Z)({placeholder:k(u.W.Step.Confirmation.Inputs.IATANumber),wide:!0},B.register("IATANumber")))),r.createElement(c.Z,null)),r.createElement(Ke.h,{inputRef:x}),r.createElement(c.Z,null),r.createElement("div",{className:"u-marg-bottom--heavy"},r.createElement("div",{className:"u-marg-bottom"},r.createElement(a.Z,{bold:!0},k(u.W.Step.Confirmation.PaymentInformation))),r.createElement(J.Qr,{control:B.control,name:"paymentMethod",render:function(e){var t=e.field,n=t.onChange,a=t.value;return r.createElement(r.Fragment,null,r.createElement("div",null,r.createElement(Je,{options:[{value:ie.ar.Card,label:r.createElement("div",{className:"u-flex u-flex-align-center"},r.createElement("div",{className:"u-marg-right--light"},k(u.W.Step.Confirmation.CardLabel)),r.createElement(Le,{isDefault:function(e){return!0},style:{height:16,width:24,borderRadius:2.5,border:"0.5px solid #DFE1E5",marginRight:4}})),renderContent:function(){return r.createElement(je,{ref:V})}},{value:ie.ar.Planpay,label:r.createElement("div",{className:"u-flex u-flex-align-center"},r.createElement("div",null,k(u.W.Step.Confirmation.PlanpayLabel)),r.createElement("div",{className:"u-flex u-flex-align-center u-marg-left--light",style:{borderRadius:"24px",overflow:"hidden"}},r.createElement("img",{height:16,src:fe.Z.getImageAssetUrl("planpay-logo-small.svg"),alt:""})),!B.formState.isValid&&r.createElement(y.ZP,{color:E.I.Graphite,className:"u-flex u-flex-align-center",style:{color:"#313131",fontSize:10}},r.createElement(h.ZP,{color:E.I.DarkGrey,icon:h.Tu.Info,className:"u-marg-right--lighter u-marg-left--light"}),k(u.W.Step.Confirmation.PlanpayHelperText))),disabled:ce,disabledReason:ce?"You must fill all the above details before proceeding with Planpay":"",renderContent:function(){return r.createElement(Ne,null)}}].filter((function(e){var t,n=e.value;return null==K||null===(t=K.paymentMethods)||void 0===t?void 0:t.includes(n)})).filter((function(e){var t,n;return e.value!==ie.ar.Planpay||(null==K||null===(t=K.planpay)||void 0===t?void 0:t.minDaysShowPlanpay)&&q()(Q.startDate).diff(q()(),"day")>(null==K||null===(n=K.planpay)||void 0===n?void 0:n.minDaysShowPlanpay)})),value:a,onChange:function(){var e=(0,Y.Z)($().mark((function e(t){return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n(t),e.next=3,pe(t);case 3:if(t!==ie.ar.Planpay){e.next=6;break}return e.next=6,se(t);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()})))}}),r.createElement("div",{className:"u-marg-top u-flex align-items-center"},r.createElement("div",{className:"u-flex align-items-center justify-content-start"},r.createElement(h.ZP,{icon:h.Tu.Lock,color:E.I.Success}),r.createElement("div",{className:"u-marg-left--light"},r.createElement(y.ZP,{type:y.yG.Small,color:E.I.Success},r.createElement("strong",null,"Secured")))),r.createElement(ve,null))),r.createElement(c.Z,null),r.createElement(me,null),r.createElement("div",{className:"u-pad-top--light u-marg-bottom"},r.createElement(Ce,null)),xe.Z.isActive()&&r.createElement(r.Fragment,null,r.createElement(c.Z,null),r.createElement("div",null,r.createElement(Ae,{ref:_,confirmationPolicyError:A}))),r.createElement("div",{className:"u-flex u-marg-top--heavy justify-content-end"},r.createElement(de.Z,{disabled:ne===ie.ar.Planpay||U,text:k(u.W.Step.Confirmation.ConfirmReservation),history:null,isLoading:U,currentStep:be.Z,onClick:ae}))),r.createElement(Ee.default,{open:!!F,onClose:O},r.createElement(y.ZP,null,F)),r.createElement(he,{differences:n.differences,warnings:n.warnings,isLoading:U,onClose:(0,Y.Z)($().mark((function e(){return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,null==z?void 0:z();case 2:H.push(_e.Z.getStepUrl());case 3:case"end":return e.stop()}}),e)}))),onProceed:(0,Y.Z)($().mark((function e(){return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(ne!==ie.ar.Planpay){e.next=4;break}o({differences:[],warnings:[]}),e.next=6;break;case 4:return e.next=6,null==j?void 0:j(Q.reservationData);case 6:case"end":return e.stop()}}),e)})))}))}var et=n(9666),tt=n(3819),nt=Re.Provider,rt=function(e){var t=e.children,n=We(),a=n.queryPaymentMethod,o=n.queryRoomstayId,l=n.queryPlanpayCheckoutId,i=(0,r.useState)(!1),c=(0,g.Z)(i,2),s=c[0],u=c[1],m=(0,r.useState)(""),d=(0,g.Z)(m,2),f=d[0],p=d[1],v=(0,J.cI)({mode:"onChange"}),h=(0,r.useContext)(P.hy),y=h.getAllValidRows(),E=h.basketAddonRows,C=(0,D.WP)().hotel,A=function(e){return e.userProfiles.map((function(e){return{FirstName:e.Forename,LastName:e.Surname,Phone:e.Phone.replace(" ",""),Email:e.Email,Address:{Line1:e.Address,City:e.City,PostalCode:e.PostCode,Country:e.Country},MarketingOptIn:!1}}))},b=function(){var e=(0,Y.Z)($().mark((function e(t){var n;return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=[],!t.reservations){e.next=5;break}t.reservations.forEach((function(e,t){var r=h.currentBasketRows[t].checkDiffFromReservation(e);r&&n.push(r)})),e.next=7;break;case 5:throw et.n_({level:tt.z.Error,message:"No reservation data: "+JSON.stringify(t)}),new Error("The reservation could not be completed due to an unexpected issue, please try again");case 7:if(!(n.length||t.warnings&&t.warnings.length)){e.next=9;break}return e.abrupt("return",{differences:n,warnings:t.warnings});case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),_=function(e,t,n,r,a){return function(){var o=(0,Y.Z)($().mark((function o(l){var i,c,s,m;return $().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(F.ZP.instance.sendInteraction("Complete Booking",F.s_.BUTTON,F._J.GUEST_DETAILS),u(!0),o.t0=!n,o.t0){o.next=7;break}return o.next=6,n();case 6:o.t0=o.sent;case 7:if(o.t0){o.next=11;break}return u(!1),o.abrupt("return");case 11:return o.next=13,e();case 13:return c=o.sent,o.prev=14,o.next=17,I.Z.Reservation.bookNow(y,A(l),c,E,t||"",null==C?void 0:C.hotelID);case 17:return i=o.sent,h.booked(i),o.next=21,b(i);case 21:(s=o.sent)?(u(!1),null==r||r(s)):null==a||a(i),o.next=30;break;case 25:o.prev=25,o.t1=o.catch(14),console.log(o.t1),p(null!==(m=null===o.t1||void 0===o.t1?void 0:o.t1.Message)&&void 0!==m?m:"Unexpected error returned from the booking database."),u(!1);case 30:case"end":return o.stop()}}),o,null,[[14,25]])})));return function(e){return o.apply(this,arguments)}}()},x=!!l&&!!o&&!!a,k=function(e){var t;return null==e||null===(t=e.reservations)||void 0===t?void 0:t.map((function(e){return e.reservationNumber}))},Z=function(){var e=(0,Y.Z)($().mark((function e(t){var n,r;return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:try{if(u(!0),t)if((n=k(t)).length)try{I.Z.Reservation.commit(n,t.itineraryNumber,null==C?void 0:C.hotelID,l||void 0).then((function(e){try{F.ZP.instance.sendReservationConfirmed(h.getAllValidRows(),h.basketAddonRows,e)}catch(e){et.Tb("Failed to read reservations from GTM code: "+JSON.stringify(e))}h.checkedOut(e)})).catch((function(e){console.log(e),p("Unexpected error")})).finally((function(){u(!1)}))}catch(e){p(null!==(r=null==e?void 0:e.Message)&&void 0!==r?r:"Unexpected error returned from the booking database.")}else p("Committing reservation failed due to an unexpected error"),P.qL.add({message:"Committing reservation failed due to an unexpected error"}),et.Tb("No reservation IDs found when attempting to commit: "+JSON.stringify(t))}catch(e){p("Failed to commit reservation"),console.log("Failed to commit reservation "),console.error(e),et.Tb(e)}case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),w=function(){var e=(0,Y.Z)($().mark((function e(){var t;return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(h.reservationData){e.next=2;break}return e.abrupt("return");case 2:if(e.prev=2,!(t=k(h.reservationData)).length){e.next=10;break}return u(!0),e.next=8,I.Z.Reservation.rollback(t,h.reservationData.itineraryNumber,null==C?void 0:C.hotelID);case 8:e.next=11;break;case 10:et.Tb("No reservation IDs found when attempting to rollback: "+JSON.stringify(h.reservationData));case 11:e.next=17;break;case 13:e.prev=13,e.t0=e.catch(2),console.log("Failed to rollback reservations"),et.Tb(e.t0);case 17:return e.prev=17,h.rollback(),u(!1),e.finish(17);case 21:case"end":return e.stop()}}),e,null,[[2,13,17,21]])})));return function(){return e.apply(this,arguments)}}(),S=function(){var e=(0,Y.Z)($().mark((function e(t,n,r,a,o){return $().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,v.handleSubmit(_(t,n,r,a,o))();case 2:case"end":return e.stop()}}),e)})));return function(t,n,r,a,o){return e.apply(this,arguments)}}();return r.createElement(J.RV,v,r.createElement(nt,{value:{book:S,commitReservation:Z,rollbackReservation:w,isLoading:s,apiErrors:f,clearApiErrors:function(){return p("")},isBackFromPlanpay:x}},t))};function at(){return r.createElement(rt,null,r.createElement(Xe,null))}var ot=n(6409),lt=function(){var e=(0,r.useContext)(P.g7),t=(0,r.useContext)(P.aN).currentStep,n=(0,r.useContext)(P.hy).currentBasketRows,v=(0,p.$)().t,g=(0,Q.z)().raise;return(0,r.useEffect)((function(){var e=new V.z(n);g(e)}),[]),r.createElement("div",{className:"container"},r.createElement(m.default,null),r.createElement(ot.i5,null,r.createElement(ot.mV,null,e.screenSize>d.Z.Medium&&r.createElement(r.Fragment,null,r.createElement(i.rU,{to:o.Z.getPreviousStepUrl(t)},r.createElement(s.Z,null)),r.createElement("div",{className:"u-marg-top--light u-marg-bottom--heavy"},r.createElement(a.Z,{bold:!0},v(u.W.Navigation.Steps.Confirmation)))),r.createElement("div",{className:"u-marg-top@m-"},r.createElement(z.Z,null))),e.screenSize>d.Z.Medium&&r.createElement(ot.f,null,r.createElement(f.Z,null))),r.createElement(c.Z,null),r.createElement(ot.i5,null,r.createElement(ot.mV,null,r.createElement("div",{className:"block-container"},!j.Z.isActive()&&r.createElement(T,null),r.createElement(P.s$,null,r.createElement(at,null)))),e.screenSize>d.Z.Medium&&r.createElement(ot.f,null,r.createElement(O,{endDate:q()().add(10,"minute")}),r.createElement(l.v,{showImages:!0}))))}},987:function(e,t,n){(t=n(3645)(!0)).push([e.id,'.roomstay-booking-container .RadioButton-module__root___1w9es{width:100%;display:block;border:1px solid var(--rs-color-light-grey);border-radius:8px;margin:10px 0;cursor:pointer;transition:.3s}.roomstay-booking-container .RadioButton-module__root___1w9es+.RadioButton-module__root___1w9es{margin-top:8px}.roomstay-booking-container .RadioButton-module__root___1w9es.RadioButton-module__disabled___1HXUO{background:#f6f6fa;cursor:not-allowed}.roomstay-booking-container .RadioButton-module__root___1w9es.RadioButton-module__disabled___1HXUO .RadioButton-module__design___3kmtW{border:solid 1px #dfe1e5;background:rgba(0,0,0,0)}.roomstay-booking-container .RadioButton-module__root___1w9es.RadioButton-module__disabled___1HXUO .RadioButton-module__design___3kmtW::before{background:rgba(0,0,0,0)}.roomstay-booking-container .RadioButton-module__root___1w9es.RadioButton-module__disabled___1HXUO .RadioButton-module__text___1CCxU{color:#c0c3cc}.roomstay-booking-container .RadioButton-module__root___1w9es.RadioButton-module__checked___XmNJ8 .RadioButton-module__design___3kmtW{background:var(--rs-color-accent-2);border:solid 1px var(--rs-color-accent-1)}.roomstay-booking-container .RadioButton-module__root___1w9es.RadioButton-module__checked___XmNJ8 .RadioButton-module__design___3kmtW::before{transform:translate(-50%, -50%) scale(1);background:var(--rs-color-accent-1)}.roomstay-booking-container .RadioButton-module__root___1w9es.RadioButton-module__checked___XmNJ8 .RadioButton-module__text___1CCxU{color:var(--rs-color-navy)}.roomstay-booking-container .RadioButton-module__input___3WTPl{position:absolute;left:0;top:0;width:1px;height:1px;opacity:0;z-index:-1}.roomstay-booking-container .RadioButton-module__design___3kmtW{flex-shrink:0;width:16px;height:16px;border-radius:100px;position:relative;border:solid 1px var(--rs-color-light-grey)}.roomstay-booking-container .RadioButton-module__design___3kmtW::before{content:"";width:10px;height:10px;display:inline-block;border-radius:inherit;top:50%;left:50%;transform:translate(-50%, -50%);background:rgba(0,0,0,0);transition:.3s;position:absolute}.roomstay-booking-container .RadioButton-module__text___1CCxU{color:var(--rs-color-navy);font-size:14px;font-weight:400;line-height:18px;margin-left:8px;transition:.3s}.roomstay-booking-container .RadioButton-module__content___2b4U9{display:block;padding:16px;border-top:solid 1px var(--rs-color-light-grey)}.roomstay-booking-container .RadioButton-module__header___2nA7I{padding:8px 16px;display:flex;align-items:center}.roomstay-booking-container .RadioButton-module__header___2nA7I:hover{background:rgba(204,204,204,.14)}',"",{version:3,sources:["RadioButton.module.scss"],names:[],mappings:"AAAA,8DAA2C,UAAU,CAAC,aAAa,CAAC,2CAA2C,CAAC,iBAAiB,CAAC,aAAa,CAAC,cAAc,CAAC,cAAc,CAAC,gGAAiD,cAAc,CAAC,mGAAoD,kBAAkB,CAAC,kBAAkB,CAAC,uIAA4D,wBAAwB,CAAC,wBAAwB,CAAC,+IAAoE,wBAAwB,CAAC,qIAA0D,aAAa,CAAC,sIAA2D,mCAAmC,CAAC,yCAAyC,CAAC,8IAAmE,wCAAwC,CAAC,mCAAmC,CAAC,oIAAyD,0BAA0B,CAAC,+DAA4C,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,gEAA6C,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,2CAA2C,CAAC,wEAAqD,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAC,wBAAwB,CAAC,cAAc,CAAC,iBAAiB,CAAC,8DAA2C,0BAA0B,CAAC,cAAc,CAAC,eAAe,CAAC,gBAAgB,CAAC,eAAe,CAAC,cAAc,CAAC,iEAA8C,aAAa,CAAC,YAAY,CAAC,+CAA+C,CAAC,gEAA6C,gBAAgB,CAAC,YAAY,CAAC,kBAAkB,CAAC,sEAAmD,gCAAgC",file:"RadioButton.module.scss",sourcesContent:[':global(.roomstay-booking-container) .root{width:100%;display:block;border:1px solid var(--rs-color-light-grey);border-radius:8px;margin:10px 0;cursor:pointer;transition:.3s}:global(.roomstay-booking-container) .root+.root{margin-top:8px}:global(.roomstay-booking-container) .root.disabled{background:#f6f6fa;cursor:not-allowed}:global(.roomstay-booking-container) .root.disabled .design{border:solid 1px #dfe1e5;background:rgba(0,0,0,0)}:global(.roomstay-booking-container) .root.disabled .design::before{background:rgba(0,0,0,0)}:global(.roomstay-booking-container) .root.disabled .text{color:#c0c3cc}:global(.roomstay-booking-container) .root.checked .design{background:var(--rs-color-accent-2);border:solid 1px var(--rs-color-accent-1)}:global(.roomstay-booking-container) .root.checked .design::before{transform:translate(-50%, -50%) scale(1);background:var(--rs-color-accent-1)}:global(.roomstay-booking-container) .root.checked .text{color:var(--rs-color-navy)}:global(.roomstay-booking-container) .input{position:absolute;left:0;top:0;width:1px;height:1px;opacity:0;z-index:-1}:global(.roomstay-booking-container) .design{flex-shrink:0;width:16px;height:16px;border-radius:100px;position:relative;border:solid 1px var(--rs-color-light-grey)}:global(.roomstay-booking-container) .design::before{content:"";width:10px;height:10px;display:inline-block;border-radius:inherit;top:50%;left:50%;transform:translate(-50%, -50%);background:rgba(0,0,0,0);transition:.3s;position:absolute}:global(.roomstay-booking-container) .text{color:var(--rs-color-navy);font-size:14px;font-weight:400;line-height:18px;margin-left:8px;transition:.3s}:global(.roomstay-booking-container) .content{display:block;padding:16px;border-top:solid 1px var(--rs-color-light-grey)}:global(.roomstay-booking-container) .header{padding:8px 16px;display:flex;align-items:center}:global(.roomstay-booking-container) .header:hover{background:rgba(204,204,204,.14)}']}]),t.locals={root:"RadioButton-module__root___1w9es",disabled:"RadioButton-module__disabled___1HXUO",design:"RadioButton-module__design___3kmtW",text:"RadioButton-module__text___1CCxU",checked:"RadioButton-module__checked___XmNJ8",input:"RadioButton-module__input___3WTPl",content:"RadioButton-module__content___2b4U9",header:"RadioButton-module__header___2nA7I"},e.exports=t},5205:function(e,t,n){(t=n(3645)(!0)).push([e.id,".RadioButtonGroup-module__root___3QZUp .RadioButtonGroup-module__wrapper___3_Rg6:first-child .RadioButtonGroup-module__item___3rGSy{border-top-left-radius:8px !important;border-top-right-radius:8px !important}.RadioButtonGroup-module__root___3QZUp .RadioButtonGroup-module__wrapper___3_Rg6:last-child .RadioButtonGroup-module__item___3rGSy{border-bottom:1px solid var(--rs-color-light-grey) !important;border-bottom-left-radius:8px !important;border-bottom-right-radius:8px !important}.RadioButtonGroup-module__root___3QZUp .RadioButtonGroup-module__item___3rGSy{border-radius:0 !important;margin-top:0 !important;margin-bottom:0 !important;border-bottom:0 !important}","",{version:3,sources:["RadioButtonGroup.module.scss"],names:[],mappings:"AAAA,oIAAiC,qCAAqC,CAAC,sCAAsC,CAAC,mIAAgC,6DAA6D,CAAC,wCAAwC,CAAC,yCAAyC,CAAC,8EAAY,0BAA0B,CAAC,uBAAuB,CAAC,0BAA0B,CAAC,0BAA0B",file:"RadioButtonGroup.module.scss",sourcesContent:[".root .wrapper:first-child .item{border-top-left-radius:8px !important;border-top-right-radius:8px !important}.root .wrapper:last-child .item{border-bottom:1px solid var(--rs-color-light-grey) !important;border-bottom-left-radius:8px !important;border-bottom-right-radius:8px !important}.root .item{border-radius:0 !important;margin-top:0 !important;margin-bottom:0 !important;border-bottom:0 !important}"]}]),t.locals={root:"RadioButtonGroup-module__root___3QZUp",wrapper:"RadioButtonGroup-module__wrapper___3_Rg6",item:"RadioButtonGroup-module__item___3rGSy"},e.exports=t},7970:function(e,t,n){var r=n(3379),a=n(987);"string"==typeof(a=a.__esModule?a.default:a)&&(a=[[e.id,a,""]]);r(a,{insert:"head",singleton:!1}),e.exports=a.locals||{}},9502:function(e,t,n){var r=n(3379),a=n(5205);"string"==typeof(a=a.__esModule?a.default:a)&&(a=[[e.id,a,""]]);r(a,{insert:"head",singleton:!1}),e.exports=a.locals||{}}}]);