@roomstay/frontend 2.6.84 → 2.6.86-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/177.bundle.js +1 -1
- package/dist/288.bundle.js +1 -1
- package/dist/370.bundle.js +1 -1
- package/dist/380.bundle.js +1 -0
- package/dist/430.bundle.js +1 -1
- package/dist/449.bundle.js +1 -1
- package/dist/456.bundle.js +1 -0
- package/dist/535.bundle.js +1 -1
- package/dist/537.bundle.js +1 -1
- package/dist/978.bundle.js +1 -1
- package/dist/e2e/canChangeCurrency.spec.js +1 -1
- package/dist/e2e/canChangeCurrency.spec.js.map +1 -1
- package/dist/e2e/canCheckout.spec.js +3 -3
- package/dist/e2e/canCheckout.spec.js.map +1 -1
- package/dist/e2e/canViewFindReservationsPage.spec.js +1 -1
- package/dist/e2e/canViewFindReservationsPage.spec.js.map +1 -1
- package/dist/e2e/canViewHotelnfoPage.spec.js +1 -1
- package/dist/e2e/canViewHotelnfoPage.spec.js.map +1 -1
- package/dist/e2e/goBackAndCheckoutAgain.spec.js +1 -1
- package/dist/e2e/goBackAndCheckoutAgain.spec.js.map +1 -1
- package/dist/e2e/helpers/checkoutHelpers.js +9 -8
- package/dist/e2e/helpers/checkoutHelpers.js.map +1 -1
- package/dist/e2e/helpers/playwrightHelpers.js +2 -1
- package/dist/e2e/helpers/playwrightHelpers.js.map +1 -1
- package/dist/e2e/price.spec.js +3 -3
- package/dist/e2e/price.spec.js.map +1 -1
- package/dist/main.bundle.js +1 -1
- package/dist/src/animations/AutoAutoHeight.js +8 -18
- package/dist/src/animations/AutoAutoHeight.js.map +1 -1
- package/dist/src/animations/Fade.js +7 -17
- package/dist/src/animations/Fade.js.map +1 -1
- package/dist/src/api/AddonAPI.js +7 -17
- package/dist/src/api/AddonAPI.js.map +1 -1
- package/dist/src/api/AvailabilityAPI.d.ts +6 -13
- package/dist/src/api/AvailabilityAPI.js +105 -148
- package/dist/src/api/AvailabilityAPI.js.map +1 -1
- package/dist/src/api/BaseAPI.js +6 -6
- package/dist/src/api/BaseAPI.js.map +1 -1
- package/dist/src/api/ErrorAPI.js.map +1 -1
- package/dist/src/api/ExchangeRateAPI.js.map +1 -1
- package/dist/src/api/HotelAPI.d.ts +1 -1
- package/dist/src/api/HotelAPI.js.map +1 -1
- package/dist/src/api/MemberAPI.js +7 -17
- package/dist/src/api/MemberAPI.js.map +1 -1
- package/dist/src/api/ReservationAPI.d.ts +3 -2
- package/dist/src/api/ReservationAPI.js +10 -21
- package/dist/src/api/ReservationAPI.js.map +1 -1
- package/dist/src/api/SessionAPI.js +7 -17
- package/dist/src/api/SessionAPI.js.map +1 -1
- package/dist/src/api/TrueRewardsAPI.js.map +1 -1
- package/dist/src/api/events-service/EventsServiceAPI.js.map +1 -1
- package/dist/src/api/members-service/MembersServiceAPI.d.ts +1 -1
- package/dist/src/components/Event/EventCarouselContainer.js +7 -17
- package/dist/src/components/Event/EventCarouselContainer.js.map +1 -1
- package/dist/src/components/User/Forms/ForgotPasswordForm.js +7 -17
- package/dist/src/components/User/Forms/ForgotPasswordForm.js.map +1 -1
- package/dist/src/components/User/Forms/SignInForm.js +7 -17
- package/dist/src/components/User/Forms/SignInForm.js.map +1 -1
- package/dist/src/components/User/Forms/SignUpForm.js +7 -17
- package/dist/src/components/User/Forms/SignUpForm.js.map +1 -1
- package/dist/src/components/User/Forms/VerifyEmailForm.js +7 -17
- package/dist/src/components/User/Forms/VerifyEmailForm.js.map +1 -1
- package/dist/src/components/generic/AfterpayButton/AfterpayPaymentOption.js +7 -17
- package/dist/src/components/generic/AfterpayButton/AfterpayPaymentOption.js.map +1 -1
- package/dist/src/components/generic/AgedBetweenLabel/AgedBetweenLabel.js +7 -17
- package/dist/src/components/generic/AgedBetweenLabel/AgedBetweenLabel.js.map +1 -1
- package/dist/src/components/generic/Alert.js +3 -3
- package/dist/src/components/generic/Alert.js.map +1 -1
- package/dist/src/components/generic/BEButton.d.ts +0 -1
- package/dist/src/components/generic/BEButton.js +9 -20
- package/dist/src/components/generic/BEButton.js.map +1 -1
- package/dist/src/components/generic/BackButton.js +1 -1
- package/dist/src/components/generic/BackButton.js.map +1 -1
- package/dist/src/components/generic/BookNowPayLaterInfoBlock.js +9 -18
- package/dist/src/components/generic/BookNowPayLaterInfoBlock.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizard.d.ts +2 -1
- package/dist/src/components/generic/BookingWizard/BookingWizard.js +46 -28
- package/dist/src/components/generic/BookingWizard/BookingWizard.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardContent.d.ts +6 -4
- package/dist/src/components/generic/BookingWizard/BookingWizardContent.js +43 -21
- package/dist/src/components/generic/BookingWizard/BookingWizardContent.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardContext.d.ts +9 -0
- package/dist/src/components/generic/BookingWizard/BookingWizardContext.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.d.ts +2 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js +9 -19
- package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.d.ts +2 -5
- package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js +10 -20
- package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js +11 -21
- package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardPromoCode/BookingWizardPromoCode.js +7 -17
- package/dist/src/components/generic/BookingWizard/BookingWizardPromoCode/BookingWizardPromoCode.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardRoomGroupSelector/BookingWizardRoomGroupSelector.d.ts +15 -0
- package/dist/src/components/generic/BookingWizard/BookingWizardRoomGroupSelector/BookingWizardRoomGroupSelector.js +135 -0
- package/dist/src/components/generic/BookingWizard/BookingWizardRoomGroupSelector/BookingWizardRoomGroupSelector.js.map +1 -0
- package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js +7 -17
- package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js.map +1 -1
- package/dist/src/components/generic/Checkbox/Checkbox.js +7 -17
- package/dist/src/components/generic/Checkbox/Checkbox.js.map +1 -1
- package/dist/src/components/generic/Countdown.js +8 -18
- package/dist/src/components/generic/Countdown.js.map +1 -1
- package/dist/src/components/generic/Currency.js +8 -18
- package/dist/src/components/generic/Currency.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePicker.js +8 -18
- package/dist/src/components/generic/DateRangePicker/DateRangePicker.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js +9 -19
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js +8 -18
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js +8 -18
- package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js +7 -17
- package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js.map +1 -1
- package/dist/src/components/generic/Distance.js +8 -18
- package/dist/src/components/generic/Distance.js.map +1 -1
- package/dist/src/components/generic/Event/EventCard.js +7 -17
- package/dist/src/components/generic/Event/EventCard.js.map +1 -1
- package/dist/src/components/generic/Event/EventCarousel.js +7 -17
- package/dist/src/components/generic/Event/EventCarousel.js.map +1 -1
- package/dist/src/components/generic/ForwardedSelect.js +7 -17
- package/dist/src/components/generic/ForwardedSelect.js.map +1 -1
- package/dist/src/components/generic/GroupedCheckInOutTimes/GroupedCheckInOutTimes.js.map +1 -1
- package/dist/src/components/generic/Headline.js +1 -1
- package/dist/src/components/generic/Headline.js.map +1 -1
- package/dist/src/components/generic/HtmlContentViewer.js +7 -17
- package/dist/src/components/generic/HtmlContentViewer.js.map +1 -1
- package/dist/src/components/generic/IconText/IconText.js +9 -19
- package/dist/src/components/generic/IconText/IconText.js.map +1 -1
- package/dist/src/components/generic/InputGroup/InputGroup.js +1 -1
- package/dist/src/components/generic/InputGroup/InputGroup.js.map +1 -1
- package/dist/src/components/generic/LineBreak.js +1 -1
- package/dist/src/components/generic/LineBreak.js.map +1 -1
- package/dist/src/components/generic/Notification.js +8 -18
- package/dist/src/components/generic/Notification.js.map +1 -1
- package/dist/src/components/generic/NumberIncrement.js +8 -18
- package/dist/src/components/generic/NumberIncrement.js.map +1 -1
- package/dist/src/components/generic/Overlay/Overlay.js +7 -17
- package/dist/src/components/generic/Overlay/Overlay.js.map +1 -1
- package/dist/src/components/generic/PageTitle/index.js.map +1 -1
- package/dist/src/components/generic/PasswordBox/PasswordBox.js +7 -17
- package/dist/src/components/generic/PasswordBox/PasswordBox.js.map +1 -1
- package/dist/src/components/generic/PaymentCard/InlinePaymentOption.js +9 -19
- package/dist/src/components/generic/PaymentCard/InlinePaymentOption.js.map +1 -1
- package/dist/src/components/generic/PaymentCard/PaymentCardInput.js +7 -17
- package/dist/src/components/generic/PaymentCard/PaymentCardInput.js.map +1 -1
- package/dist/src/components/generic/Pill.js +3 -3
- package/dist/src/components/generic/Pill.js.map +1 -1
- package/dist/src/components/generic/Placeholder.js +1 -1
- package/dist/src/components/generic/Placeholder.js.map +1 -1
- package/dist/src/components/generic/PlanpayPrice/PlanpayPrice.js +7 -17
- package/dist/src/components/generic/PlanpayPrice/PlanpayPrice.js.map +1 -1
- package/dist/src/components/generic/PromoCodeInput.d.ts +0 -2
- package/dist/src/components/generic/PromoCodeInput.js +12 -20
- package/dist/src/components/generic/PromoCodeInput.js.map +1 -1
- package/dist/src/components/generic/RadioButtonGroup/RadioButton.js +7 -17
- package/dist/src/components/generic/RadioButtonGroup/RadioButton.js.map +1 -1
- package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js +7 -17
- package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
- package/dist/src/components/generic/RecentSearchesCard.js +7 -17
- package/dist/src/components/generic/RecentSearchesCard.js.map +1 -1
- package/dist/src/components/generic/RoomstayMark.js +7 -17
- package/dist/src/components/generic/RoomstayMark.js.map +1 -1
- package/dist/src/components/generic/ScrollToTop.js.map +1 -1
- package/dist/src/components/generic/Select/InputSelect.js +8 -18
- package/dist/src/components/generic/Select/InputSelect.js.map +1 -1
- package/dist/src/components/generic/Select/Select.d.ts +1 -1
- package/dist/src/components/generic/Select/Select.js +7 -17
- package/dist/src/components/generic/Select/Select.js.map +1 -1
- package/dist/src/components/generic/Slider/Slider.js +7 -17
- package/dist/src/components/generic/Slider/Slider.js.map +1 -1
- package/dist/src/components/generic/Tabs/ElementChildren.js +3 -2
- package/dist/src/components/generic/Tabs/ElementChildren.js.map +1 -1
- package/dist/src/components/generic/Tabs/TabContext.js +7 -17
- package/dist/src/components/generic/Tabs/TabContext.js.map +1 -1
- package/dist/src/components/generic/Tabs/TabLink.js +7 -17
- package/dist/src/components/generic/Tabs/TabLink.js.map +1 -1
- package/dist/src/components/generic/Tabs/TabRouteContainer.js +9 -18
- package/dist/src/components/generic/Tabs/TabRouteContainer.js.map +1 -1
- package/dist/src/components/generic/Text.js +9 -19
- package/dist/src/components/generic/Text.js.map +1 -1
- package/dist/src/components/generic/TextArea.js +7 -17
- package/dist/src/components/generic/TextArea.js.map +1 -1
- package/dist/src/components/generic/TextBox.js +7 -17
- package/dist/src/components/generic/TextBox.js.map +1 -1
- package/dist/src/components/generic/Tooltip/Tooltip.js +8 -18
- package/dist/src/components/generic/Tooltip/Tooltip.js.map +1 -1
- package/dist/src/components/generic/badging/SSLSecureBadge.js +1 -1
- package/dist/src/components/generic/badging/SSLSecureBadge.js.map +1 -1
- package/dist/src/components/generic/buttons/NextStepButton.js +8 -18
- package/dist/src/components/generic/buttons/NextStepButton.js.map +1 -1
- package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js +7 -17
- package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js.map +1 -1
- package/dist/src/components/generic/date/DatePicker.d.ts +1 -1
- package/dist/src/components/generic/date/DatePicker.js +9 -19
- package/dist/src/components/generic/date/DatePicker.js.map +1 -1
- package/dist/src/components/generic/date/DatePickerDay.js +9 -19
- package/dist/src/components/generic/date/DatePickerDay.js.map +1 -1
- package/dist/src/components/generic/date/DatePickerDays.js +8 -18
- package/dist/src/components/generic/date/DatePickerDays.js.map +1 -1
- package/dist/src/components/generic/date/DatePickerMonth.js +8 -18
- package/dist/src/components/generic/date/DatePickerMonth.js.map +1 -1
- package/dist/src/components/generic/date/DatePickerWeek.js +11 -21
- package/dist/src/components/generic/date/DatePickerWeek.js.map +1 -1
- package/dist/src/components/generic/date/FloatingDatePicker.js +9 -19
- package/dist/src/components/generic/date/FloatingDatePicker.js.map +1 -1
- package/dist/src/components/generic/date/WeekViewSkeleton.js +7 -17
- package/dist/src/components/generic/date/WeekViewSkeleton.js.map +1 -1
- package/dist/src/components/generic/loader/ImageLoader.js +8 -18
- package/dist/src/components/generic/loader/ImageLoader.js.map +1 -1
- package/dist/src/components/generic/loader/LargeLoader.js +1 -1
- package/dist/src/components/generic/loader/LargeLoader.js.map +1 -1
- package/dist/src/components/generic/loader/SmallSpinner.js +8 -18
- package/dist/src/components/generic/loader/SmallSpinner.js.map +1 -1
- package/dist/src/components/generic/map/HotelLocationMap.js +1 -1
- package/dist/src/components/generic/map/HotelLocationMap.js.map +1 -1
- package/dist/src/components/generic/modal/ConfirmationModal.js +8 -18
- package/dist/src/components/generic/modal/ConfirmationModal.js.map +1 -1
- package/dist/src/components/generic/modal/ErrorModal.js +8 -18
- package/dist/src/components/generic/modal/ErrorModal.js.map +1 -1
- package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js +7 -17
- package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js.map +1 -1
- package/dist/src/components/generic/modal/SigninModal/FormContent/SignUpFormContent.js +7 -17
- package/dist/src/components/generic/modal/SigninModal/FormContent/SignUpFormContent.js.map +1 -1
- package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js +8 -18
- package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js.map +1 -1
- package/dist/src/components/generic/modal/SimpleModal.js +9 -19
- package/dist/src/components/generic/modal/SimpleModal.js.map +1 -1
- package/dist/src/components/generic/modal/TabbedModal.js +8 -18
- package/dist/src/components/generic/modal/TabbedModal.js.map +1 -1
- package/dist/src/components/generic/radio/RadioFields.js +8 -18
- package/dist/src/components/generic/radio/RadioFields.js.map +1 -1
- package/dist/src/components/graphics/TravelerNotfound.js +1 -1
- package/dist/src/components/graphics/TravelerNotfound.js.map +1 -1
- package/dist/src/components/members/EditMyProfile.js +7 -17
- package/dist/src/components/members/EditMyProfile.js.map +1 -1
- package/dist/src/components/members/InlineSignUpSection.d.ts +1 -1
- package/dist/src/components/members/InlineSignUpSection.js +7 -17
- package/dist/src/components/members/InlineSignUpSection.js.map +1 -1
- package/dist/src/components/members/SignInModal/ExternalMemberModal.js +7 -17
- package/dist/src/components/members/SignInModal/ExternalMemberModal.js.map +1 -1
- package/dist/src/components/members/SignInModal/InternalMemberSignInModal.js +9 -19
- package/dist/src/components/members/SignInModal/InternalMemberSignInModal.js.map +1 -1
- package/dist/src/components/members/SignInModal/MemberPortalSignInModal.js +8 -18
- package/dist/src/components/members/SignInModal/MemberPortalSignInModal.js.map +1 -1
- package/dist/src/components/members/SignInModal/MemberSignInModal.js +7 -17
- package/dist/src/components/members/SignInModal/MemberSignInModal.js.map +1 -1
- package/dist/src/components/navigation/Header.js +8 -18
- package/dist/src/components/navigation/Header.js.map +1 -1
- package/dist/src/components/navigation/StepSelector.js +8 -18
- package/dist/src/components/navigation/StepSelector.js.map +1 -1
- package/dist/src/components/navigation/StepSelectorModal.js +8 -18
- package/dist/src/components/navigation/StepSelectorModal.js.map +1 -1
- package/dist/src/components/pages/Account/Card/MemberCardItem.js +7 -17
- package/dist/src/components/pages/Account/Card/MemberCardItem.js.map +1 -1
- package/dist/src/components/pages/PageColorComponent.js +7 -17
- package/dist/src/components/pages/PageColorComponent.js.map +1 -1
- package/dist/src/components/reservation/EmptyReservation.js +7 -17
- package/dist/src/components/reservation/EmptyReservation.js.map +1 -1
- package/dist/src/components/reservation/ReservationItem.d.ts +0 -1
- package/dist/src/components/reservation/ReservationItem.js +10 -20
- package/dist/src/components/reservation/ReservationItem.js.map +1 -1
- package/dist/src/components/reservation/ReservationList.d.ts +0 -1
- package/dist/src/components/reservation/ReservationList.js +2 -2
- package/dist/src/components/reservation/ReservationList.js.map +1 -1
- package/dist/src/components/steps/DaysSelectedInformer.js +8 -18
- package/dist/src/components/steps/DaysSelectedInformer.js.map +1 -1
- package/dist/src/components/steps/MinimumNightStayPill.js +8 -18
- package/dist/src/components/steps/MinimumNightStayPill.js.map +1 -1
- package/dist/src/components/steps/addons/AddonCard.js +7 -25
- package/dist/src/components/steps/addons/AddonCard.js.map +1 -1
- package/dist/src/components/steps/addons/AddonList.js +7 -17
- package/dist/src/components/steps/addons/AddonList.js.map +1 -1
- package/dist/src/components/steps/addons/AddonsNotFoundBlock.js +1 -1
- package/dist/src/components/steps/addons/AddonsNotFoundBlock.js.map +1 -1
- package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.d.ts +1 -1
- package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js +9 -19
- package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js.map +1 -1
- package/dist/src/components/steps/common/ItemisedFeesListing/ItemisedFeesListing.js +7 -17
- package/dist/src/components/steps/common/ItemisedFeesListing/ItemisedFeesListing.js.map +1 -1
- package/dist/src/components/steps/common/ItemisedFeesSummary/ItemisedFeesSummary.d.ts +1 -1
- package/dist/src/components/steps/common/ItemisedFeesSummary/ItemisedFeesSummary.js +7 -17
- package/dist/src/components/steps/common/ItemisedFeesSummary/ItemisedFeesSummary.js.map +1 -1
- package/dist/src/components/steps/confirmation/AccountDetails.js +8 -18
- package/dist/src/components/steps/confirmation/AccountDetails.js.map +1 -1
- package/dist/src/components/steps/confirmation/AdyenPaymentOption/AdyenPaymentOption.js +7 -17
- package/dist/src/components/steps/confirmation/AdyenPaymentOption/AdyenPaymentOption.js.map +1 -1
- package/dist/src/components/steps/confirmation/MastercardPaymentMethod.js +7 -17
- package/dist/src/components/steps/confirmation/MastercardPaymentMethod.js.map +1 -1
- package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js.map +1 -1
- package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js +7 -17
- package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js.map +1 -1
- package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js +7 -17
- package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js.map +1 -1
- package/dist/src/components/steps/confirmation/PaymentInformation.js +7 -17
- package/dist/src/components/steps/confirmation/PaymentInformation.js.map +1 -1
- package/dist/src/components/steps/confirmation/PlanpayLabel.js +7 -17
- package/dist/src/components/steps/confirmation/PlanpayLabel.js.map +1 -1
- package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js +7 -17
- package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js.map +1 -1
- package/dist/src/components/steps/confirmation/RoomContactDetails.js +8 -18
- package/dist/src/components/steps/confirmation/RoomContactDetails.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js +19 -28
- package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js +8 -18
- package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js +2 -2
- package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js +7 -17
- package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationForm.js +8 -18
- package/dist/src/components/steps/confirmation/StepConfirmationForm.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js +8 -18
- package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js +8 -18
- package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js +12 -23
- package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js.map +1 -1
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsLabel.js +13 -26
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsLabel.js.map +1 -1
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsPaymentMethod.d.ts +1 -5
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsPaymentMethod.js +13 -35
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsPaymentMethod.js.map +1 -1
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js +8 -18
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js.map +1 -1
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js +8 -18
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js.map +1 -1
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js +8 -18
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js.map +1 -1
- package/dist/src/components/steps/date/OccupancyWarningBlock.js +1 -1
- package/dist/src/components/steps/date/OccupancyWarningBlock.js.map +1 -1
- package/dist/src/components/steps/date/PeoplePicker.js +10 -20
- package/dist/src/components/steps/date/PeoplePicker.js.map +1 -1
- package/dist/src/components/steps/date/PeoplePickerRow.js +9 -19
- package/dist/src/components/steps/date/PeoplePickerRow.js.map +1 -1
- package/dist/src/components/steps/date/StepDatePricePerRoom.js +8 -18
- package/dist/src/components/steps/date/StepDatePricePerRoom.js.map +1 -1
- package/dist/src/components/steps/date/StepOneDateRange.js +8 -18
- package/dist/src/components/steps/date/StepOneDateRange.js.map +1 -1
- package/dist/src/components/steps/date/StepOneDateRangePicker.js +8 -18
- package/dist/src/components/steps/date/StepOneDateRangePicker.js.map +1 -1
- package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js +8 -18
- package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js.map +1 -1
- package/dist/src/components/steps/date/StepOneNextStepButton.js +8 -18
- package/dist/src/components/steps/date/StepOneNextStepButton.js.map +1 -1
- package/dist/src/components/steps/date/StepOneStatusPeople.js +8 -18
- package/dist/src/components/steps/date/StepOneStatusPeople.js.map +1 -1
- package/dist/src/components/steps/hotel/HotelCard.js +9 -19
- package/dist/src/components/steps/hotel/HotelCard.js.map +1 -1
- package/dist/src/components/steps/hotel/HotelCardList.js +1 -1
- package/dist/src/components/steps/hotel/HotelCardList.js.map +1 -1
- package/dist/src/components/steps/hotel/HotelCardModal.js +7 -17
- package/dist/src/components/steps/hotel/HotelCardModal.js.map +1 -1
- package/dist/src/components/steps/hotel/HotelInfoPerksRow.js +8 -18
- package/dist/src/components/steps/hotel/HotelInfoPerksRow.js.map +1 -1
- package/dist/src/components/steps/hotel/HotelSearchParameters.js +20 -22
- package/dist/src/components/steps/hotel/HotelSearchParameters.js.map +1 -1
- package/dist/src/components/steps/hotel/NoHotelsAvailable.js +1 -1
- package/dist/src/components/steps/hotel/NoHotelsAvailable.js.map +1 -1
- package/dist/src/components/steps/room/AvailableUpgradesModal.js +7 -17
- package/dist/src/components/steps/room/AvailableUpgradesModal.js.map +1 -1
- package/dist/src/components/steps/room/ImageGallerySlider.js +8 -18
- package/dist/src/components/steps/room/ImageGallerySlider.js.map +1 -1
- package/dist/src/components/steps/room/InactivityWindow.js +7 -17
- package/dist/src/components/steps/room/InactivityWindow.js.map +1 -1
- package/dist/src/components/steps/room/LargeRoomCard.js +7 -17
- package/dist/src/components/steps/room/LargeRoomCard.js.map +1 -1
- package/dist/src/components/steps/room/NoRoomsFoundBlock.js +8 -18
- package/dist/src/components/steps/room/NoRoomsFoundBlock.js.map +1 -1
- package/dist/src/components/steps/room/RatesNotFoundBlock.js +1 -1
- package/dist/src/components/steps/room/RatesNotFoundBlock.js.map +1 -1
- package/dist/src/components/steps/room/RoomList.js +8 -18
- package/dist/src/components/steps/room/RoomList.js.map +1 -1
- package/dist/src/components/steps/room/RoomListAlert.js +7 -17
- package/dist/src/components/steps/room/RoomListAlert.js.map +1 -1
- package/dist/src/components/steps/room/RoomListCrossSellBlock.js +8 -18
- package/dist/src/components/steps/room/RoomListCrossSellBlock.js.map +1 -1
- package/dist/src/components/steps/room/RoomModal.js +8 -18
- package/dist/src/components/steps/room/RoomModal.js.map +1 -1
- package/dist/src/components/steps/room/RoomModalPerkRow.js +8 -18
- package/dist/src/components/steps/room/RoomModalPerkRow.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomAlertBlocks.js +8 -18
- package/dist/src/components/steps/room/StepRoomAlertBlocks.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomBestRateAlert.js +8 -18
- package/dist/src/components/steps/room/StepRoomBestRateAlert.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomErrorForm.js +7 -17
- package/dist/src/components/steps/room/StepRoomErrorForm.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomHotelDetails.js +8 -18
- package/dist/src/components/steps/room/StepRoomHotelDetails.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomNextStepButton.js +8 -18
- package/dist/src/components/steps/room/StepRoomNextStepButton.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomSortBy.js +8 -18
- package/dist/src/components/steps/room/StepRoomSortBy.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomSummaryAndButton.js +8 -18
- package/dist/src/components/steps/room/StepRoomSummaryAndButton.js.map +1 -1
- package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRoomList.js +7 -17
- package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRoomList.js.map +1 -1
- package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.js +7 -17
- package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.js.map +1 -1
- package/dist/src/components/steps/room/TripteaseLodgingSearchSchema.js +7 -17
- package/dist/src/components/steps/room/TripteaseLodgingSearchSchema.js.map +1 -1
- package/dist/src/components/steps/room/UserSearchSummary/PromoCodeVerificationAlert.d.ts +1 -1
- package/dist/src/components/steps/room/UserSearchSummary/PromoCodeVerificationAlert.js +8 -19
- package/dist/src/components/steps/room/UserSearchSummary/PromoCodeVerificationAlert.js.map +1 -1
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummary.js +7 -17
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummary.js.map +1 -1
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryPromocodeInput.js +20 -20
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryPromocodeInput.js.map +1 -1
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryRow.js +7 -17
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryRow.js.map +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js.map +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js.map +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfInfantsPicker.js +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfInfantsPicker.js.map +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js +8 -18
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js.map +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js +23 -23
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetails.js +8 -18
- package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js +9 -18
- package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js +9 -18
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js +8 -18
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js +7 -17
- package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js +8 -18
- package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js +8 -18
- package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +10 -20
- package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/ReadMoreRoomRateRow.js +8 -18
- package/dist/src/components/steps/room/roomDetails/roomRates/ReadMoreRoomRateRow.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js +10 -20
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js +9 -19
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js +7 -17
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js +8 -18
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js +8 -18
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js +8 -18
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/unavailableRoom/UnavailableRoom.js +12 -26
- package/dist/src/components/steps/room/roomDetails/unavailableRoom/UnavailableRoom.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js +8 -18
- package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js +8 -18
- package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js +8 -18
- package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js +8 -18
- package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js +8 -18
- package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js.map +1 -1
- package/dist/src/components/summary/BEMapWidget.d.ts +2 -0
- package/dist/src/components/summary/BEMapWidget.js +7 -17
- package/dist/src/components/summary/BEMapWidget.js.map +1 -1
- package/dist/src/components/summary/BEMobileSummary.js +8 -18
- package/dist/src/components/summary/BEMobileSummary.js.map +1 -1
- package/dist/src/components/summary/BEMobileSummaryModal.js +18 -29
- package/dist/src/components/summary/BEMobileSummaryModal.js.map +1 -1
- package/dist/src/components/summary/BESummary.js +13 -23
- package/dist/src/components/summary/BESummary.js.map +1 -1
- package/dist/src/components/summary/BESummaryAddonRow.js +9 -19
- package/dist/src/components/summary/BESummaryAddonRow.js.map +1 -1
- package/dist/src/components/summary/BESummaryPerkBlock.js +9 -19
- package/dist/src/components/summary/BESummaryPerkBlock.js.map +1 -1
- package/dist/src/components/summary/BESummaryPrivacyPolicy.js +8 -18
- package/dist/src/components/summary/BESummaryPrivacyPolicy.js.map +1 -1
- package/dist/src/components/summary/BESummaryRoomRow.js +9 -19
- package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
- package/dist/src/components/summary/TransportDistanceFromHotelBlock.js +8 -18
- package/dist/src/components/summary/TransportDistanceFromHotelBlock.js.map +1 -1
- package/dist/src/containers/PrivateRoute.js.map +1 -1
- package/dist/src/contexts/BasketContext/BasketContext.d.ts +1 -0
- package/dist/src/contexts/BasketContext/BasketContextType.d.ts +4 -6
- package/dist/src/contexts/BasketContext/BasketContextType.js.map +1 -1
- package/dist/src/contexts/BasketContext/BasketContextWrapper.js +162 -237
- package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
- package/dist/src/contexts/BookingEngineContext/BookingEngineContext.d.ts +1 -0
- package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js +9 -18
- package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js.map +1 -1
- package/dist/src/contexts/CompanyContext/CompanyContext.d.ts +1 -0
- package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +14 -22
- package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
- package/dist/src/contexts/ConfirmationFormContext.js +9 -19
- package/dist/src/contexts/ConfirmationFormContext.js.map +1 -1
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContext.d.ts +1 -0
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextTypes.d.ts +1 -2
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextTypes.js.map +1 -1
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +23 -44
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -1
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepErrorModal.js +7 -17
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepErrorModal.js.map +1 -1
- package/dist/src/contexts/ErrorContext.js +9 -19
- package/dist/src/contexts/ErrorContext.js.map +1 -1
- package/dist/src/contexts/FullPageEngineContext/EngineBodyLayout.js +2 -1
- package/dist/src/contexts/FullPageEngineContext/EngineBodyLayout.js.map +1 -1
- package/dist/src/contexts/FullPageEngineContext/EnginePageLayout.js +9 -18
- package/dist/src/contexts/FullPageEngineContext/EnginePageLayout.js.map +1 -1
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContext.d.ts +1 -0
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +19 -20
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
- package/dist/src/contexts/HotelOverridesContext.js +7 -17
- package/dist/src/contexts/HotelOverridesContext.js.map +1 -1
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.d.ts +2 -1
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js +1 -1
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js.map +1 -1
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js +14 -40
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js.map +1 -1
- package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContext.d.ts +1 -0
- package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js +7 -17
- package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js.map +1 -1
- package/dist/src/contexts/ModalContext.js +9 -18
- package/dist/src/contexts/ModalContext.js.map +1 -1
- package/dist/src/contexts/NotificationContext.js +9 -19
- package/dist/src/contexts/NotificationContext.js.map +1 -1
- package/dist/src/engines/BaseEngine.js +1 -1
- package/dist/src/engines/BaseEngine.js.map +1 -1
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.d.ts +4 -1
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js.map +1 -1
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js +3 -1
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js.map +1 -1
- package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js +7 -17
- package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js.map +1 -1
- package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js +8 -18
- package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js.map +1 -1
- package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.d.ts +17 -19
- package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +34 -30
- package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js.map +1 -1
- package/dist/src/engines/MemberPortalWidget/MemberPortalWidget.js.map +1 -1
- package/dist/src/engines/MemberPortalWidget/MemberPortalWidgetElement.js +8 -18
- package/dist/src/engines/MemberPortalWidget/MemberPortalWidgetElement.js.map +1 -1
- package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js +8 -17
- package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js.map +1 -1
- package/dist/src/events/RoomstayEventManager.js +1 -1
- package/dist/src/events/RoomstayEventManager.js.map +1 -1
- package/dist/src/events/actions/PlacedBookingEvent.d.ts +1 -1
- package/dist/src/events/actions/PlacedBookingEvent.js.map +1 -1
- package/dist/src/events/views/CommittedBookingEvent.d.ts +1 -1
- package/dist/src/events/views/CommittedBookingEvent.js.map +1 -1
- package/dist/src/events/views/RolledBackBookingEvent.d.ts +1 -1
- package/dist/src/events/views/RolledBackBookingEvent.js.map +1 -1
- package/dist/src/handlers/BasketContextErrorHandler.d.ts +1 -1
- package/dist/src/handlers/BasketContextErrorHandler.js.map +1 -1
- package/dist/src/handlers/payment/AdyenPaymentHandler.js +7 -17
- package/dist/src/handlers/payment/AdyenPaymentHandler.js.map +1 -1
- package/dist/src/handlers/payment/PlanpayPaymentHandler.js +7 -17
- package/dist/src/handlers/payment/PlanpayPaymentHandler.js.map +1 -1
- package/dist/src/handlers/payment/TrueRewardsPaymentHandler.js +5 -8
- package/dist/src/handlers/payment/TrueRewardsPaymentHandler.js.map +1 -1
- package/dist/src/handlers/payment/VGSMemberPaymentHandler.js.map +1 -1
- package/dist/src/handlers/payment/VGSPaymentHandler.js +9 -19
- package/dist/src/handlers/payment/VGSPaymentHandler.js.map +1 -1
- package/dist/src/hooks/AutoFocusOnSelect.d.ts +1 -0
- package/dist/src/hooks/AutoFocusOnSelect.js.map +1 -1
- package/dist/src/hooks/BodyClickHook.js.map +1 -1
- package/dist/src/hooks/CombineState.d.ts +1 -1
- package/dist/src/hooks/ConfirmationQuery.d.ts +0 -1
- package/dist/src/hooks/ConfirmationQuery.js +1 -2
- package/dist/src/hooks/ConfirmationQuery.js.map +1 -1
- package/dist/src/hooks/Currency.js.map +1 -1
- package/dist/src/hooks/CurrentHotelHook.js.map +1 -1
- package/dist/src/hooks/ElementSortHook.js +7 -17
- package/dist/src/hooks/ElementSortHook.js.map +1 -1
- package/dist/src/hooks/HistoryConsistentPush.js +2 -1
- package/dist/src/hooks/HistoryConsistentPush.js.map +1 -1
- package/dist/src/hooks/KeyboardControlOnSelect.d.ts +2 -2
- package/dist/src/hooks/KeyboardControlOnSelect.js.map +1 -1
- package/dist/src/hooks/LoggedInUserHook.js.map +1 -1
- package/dist/src/hooks/Planpay.d.ts +1 -1
- package/dist/src/hooks/Query.js +3 -2
- package/dist/src/hooks/Query.js.map +1 -1
- package/dist/src/hooks/RoomRateAvailabilityListFromApi.js +1 -0
- package/dist/src/hooks/RoomRateAvailabilityListFromApi.js.map +1 -1
- package/dist/src/hooks/UpdateQueryParameters.js +2 -1
- package/dist/src/hooks/UpdateQueryParameters.js.map +1 -1
- package/dist/src/hooks/VGSHooks.d.ts +1 -0
- package/dist/src/hooks/VGSHooks.js.map +1 -1
- package/dist/src/hooks/useCalendarNightStay.js +3 -3
- package/dist/src/hooks/useCalendarNightStay.js.map +1 -1
- package/dist/src/hooks/useNextStepAction.js +11 -21
- package/dist/src/hooks/useNextStepAction.js.map +1 -1
- package/dist/src/hooks/usePlanpayRawPrice.js.map +1 -1
- package/dist/src/hooks/useRateDetails.js.map +1 -1
- package/dist/src/hooks/useSearchScopeHook.d.ts +1 -1
- package/dist/src/hooks/useSearchScopeHook.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/mockApi/AddonAPI.js.map +1 -1
- package/dist/src/mockApi/MemberAPI.js +7 -17
- package/dist/src/mockApi/MemberAPI.js.map +1 -1
- package/dist/src/mockApi/MockAPI.js +5 -5
- package/dist/src/mockApi/MockAPI.js.map +1 -1
- package/dist/src/mockApi/ReservationAPI.d.ts +1 -1
- package/dist/src/mockApi/ReservationAPI.js +8 -18
- package/dist/src/mockApi/ReservationAPI.js.map +1 -1
- package/dist/src/models/Addon/Addon.d.ts +24 -0
- package/dist/src/models/Addon/Addon.js.map +1 -1
- package/dist/src/models/Api/HotelDTO.d.ts +2 -1
- package/dist/src/models/Api/HotelDTO.js +1 -1
- package/dist/src/models/Api/HotelDTO.js.map +1 -1
- package/dist/src/models/Api/ReservationsDTO.d.ts +80 -0
- package/dist/src/models/Api/ReservationsDTO.js +3 -0
- package/dist/src/models/Api/ReservationsDTO.js.map +1 -0
- package/dist/src/models/AppQueryParameters.js +1 -1
- package/dist/src/models/AppQueryParameters.js.map +1 -1
- package/dist/src/models/BasketAddonRow.js +5 -3
- package/dist/src/models/BasketAddonRow.js.map +1 -1
- package/dist/src/models/BasketRow.d.ts +9 -63
- package/dist/src/models/BasketRow.js +37 -77
- package/dist/src/models/BasketRow.js.map +1 -1
- package/dist/src/models/BookingWizard/BookingWizardTypes.d.ts +4 -0
- package/dist/src/models/BookingWizard/BookingWizardTypes.js.map +1 -1
- package/dist/src/models/Client/Hotel/DistanceUnitType.types.js +1 -1
- package/dist/src/models/Client/Hotel/DistanceUnitType.types.js.map +1 -1
- package/dist/src/models/Client/Hotel/Hotel.d.ts +2 -1
- package/dist/src/models/Client/Hotel/Hotel.js +1 -1
- package/dist/src/models/Client/Hotel/Hotel.js.map +1 -1
- package/dist/src/models/Client/Hotel/HotelDataSource.types.js +1 -1
- package/dist/src/models/Client/Hotel/HotelDataSource.types.js.map +1 -1
- package/dist/src/models/Client/Hotel/WeekdayStartsOn.types.js +1 -1
- package/dist/src/models/Client/Hotel/WeekdayStartsOn.types.js.map +1 -1
- package/dist/src/models/Confirmation.js +2 -2
- package/dist/src/models/Confirmation.js.map +1 -1
- package/dist/src/models/CountryCodesAndNumbers.js +3 -3
- package/dist/src/models/CountryCodesAndNumbers.js.map +1 -1
- package/dist/src/models/Fee.d.ts +9 -1
- package/dist/src/models/Fee.js +5 -4
- package/dist/src/models/Fee.js.map +1 -1
- package/dist/src/models/PaymentCard.js +1 -1
- package/dist/src/models/PaymentCard.js.map +1 -1
- package/dist/src/models/Room/Filters/BudgetFilter.js.map +1 -1
- package/dist/src/models/Room/Filters/RoomTypeFilter.js.map +1 -1
- package/dist/src/models/Room/Room.js.map +1 -1
- package/dist/src/models/Room/RoomRate.d.ts +1 -8
- package/dist/src/models/Room/RoomRate.js +1 -25
- package/dist/src/models/Room/RoomRate.js.map +1 -1
- package/dist/src/models/Room/RoomRateNight.d.ts +1 -1
- package/dist/src/models/Room/RoomRateNight.js.map +1 -1
- package/dist/src/models/RoomstaySession.d.ts +3 -1
- package/dist/src/models/RoomstaySession.js.map +1 -1
- package/dist/src/pages/account/AccountHome/AccountHomePage.js +8 -18
- package/dist/src/pages/account/AccountHome/AccountHomePage.js.map +1 -1
- package/dist/src/pages/account/AccountRoutes.d.ts +0 -5
- package/dist/src/pages/account/AccountRoutes.js +2 -8
- package/dist/src/pages/account/AccountRoutes.js.map +1 -1
- package/dist/src/pages/account/ChangePassword/AccountChangePasswordPage.js +7 -17
- package/dist/src/pages/account/ChangePassword/AccountChangePasswordPage.js.map +1 -1
- package/dist/src/pages/account/Details/AccountDetailsCardsPage.js +7 -17
- package/dist/src/pages/account/Details/AccountDetailsCardsPage.js.map +1 -1
- package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js +7 -17
- package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js.map +1 -1
- package/dist/src/pages/account/Details/AccountDetailsProfilePage.js +7 -17
- package/dist/src/pages/account/Details/AccountDetailsProfilePage.js.map +1 -1
- package/dist/src/pages/account/Help/AccountHelpPage.js +7 -17
- package/dist/src/pages/account/Help/AccountHelpPage.js.map +1 -1
- package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js +13 -38
- package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js.map +1 -1
- package/dist/src/pages/account/Reservations/AccountReservationsPage.js +7 -7
- package/dist/src/pages/account/Reservations/AccountReservationsPage.js.map +1 -1
- package/dist/src/pages/findReservation/FindReservation.js +9 -19
- package/dist/src/pages/findReservation/FindReservation.js.map +1 -1
- package/dist/src/pages/findReservation/FindReservationResults.js +10 -20
- package/dist/src/pages/findReservation/FindReservationResults.js.map +1 -1
- package/dist/src/pages/findReservation/ReservationRow.d.ts +1 -1
- package/dist/src/pages/findReservation/ReservationRow.js +8 -18
- package/dist/src/pages/findReservation/ReservationRow.js.map +1 -1
- package/dist/src/pages/findReservation/ReservationRowModal.d.ts +1 -1
- package/dist/src/pages/findReservation/ReservationRowModal.js +8 -18
- package/dist/src/pages/findReservation/ReservationRowModal.js.map +1 -1
- package/dist/src/pages/hotel/HotelInfo.js +10 -20
- package/dist/src/pages/hotel/HotelInfo.js.map +1 -1
- package/dist/src/pages/hotel/HotelInfoPlaceholder.js +1 -1
- package/dist/src/pages/hotel/HotelInfoPlaceholder.js.map +1 -1
- package/dist/src/pages/steps/StepAddon/StepAddon.js.map +1 -1
- package/dist/src/pages/steps/StepAddon/StepAddonComponent.js +8 -18
- package/dist/src/pages/steps/StepAddon/StepAddonComponent.js.map +1 -1
- package/dist/src/pages/steps/StepAddon/StepAddonLoader.js +7 -17
- package/dist/src/pages/steps/StepAddon/StepAddonLoader.js.map +1 -1
- package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js.map +1 -1
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js +7 -17
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js.map +1 -1
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js +8 -18
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js.map +1 -1
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationValidator.js.map +1 -1
- package/dist/src/pages/steps/StepDate/StepDate.js.map +1 -1
- package/dist/src/pages/steps/StepDate/StepDateComponent.js +7 -17
- package/dist/src/pages/steps/StepDate/StepDateComponent.js.map +1 -1
- package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoom.js.map +1 -1
- package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomComponent.js +7 -17
- package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomComponent.js.map +1 -1
- package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomLoader.js +8 -18
- package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomLoader.js.map +1 -1
- package/dist/src/pages/steps/StepGuide.js +8 -18
- package/dist/src/pages/steps/StepGuide.js.map +1 -1
- package/dist/src/pages/steps/StepHotel/StepHotelComponent.js +7 -17
- package/dist/src/pages/steps/StepHotel/StepHotelComponent.js.map +1 -1
- package/dist/src/pages/steps/StepHotel/StepHotelLoader.js +7 -17
- package/dist/src/pages/steps/StepHotel/StepHotelLoader.js.map +1 -1
- package/dist/src/pages/steps/StepRoom/StepRoom.js.map +1 -1
- package/dist/src/pages/steps/StepRoom/StepRoomComponent.js +7 -17
- package/dist/src/pages/steps/StepRoom/StepRoomComponent.js.map +1 -1
- package/dist/src/pages/steps/StepRoom/StepRoomFilters.js +7 -17
- package/dist/src/pages/steps/StepRoom/StepRoomFilters.js.map +1 -1
- package/dist/src/pages/steps/StepRoom/StepRoomLoader.js +8 -18
- package/dist/src/pages/steps/StepRoom/StepRoomLoader.js.map +1 -1
- package/dist/src/pages/steps/StepRoom/StepRoomValidator.js.map +1 -1
- package/dist/src/pages/steps/StepThanks/StepThanks.js.map +1 -1
- package/dist/src/pages/steps/StepThanks/StepThanksComponent.js +10 -20
- package/dist/src/pages/steps/StepThanks/StepThanksComponent.js.map +1 -1
- package/dist/src/pages/steps/StepThanks/StepThanksValidator.js.map +1 -1
- package/dist/src/providers/CurrencyProvider.js +1 -1
- package/dist/src/providers/CurrencyProvider.js.map +1 -1
- package/dist/src/providers/DIProvider.js +3 -2
- package/dist/src/providers/DIProvider.js.map +1 -1
- package/dist/src/providers/DistanceProvider.js.map +1 -1
- package/dist/src/providers/FeatureProvider.js +1 -1
- package/dist/src/providers/FeatureProvider.js.map +1 -1
- package/dist/src/providers/FilterProvider.d.ts +1 -1
- package/dist/src/providers/FilterProvider.js +3 -3
- package/dist/src/providers/FilterProvider.js.map +1 -1
- package/dist/src/providers/ImageProvider.js +1 -1
- package/dist/src/providers/ImageProvider.js.map +1 -1
- package/dist/src/providers/LanguageProvider.js +1 -1
- package/dist/src/providers/LanguageProvider.js.map +1 -1
- package/dist/src/providers/PromotionProvider.d.ts +1 -1
- package/dist/src/providers/PromotionProvider.js.map +1 -1
- package/dist/src/providers/RatePillProvider.js.map +1 -1
- package/dist/src/providers/RoomSortProvider.js +2 -2
- package/dist/src/providers/RoomSortProvider.js.map +1 -1
- package/dist/src/providers/RoomstayThemeEngine.js +8 -18
- package/dist/src/providers/RoomstayThemeEngine.js.map +1 -1
- package/dist/src/providers/feature/DerbysoftClickTrackingFeature.js.map +1 -1
- package/dist/src/providers/feature/Feature.d.ts +2 -0
- package/dist/src/providers/feature/Feature.js +4 -0
- package/dist/src/providers/feature/Feature.js.map +1 -1
- package/dist/src/providers/feature/GuestTitleFieldFeature.js.map +1 -1
- package/dist/src/providers/feature/InlineAddonStepFeature.js.map +1 -1
- package/dist/src/providers/feature/MemberPortalFeature.js.map +1 -1
- package/dist/src/providers/storage/SessionProvider.js +2 -0
- package/dist/src/providers/storage/SessionProvider.js.map +1 -1
- package/dist/src/providers/storage/StorageProvider.d.ts +1 -1
- package/dist/src/providers/storage/StorageProvider.js +7 -17
- package/dist/src/providers/storage/StorageProvider.js.map +1 -1
- package/dist/src/reducers/BasketReducer.js.map +1 -1
- package/dist/src/stories/BookingWizard.stories.d.ts +2 -2
- package/dist/src/stories/Card.stories.d.ts +5 -3
- package/dist/src/stories/CardTypeSelect.stories.d.ts +1 -2
- package/dist/src/stories/Checkbox.stories.d.ts +1 -2
- package/dist/src/stories/ConfirmationModal.stories.js +7 -17
- package/dist/src/stories/ConfirmationModal.stories.js.map +1 -1
- package/dist/src/stories/DateRangePicker.stories.js +7 -17
- package/dist/src/stories/DateRangePicker.stories.js.map +1 -1
- package/dist/src/stories/EnhancedPhoneNumberField.stories.d.ts +1 -2
- package/dist/src/stories/ErrorModal.stories.js +7 -17
- package/dist/src/stories/ErrorModal.stories.js.map +1 -1
- package/dist/src/stories/EventCarousel.stories.d.ts +2 -2
- package/dist/src/stories/FloatingDateRangePicker.stories.d.ts +2 -2
- package/dist/src/stories/FloatingDateRangePicker.stories.js +7 -17
- package/dist/src/stories/FloatingDateRangePicker.stories.js.map +1 -1
- package/dist/src/stories/ForwardedSelect.stories.d.ts +1 -2
- package/dist/src/stories/Icon.stories.js +7 -17
- package/dist/src/stories/Icon.stories.js.map +1 -1
- package/dist/src/stories/IconNavCard.stories.d.ts +15 -6
- package/dist/src/stories/IconText.stories.js +7 -17
- package/dist/src/stories/IconText.stories.js.map +1 -1
- package/dist/src/stories/NumberIncrement.stories.js +7 -17
- package/dist/src/stories/NumberIncrement.stories.js.map +1 -1
- package/dist/src/stories/PasswordBox.stories.d.ts +1 -2
- package/dist/src/stories/PaymentCard.stories.d.ts +1 -2
- package/dist/src/stories/PaymentCardInput.stories.d.ts +1 -2
- package/dist/src/stories/PlanpayButton.stories.d.ts +1 -2
- package/dist/src/stories/RadioButton.stories.d.ts +1 -2
- package/dist/src/stories/RadioButtonGroup.stories.d.ts +3 -2
- package/dist/src/stories/RadioButtonGroup.stories.js +7 -17
- package/dist/src/stories/RadioButtonGroup.stories.js.map +1 -1
- package/dist/src/stories/Select.stories.d.ts +4 -2
- package/dist/src/stories/Select.stories.js +7 -17
- package/dist/src/stories/Select.stories.js.map +1 -1
- package/dist/src/stories/SimpleModal.stories.js +7 -17
- package/dist/src/stories/SimpleModal.stories.js.map +1 -1
- package/dist/src/stories/Slider.stories.d.ts +7 -2
- package/dist/src/stories/Slider.stories.js +7 -17
- package/dist/src/stories/Slider.stories.js.map +1 -1
- package/dist/src/stories/TabbedModal.stories.js +7 -17
- package/dist/src/stories/TabbedModal.stories.js.map +1 -1
- package/dist/src/stories/Tabs.stories.d.ts +2 -2
- package/dist/src/stories/Text.stories.d.ts +1 -2
- package/dist/src/stories/TextArea.stories.d.ts +1 -2
- package/dist/src/stories/TextBox.stories.d.ts +1 -2
- package/dist/src/translations/Translation.d.ts +10 -0
- package/dist/src/translations/Translation.js +12 -2
- package/dist/src/translations/Translation.js.map +1 -1
- package/dist/src/translations/languages/en-gb.js +10 -0
- package/dist/src/translations/languages/en-gb.js.map +1 -1
- package/dist/src/util/Analytics/Analytics.d.ts +10 -34
- package/dist/src/util/Analytics/Analytics.js +0 -26
- package/dist/src/util/Analytics/Analytics.js.map +1 -1
- package/dist/src/util/Analytics/GoogleAnalytics4.d.ts +3 -4
- package/dist/src/util/Analytics/GoogleAnalytics4.js +0 -9
- package/dist/src/util/Analytics/GoogleAnalytics4.js.map +1 -1
- package/dist/src/util/Analytics/UniversalAnalytics.d.ts +23 -5
- package/dist/src/util/Analytics/UniversalAnalytics.js +4 -23
- package/dist/src/util/Analytics/UniversalAnalytics.js.map +1 -1
- package/dist/src/util/AsyncAuth.js +7 -17
- package/dist/src/util/AsyncAuth.js.map +1 -1
- package/dist/src/util/CalendarHelper.js +1 -1
- package/dist/src/util/CalendarHelper.js.map +1 -1
- package/dist/src/util/Color.d.ts +1 -1
- package/dist/src/util/Color.js +1 -1
- package/dist/src/util/Color.js.map +1 -1
- package/dist/src/util/CurrencyHelper.js.map +1 -1
- package/dist/src/util/DataLayer.d.ts +3 -8
- package/dist/src/util/DataLayer.js +22 -51
- package/dist/src/util/DataLayer.js.map +1 -1
- package/dist/src/util/Debounce.js +3 -2
- package/dist/src/util/Debounce.js.map +1 -1
- package/dist/src/util/DefaultValueManager.js +1 -1
- package/dist/src/util/DefaultValueManager.js.map +1 -1
- package/dist/src/util/DerbysoftPixel.d.ts +1 -1
- package/dist/src/util/DerbysoftPixel.js +2 -2
- package/dist/src/util/DerbysoftPixel.js.map +1 -1
- package/dist/src/util/EventsHelper.d.ts +2 -2
- package/dist/src/util/EventsHelper.js.map +1 -1
- package/dist/src/util/HotelPerkHelper.js +7 -17
- package/dist/src/util/HotelPerkHelper.js.map +1 -1
- package/dist/src/util/ObjectHelper.d.ts +1 -1
- package/dist/src/util/ObjectHelper.js.map +1 -1
- package/dist/src/util/PaymentCardHelper.js.map +1 -1
- package/dist/src/util/RouteManager.js +1 -1
- package/dist/src/util/RouteManager.js.map +1 -1
- package/dist/src/util/StepManager.js +1 -1
- package/dist/src/util/StepManager.js.map +1 -1
- package/dist/src/util/StringHelper.js.map +1 -1
- package/dist/src/util/TextAlignment.js +1 -1
- package/dist/src/util/TextAlignment.js.map +1 -1
- package/dist/src/util/TimeHelper.js.map +1 -1
- package/dist/src/util/TotalCalculator.d.ts +24 -0
- package/dist/src/util/TotalCalculator.js +157 -0
- package/dist/src/util/TotalCalculator.js.map +1 -0
- package/dist/test.bundle.js +1 -1
- package/dist/tests/offline/entry/config/hotelSpecDefault.js +1 -0
- package/dist/tests/offline/entry/config/hotelSpecDefault.js.map +1 -1
- package/dist/vendors.bundle.js +1 -1
- package/package.json +6 -8
- package/dist/375.bundle.js +0 -1
- package/dist/984.bundle.js +0 -1
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsModal.d.ts +0 -1
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsModal.js +0 -94
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsModal.js.map +0 -1
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { EBookingPaymentMethod, IPaymentCheckoutDetails } from '@roomstay/core';
|
|
2
|
+
import RoomNightRateDTO from './RoomNightRateDTO';
|
|
3
|
+
import { SimpleItemisedFee } from '../Fee';
|
|
4
|
+
type ReservationsDTO = {
|
|
5
|
+
roomstayId: string;
|
|
6
|
+
reservations: ReservationDTO[];
|
|
7
|
+
itineraryNumber: string;
|
|
8
|
+
hotelFrontendId?: string;
|
|
9
|
+
warnings?: string[];
|
|
10
|
+
total?: string;
|
|
11
|
+
payment?: IPaymentCheckoutDetails;
|
|
12
|
+
itemisedFees?: SimpleItemisedFee[];
|
|
13
|
+
feesSummary?: SimpleItemisedFee[];
|
|
14
|
+
};
|
|
15
|
+
export type ReservationAddonDTO = {
|
|
16
|
+
code: string;
|
|
17
|
+
inclusive: false;
|
|
18
|
+
pricingType: string;
|
|
19
|
+
quantity: number;
|
|
20
|
+
adultQuantity: number;
|
|
21
|
+
childQuantity?: number;
|
|
22
|
+
description: string;
|
|
23
|
+
name: string;
|
|
24
|
+
category: string;
|
|
25
|
+
image: string;
|
|
26
|
+
price: number;
|
|
27
|
+
fees?: number;
|
|
28
|
+
itemisedFees?: SimpleItemisedFee[];
|
|
29
|
+
displayPrice: number;
|
|
30
|
+
adultPrice?: number;
|
|
31
|
+
childPrice?: number;
|
|
32
|
+
nights?: number;
|
|
33
|
+
};
|
|
34
|
+
export type ReservationDTO = {
|
|
35
|
+
nights: {
|
|
36
|
+
[date: string]: RoomNightRateDTO;
|
|
37
|
+
};
|
|
38
|
+
guestCounts: {
|
|
39
|
+
adults: number;
|
|
40
|
+
children: number;
|
|
41
|
+
};
|
|
42
|
+
guest: {
|
|
43
|
+
address: {
|
|
44
|
+
line1: string;
|
|
45
|
+
city: string;
|
|
46
|
+
postalCode: string;
|
|
47
|
+
};
|
|
48
|
+
firstName: string;
|
|
49
|
+
lastName: string;
|
|
50
|
+
phone: string;
|
|
51
|
+
email: string;
|
|
52
|
+
};
|
|
53
|
+
paymentCard: {
|
|
54
|
+
type?: string;
|
|
55
|
+
last4: string;
|
|
56
|
+
expiry: string;
|
|
57
|
+
name: string;
|
|
58
|
+
};
|
|
59
|
+
paymentMethod?: EBookingPaymentMethod;
|
|
60
|
+
comments?: string[];
|
|
61
|
+
addons?: ReservationAddonDTO[];
|
|
62
|
+
itemisedFees?: SimpleItemisedFee[];
|
|
63
|
+
reservationNumber: string;
|
|
64
|
+
cancelPolicy: string;
|
|
65
|
+
cancellationPolicyLongDescription?: string;
|
|
66
|
+
guaranteePolicy: string;
|
|
67
|
+
guaranteePolicyLongDescription?: string;
|
|
68
|
+
roomType: string;
|
|
69
|
+
roomCode: string;
|
|
70
|
+
rate: string;
|
|
71
|
+
images: [string];
|
|
72
|
+
status: string;
|
|
73
|
+
isCancelable: boolean;
|
|
74
|
+
total: {
|
|
75
|
+
beforeTax: number;
|
|
76
|
+
afterTax: number;
|
|
77
|
+
beforeFees?: number;
|
|
78
|
+
};
|
|
79
|
+
};
|
|
80
|
+
export default ReservationsDTO;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReservationsDTO.js","sourceRoot":"/","sources":["src/models/Api/ReservationsDTO.ts"],"names":[],"mappings":"","sourcesContent":["import { EBookingPaymentMethod, IPaymentCheckoutDetails } from '@roomstay/core';\n\nimport RoomNightRateDTO from '@/models/Api/RoomNightRateDTO';\nimport { SimpleItemisedFee } from '@/models/Fee';\n\n// TODO: Why are these DTO's needed when we have ItineraryResponse from the core???\ntype ReservationsDTO = {\n roomstayId: string;\n reservations: ReservationDTO[];\n itineraryNumber: string;\n hotelFrontendId?: string;\n warnings?: string[];\n total?: string;\n payment?: IPaymentCheckoutDetails;\n itemisedFees?: SimpleItemisedFee[];\n feesSummary?: SimpleItemisedFee[];\n};\n\nexport type ReservationAddonDTO = {\n code: string;\n inclusive: false;\n pricingType: string;\n quantity: number;\n adultQuantity: number;\n childQuantity?: number;\n description: string;\n name: string;\n category: string;\n image: string;\n price: number;\n fees?: number;\n itemisedFees?: SimpleItemisedFee[];\n displayPrice: number;\n adultPrice?: number;\n childPrice?: number;\n nights?: number;\n};\n\nexport type ReservationDTO = {\n nights: {\n [date: string]: RoomNightRateDTO;\n };\n guestCounts: {\n adults: number;\n children: number;\n };\n guest: {\n address: {\n line1: string;\n city: string;\n postalCode: string;\n };\n firstName: string;\n lastName: string;\n phone: string;\n email: string;\n };\n paymentCard: {\n type?: string;\n last4: string;\n expiry: string;\n name: string;\n };\n paymentMethod?: EBookingPaymentMethod;\n comments?: string[];\n addons?: ReservationAddonDTO[];\n itemisedFees?: SimpleItemisedFee[];\n\n reservationNumber: string;\n cancelPolicy: string;\n cancellationPolicyLongDescription?: string;\n guaranteePolicy: string;\n guaranteePolicyLongDescription?: string;\n roomType: string;\n roomCode: string;\n rate: string;\n images: [string];\n status: string;\n isCancelable: boolean;\n total: {\n beforeTax: number;\n afterTax: number;\n beforeFees?: number;\n };\n};\n\nexport default ReservationsDTO;\n"]}
|
|
@@ -16,5 +16,5 @@ var EAppQueryParameters;
|
|
|
16
16
|
EAppQueryParameters["Children"] = "children";
|
|
17
17
|
EAppQueryParameters["Rooms"] = "rooms";
|
|
18
18
|
EAppQueryParameters["Infants"] = "infants";
|
|
19
|
-
})(EAppQueryParameters
|
|
19
|
+
})(EAppQueryParameters = exports.EAppQueryParameters || (exports.EAppQueryParameters = {}));
|
|
20
20
|
//# sourceMappingURL=AppQueryParameters.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppQueryParameters.js","sourceRoot":"/","sources":["src/models/AppQueryParameters.ts"],"names":[],"mappings":";;;AAAA,IAAY,mBAcX;AAdD,WAAY,mBAAmB;IAC3B,wCAAiB,CAAA;IACjB,wCAAiB,CAAA;IACjB,8CAAuB,CAAA;IACvB,8CAAuB,CAAA;IACvB,sDAA+B,CAAA;IAC/B,oCAAa,CAAA;IACb,oCAAa,CAAA;IACb,sCAAe,CAAA;IACf,kDAA2B,CAAA;IAC3B,wCAAiB,CAAA;IACjB,4CAAqB,CAAA;IACrB,sCAAe,CAAA;IACf,0CAAmB,CAAA;AACvB,CAAC,EAdW,mBAAmB,
|
|
1
|
+
{"version":3,"file":"AppQueryParameters.js","sourceRoot":"/","sources":["src/models/AppQueryParameters.ts"],"names":[],"mappings":";;;AAAA,IAAY,mBAcX;AAdD,WAAY,mBAAmB;IAC3B,wCAAiB,CAAA;IACjB,wCAAiB,CAAA;IACjB,8CAAuB,CAAA;IACvB,8CAAuB,CAAA;IACvB,sDAA+B,CAAA;IAC/B,oCAAa,CAAA;IACb,oCAAa,CAAA;IACb,sCAAe,CAAA;IACf,kDAA2B,CAAA;IAC3B,wCAAiB,CAAA;IACjB,4CAAqB,CAAA;IACrB,sCAAe,CAAA;IACf,0CAAmB,CAAA;AACvB,CAAC,EAdW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAc9B","sourcesContent":["export enum EAppQueryParameters {\n Arrive = 'arrive',\n Depart = 'depart',\n PromoCode = 'promocode',\n PromoOnly = 'promoonly',\n PromoFeatured = 'promofeatured',\n Room = 'room',\n Rate = 'rate',\n Hotel = 'hotel',\n DefaultCity = 'defaultCity',\n Adults = 'adults',\n Children = 'children',\n Rooms = 'rooms',\n Infants = 'infants',\n}\n"]}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const core_1 = require("@roomstay/core");
|
|
4
|
+
const Addon_1 = require("./Addon/Addon");
|
|
4
5
|
const Fee_1 = require("./Fee");
|
|
6
|
+
const TotalCalculator_1 = require("../util/TotalCalculator");
|
|
5
7
|
class BasketAddonRow {
|
|
6
8
|
constructor(addon) {
|
|
7
9
|
if (addon) {
|
|
@@ -61,10 +63,10 @@ class BasketAddonRow {
|
|
|
61
63
|
};
|
|
62
64
|
}
|
|
63
65
|
getTotalFees() {
|
|
64
|
-
return
|
|
66
|
+
return (0, TotalCalculator_1.calculateBasketAddonTotal)(this.getCalculationParams()).totalFees;
|
|
65
67
|
}
|
|
66
68
|
getTotalPrice() {
|
|
67
|
-
return
|
|
69
|
+
return (0, TotalCalculator_1.calculateBasketAddonTotal)(this.getCalculationParams()).total;
|
|
68
70
|
}
|
|
69
71
|
getItemisedFees(hotelFees) {
|
|
70
72
|
var _a, _b, _c;
|
|
@@ -128,7 +130,7 @@ class BasketAddonRow {
|
|
|
128
130
|
*/
|
|
129
131
|
getNightModifier() {
|
|
130
132
|
const modifier = 1;
|
|
131
|
-
if (
|
|
133
|
+
if (Addon_1.ADDON_PER_NIGHT_TYPES.includes(this.addon.pricingType)) {
|
|
132
134
|
return this.addon.checkOutDate.diff(this.addon.checkInDate, 'day');
|
|
133
135
|
}
|
|
134
136
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasketAddonRow.js","sourceRoot":"/","sources":["src/models/BasketAddonRow.ts"],"names":[],"mappings":"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","sourcesContent":["import { ADDON_PER_NIGHT_TYPES, BasketAddonDTO, EAddonPricingType, TotalCalculator } from '@roomstay/core';\n\nimport { Addon, PriceInfo } from '@/models/Addon/Addon';\nimport { accumulateFees, feeMapToArray, HotelFee, ItemisedFee, mapSimpleFeesToItemisedFees } from '@/models/Fee';\n\nexport default class BasketAddonRow {\n private readonly uniqId: string;\n\n private addon!: Addon;\n\n private quantity: number;\n private adultQuantity: number;\n private childQuantity: number;\n\n private selectedDate!: string;\n private selectedTime!: string;\n\n private numberOfAvailableNights: number;\n\n public constructor(addon?: Addon) {\n if (addon) {\n this.setAddon(addon);\n }\n\n this.quantity = 1;\n this.adultQuantity = 1;\n this.childQuantity = 0;\n\n this.uniqId = btoa(((Date.now() % 1000) / 1000) * Math.random() + '');\n\n this.numberOfAvailableNights = Object.values(addon?.availability as { [date: string]: PriceInfo }).length;\n }\n\n public getAddon() {\n return this.addon;\n }\n\n public getSelectedDate() {\n return this.selectedDate;\n }\n\n public getSelectedTime() {\n return this.selectedTime;\n }\n\n public getQuantity() {\n return this.quantity;\n }\n\n public getAdultQuantity(): number {\n return this.adultQuantity;\n }\n\n public getNumberOfAvailableNights() {\n return this.numberOfAvailableNights;\n }\n\n private getCalculationParams(): BasketAddonDTO {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n\n return {\n availability: this.getAddon().availability,\n code: addon.code,\n inclusive: false,\n quantity: this.getQuantity(),\n adultQuantity: this.getAdultQuantity(),\n childQuantity: this.getChildQuantity(),\n description: addon.description,\n name: addon.name,\n category: addon.category,\n image: addon.image as any,\n\n price: priceInfo.price ?? 0,\n adultPrice: priceInfo.adultPrice,\n childPrice: priceInfo.childPrice,\n\n fee: priceInfo.fee ?? 0,\n adultFee: priceInfo.adultFee,\n childFee: priceInfo.childFee,\n\n fees: priceInfo.fees,\n adultFees: priceInfo.adultFees,\n childFees: priceInfo.childFees,\n\n pricingType: addon.pricingType,\n nights: addon.nights,\n };\n }\n\n public getTotalFees(): number {\n return TotalCalculator.calculateBasketAddonTotal(this.getCalculationParams()).totalFees;\n }\n\n public getTotalPrice(): number {\n return TotalCalculator.calculateBasketAddonTotal(this.getCalculationParams()).total;\n }\n\n public getItemisedFees(hotelFees: HotelFee[]): ItemisedFee[] {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n const feeMap = new Map<HotelFee, number>();\n\n if (priceInfo.fees?.length && this.getQuantity() > 0) {\n const fees = mapSimpleFeesToItemisedFees(priceInfo.fees, hotelFees);\n accumulateFees(feeMap, fees, this.getQuantity(), this.getNightModifier());\n }\n\n if (priceInfo.adultFees?.length && this.getAdultQuantity() > 0) {\n const fees = mapSimpleFeesToItemisedFees(priceInfo.adultFees, hotelFees);\n accumulateFees(feeMap, fees, this.getAdultQuantity(), this.getNightModifier());\n }\n\n if (priceInfo.childFees?.length && this.getChildQuantity() > 0) {\n const fees = mapSimpleFeesToItemisedFees(priceInfo.childFees, hotelFees);\n accumulateFees(feeMap, fees, this.getChildQuantity(), this.getNightModifier());\n }\n\n return feeMapToArray(feeMap);\n }\n\n /**\n * Returns the subtotal of an addon (without taking into account the nights modifier)\n */\n public getAddonSubtotal(): number {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n\n let price = 0;\n if (priceInfo.price && this.getQuantity() > 0) {\n price += this.getQuantity() * priceInfo.price;\n }\n\n if (priceInfo.adultPrice && this.getAdultQuantity() > 0) {\n price += this.getAdultQuantity() * priceInfo.adultPrice;\n }\n\n if (priceInfo.childPrice && this.getChildQuantity() > 0) {\n price += this.getChildQuantity() * priceInfo.childPrice;\n }\n\n return price;\n }\n\n public getTotalQuantity(): number {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n\n let quantity = 0;\n if (priceInfo.price) {\n quantity += this.getQuantity();\n }\n\n if (priceInfo.adultPrice || addon.pricingType === EAddonPricingType.PER_ADULT_OCCUPANCY_PER_NIGHT) {\n quantity += this.getAdultQuantity();\n }\n\n if (priceInfo.childPrice || addon.pricingType === EAddonPricingType.PER_CHILD_OCCUPANCY_PER_NIGHT) {\n quantity += this.getChildQuantity();\n }\n\n return quantity;\n }\n\n /**\n * This function returns a value that should multiply the total price of the addon for one (assumed) night\n * Depending on the pricing type\n * @returns number\n */\n public getNightModifier(): number {\n const modifier = 1;\n\n if (ADDON_PER_NIGHT_TYPES.includes(this.addon.pricingType)) {\n return this.addon.checkOutDate.diff(this.addon.checkInDate, 'day');\n } else {\n return modifier;\n }\n }\n\n public setAdultQuantity(value: number) {\n this.adultQuantity = value;\n }\n\n public getChildQuantity(): number {\n return this.childQuantity;\n }\n\n public setChildQuantity(value: number) {\n this.childQuantity = value;\n }\n\n public getID() {\n return this.uniqId;\n }\n\n public isValid() {\n return this.selectedDate && this.addon && this.quantity > 0;\n }\n\n public setSelectedDate(date: string) {\n this.selectedDate = date;\n }\n\n public setSelectedTime(time?: string) {\n this.selectedTime = time as string;\n }\n\n public setQuantity(quantity: number) {\n this.quantity = quantity;\n }\n\n public setAddon(addon: Addon) {\n this.addon = addon;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"BasketAddonRow.js","sourceRoot":"/","sources":["src/models/BasketAddonRow.ts"],"names":[],"mappings":"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","sourcesContent":["import { EAddonPricingType } from '@roomstay/core';\n\nimport { Addon, ADDON_PER_NIGHT_TYPES, BasketAddonDTO, PriceInfo } from '@/models/Addon/Addon';\nimport { accumulateFees, feeMapToArray, HotelFee, ItemisedFee, mapSimpleFeesToItemisedFees } from '@/models/Fee';\nimport { calculateBasketAddonTotal } from '@/util/TotalCalculator';\n\nexport default class BasketAddonRow {\n private readonly uniqId: string;\n\n private addon!: Addon;\n\n private quantity: number;\n private adultQuantity: number;\n private childQuantity: number;\n\n private selectedDate!: string;\n private selectedTime!: string;\n\n private numberOfAvailableNights: number;\n\n public constructor(addon?: Addon) {\n if (addon) {\n this.setAddon(addon);\n }\n\n this.quantity = 1;\n this.adultQuantity = 1;\n this.childQuantity = 0;\n\n this.uniqId = btoa(((Date.now() % 1000) / 1000) * Math.random() + '');\n\n this.numberOfAvailableNights = Object.values(addon?.availability as { [date: string]: PriceInfo }).length;\n }\n\n public getAddon() {\n return this.addon;\n }\n\n public getSelectedDate() {\n return this.selectedDate;\n }\n\n public getSelectedTime() {\n return this.selectedTime;\n }\n\n public getQuantity() {\n return this.quantity;\n }\n\n public getAdultQuantity(): number {\n return this.adultQuantity;\n }\n\n public getNumberOfAvailableNights() {\n return this.numberOfAvailableNights;\n }\n\n private getCalculationParams(): BasketAddonDTO {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n\n return {\n availability: this.getAddon().availability,\n code: addon.code,\n inclusive: false,\n quantity: this.getQuantity(),\n adultQuantity: this.getAdultQuantity(),\n childQuantity: this.getChildQuantity(),\n description: addon.description,\n name: addon.name,\n category: addon.category,\n image: addon.image as any,\n\n price: priceInfo.price ?? 0,\n adultPrice: priceInfo.adultPrice,\n childPrice: priceInfo.childPrice,\n\n fee: priceInfo.fee ?? 0,\n adultFee: priceInfo.adultFee,\n childFee: priceInfo.childFee,\n\n fees: priceInfo.fees,\n adultFees: priceInfo.adultFees,\n childFees: priceInfo.childFees,\n\n pricingType: addon.pricingType,\n nights: addon.nights,\n };\n }\n\n public getTotalFees(): number {\n return calculateBasketAddonTotal(this.getCalculationParams()).totalFees;\n }\n\n public getTotalPrice(): number {\n return calculateBasketAddonTotal(this.getCalculationParams()).total;\n }\n\n public getItemisedFees(hotelFees: HotelFee[]): ItemisedFee[] {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n const feeMap = new Map<HotelFee, number>();\n\n if (priceInfo.fees?.length && this.getQuantity() > 0) {\n const fees = mapSimpleFeesToItemisedFees(priceInfo.fees, hotelFees);\n accumulateFees(feeMap, fees, this.getQuantity(), this.getNightModifier());\n }\n\n if (priceInfo.adultFees?.length && this.getAdultQuantity() > 0) {\n const fees = mapSimpleFeesToItemisedFees(priceInfo.adultFees, hotelFees);\n accumulateFees(feeMap, fees, this.getAdultQuantity(), this.getNightModifier());\n }\n\n if (priceInfo.childFees?.length && this.getChildQuantity() > 0) {\n const fees = mapSimpleFeesToItemisedFees(priceInfo.childFees, hotelFees);\n accumulateFees(feeMap, fees, this.getChildQuantity(), this.getNightModifier());\n }\n\n return feeMapToArray(feeMap);\n }\n\n /**\n * Returns the subtotal of an addon (without taking into account the nights modifier)\n */\n public getAddonSubtotal(): number {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n\n let price = 0;\n if (priceInfo.price && this.getQuantity() > 0) {\n price += this.getQuantity() * priceInfo.price;\n }\n\n if (priceInfo.adultPrice && this.getAdultQuantity() > 0) {\n price += this.getAdultQuantity() * priceInfo.adultPrice;\n }\n\n if (priceInfo.childPrice && this.getChildQuantity() > 0) {\n price += this.getChildQuantity() * priceInfo.childPrice;\n }\n\n return price;\n }\n\n public getTotalQuantity(): number {\n const addon = this.getAddon();\n const date = this.getSelectedDate();\n const priceInfo = addon.availability[date];\n\n let quantity = 0;\n if (priceInfo.price) {\n quantity += this.getQuantity();\n }\n\n if (priceInfo.adultPrice || addon.pricingType === EAddonPricingType.PER_ADULT_OCCUPANCY_PER_NIGHT) {\n quantity += this.getAdultQuantity();\n }\n\n if (priceInfo.childPrice || addon.pricingType === EAddonPricingType.PER_CHILD_OCCUPANCY_PER_NIGHT) {\n quantity += this.getChildQuantity();\n }\n\n return quantity;\n }\n\n /**\n * This function returns a value that should multiply the total price of the addon for one (assumed) night\n * Depending on the pricing type\n * @returns number\n */\n public getNightModifier(): number {\n const modifier = 1;\n\n if (ADDON_PER_NIGHT_TYPES.includes(this.addon.pricingType)) {\n return this.addon.checkOutDate.diff(this.addon.checkInDate, 'day');\n } else {\n return modifier;\n }\n }\n\n public setAdultQuantity(value: number) {\n this.adultQuantity = value;\n }\n\n public getChildQuantity(): number {\n return this.childQuantity;\n }\n\n public setChildQuantity(value: number) {\n this.childQuantity = value;\n }\n\n public getID() {\n return this.uniqId;\n }\n\n public isValid() {\n return this.selectedDate && this.addon && this.quantity > 0;\n }\n\n public setSelectedDate(date: string) {\n this.selectedDate = date;\n }\n\n public setSelectedTime(time?: string) {\n this.selectedTime = time as string;\n }\n\n public setQuantity(quantity: number) {\n this.quantity = quantity;\n }\n\n public setAddon(addon: Addon) {\n this.addon = addon;\n }\n}\n"]}
|
|
@@ -1,16 +1,11 @@
|
|
|
1
|
-
import { IBookingQuoteResponse
|
|
1
|
+
import { IBookingQuoteResponse } from '@roomstay/core';
|
|
2
2
|
import dayjs from 'dayjs';
|
|
3
|
+
import { ReservationDTO } from './Api/ReservationsDTO';
|
|
3
4
|
import BasketRowDifferences from './BasketRowDifferences';
|
|
4
5
|
import type { Room } from './Room/Room';
|
|
5
6
|
import type { RoomRate } from './Room/RoomRate';
|
|
6
7
|
import UserProfile from './UserProfile';
|
|
7
8
|
import { Color } from '../util/Color';
|
|
8
|
-
export declare enum EPromoCodeStatus {
|
|
9
|
-
Valid = "valid",
|
|
10
|
-
Invalid = "invalid",
|
|
11
|
-
New = "new",
|
|
12
|
-
Forbidden = "forbidden"
|
|
13
|
-
}
|
|
14
9
|
export default class BasketRow {
|
|
15
10
|
private uniqId;
|
|
16
11
|
private room;
|
|
@@ -22,25 +17,16 @@ export default class BasketRow {
|
|
|
22
17
|
private preGuestsState;
|
|
23
18
|
private promoCode;
|
|
24
19
|
private promoCodeStatus;
|
|
25
|
-
/**
|
|
26
|
-
* Warning message associated with an invalid promo code.
|
|
27
|
-
* Used for displaying tooltip or error messages to the user.
|
|
28
|
-
*/
|
|
29
|
-
private promoCodeWarningMessage;
|
|
30
20
|
private manualInputPromoCode;
|
|
31
|
-
/**
|
|
32
|
-
* Enable room code filter when the the URL's room parameter is present
|
|
33
|
-
*/
|
|
34
21
|
private enableRoomCodeFilter;
|
|
35
|
-
/**
|
|
36
|
-
* Indicates availability for a specific room extracted from the URL's room parameter
|
|
37
|
-
*/
|
|
38
22
|
private roomCode;
|
|
39
23
|
private startDate;
|
|
40
24
|
private endDate;
|
|
41
25
|
private promoOnly;
|
|
42
26
|
private preUpsellRoomRate?;
|
|
43
|
-
quoteDetails?: NonNullable<IBookingQuoteResponse>['rows'][number]
|
|
27
|
+
quoteDetails?: NonNullable<IBookingQuoteResponse>['rows'][number] & {
|
|
28
|
+
fullPaymentAmount: number;
|
|
29
|
+
};
|
|
44
30
|
pencilId?: string;
|
|
45
31
|
checkoutDefaults?: Partial<UserProfile>;
|
|
46
32
|
auxiliaryFilter?: {
|
|
@@ -80,53 +66,12 @@ export default class BasketRow {
|
|
|
80
66
|
endDate: dayjs.Dayjs;
|
|
81
67
|
};
|
|
82
68
|
getID(): string;
|
|
83
|
-
getPromoCodeStatus():
|
|
69
|
+
getPromoCodeStatus(): "valid" | "invalid" | "new";
|
|
84
70
|
isValid(): boolean;
|
|
85
71
|
setPromoCode(code: string): void;
|
|
86
72
|
setPromoOnly(value: boolean): void;
|
|
87
73
|
setStale(status: boolean): void;
|
|
88
|
-
|
|
89
|
-
* Sets the promo code status and optionally a warning message.
|
|
90
|
-
*
|
|
91
|
-
* @param status - The new status: EPromoCodeStatus.
|
|
92
|
-
* @param warningMessage - Optional warning message shown when status is 'invalid'.
|
|
93
|
-
*/
|
|
94
|
-
setPromoCodeStatus(status: EPromoCodeStatus, warningMessage?: string): void;
|
|
95
|
-
/**
|
|
96
|
-
* Stores the warning message for an invalid promo code.
|
|
97
|
-
*
|
|
98
|
-
* @param message - The warning message to display.
|
|
99
|
-
*/
|
|
100
|
-
private setPromoCodeWarningMessage;
|
|
101
|
-
/**
|
|
102
|
-
* Gets the stored warning message for the promo code.
|
|
103
|
-
*
|
|
104
|
-
* @returns The warning message as a string.
|
|
105
|
-
*/
|
|
106
|
-
getPromoCodeWarningMessage(): string;
|
|
107
|
-
/**
|
|
108
|
-
* Returns the tooltip text based on the promo code status.
|
|
109
|
-
*
|
|
110
|
-
* - If status is EPromoCodeStatus.New: returns 'Checking' or 'No value'.
|
|
111
|
-
* - If status is EPromoCodeStatus.Valid: returns 'Valid'.
|
|
112
|
-
* - If status is EPromoCodeStatus.Invalid: returns the warning message.
|
|
113
|
-
*
|
|
114
|
-
* @param t - Translation function.
|
|
115
|
-
* @param Translation - Translation object with tooltip message strings.
|
|
116
|
-
* @returns Tooltip string to display.
|
|
117
|
-
*/
|
|
118
|
-
getPromoCodeTooltip: (t: (arg0: string) => string, Translation: {
|
|
119
|
-
Step: {
|
|
120
|
-
Date: {
|
|
121
|
-
PromoCodeTooltip: {
|
|
122
|
-
Checking: string;
|
|
123
|
-
NoValue: string;
|
|
124
|
-
Valid: string;
|
|
125
|
-
Invalid: string;
|
|
126
|
-
};
|
|
127
|
-
};
|
|
128
|
-
};
|
|
129
|
-
}) => string;
|
|
74
|
+
setPromoCodeStatus(status: 'valid' | 'invalid' | 'new'): void;
|
|
130
75
|
setStartDate(date: dayjs.Dayjs): void;
|
|
131
76
|
setEndDate(date: dayjs.Dayjs): void;
|
|
132
77
|
setAdults(adults: number): void;
|
|
@@ -137,7 +82,8 @@ export default class BasketRow {
|
|
|
137
82
|
setRate(rate: RoomRate | null, upsellEnabled?: boolean): void;
|
|
138
83
|
private setPreUpsellRoomRate;
|
|
139
84
|
getPreUpsellRoomRate(): RoomRate | undefined;
|
|
140
|
-
getTotalPrice(
|
|
85
|
+
getTotalPrice(beforeTax?: boolean): number | undefined;
|
|
86
|
+
getAveragePrice: (getCost?: boolean) => number;
|
|
141
87
|
checkDiffFromReservation(res: ReservationDTO): false | BasketRowDifferences;
|
|
142
88
|
setAuxiliaryFilter(value: {
|
|
143
89
|
[id: string]: any;
|
|
@@ -3,19 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.EPromoCodeStatus = void 0;
|
|
7
6
|
const dayjs_1 = __importDefault(require("dayjs"));
|
|
8
7
|
const CalendarHelper_1 = require("../util/CalendarHelper");
|
|
9
8
|
const Color_1 = require("../util/Color");
|
|
10
9
|
const DefaultValueManager_1 = require("../util/DefaultValueManager");
|
|
11
10
|
const AppQueryParameters_1 = require("./AppQueryParameters");
|
|
12
|
-
var EPromoCodeStatus;
|
|
13
|
-
(function (EPromoCodeStatus) {
|
|
14
|
-
EPromoCodeStatus["Valid"] = "valid";
|
|
15
|
-
EPromoCodeStatus["Invalid"] = "invalid";
|
|
16
|
-
EPromoCodeStatus["New"] = "new";
|
|
17
|
-
EPromoCodeStatus["Forbidden"] = "forbidden";
|
|
18
|
-
})(EPromoCodeStatus || (exports.EPromoCodeStatus = EPromoCodeStatus = {}));
|
|
19
11
|
class BasketRow {
|
|
20
12
|
/**
|
|
21
13
|
*
|
|
@@ -33,44 +25,24 @@ class BasketRow {
|
|
|
33
25
|
startDate: (0, dayjs_1.default)(),
|
|
34
26
|
endDate: (0, dayjs_1.default)(),
|
|
35
27
|
};
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
* Indicates availability for a specific room extracted from the URL's room parameter
|
|
47
|
-
*/
|
|
48
|
-
this.roomCode = '';
|
|
49
|
-
/**
|
|
50
|
-
* Returns the tooltip text based on the promo code status.
|
|
51
|
-
*
|
|
52
|
-
* - If status is EPromoCodeStatus.New: returns 'Checking' or 'No value'.
|
|
53
|
-
* - If status is EPromoCodeStatus.Valid: returns 'Valid'.
|
|
54
|
-
* - If status is EPromoCodeStatus.Invalid: returns the warning message.
|
|
55
|
-
*
|
|
56
|
-
* @param t - Translation function.
|
|
57
|
-
* @param Translation - Translation object with tooltip message strings.
|
|
58
|
-
* @returns Tooltip string to display.
|
|
59
|
-
*/
|
|
60
|
-
this.getPromoCodeTooltip = (t, Translation) => {
|
|
61
|
-
let promoCodeTooltip = '';
|
|
62
|
-
if ((this === null || this === void 0 ? void 0 : this.getPromoCodeStatus()) === EPromoCodeStatus.New) {
|
|
63
|
-
promoCodeTooltip = this.getPromoCode() ? t(Translation.Step.Date.PromoCodeTooltip.Checking) : t(Translation.Step.Date.PromoCodeTooltip.NoValue);
|
|
28
|
+
this.enableRoomCodeFilter = false; // Enable room code filter when the the URL's room parameter is present
|
|
29
|
+
this.roomCode = ''; // Indicates availability for a specific room extracted from the URL's room parameter
|
|
30
|
+
this.getAveragePrice = (getCost = false) => {
|
|
31
|
+
if (this.quoteDetails) {
|
|
32
|
+
// If deposit is required, get the average price from quote details
|
|
33
|
+
const total = this.getTotalPrice(getCost);
|
|
34
|
+
const rate = this.getRate();
|
|
35
|
+
if (!total || !rate)
|
|
36
|
+
return 0;
|
|
37
|
+
return total / Object.keys(rate.nightRates).length;
|
|
64
38
|
}
|
|
65
39
|
else {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
}
|
|
40
|
+
// Otherwise, calculate the average price from Rate
|
|
41
|
+
const rate = this.getRate();
|
|
42
|
+
if (!rate)
|
|
43
|
+
return 0;
|
|
44
|
+
return rate.getAveragePrice(getCost);
|
|
72
45
|
}
|
|
73
|
-
return promoCodeTooltip;
|
|
74
46
|
};
|
|
75
47
|
/*
|
|
76
48
|
* Rate is optional since we can create row entries on first step, where there is no ability to select rate.
|
|
@@ -82,7 +54,7 @@ class BasketRow {
|
|
|
82
54
|
this.children = (_b = DefaultValueManager_1.DEFAULT_VALUES.CHILDREN) !== null && _b !== void 0 ? _b : 0;
|
|
83
55
|
this.infants = (_c = DefaultValueManager_1.DEFAULT_VALUES.INFANTS) !== null && _c !== void 0 ? _c : 0;
|
|
84
56
|
this.promoCode = '';
|
|
85
|
-
this.promoCodeStatus =
|
|
57
|
+
this.promoCodeStatus = 'new';
|
|
86
58
|
this.promoOnly = false;
|
|
87
59
|
if (shouldEnableRoomCodeFilter) {
|
|
88
60
|
const roomCode = (0, CalendarHelper_1.getQueryParamFromHash)(AppQueryParameters_1.EAppQueryParameters.Room); // Extract the the URL's room parameter
|
|
@@ -111,19 +83,17 @@ class BasketRow {
|
|
|
111
83
|
return this.promoOnly;
|
|
112
84
|
}
|
|
113
85
|
getPromoCodeColour() {
|
|
114
|
-
if (this.promoCodeStatus ===
|
|
86
|
+
if (this.promoCodeStatus === 'valid') {
|
|
115
87
|
return Color_1.Color.Success;
|
|
116
88
|
}
|
|
117
|
-
else if (
|
|
89
|
+
else if (this.promoCodeStatus === 'invalid') {
|
|
118
90
|
return Color_1.Color.Alert;
|
|
119
91
|
}
|
|
120
92
|
return Color_1.Color.Navy;
|
|
121
93
|
}
|
|
122
94
|
isPromoCodeValid() {
|
|
123
95
|
const rate = this.getRate();
|
|
124
|
-
return (
|
|
125
|
-
this.getPromoCode() &&
|
|
126
|
-
this.getPromoCodeStatus() === EPromoCodeStatus.Valid);
|
|
96
|
+
return (rate === null || rate === void 0 ? void 0 : rate.getAveragePrice(true)) < (rate === null || rate === void 0 ? void 0 : rate.getAveragePriceBeforeDiscount(true)) && this.getPromoCode() && this.getPromoCodeStatus() === 'valid';
|
|
127
97
|
}
|
|
128
98
|
isManualInputPromoCode() {
|
|
129
99
|
return this.manualInputPromoCode;
|
|
@@ -186,7 +156,7 @@ class BasketRow {
|
|
|
186
156
|
}
|
|
187
157
|
setPromoCode(code) {
|
|
188
158
|
if (this.promoCode !== code.toUpperCase()) {
|
|
189
|
-
this.setPromoCodeStatus(
|
|
159
|
+
this.setPromoCodeStatus('new');
|
|
190
160
|
this.promoOnly = false;
|
|
191
161
|
}
|
|
192
162
|
this.promoCode = code.toUpperCase();
|
|
@@ -197,31 +167,8 @@ class BasketRow {
|
|
|
197
167
|
setStale(status) {
|
|
198
168
|
this.isStale = status;
|
|
199
169
|
}
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
*
|
|
203
|
-
* @param status - The new status: EPromoCodeStatus.
|
|
204
|
-
* @param warningMessage - Optional warning message shown when status is 'invalid'.
|
|
205
|
-
*/
|
|
206
|
-
setPromoCodeStatus(status, warningMessage) {
|
|
207
|
-
this.promoCodeStatus = this.promoCode ? status : EPromoCodeStatus.New;
|
|
208
|
-
this.setPromoCodeWarningMessage([EPromoCodeStatus.Invalid, EPromoCodeStatus.Forbidden].includes(this.promoCodeStatus) ? warningMessage || '' : '');
|
|
209
|
-
}
|
|
210
|
-
/**
|
|
211
|
-
* Stores the warning message for an invalid promo code.
|
|
212
|
-
*
|
|
213
|
-
* @param message - The warning message to display.
|
|
214
|
-
*/
|
|
215
|
-
setPromoCodeWarningMessage(message) {
|
|
216
|
-
this.promoCodeWarningMessage = message;
|
|
217
|
-
}
|
|
218
|
-
/**
|
|
219
|
-
* Gets the stored warning message for the promo code.
|
|
220
|
-
*
|
|
221
|
-
* @returns The warning message as a string.
|
|
222
|
-
*/
|
|
223
|
-
getPromoCodeWarningMessage() {
|
|
224
|
-
return this.promoCodeWarningMessage;
|
|
170
|
+
setPromoCodeStatus(status) {
|
|
171
|
+
this.promoCodeStatus = this.promoCode ? status : 'new';
|
|
225
172
|
}
|
|
226
173
|
setStartDate(date) {
|
|
227
174
|
if ((date === null || date === void 0 ? void 0 : date.isValid()) || date === undefined) {
|
|
@@ -275,12 +222,25 @@ class BasketRow {
|
|
|
275
222
|
getPreUpsellRoomRate() {
|
|
276
223
|
return this.preUpsellRoomRate;
|
|
277
224
|
}
|
|
278
|
-
getTotalPrice(
|
|
225
|
+
getTotalPrice(beforeTax = false) {
|
|
279
226
|
var _a;
|
|
280
|
-
|
|
227
|
+
if (this.quoteDetails) {
|
|
228
|
+
// If deposit is required, get the total Base rate before fees from quote details
|
|
229
|
+
let totalPrice = this.quoteDetails.totalRate;
|
|
230
|
+
if (!beforeTax) {
|
|
231
|
+
// **Previous logic**: totalPrice = total Base rate + Fees on Deposit amount
|
|
232
|
+
// totalPrice += this.quoteDetails.totalFees;
|
|
233
|
+
// **Updated logic** : totalPrice = total Base rate + its fees
|
|
234
|
+
totalPrice = this.quoteDetails.fullPaymentAmount;
|
|
235
|
+
}
|
|
236
|
+
return totalPrice;
|
|
237
|
+
}
|
|
238
|
+
// Otherwise, calculate the total price from Rate
|
|
239
|
+
return (_a = this.getRate()) === null || _a === void 0 ? void 0 : _a.getTotalPrice(beforeTax);
|
|
281
240
|
}
|
|
282
241
|
checkDiffFromReservation(res) {
|
|
283
242
|
const differences = {};
|
|
243
|
+
const beforeTax = false;
|
|
284
244
|
if (res.total.beforeFees) {
|
|
285
245
|
// This beforeFees field will be included when we're using Itemised Fees. Because fees can be a part of
|
|
286
246
|
// rates, we'll just confirm that the price excluding fees is correct for now.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasketRow.js","sourceRoot":"/","sources":["src/models/BasketRow.ts"],"names":[],"mappings":";;;;;;AACA,kDAA0B;AAM1B,0DAA8D;AAC9D,wCAAqC;AACrC,oEAA4D;AAE5D,6DAA2D;AAE3D,IAAY,gBAKX;AALD,WAAY,gBAAgB;IACxB,mCAAe,CAAA;IACf,uCAAmB,CAAA;IACnB,+BAAW,CAAA;IACX,2CAAuB,CAAA;AAC3B,CAAC,EALW,gBAAgB,gCAAhB,gBAAgB,QAK3B;AACD,MAAqB,SAAS;IAuD1B;;;;;;OAMG;IACH,YAAmB,IAAe,EAAE,MAAe,EAAE,0BAA0B,GAAG,IAAI;;QArD9E,mBAAc,GAMlB;YACA,MAAM,EAAE,CAAC;YACT,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,CAAC;YACV,SAAS,EAAE,IAAA,eAAK,GAAE;YAClB,OAAO,EAAE,IAAA,eAAK,GAAE;SACnB,CAAC;QAIF;;;WAGG;QACK,4BAAuB,GAAG,EAAE,CAAC;QAGrC;;WAEG;QACK,yBAAoB,GAAG,KAAK,CAAC;QACrC;;WAEG;QACK,aAAQ,GAAG,EAAE,CAAC;QAyNtB;;;;;;;;;;WAUG;QACI,wBAAmB,GAAG,CACzB,CAA2B,EAC3B,WAA4H,EACtH,EAAE;YACR,IAAI,gBAAgB,GAAG,EAAE,CAAC;YAE1B,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,EAAE,MAAK,gBAAgB,CAAC,GAAG,EAAE,CAAC;gBACtD,gBAAgB,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACpJ,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,EAAE,MAAK,gBAAgB,CAAC,KAAK,EAAE,CAAC;oBACxD,gBAAgB,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBACvE,CAAC;qBAAM,CAAC;oBACJ,gBAAgB,GAAG,IAAI,CAAC,0BAA0B,EAAE,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC9G,CAAC;YACL,CAAC;YACD,OAAO,gBAAgB,CAAC;QAC5B,CAAC,CAAC;QA5NE;;WAEG;QACH,IAAI,IAAI,EAAE,CAAC;YACP,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,MAAA,oCAAc,CAAC,MAAM,mCAAI,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,MAAA,oCAAc,CAAC,QAAQ,mCAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,MAAA,oCAAc,CAAC,OAAO,mCAAI,CAAC,CAAC;QAE3C,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC,GAAG,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,0BAA0B,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,IAAA,sCAAqB,EAAC,wCAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,uCAAuC;YACzG,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC,QAAQ,CAAC;YACvC,IAAI,CAAC,QAAQ,GAAG,QAAQ,IAAI,EAAE,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QAElC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5F,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAEM,YAAY,CAAC,mBAA4B;QAC5C,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QACxC,CAAC;QAED,IAAI,mBAAmB,KAAK,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,sBAAsB,EAAE,EAAE,CAAC;YACxF,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QACxC,CAAC;QAED,OAAO,EAAE,CAAC;IACd,CAAC;IAEM,YAAY;QACf,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAEM,kBAAkB;QACrB,IAAI,IAAI,CAAC,eAAe,KAAK,gBAAgB,CAAC,KAAK,EAAE,CAAC;YAClD,OAAO,aAAK,CAAC,OAAO,CAAC;QACzB,CAAC;aAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAC/F,OAAO,aAAK,CAAC,KAAK,CAAC;QACvB,CAAC;QAED,OAAO,aAAK,CAAC,IAAI,CAAC;IACtB,CAAC;IAEM,gBAAgB;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAE5B,OAAO,CACH,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,eAAe,CAAC,IAAI,CAAY,KAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,6BAA6B,CAAC,IAAI,CAAY,CAAA;YAC/F,IAAI,CAAC,YAAY,EAAE;YACnB,IAAI,CAAC,kBAAkB,EAAE,KAAK,gBAAgB,CAAC,KAAK,CACvD,CAAC;IACN,CAAC;IAEM,sBAAsB;QACzB,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACrC,CAAC;IAEM,uBAAuB,CAAC,KAAc;QACzC,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACtC,CAAC;IAEM,eAAe;QAClB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,CAAC,CAAC;IACb,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAEM,YAAY;QACf,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAEM,cAAc;QACjB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,gBAAgB;QACnB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,gBAAgB,CAAC,MAAM,GAAG,WAAW,EAAE,SAAS,GAAG,GAAG;QACzD,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACzF,CAAC;IACL,CAAC;IAEM,SAAS;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAEM,iBAAiB;QACpB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAEM,KAAK;QACR,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAEM,kBAAkB;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IACzD,CAAC;IAEM,YAAY,CAAC,IAAY;QAC5B,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACxC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACxC,CAAC;IAEM,YAAY,CAAC,KAAc;QAC9B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IAC3B,CAAC;IAEM,QAAQ,CAAC,MAAe;QAC3B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACI,kBAAkB,CAAC,MAAwB,EAAE,cAAuB;QACvE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC;QACtE,IAAI,CAAC,0BAA0B,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACvJ,CAAC;IAED;;;;OAIG;IACK,0BAA0B,CAAC,OAAe;QAC9C,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACI,0BAA0B;QAC7B,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACxC,CAAC;IA+BM,YAAY,CAAC,IAAiB;QACjC,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAE,KAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACxC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAC1B,CAAC;IACL,CAAC;IAEM,UAAU,CAAC,IAAiB;QAC/B,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAE,KAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACxC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACxB,CAAC;IACL,CAAC;IAEM,SAAS,CAAC,MAAc;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAEM,WAAW,CAAC,QAAgB;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAEM,UAAU,CAAC,OAAe;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAEM,iBAAiB;QACpB,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACzC,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC7C,IAAI,CAAC,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC3C,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/C,IAAI,CAAC,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC/C,CAAC;IAEM,kBAAkB;QACrB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAEM,OAAO,CAAC,IAAqB,EAAE,aAAuB;QACzD,IAAI,aAAa,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAC7B,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,IAAI,IAAI,EAAE,CAAC;YACP,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,gEAAgE;YAC/F,CAAC;QACL,CAAC;IACL,CAAC;IAEO,oBAAoB,CAAC,QAAkB;QAC3C,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC;IACtC,CAAC;IAEM,oBAAoB;QACvB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAEM,aAAa,CAAC,OAAO,GAAG,KAAK;;QAChC,OAAO,MAAA,IAAI,CAAC,OAAO,EAAE,0CAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAEM,wBAAwB,CAAC,GAAmB;QAC/C,MAAM,WAAW,GAAyB,EAAE,CAAC;QAE7C,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;YACvB,uGAAuG;YACvG,8EAA8E;YAC9E,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1F,WAAW,CAAC,UAAU,GAAG;oBACrB,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;oBAChC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,UAAU;iBAC9B,CAAC;YACN,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpF,WAAW,CAAC,UAAU,GAAG;oBACrB,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE;oBAC5B,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ;iBAC5B,CAAC;YACN,CAAC;QACL,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,CAAC;YAClC,WAAW,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAE9B,OAAO,WAAW,CAAC;QACvB,CAAC;aAAM,CAAC;YACJ,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAEM,kBAAkB,CAAC,KAA4B;QAClD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;IACjC,CAAC;IAEM,kBAAkB;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAEM,uBAAuB;QAC1B,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACrC,CAAC;IAEM,uBAAuB,CAAC,MAAe;QAC1C,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC;IACvC,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC/B,CAAC;IAEM,WAAW,CAAC,QAAgB;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAtZD,4BAsZC","sourcesContent":["import { IBookingQuoteResponse, ReservationDTO } from '@roomstay/core';\nimport dayjs from 'dayjs';\n\nimport BasketRowDifferences from '@/models/BasketRowDifferences';\nimport type { Room } from '@/models/Room/Room';\nimport type { RoomRate } from '@/models/Room/RoomRate';\nimport UserProfile from '@/models/UserProfile';\nimport { getQueryParamFromHash } from '@/util/CalendarHelper';\nimport { Color } from '@/util/Color';\nimport { DEFAULT_VALUES } from '@/util/DefaultValueManager';\n\nimport { EAppQueryParameters } from './AppQueryParameters';\n\nexport enum EPromoCodeStatus {\n Valid = 'valid',\n Invalid = 'invalid',\n New = 'new',\n Forbidden = 'forbidden',\n}\nexport default class BasketRow {\n private uniqId: string;\n\n private room!: Room;\n private rate!: RoomRate | null;\n private isStale!: boolean;\n private adults: number;\n private children: number;\n private infants: number;\n private preGuestsState: {\n adults: number;\n children: number;\n infants: number;\n startDate: dayjs.Dayjs;\n endDate: dayjs.Dayjs;\n } = {\n adults: 0,\n children: 0,\n infants: 0,\n startDate: dayjs(),\n endDate: dayjs(),\n };\n\n private promoCode: string;\n private promoCodeStatus: EPromoCodeStatus;\n /**\n * Warning message associated with an invalid promo code.\n * Used for displaying tooltip or error messages to the user.\n */\n private promoCodeWarningMessage = '';\n private manualInputPromoCode: boolean;\n\n /**\n * Enable room code filter when the the URL's room parameter is present\n */\n private enableRoomCodeFilter = false;\n /**\n * Indicates availability for a specific room extracted from the URL's room parameter\n */\n private roomCode = '';\n\n private startDate!: dayjs.Dayjs;\n private endDate!: dayjs.Dayjs;\n\n private promoOnly: boolean;\n\n private preUpsellRoomRate?: RoomRate;\n\n public quoteDetails?: NonNullable<IBookingQuoteResponse>['rows'][number];\n public pencilId?: string;\n\n public checkoutDefaults?: Partial<UserProfile>;\n\n public auxiliaryFilter?: { [id: string]: string | number };\n\n /**\n *\n * @param rate - Optional `RoomRate` object associated with the basket row.\n * @param uniqId - Optional unique identifier for this basket row instance.\n * @param shouldEnableRoomCodeFilter - Whether to check the URL for a room code and enable filtering accordingly.\n * Defaults to `true`.\n */\n public constructor(rate?: RoomRate, uniqId?: string, shouldEnableRoomCodeFilter = true) {\n /*\n * Rate is optional since we can create row entries on first step, where there is no ability to select rate.\n */\n if (rate) {\n this.setRate(rate);\n }\n\n this.adults = DEFAULT_VALUES.ADULTS ?? 1;\n this.children = DEFAULT_VALUES.CHILDREN ?? 0;\n this.infants = DEFAULT_VALUES.INFANTS ?? 0;\n\n this.promoCode = '';\n this.promoCodeStatus = EPromoCodeStatus.New;\n this.promoOnly = false;\n if (shouldEnableRoomCodeFilter) {\n const roomCode = getQueryParamFromHash(EAppQueryParameters.Room); // Extract the the URL's room parameter\n this.enableRoomCodeFilter = !!roomCode;\n this.roomCode = roomCode || '';\n }\n\n this.manualInputPromoCode = false;\n\n this.uniqId = uniqId ? uniqId : btoa(((Date.now() % 1000) / 1000) * Math.random() + '');\n }\n\n public getStale() {\n return this.isStale;\n }\n\n public getRate() {\n return this.rate;\n }\n\n public getPromoCode(memberOnlyPromoCode?: string) {\n if (!memberOnlyPromoCode) {\n return this.promoCode.toUpperCase();\n }\n\n if (memberOnlyPromoCode !== this.promoCode.toUpperCase() || this.isManualInputPromoCode()) {\n return this.promoCode.toUpperCase();\n }\n\n return '';\n }\n\n public getPromoOnly() {\n return this.promoOnly;\n }\n\n public getPromoCodeColour() {\n if (this.promoCodeStatus === EPromoCodeStatus.Valid) {\n return Color.Success;\n } else if ([EPromoCodeStatus.Invalid, EPromoCodeStatus.Forbidden].includes(this.promoCodeStatus)) {\n return Color.Alert;\n }\n\n return Color.Navy;\n }\n\n public isPromoCodeValid() {\n const rate = this.getRate();\n\n return (\n (rate?.getAveragePrice(true) as number) < (rate?.getAveragePriceBeforeDiscount(true) as number) &&\n this.getPromoCode() &&\n this.getPromoCodeStatus() === EPromoCodeStatus.Valid\n );\n }\n\n public isManualInputPromoCode() {\n return this.manualInputPromoCode;\n }\n\n public setManualInputPromoCode(value: boolean) {\n this.manualInputPromoCode = value;\n }\n\n public getNumberOfDays() {\n if (this.endDate && this.startDate) {\n return this.endDate.diff(this.startDate, 'day');\n }\n\n return 0;\n }\n\n public getRoom() {\n return this.room;\n }\n\n public getStartDate() {\n return this.startDate;\n }\n\n public getEndDate() {\n return this.endDate;\n }\n\n public getArrivalDate() {\n if (this.startDate) {\n return this.startDate.format('D MMM');\n }\n\n return null;\n }\n\n public getDepartureDate() {\n if (this.endDate) {\n return this.endDate.format('D MMM');\n }\n\n return null;\n }\n\n public getStayDateRange(format = 'ddd D MMM', separator = ',') {\n if (this.startDate && this.endDate) {\n return `${this.startDate.format(format)}${separator} ${this.endDate.format(format)}`;\n }\n }\n\n public getAdults() {\n return this.adults;\n }\n\n public getChildren() {\n return this.children;\n }\n\n public getInfants() {\n return this.infants;\n }\n\n public getPreGuestsState() {\n return this.preGuestsState;\n }\n\n public getID() {\n return this.uniqId;\n }\n\n public getPromoCodeStatus() {\n return this.promoCodeStatus;\n }\n\n public isValid(): boolean {\n return this.startDate && this.endDate && !!this.rate;\n }\n\n public setPromoCode(code: string) {\n if (this.promoCode !== code.toUpperCase()) {\n this.setPromoCodeStatus(EPromoCodeStatus.New);\n this.promoOnly = false;\n }\n\n this.promoCode = code.toUpperCase();\n }\n\n public setPromoOnly(value: boolean) {\n this.promoOnly = value;\n }\n\n public setStale(status: boolean) {\n this.isStale = status;\n }\n\n /**\n * Sets the promo code status and optionally a warning message.\n *\n * @param status - The new status: EPromoCodeStatus.\n * @param warningMessage - Optional warning message shown when status is 'invalid'.\n */\n public setPromoCodeStatus(status: EPromoCodeStatus, warningMessage?: string) {\n this.promoCodeStatus = this.promoCode ? status : EPromoCodeStatus.New;\n this.setPromoCodeWarningMessage([EPromoCodeStatus.Invalid, EPromoCodeStatus.Forbidden].includes(this.promoCodeStatus) ? warningMessage || '' : '');\n }\n\n /**\n * Stores the warning message for an invalid promo code.\n *\n * @param message - The warning message to display.\n */\n private setPromoCodeWarningMessage(message: string) {\n this.promoCodeWarningMessage = message;\n }\n\n /**\n * Gets the stored warning message for the promo code.\n *\n * @returns The warning message as a string.\n */\n public getPromoCodeWarningMessage(): string {\n return this.promoCodeWarningMessage;\n }\n\n /**\n * Returns the tooltip text based on the promo code status.\n *\n * - If status is EPromoCodeStatus.New: returns 'Checking' or 'No value'.\n * - If status is EPromoCodeStatus.Valid: returns 'Valid'.\n * - If status is EPromoCodeStatus.Invalid: returns the warning message.\n *\n * @param t - Translation function.\n * @param Translation - Translation object with tooltip message strings.\n * @returns Tooltip string to display.\n */\n public getPromoCodeTooltip = (\n t: (arg0: string) => string,\n Translation: { Step: { Date: { PromoCodeTooltip: { Checking: string; NoValue: string; Valid: string; Invalid: string } } } }\n ): string => {\n let promoCodeTooltip = '';\n\n if (this?.getPromoCodeStatus() === EPromoCodeStatus.New) {\n promoCodeTooltip = this.getPromoCode() ? t(Translation.Step.Date.PromoCodeTooltip.Checking) : t(Translation.Step.Date.PromoCodeTooltip.NoValue);\n } else {\n if (this?.getPromoCodeStatus() === EPromoCodeStatus.Valid) {\n promoCodeTooltip = t(Translation.Step.Date.PromoCodeTooltip.Valid);\n } else {\n promoCodeTooltip = this.getPromoCodeWarningMessage() || t(Translation.Step.Date.PromoCodeTooltip.Invalid);\n }\n }\n return promoCodeTooltip;\n };\n\n public setStartDate(date: dayjs.Dayjs) {\n if (date?.isValid() || date === undefined) {\n this.startDate = date;\n }\n }\n\n public setEndDate(date: dayjs.Dayjs) {\n if (date?.isValid() || date === undefined) {\n this.endDate = date;\n }\n }\n\n public setAdults(adults: number) {\n this.adults = adults;\n }\n\n public setChildren(children: number) {\n this.children = children;\n }\n\n public setInfants(infants: number) {\n this.infants = infants;\n }\n\n public setPreGuestsState() {\n this.preGuestsState.adults = this.adults;\n this.preGuestsState.children = this.children;\n this.preGuestsState.infants = this.infants;\n this.preGuestsState.startDate = this.startDate;\n this.preGuestsState.endDate = this.endDate;\n }\n\n public discardGuestsState() {\n this.setAdults(this.preGuestsState.adults);\n this.setChildren(this.preGuestsState.children);\n this.setInfants(this.preGuestsState.infants);\n this.setStartDate(this.preGuestsState.startDate);\n this.setEndDate(this.preGuestsState.endDate);\n }\n\n public setRate(rate: RoomRate | null, upsellEnabled?: boolean) {\n if (upsellEnabled && this.rate) {\n this.setPreUpsellRoomRate(this.rate);\n }\n\n this.rate = rate;\n\n if (rate) {\n const room = rate.getRoom();\n this.room = room;\n if (room.code) {\n this.roomCode = room.code; // [step/room] Update Indicates availability for a specific room\n }\n }\n }\n\n private setPreUpsellRoomRate(roomRate: RoomRate) {\n this.preUpsellRoomRate = roomRate;\n }\n\n public getPreUpsellRoomRate() {\n return this.preUpsellRoomRate;\n }\n\n public getTotalPrice(getCost = false) {\n return this.getRate()?.getTotalPrice(getCost);\n }\n\n public checkDiffFromReservation(res: ReservationDTO) {\n const differences: BasketRowDifferences = {};\n\n if (res.total.beforeFees) {\n // This beforeFees field will be included when we're using Itemised Fees. Because fees can be a part of\n // rates, we'll just confirm that the price excluding fees is correct for now.\n if (Number(res.total.beforeFees).toFixed(2) !== Number(this.getTotalPrice(true)).toFixed(2)) {\n differences.totalPrice = {\n before: this.getTotalPrice(true),\n after: res.total.beforeFees,\n };\n }\n } else {\n if (Number(res.total.afterTax).toFixed(2) !== Number(this.getTotalPrice()).toFixed(2)) {\n differences.totalPrice = {\n before: this.getTotalPrice(),\n after: res.total.afterTax,\n };\n }\n }\n\n if (Object.keys(differences).length) {\n differences.id = this.getID();\n\n return differences;\n } else {\n return false;\n }\n }\n\n public setAuxiliaryFilter(value: { [id: string]: any }) {\n this.auxiliaryFilter = value;\n }\n\n public getAuxiliaryFilter() {\n return this.auxiliaryFilter;\n }\n\n public getEnableRoomCodeFilter() {\n return this.enableRoomCodeFilter;\n }\n\n public setEnableRoomCodeFilter(enable: boolean) {\n this.enableRoomCodeFilter = enable;\n }\n\n public getRoomCode() {\n return this.roomCode || '';\n }\n\n public setRoomCode(roomCode: string) {\n this.roomCode = roomCode;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"BasketRow.js","sourceRoot":"/","sources":["src/models/BasketRow.ts"],"names":[],"mappings":"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","sourcesContent":["import { IBookingQuoteResponse } from '@roomstay/core';\nimport dayjs from 'dayjs';\n\nimport { ReservationDTO } from '@/models/Api/ReservationsDTO';\nimport BasketRowDifferences from '@/models/BasketRowDifferences';\nimport type { Room } from '@/models/Room/Room';\nimport type { RoomRate } from '@/models/Room/RoomRate';\nimport UserProfile from '@/models/UserProfile';\nimport { getQueryParamFromHash } from '@/util/CalendarHelper';\nimport { Color } from '@/util/Color';\nimport { DEFAULT_VALUES } from '@/util/DefaultValueManager';\n\nimport { EAppQueryParameters } from './AppQueryParameters';\nexport default class BasketRow {\n private uniqId: string;\n\n private room!: Room;\n private rate!: RoomRate | null;\n private isStale!: boolean;\n private adults: number;\n private children: number;\n private infants: number;\n private preGuestsState: {\n adults: number;\n children: number;\n infants: number;\n startDate: dayjs.Dayjs;\n endDate: dayjs.Dayjs;\n } = {\n adults: 0,\n children: 0,\n infants: 0,\n startDate: dayjs(),\n endDate: dayjs(),\n };\n\n private promoCode: string;\n private promoCodeStatus: 'valid' | 'invalid' | 'new';\n private manualInputPromoCode: boolean;\n\n private enableRoomCodeFilter = false; // Enable room code filter when the the URL's room parameter is present\n private roomCode = ''; // Indicates availability for a specific room extracted from the URL's room parameter\n\n private startDate!: dayjs.Dayjs;\n private endDate!: dayjs.Dayjs;\n\n private promoOnly: boolean;\n\n private preUpsellRoomRate?: RoomRate;\n\n public quoteDetails?: NonNullable<IBookingQuoteResponse>['rows'][number] & {\n fullPaymentAmount: number;\n };\n\n public pencilId?: string;\n\n public checkoutDefaults?: Partial<UserProfile>;\n\n public auxiliaryFilter?: { [id: string]: string | number };\n\n /**\n *\n * @param rate - Optional `RoomRate` object associated with the basket row.\n * @param uniqId - Optional unique identifier for this basket row instance.\n * @param shouldEnableRoomCodeFilter - Whether to check the URL for a room code and enable filtering accordingly.\n * Defaults to `true`.\n */\n public constructor(rate?: RoomRate, uniqId?: string, shouldEnableRoomCodeFilter = true) {\n /*\n * Rate is optional since we can create row entries on first step, where there is no ability to select rate.\n */\n if (rate) {\n this.setRate(rate);\n }\n\n this.adults = DEFAULT_VALUES.ADULTS ?? 1;\n this.children = DEFAULT_VALUES.CHILDREN ?? 0;\n this.infants = DEFAULT_VALUES.INFANTS ?? 0;\n\n this.promoCode = '';\n this.promoCodeStatus = 'new';\n this.promoOnly = false;\n if (shouldEnableRoomCodeFilter) {\n const roomCode = getQueryParamFromHash(EAppQueryParameters.Room); // Extract the the URL's room parameter\n this.enableRoomCodeFilter = !!roomCode;\n this.roomCode = roomCode || '';\n }\n\n this.manualInputPromoCode = false;\n\n this.uniqId = uniqId ? uniqId : btoa(((Date.now() % 1000) / 1000) * Math.random() + '');\n }\n\n public getStale() {\n return this.isStale;\n }\n\n public getRate() {\n return this.rate;\n }\n\n public getPromoCode(memberOnlyPromoCode?: string) {\n if (!memberOnlyPromoCode) {\n return this.promoCode.toUpperCase();\n }\n\n if (memberOnlyPromoCode !== this.promoCode.toUpperCase() || this.isManualInputPromoCode()) {\n return this.promoCode.toUpperCase();\n }\n\n return '';\n }\n\n public getPromoOnly() {\n return this.promoOnly;\n }\n\n public getPromoCodeColour() {\n if (this.promoCodeStatus === 'valid') {\n return Color.Success;\n } else if (this.promoCodeStatus === 'invalid') {\n return Color.Alert;\n }\n\n return Color.Navy;\n }\n\n public isPromoCodeValid() {\n const rate = this.getRate();\n\n return (rate?.getAveragePrice(true) as number) < (rate?.getAveragePriceBeforeDiscount(true) as number) && this.getPromoCode() && this.getPromoCodeStatus() === 'valid';\n }\n\n public isManualInputPromoCode() {\n return this.manualInputPromoCode;\n }\n\n public setManualInputPromoCode(value: boolean) {\n this.manualInputPromoCode = value;\n }\n\n public getNumberOfDays() {\n if (this.endDate && this.startDate) {\n return this.endDate.diff(this.startDate, 'day');\n }\n\n return 0;\n }\n\n public getRoom() {\n return this.room;\n }\n\n public getStartDate() {\n return this.startDate;\n }\n\n public getEndDate() {\n return this.endDate;\n }\n\n public getArrivalDate() {\n if (this.startDate) {\n return this.startDate.format('D MMM');\n }\n\n return null;\n }\n\n public getDepartureDate() {\n if (this.endDate) {\n return this.endDate.format('D MMM');\n }\n\n return null;\n }\n\n public getStayDateRange(format = 'ddd D MMM', separator = ',') {\n if (this.startDate && this.endDate) {\n return `${this.startDate.format(format)}${separator} ${this.endDate.format(format)}`;\n }\n }\n\n public getAdults() {\n return this.adults;\n }\n\n public getChildren() {\n return this.children;\n }\n\n public getInfants() {\n return this.infants;\n }\n\n public getPreGuestsState() {\n return this.preGuestsState;\n }\n\n public getID() {\n return this.uniqId;\n }\n\n public getPromoCodeStatus() {\n return this.promoCodeStatus;\n }\n\n public isValid(): boolean {\n return this.startDate && this.endDate && !!this.rate;\n }\n\n public setPromoCode(code: string) {\n if (this.promoCode !== code.toUpperCase()) {\n this.setPromoCodeStatus('new');\n this.promoOnly = false;\n }\n\n this.promoCode = code.toUpperCase();\n }\n\n public setPromoOnly(value: boolean) {\n this.promoOnly = value;\n }\n\n public setStale(status: boolean) {\n this.isStale = status;\n }\n\n public setPromoCodeStatus(status: 'valid' | 'invalid' | 'new') {\n this.promoCodeStatus = this.promoCode ? status : 'new';\n }\n\n public setStartDate(date: dayjs.Dayjs) {\n if (date?.isValid() || date === undefined) {\n this.startDate = date;\n }\n }\n\n public setEndDate(date: dayjs.Dayjs) {\n if (date?.isValid() || date === undefined) {\n this.endDate = date;\n }\n }\n\n public setAdults(adults: number) {\n this.adults = adults;\n }\n\n public setChildren(children: number) {\n this.children = children;\n }\n\n public setInfants(infants: number) {\n this.infants = infants;\n }\n\n public setPreGuestsState() {\n this.preGuestsState.adults = this.adults;\n this.preGuestsState.children = this.children;\n this.preGuestsState.infants = this.infants;\n this.preGuestsState.startDate = this.startDate;\n this.preGuestsState.endDate = this.endDate;\n }\n\n public discardGuestsState() {\n this.setAdults(this.preGuestsState.adults);\n this.setChildren(this.preGuestsState.children);\n this.setInfants(this.preGuestsState.infants);\n this.setStartDate(this.preGuestsState.startDate);\n this.setEndDate(this.preGuestsState.endDate);\n }\n\n public setRate(rate: RoomRate | null, upsellEnabled?: boolean) {\n if (upsellEnabled && this.rate) {\n this.setPreUpsellRoomRate(this.rate);\n }\n\n this.rate = rate;\n\n if (rate) {\n const room = rate.getRoom();\n this.room = room;\n if (room.code) {\n this.roomCode = room.code; // [step/room] Update Indicates availability for a specific room\n }\n }\n }\n\n private setPreUpsellRoomRate(roomRate: RoomRate) {\n this.preUpsellRoomRate = roomRate;\n }\n\n public getPreUpsellRoomRate() {\n return this.preUpsellRoomRate;\n }\n\n public getTotalPrice(beforeTax = false) {\n if (this.quoteDetails) {\n // If deposit is required, get the total Base rate before fees from quote details\n let totalPrice = this.quoteDetails.totalRate;\n if (!beforeTax) {\n // **Previous logic**: totalPrice = total Base rate + Fees on Deposit amount\n // totalPrice += this.quoteDetails.totalFees;\n // **Updated logic** : totalPrice = total Base rate + its fees\n totalPrice = this.quoteDetails.fullPaymentAmount;\n }\n return totalPrice;\n }\n // Otherwise, calculate the total price from Rate\n return this.getRate()?.getTotalPrice(beforeTax);\n }\n\n public getAveragePrice = (getCost = false): number => {\n if (this.quoteDetails) {\n // If deposit is required, get the average price from quote details\n const total = this.getTotalPrice(getCost);\n const rate = this.getRate();\n if (!total || !rate) return 0;\n\n return total / Object.keys(rate.nightRates).length;\n } else {\n // Otherwise, calculate the average price from Rate\n const rate = this.getRate();\n if (!rate) return 0;\n return rate.getAveragePrice(getCost);\n }\n };\n\n public checkDiffFromReservation(res: ReservationDTO) {\n const differences: BasketRowDifferences = {};\n const beforeTax = false;\n\n if (res.total.beforeFees) {\n // This beforeFees field will be included when we're using Itemised Fees. Because fees can be a part of\n // rates, we'll just confirm that the price excluding fees is correct for now.\n if (Number(res.total.beforeFees).toFixed(2) !== Number(this.getTotalPrice(true)).toFixed(2)) {\n differences.totalPrice = {\n before: this.getTotalPrice(true),\n after: res.total.beforeFees,\n };\n }\n } else {\n if (Number(res.total.afterTax).toFixed(2) !== Number(this.getTotalPrice()).toFixed(2)) {\n differences.totalPrice = {\n before: this.getTotalPrice(),\n after: res.total.afterTax,\n };\n }\n }\n\n if (Object.keys(differences).length) {\n differences.id = this.getID();\n\n return differences;\n } else {\n return false;\n }\n }\n\n public setAuxiliaryFilter(value: { [id: string]: any }) {\n this.auxiliaryFilter = value;\n }\n\n public getAuxiliaryFilter() {\n return this.auxiliaryFilter;\n }\n\n public getEnableRoomCodeFilter() {\n return this.enableRoomCodeFilter;\n }\n\n public setEnableRoomCodeFilter(enable: boolean) {\n this.enableRoomCodeFilter = enable;\n }\n\n public getRoomCode() {\n return this.roomCode || '';\n }\n\n public setRoomCode(roomCode: string) {\n this.roomCode = roomCode;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BookingWizardTypes.js","sourceRoot":"/","sources":["src/models/BookingWizard/BookingWizardTypes.ts"],"names":[],"mappings":"","sourcesContent":["import { BookingWizardProperty } from './BookingWizardProperty';\n\nexport type TBookingWizardProperties = { [name: string]: BookingWizardProperty[] };\n"]}
|
|
1
|
+
{"version":3,"file":"BookingWizardTypes.js","sourceRoot":"/","sources":["src/models/BookingWizard/BookingWizardTypes.ts"],"names":[],"mappings":"","sourcesContent":["import { BookingWizardProperty } from './BookingWizardProperty';\n\nexport type TBookingWizardProperties = { [name: string]: BookingWizardProperty[] };\n\nexport type TBookingWizardOption = {\n text: string;\n value: string;\n};\n"]}
|
|
@@ -6,5 +6,5 @@ var DistanceUnitType;
|
|
|
6
6
|
DistanceUnitType["Metric"] = "metric";
|
|
7
7
|
DistanceUnitType["Imperial"] = "imperial";
|
|
8
8
|
DistanceUnitType["Time"] = "time";
|
|
9
|
-
})(DistanceUnitType
|
|
9
|
+
})(DistanceUnitType = exports.DistanceUnitType || (exports.DistanceUnitType = {}));
|
|
10
10
|
//# sourceMappingURL=DistanceUnitType.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DistanceUnitType.types.js","sourceRoot":"/","sources":["src/models/Client/Hotel/DistanceUnitType.types.ts"],"names":[],"mappings":";;;AAAA,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IACxB,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;IACrB,iCAAa,CAAA;AACjB,CAAC,EAJW,gBAAgB,
|
|
1
|
+
{"version":3,"file":"DistanceUnitType.types.js","sourceRoot":"/","sources":["src/models/Client/Hotel/DistanceUnitType.types.ts"],"names":[],"mappings":";;;AAAA,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IACxB,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;IACrB,iCAAa,CAAA;AACjB,CAAC,EAJW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAI3B","sourcesContent":["export enum DistanceUnitType {\n Metric = 'metric',\n Imperial = 'imperial',\n Time = 'time',\n}\n"]}
|