@roomstay/frontend 2.6.82 → 2.6.84
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/375.bundle.js +1 -1
- package/dist/430.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 +8 -9
- package/dist/e2e/helpers/checkoutHelpers.js.map +1 -1
- package/dist/e2e/helpers/playwrightHelpers.js +1 -2
- 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 +18 -8
- package/dist/src/animations/AutoAutoHeight.js.map +1 -1
- package/dist/src/animations/Fade.js +17 -7
- package/dist/src/animations/Fade.js.map +1 -1
- package/dist/src/api/AddonAPI.js +17 -7
- package/dist/src/api/AddonAPI.js.map +1 -1
- package/dist/src/api/AvailabilityAPI.d.ts +6 -5
- package/dist/src/api/AvailabilityAPI.js +40 -24
- 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 +17 -7
- package/dist/src/api/MemberAPI.js.map +1 -1
- package/dist/src/api/ReservationAPI.js +19 -9
- package/dist/src/api/ReservationAPI.js.map +1 -1
- package/dist/src/api/SessionAPI.js +17 -7
- 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 +17 -7
- package/dist/src/components/Event/EventCarouselContainer.js.map +1 -1
- package/dist/src/components/User/Forms/ForgotPasswordForm.js +17 -7
- package/dist/src/components/User/Forms/ForgotPasswordForm.js.map +1 -1
- package/dist/src/components/User/Forms/SignInForm.js +17 -7
- package/dist/src/components/User/Forms/SignInForm.js.map +1 -1
- package/dist/src/components/User/Forms/SignUpForm.js +17 -7
- package/dist/src/components/User/Forms/SignUpForm.js.map +1 -1
- package/dist/src/components/User/Forms/VerifyEmailForm.js +17 -7
- package/dist/src/components/User/Forms/VerifyEmailForm.js.map +1 -1
- package/dist/src/components/generic/AfterpayButton/AfterpayPaymentOption.js +17 -7
- package/dist/src/components/generic/AfterpayButton/AfterpayPaymentOption.js.map +1 -1
- package/dist/src/components/generic/AgedBetweenLabel/AgedBetweenLabel.js +17 -7
- 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.js +18 -8
- 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 +18 -9
- package/dist/src/components/generic/BookNowPayLaterInfoBlock.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizard.js +20 -10
- package/dist/src/components/generic/BookingWizard/BookingWizard.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardContent.d.ts +2 -2
- package/dist/src/components/generic/BookingWizard/BookingWizardContent.js +17 -7
- package/dist/src/components/generic/BookingWizard/BookingWizardContent.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardContext.d.ts +0 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js +17 -7
- package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js +17 -7
- package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js +17 -7
- package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardPromoCode/BookingWizardPromoCode.js +17 -7
- package/dist/src/components/generic/BookingWizard/BookingWizardPromoCode/BookingWizardPromoCode.js.map +1 -1
- package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js +17 -7
- package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js.map +1 -1
- package/dist/src/components/generic/Checkbox/Checkbox.js +17 -7
- package/dist/src/components/generic/Checkbox/Checkbox.js.map +1 -1
- package/dist/src/components/generic/Countdown.js +18 -8
- package/dist/src/components/generic/Countdown.js.map +1 -1
- package/dist/src/components/generic/Currency.js +18 -8
- package/dist/src/components/generic/Currency.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePicker.js +18 -8
- package/dist/src/components/generic/DateRangePicker/DateRangePicker.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js +19 -9
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js +18 -8
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js +18 -8
- package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js +17 -7
- package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js.map +1 -1
- package/dist/src/components/generic/Distance.js +18 -8
- package/dist/src/components/generic/Distance.js.map +1 -1
- package/dist/src/components/generic/Event/EventCard.js +17 -7
- package/dist/src/components/generic/Event/EventCard.js.map +1 -1
- package/dist/src/components/generic/Event/EventCarousel.js +17 -7
- package/dist/src/components/generic/Event/EventCarousel.js.map +1 -1
- package/dist/src/components/generic/ForwardedSelect.js +17 -7
- 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 +17 -7
- package/dist/src/components/generic/HtmlContentViewer.js.map +1 -1
- package/dist/src/components/generic/IconText/IconText.js +19 -9
- 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 +18 -8
- package/dist/src/components/generic/Notification.js.map +1 -1
- package/dist/src/components/generic/NumberIncrement.js +18 -8
- package/dist/src/components/generic/NumberIncrement.js.map +1 -1
- package/dist/src/components/generic/Overlay/Overlay.js +17 -7
- 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 +17 -7
- package/dist/src/components/generic/PasswordBox/PasswordBox.js.map +1 -1
- package/dist/src/components/generic/PaymentCard/InlinePaymentOption.js +17 -7
- package/dist/src/components/generic/PaymentCard/InlinePaymentOption.js.map +1 -1
- package/dist/src/components/generic/PaymentCard/PaymentCardInput.js +17 -7
- 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 +17 -7
- package/dist/src/components/generic/PlanpayPrice/PlanpayPrice.js.map +1 -1
- package/dist/src/components/generic/PromoCodeInput.js +18 -8
- package/dist/src/components/generic/PromoCodeInput.js.map +1 -1
- package/dist/src/components/generic/RadioButtonGroup/RadioButton.js +17 -7
- package/dist/src/components/generic/RadioButtonGroup/RadioButton.js.map +1 -1
- package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js +17 -7
- package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
- package/dist/src/components/generic/RecentSearchesCard.js +17 -7
- package/dist/src/components/generic/RecentSearchesCard.js.map +1 -1
- package/dist/src/components/generic/RoomstayMark.js +17 -7
- 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 +18 -8
- 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 +17 -7
- package/dist/src/components/generic/Select/Select.js.map +1 -1
- package/dist/src/components/generic/Slider/Slider.js +17 -7
- package/dist/src/components/generic/Slider/Slider.js.map +1 -1
- package/dist/src/components/generic/Tabs/ElementChildren.js +2 -3
- package/dist/src/components/generic/Tabs/ElementChildren.js.map +1 -1
- package/dist/src/components/generic/Tabs/TabContext.js +17 -7
- package/dist/src/components/generic/Tabs/TabContext.js.map +1 -1
- package/dist/src/components/generic/Tabs/TabLink.js +17 -7
- package/dist/src/components/generic/Tabs/TabLink.js.map +1 -1
- package/dist/src/components/generic/Tabs/TabRouteContainer.js +18 -9
- package/dist/src/components/generic/Tabs/TabRouteContainer.js.map +1 -1
- package/dist/src/components/generic/Text.js +19 -9
- package/dist/src/components/generic/Text.js.map +1 -1
- package/dist/src/components/generic/TextArea.js +17 -7
- package/dist/src/components/generic/TextArea.js.map +1 -1
- package/dist/src/components/generic/TextBox.js +17 -7
- package/dist/src/components/generic/TextBox.js.map +1 -1
- package/dist/src/components/generic/Tooltip/Tooltip.js +18 -8
- 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 +18 -8
- package/dist/src/components/generic/buttons/NextStepButton.js.map +1 -1
- package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js +17 -7
- 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 +19 -9
- package/dist/src/components/generic/date/DatePicker.js.map +1 -1
- package/dist/src/components/generic/date/DatePickerDay.js +19 -9
- package/dist/src/components/generic/date/DatePickerDay.js.map +1 -1
- package/dist/src/components/generic/date/DatePickerDays.js +18 -8
- package/dist/src/components/generic/date/DatePickerDays.js.map +1 -1
- package/dist/src/components/generic/date/DatePickerMonth.js +18 -8
- package/dist/src/components/generic/date/DatePickerMonth.js.map +1 -1
- package/dist/src/components/generic/date/DatePickerWeek.js +21 -11
- package/dist/src/components/generic/date/DatePickerWeek.js.map +1 -1
- package/dist/src/components/generic/date/FloatingDatePicker.js +19 -9
- package/dist/src/components/generic/date/FloatingDatePicker.js.map +1 -1
- package/dist/src/components/generic/date/WeekViewSkeleton.js +17 -7
- package/dist/src/components/generic/date/WeekViewSkeleton.js.map +1 -1
- package/dist/src/components/generic/loader/ImageLoader.js +18 -8
- 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 +18 -8
- 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 +18 -8
- package/dist/src/components/generic/modal/ConfirmationModal.js.map +1 -1
- package/dist/src/components/generic/modal/ErrorModal.js +18 -8
- package/dist/src/components/generic/modal/ErrorModal.js.map +1 -1
- package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js +17 -7
- package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js.map +1 -1
- package/dist/src/components/generic/modal/SigninModal/FormContent/SignUpFormContent.js +17 -7
- package/dist/src/components/generic/modal/SigninModal/FormContent/SignUpFormContent.js.map +1 -1
- package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js +18 -8
- package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js.map +1 -1
- package/dist/src/components/generic/modal/SimpleModal.js +19 -9
- package/dist/src/components/generic/modal/SimpleModal.js.map +1 -1
- package/dist/src/components/generic/modal/TabbedModal.js +18 -8
- package/dist/src/components/generic/modal/TabbedModal.js.map +1 -1
- package/dist/src/components/generic/radio/RadioFields.js +18 -8
- 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 +17 -7
- package/dist/src/components/members/EditMyProfile.js.map +1 -1
- package/dist/src/components/members/InlineSignUpSection.js +17 -7
- package/dist/src/components/members/InlineSignUpSection.js.map +1 -1
- package/dist/src/components/members/SignInModal/ExternalMemberModal.js +17 -7
- package/dist/src/components/members/SignInModal/ExternalMemberModal.js.map +1 -1
- package/dist/src/components/members/SignInModal/InternalMemberSignInModal.js +19 -9
- package/dist/src/components/members/SignInModal/InternalMemberSignInModal.js.map +1 -1
- package/dist/src/components/members/SignInModal/MemberPortalSignInModal.js +18 -8
- package/dist/src/components/members/SignInModal/MemberPortalSignInModal.js.map +1 -1
- package/dist/src/components/members/SignInModal/MemberSignInModal.js +17 -7
- package/dist/src/components/members/SignInModal/MemberSignInModal.js.map +1 -1
- package/dist/src/components/navigation/Header.js +18 -8
- package/dist/src/components/navigation/Header.js.map +1 -1
- package/dist/src/components/navigation/StepSelector.js +18 -8
- package/dist/src/components/navigation/StepSelector.js.map +1 -1
- package/dist/src/components/navigation/StepSelectorModal.js +18 -8
- package/dist/src/components/navigation/StepSelectorModal.js.map +1 -1
- package/dist/src/components/pages/Account/Card/MemberCardItem.js +17 -7
- package/dist/src/components/pages/Account/Card/MemberCardItem.js.map +1 -1
- package/dist/src/components/pages/PageColorComponent.js +17 -7
- package/dist/src/components/pages/PageColorComponent.js.map +1 -1
- package/dist/src/components/reservation/EmptyReservation.js +17 -7
- package/dist/src/components/reservation/EmptyReservation.js.map +1 -1
- package/dist/src/components/reservation/ReservationItem.js +18 -8
- package/dist/src/components/reservation/ReservationItem.js.map +1 -1
- package/dist/src/components/reservation/ReservationList.js.map +1 -1
- package/dist/src/components/steps/DaysSelectedInformer.js +18 -8
- package/dist/src/components/steps/DaysSelectedInformer.js.map +1 -1
- package/dist/src/components/steps/MinimumNightStayPill.js +18 -8
- package/dist/src/components/steps/MinimumNightStayPill.js.map +1 -1
- package/dist/src/components/steps/addons/AddonCard.js +17 -7
- package/dist/src/components/steps/addons/AddonCard.js.map +1 -1
- package/dist/src/components/steps/addons/AddonList.js +17 -7
- 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.js +17 -7
- package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js.map +1 -1
- package/dist/src/components/steps/common/ItemisedFeesListing/ItemisedFeesListing.js +17 -7
- package/dist/src/components/steps/common/ItemisedFeesListing/ItemisedFeesListing.js.map +1 -1
- package/dist/src/components/steps/common/ItemisedFeesSummary/ItemisedFeesSummary.js +17 -7
- package/dist/src/components/steps/common/ItemisedFeesSummary/ItemisedFeesSummary.js.map +1 -1
- package/dist/src/components/steps/confirmation/AccountDetails.js +18 -8
- package/dist/src/components/steps/confirmation/AccountDetails.js.map +1 -1
- package/dist/src/components/steps/confirmation/AdyenPaymentOption/AdyenPaymentOption.js +17 -7
- package/dist/src/components/steps/confirmation/AdyenPaymentOption/AdyenPaymentOption.js.map +1 -1
- package/dist/src/components/steps/confirmation/MastercardPaymentMethod.js +17 -7
- 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 +17 -7
- package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js.map +1 -1
- package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js +17 -7
- package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js.map +1 -1
- package/dist/src/components/steps/confirmation/PaymentInformation.js +17 -7
- package/dist/src/components/steps/confirmation/PaymentInformation.js.map +1 -1
- package/dist/src/components/steps/confirmation/PlanpayLabel.js +17 -7
- package/dist/src/components/steps/confirmation/PlanpayLabel.js.map +1 -1
- package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js +17 -7
- package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js.map +1 -1
- package/dist/src/components/steps/confirmation/RoomContactDetails.js +18 -8
- package/dist/src/components/steps/confirmation/RoomContactDetails.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js +18 -8
- package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js +18 -8
- 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 +17 -7
- package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationForm.js +18 -8
- 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 +18 -8
- package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js +18 -8
- package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js +18 -8
- package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js.map +1 -1
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsLabel.js +17 -7
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsLabel.js.map +1 -1
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsModal.js +23 -9
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsModal.js.map +1 -1
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsPaymentMethod.js +20 -7
- package/dist/src/components/steps/confirmation/TrueRewardsPaymentOption/TrueRewardsPaymentMethod.js.map +1 -1
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js +18 -8
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js.map +1 -1
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js +18 -8
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js.map +1 -1
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js +18 -8
- 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 +18 -8
- package/dist/src/components/steps/date/PeoplePicker.js.map +1 -1
- package/dist/src/components/steps/date/PeoplePickerRow.js +19 -9
- package/dist/src/components/steps/date/PeoplePickerRow.js.map +1 -1
- package/dist/src/components/steps/date/StepDatePricePerRoom.js +18 -8
- package/dist/src/components/steps/date/StepDatePricePerRoom.js.map +1 -1
- package/dist/src/components/steps/date/StepOneDateRange.js +18 -8
- package/dist/src/components/steps/date/StepOneDateRange.js.map +1 -1
- package/dist/src/components/steps/date/StepOneDateRangePicker.js +18 -8
- package/dist/src/components/steps/date/StepOneDateRangePicker.js.map +1 -1
- package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js +18 -8
- package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js.map +1 -1
- package/dist/src/components/steps/date/StepOneNextStepButton.js +18 -8
- package/dist/src/components/steps/date/StepOneNextStepButton.js.map +1 -1
- package/dist/src/components/steps/date/StepOneStatusPeople.js +18 -8
- package/dist/src/components/steps/date/StepOneStatusPeople.js.map +1 -1
- package/dist/src/components/steps/hotel/HotelCard.js +19 -9
- 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 +17 -7
- package/dist/src/components/steps/hotel/HotelCardModal.js.map +1 -1
- package/dist/src/components/steps/hotel/HotelInfoPerksRow.js +18 -8
- package/dist/src/components/steps/hotel/HotelInfoPerksRow.js.map +1 -1
- package/dist/src/components/steps/hotel/HotelSearchParameters.js +17 -7
- 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 +17 -7
- package/dist/src/components/steps/room/AvailableUpgradesModal.js.map +1 -1
- package/dist/src/components/steps/room/ImageGallerySlider.js +18 -8
- package/dist/src/components/steps/room/ImageGallerySlider.js.map +1 -1
- package/dist/src/components/steps/room/InactivityWindow.js +17 -7
- package/dist/src/components/steps/room/InactivityWindow.js.map +1 -1
- package/dist/src/components/steps/room/LargeRoomCard.js +17 -7
- package/dist/src/components/steps/room/LargeRoomCard.js.map +1 -1
- package/dist/src/components/steps/room/NoRoomsFoundBlock.js +18 -8
- 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 +18 -8
- package/dist/src/components/steps/room/RoomList.js.map +1 -1
- package/dist/src/components/steps/room/RoomListAlert.js +17 -7
- package/dist/src/components/steps/room/RoomListAlert.js.map +1 -1
- package/dist/src/components/steps/room/RoomListCrossSellBlock.js +18 -8
- package/dist/src/components/steps/room/RoomListCrossSellBlock.js.map +1 -1
- package/dist/src/components/steps/room/RoomModal.js +18 -8
- package/dist/src/components/steps/room/RoomModal.js.map +1 -1
- package/dist/src/components/steps/room/RoomModalPerkRow.js +18 -8
- package/dist/src/components/steps/room/RoomModalPerkRow.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomAlertBlocks.js +18 -8
- package/dist/src/components/steps/room/StepRoomAlertBlocks.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomBestRateAlert.js +18 -8
- package/dist/src/components/steps/room/StepRoomBestRateAlert.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomErrorForm.js +17 -7
- package/dist/src/components/steps/room/StepRoomErrorForm.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomHotelDetails.js +18 -8
- package/dist/src/components/steps/room/StepRoomHotelDetails.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomNextStepButton.js +18 -8
- package/dist/src/components/steps/room/StepRoomNextStepButton.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomSortBy.js +18 -8
- package/dist/src/components/steps/room/StepRoomSortBy.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomSummaryAndButton.js +18 -8
- package/dist/src/components/steps/room/StepRoomSummaryAndButton.js.map +1 -1
- package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRoomList.js +17 -7
- package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRoomList.js.map +1 -1
- package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.js +17 -7
- package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.js.map +1 -1
- package/dist/src/components/steps/room/TripteaseLodgingSearchSchema.js +17 -7
- package/dist/src/components/steps/room/TripteaseLodgingSearchSchema.js.map +1 -1
- package/dist/src/components/steps/room/UserSearchSummary/PromoCodeVerificationAlert.js +17 -7
- package/dist/src/components/steps/room/UserSearchSummary/PromoCodeVerificationAlert.js.map +1 -1
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummary.js +17 -7
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummary.js.map +1 -1
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryPromocodeInput.js +17 -7
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryPromocodeInput.js.map +1 -1
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryRow.js +17 -7
- 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 +18 -8
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js.map +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js +18 -8
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetails.js +18 -8
- package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js +18 -9
- package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js +18 -9
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js +18 -8
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js +17 -7
- package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js +18 -8
- package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js +18 -8
- package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +18 -8
- package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/ReadMoreRoomRateRow.js +18 -8
- package/dist/src/components/steps/room/roomDetails/roomRates/ReadMoreRoomRateRow.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js +18 -8
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js +19 -9
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js +17 -7
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js +18 -8
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js +18 -8
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js +18 -8
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/unavailableRoom/UnavailableRoom.js +20 -10
- package/dist/src/components/steps/room/roomDetails/unavailableRoom/UnavailableRoom.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js +18 -8
- package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js +18 -8
- package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js +18 -8
- package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js +18 -8
- package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js +18 -8
- package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js.map +1 -1
- package/dist/src/components/summary/BEMapWidget.d.ts +0 -2
- package/dist/src/components/summary/BEMapWidget.js +17 -7
- package/dist/src/components/summary/BEMapWidget.js.map +1 -1
- package/dist/src/components/summary/BEMobileSummary.js +18 -8
- package/dist/src/components/summary/BEMobileSummary.js.map +1 -1
- package/dist/src/components/summary/BEMobileSummaryModal.js +18 -8
- package/dist/src/components/summary/BEMobileSummaryModal.js.map +1 -1
- package/dist/src/components/summary/BESummary.js +19 -9
- package/dist/src/components/summary/BESummary.js.map +1 -1
- package/dist/src/components/summary/BESummaryAddonRow.js +18 -8
- package/dist/src/components/summary/BESummaryAddonRow.js.map +1 -1
- package/dist/src/components/summary/BESummaryPerkBlock.js +19 -9
- package/dist/src/components/summary/BESummaryPerkBlock.js.map +1 -1
- package/dist/src/components/summary/BESummaryPrivacyPolicy.js +18 -8
- package/dist/src/components/summary/BESummaryPrivacyPolicy.js.map +1 -1
- package/dist/src/components/summary/BESummaryRoomRow.js +18 -8
- package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
- package/dist/src/components/summary/TransportDistanceFromHotelBlock.js +18 -8
- 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 +0 -1
- package/dist/src/contexts/BasketContext/BasketContextWrapper.js +36 -16
- package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
- package/dist/src/contexts/BookingEngineContext/BookingEngineContext.d.ts +0 -1
- package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js +18 -9
- package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js.map +1 -1
- package/dist/src/contexts/CompanyContext/CompanyContext.d.ts +0 -1
- package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +21 -11
- package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
- package/dist/src/contexts/ConfirmationFormContext.js +19 -9
- package/dist/src/contexts/ConfirmationFormContext.js.map +1 -1
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContext.d.ts +0 -1
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +25 -15
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -1
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepErrorModal.js +17 -7
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepErrorModal.js.map +1 -1
- package/dist/src/contexts/ErrorContext.js +19 -9
- package/dist/src/contexts/ErrorContext.js.map +1 -1
- package/dist/src/contexts/FullPageEngineContext/EngineBodyLayout.js +1 -2
- package/dist/src/contexts/FullPageEngineContext/EngineBodyLayout.js.map +1 -1
- package/dist/src/contexts/FullPageEngineContext/EnginePageLayout.js +18 -9
- package/dist/src/contexts/FullPageEngineContext/EnginePageLayout.js.map +1 -1
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContext.d.ts +0 -1
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +18 -9
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
- package/dist/src/contexts/HotelOverridesContext.js +17 -7
- package/dist/src/contexts/HotelOverridesContext.js.map +1 -1
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.d.ts +1 -2
- 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 +17 -7
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js.map +1 -1
- package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContext.d.ts +0 -1
- package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js +17 -7
- package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js.map +1 -1
- package/dist/src/contexts/ModalContext.js +18 -9
- package/dist/src/contexts/ModalContext.js.map +1 -1
- package/dist/src/contexts/NotificationContext.js +19 -9
- 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/BookingWizardEngineElement.js +1 -1
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js.map +1 -1
- package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js +17 -7
- package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngine.js.map +1 -1
- package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js +18 -8
- package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js.map +1 -1
- package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.d.ts +16 -16
- package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +20 -10
- 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 +18 -8
- package/dist/src/engines/MemberPortalWidget/MemberPortalWidgetElement.js.map +1 -1
- package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js +17 -7
- 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/handlers/BasketContextErrorHandler.d.ts +1 -1
- package/dist/src/handlers/BasketContextErrorHandler.js.map +1 -1
- package/dist/src/handlers/payment/AdyenPaymentHandler.js +17 -7
- package/dist/src/handlers/payment/AdyenPaymentHandler.js.map +1 -1
- package/dist/src/handlers/payment/PlanpayPaymentHandler.js +17 -7
- package/dist/src/handlers/payment/PlanpayPaymentHandler.js.map +1 -1
- package/dist/src/handlers/payment/VGSMemberPaymentHandler.js.map +1 -1
- package/dist/src/handlers/payment/VGSPaymentHandler.js +19 -9
- package/dist/src/handlers/payment/VGSPaymentHandler.js.map +1 -1
- package/dist/src/hooks/AutoFocusOnSelect.d.ts +0 -1
- 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/Currency.js.map +1 -1
- package/dist/src/hooks/CurrentHotelHook.js.map +1 -1
- package/dist/src/hooks/ElementSortHook.js +17 -7
- package/dist/src/hooks/ElementSortHook.js.map +1 -1
- package/dist/src/hooks/HistoryConsistentPush.js +1 -2
- 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 +2 -3
- package/dist/src/hooks/Query.js.map +1 -1
- package/dist/src/hooks/RoomRateAvailabilityListFromApi.js.map +1 -1
- package/dist/src/hooks/UpdateQueryParameters.js +1 -2
- package/dist/src/hooks/UpdateQueryParameters.js.map +1 -1
- package/dist/src/hooks/VGSHooks.d.ts +0 -1
- 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 +21 -11
- 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/mockApi/AddonAPI.js.map +1 -1
- package/dist/src/mockApi/MemberAPI.js +17 -7
- 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.js +18 -8
- package/dist/src/mockApi/ReservationAPI.js.map +1 -1
- package/dist/src/models/Addon/Addon.js.map +1 -1
- package/dist/src/models/Api/HotelDTO.js +1 -1
- package/dist/src/models/Api/HotelDTO.js.map +1 -1
- package/dist/src/models/AppQueryParameters.js +1 -1
- package/dist/src/models/AppQueryParameters.js.map +1 -1
- package/dist/src/models/BasketAddonRow.js.map +1 -1
- package/dist/src/models/BasketRow.d.ts +2 -1
- package/dist/src/models/BasketRow.js +4 -3
- package/dist/src/models/BasketRow.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.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.js +4 -5
- 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.js +1 -1
- package/dist/src/models/Room/RoomRate.js.map +1 -1
- package/dist/src/pages/account/AccountHome/AccountHomePage.js +17 -7
- package/dist/src/pages/account/AccountHome/AccountHomePage.js.map +1 -1
- package/dist/src/pages/account/AccountRoutes.js +1 -1
- package/dist/src/pages/account/AccountRoutes.js.map +1 -1
- package/dist/src/pages/account/ChangePassword/AccountChangePasswordPage.js +17 -7
- package/dist/src/pages/account/ChangePassword/AccountChangePasswordPage.js.map +1 -1
- package/dist/src/pages/account/Details/AccountDetailsCardsPage.js +17 -7
- package/dist/src/pages/account/Details/AccountDetailsCardsPage.js.map +1 -1
- package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js +17 -7
- package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js.map +1 -1
- package/dist/src/pages/account/Details/AccountDetailsProfilePage.js +17 -7
- package/dist/src/pages/account/Details/AccountDetailsProfilePage.js.map +1 -1
- package/dist/src/pages/account/Help/AccountHelpPage.js +17 -7
- package/dist/src/pages/account/Help/AccountHelpPage.js.map +1 -1
- package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js +17 -7
- package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js.map +1 -1
- package/dist/src/pages/findReservation/FindReservation.js +19 -9
- package/dist/src/pages/findReservation/FindReservation.js.map +1 -1
- package/dist/src/pages/findReservation/FindReservationResults.js +18 -8
- package/dist/src/pages/findReservation/FindReservationResults.js.map +1 -1
- package/dist/src/pages/findReservation/ReservationRow.js +18 -8
- package/dist/src/pages/findReservation/ReservationRow.js.map +1 -1
- package/dist/src/pages/findReservation/ReservationRowModal.js +18 -8
- package/dist/src/pages/findReservation/ReservationRowModal.js.map +1 -1
- package/dist/src/pages/hotel/HotelInfo.js +20 -10
- 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 +18 -8
- package/dist/src/pages/steps/StepAddon/StepAddonComponent.js.map +1 -1
- package/dist/src/pages/steps/StepAddon/StepAddonLoader.js +17 -7
- 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 +17 -7
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js.map +1 -1
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js +18 -8
- 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 +17 -7
- 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 +17 -7
- package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomComponent.js.map +1 -1
- package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomLoader.js +18 -8
- package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomLoader.js.map +1 -1
- package/dist/src/pages/steps/StepGuide.js +18 -8
- package/dist/src/pages/steps/StepGuide.js.map +1 -1
- package/dist/src/pages/steps/StepHotel/StepHotelComponent.js +17 -7
- package/dist/src/pages/steps/StepHotel/StepHotelComponent.js.map +1 -1
- package/dist/src/pages/steps/StepHotel/StepHotelLoader.js +17 -7
- 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 +17 -7
- package/dist/src/pages/steps/StepRoom/StepRoomComponent.js.map +1 -1
- package/dist/src/pages/steps/StepRoom/StepRoomFilters.js +17 -7
- package/dist/src/pages/steps/StepRoom/StepRoomFilters.js.map +1 -1
- package/dist/src/pages/steps/StepRoom/StepRoomLoader.js +18 -8
- 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 +18 -8
- 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 +2 -3
- 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 +18 -8
- package/dist/src/providers/RoomstayThemeEngine.js.map +1 -1
- package/dist/src/providers/feature/DerbysoftClickTrackingFeature.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.map +1 -1
- package/dist/src/providers/storage/StorageProvider.d.ts +1 -1
- package/dist/src/providers/storage/StorageProvider.js +17 -7
- 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 +3 -5
- package/dist/src/stories/CardTypeSelect.stories.d.ts +2 -1
- package/dist/src/stories/Checkbox.stories.d.ts +2 -1
- package/dist/src/stories/ConfirmationModal.stories.js +17 -7
- package/dist/src/stories/ConfirmationModal.stories.js.map +1 -1
- package/dist/src/stories/DateRangePicker.stories.js +17 -7
- package/dist/src/stories/DateRangePicker.stories.js.map +1 -1
- package/dist/src/stories/EnhancedPhoneNumberField.stories.d.ts +2 -1
- package/dist/src/stories/ErrorModal.stories.js +17 -7
- 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 +17 -7
- package/dist/src/stories/FloatingDateRangePicker.stories.js.map +1 -1
- package/dist/src/stories/ForwardedSelect.stories.d.ts +2 -1
- package/dist/src/stories/Icon.stories.js +17 -7
- package/dist/src/stories/Icon.stories.js.map +1 -1
- package/dist/src/stories/IconNavCard.stories.d.ts +6 -15
- package/dist/src/stories/IconText.stories.js +17 -7
- package/dist/src/stories/IconText.stories.js.map +1 -1
- package/dist/src/stories/NumberIncrement.stories.js +17 -7
- package/dist/src/stories/NumberIncrement.stories.js.map +1 -1
- package/dist/src/stories/PasswordBox.stories.d.ts +2 -1
- package/dist/src/stories/PaymentCard.stories.d.ts +2 -1
- package/dist/src/stories/PaymentCardInput.stories.d.ts +2 -1
- package/dist/src/stories/PlanpayButton.stories.d.ts +2 -1
- package/dist/src/stories/RadioButton.stories.d.ts +2 -1
- package/dist/src/stories/RadioButtonGroup.stories.d.ts +2 -3
- package/dist/src/stories/RadioButtonGroup.stories.js +17 -7
- package/dist/src/stories/RadioButtonGroup.stories.js.map +1 -1
- package/dist/src/stories/Select.stories.d.ts +2 -4
- package/dist/src/stories/Select.stories.js +17 -7
- package/dist/src/stories/Select.stories.js.map +1 -1
- package/dist/src/stories/SimpleModal.stories.js +17 -7
- package/dist/src/stories/SimpleModal.stories.js.map +1 -1
- package/dist/src/stories/Slider.stories.d.ts +2 -7
- package/dist/src/stories/Slider.stories.js +17 -7
- package/dist/src/stories/Slider.stories.js.map +1 -1
- package/dist/src/stories/TabbedModal.stories.js +17 -7
- 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 +2 -1
- package/dist/src/stories/TextArea.stories.d.ts +2 -1
- package/dist/src/stories/TextBox.stories.d.ts +2 -1
- package/dist/src/translations/Translation.d.ts +1 -0
- package/dist/src/translations/Translation.js +3 -2
- package/dist/src/translations/Translation.js.map +1 -1
- package/dist/src/translations/languages/en-gb.js +1 -0
- package/dist/src/translations/languages/en-gb.js.map +1 -1
- package/dist/src/util/Analytics/GoogleAnalytics4.js.map +1 -1
- package/dist/src/util/Analytics/UniversalAnalytics.js.map +1 -1
- package/dist/src/util/AsyncAuth.js +17 -7
- 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.js +4 -4
- package/dist/src/util/DataLayer.js.map +1 -1
- package/dist/src/util/Debounce.js +2 -3
- 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.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 +17 -7
- 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/test.bundle.js +1 -1
- package/dist/tests/offline/entry/config/hotelSpecDefault.js.map +1 -1
- package/dist/vendors.bundle.js +1 -1
- package/package.json +7 -4
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
36
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
37
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdyenPaymentHandler.js","sourceRoot":"/","sources":["src/handlers/payment/AdyenPaymentHandler.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AdyenPaymentHandler.js","sourceRoot":"/","sources":["src/handlers/payment/AdyenPaymentHandler.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAkD;AAClD,yCAA4E;AAC5E,+CAAsC;AAEtC,8GAA2G;AAIpG,MAAM,mBAAmB,GAAG,GAAmB,EAAE;IACpD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAA,uBAAe,GAAE,CAAC;IAEpC,MAAM,UAAU,GAAG,IAAA,cAAM,EAA2B,IAAI,CAAC,CAAC;IAE1D,OAAO;QACH,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,MAAK,0BAAmB,CAAC,KAAK;QAC/D,WAAW,EAAE,IAAI;QACjB,oBAAoB,EAAE,IAAI;QAC1B,oBAAoB,EAAE,4BAAqB,CAAC,KAAK;QACjD,SAAS,EAAE,GAAS,EAAE;YAClB,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACrB,OAAO,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAC9C,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,sEAAsE,EAAE,CAAC;QACpI,CAAC,CAAA;QACD,8BAA8B,EAAE,GAAS,EAAE;YACvC,OAAO;gBACH,MAAM,EAAE,4BAAqB,CAAC,KAAK;aACtC,CAAC;QACN,CAAC,CAAA;QACD,kBAAkB,EAAE,GAAG,EAAE;YACrB,OAAO,8BAAC,uCAAkB,IAAC,GAAG,EAAE,UAAU,GAAI,CAAC;QACnD,CAAC;KACJ,CAAC;AACN,CAAC,CAAC;AA3BW,QAAA,mBAAmB,uBA2B9B","sourcesContent":["import { useCurrentHotel } from '@frontend/hooks';\nimport { EBookingPaymentMethod, EHotelCardProcessor } from '@roomstay/core';\nimport React, { useRef } from 'react';\n\nimport { AdyenPaymentOption } from '@/components/steps/confirmation/AdyenPaymentOption/AdyenPaymentOption';\n\nimport { PaymentHandler, PaymentHandlerElementRef } from './PaymentHandler';\n\nexport const adyenPaymentHandler = (): PaymentHandler => {\n const { hotel } = useCurrentHotel();\n\n const paymentRef = useRef<PaymentHandlerElementRef>(null);\n\n return {\n name: 'Adyen',\n isAvailable: hotel?.cardProcessor === EHotelCardProcessor.Adyen,\n isExclusive: true,\n requireBookingPlaced: true,\n bookingPaymentMethod: EBookingPaymentMethod.Adyen,\n onConfirm: async () => {\n if (paymentRef.current) {\n return paymentRef.current.submitPayment();\n }\n\n return { success: false, retryPayment: false, message: 'Something has gone wrong. Failed to get payment infromation details.' };\n },\n getBookingPaymentRequestObject: async () => {\n return {\n Method: EBookingPaymentMethod.Adyen,\n };\n },\n renderPaymentInput: () => {\n return <AdyenPaymentOption ref={paymentRef} />;\n },\n };\n};\n"]}
|
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
36
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
37
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlanpayPaymentHandler.js","sourceRoot":"/","sources":["src/handlers/payment/PlanpayPaymentHandler.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PlanpayPaymentHandler.js","sourceRoot":"/","sources":["src/handlers/payment/PlanpayPaymentHandler.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAqE;AACrE,yCAAuD;AACvD,kDAA0B;AAC1B,+CAA0C;AAE1C,gGAAwE;AACxE,+FAA4F;AAC5F,iEAAiE;AACjE,8DAAyC;AAIlC,MAAM,qBAAqB,GAAG,GAAmB,EAAE;IACtD,MAAM,EAAE,sBAAsB,EAAE,GAAG,IAAA,wCAAoB,GAAE,CAAC;IAE1D,MAAM,aAAa,GAAG,IAAA,kBAAU,EAAC,wBAAa,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,IAAA,2BAAgB,GAAE,CAAC;IAEnC,MAAM,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,IAAA,iBAAU,GAAE,CAAC;IAExD,OAAO;QACH,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,kBAAkB,CAAA,IAAI,IAAA,eAAK,EAAC,aAAa,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAA,eAAK,GAAE,EAAE,KAAK,CAAC,GAAG,aAAa,CAAC,kBAAkB;QAC/J,WAAW,EAAE,KAAK;QAElB,cAAc,EAAE,oEAAoE;QACpF,oBAAoB,EAAE,IAAI;QAC1B,iBAAiB,EAAE,IAAI;QACvB,oBAAoB,EAAE,4BAAqB,CAAC,OAAO;QACnD,SAAS,EAAE,GAAS,EAAE;YAClB,6EAA6E;YAE7E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QACtE,CAAC,CAAA;QACD,8BAA8B,EAAE,GAAS,EAAE;YACvC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC3D,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YACrC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,eAAe,CAAC,mBAAmB,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;YAChF,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,4BAAqB,CAAC,OAAO,CAAC,CAAC;YAC3D,MAAM,WAAW,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,wBAAwB,MAAM,EAAE,CAAC;YAClI,MAAM,OAAO,GAAG;gBACZ,MAAM,EAAE,4BAAqB,CAAC,OAAO;gBACrC,iBAAiB,EAAE,sBAAsB,IAAI,SAAS;gBACtD,WAAW,EAAE,WAAW;aAC3B,CAAC;YAEF,OAAO,OAAO,CAAC;QACnB,CAAC,CAAA;QACD,WAAW,EAAE,GAAG,EAAE,CAAC,8BAAC,sBAAY,OAAG;QACnC,kBAAkB,EAAE,GAAG,EAAE,CAAC,8BAAC,2CAAoB,OAAG;KACrD,CAAC;AACN,CAAC,CAAC;AAvCW,QAAA,qBAAqB,yBAuChC","sourcesContent":["import { BasketContext, useBookingEngine } from '@frontend/contexts';\nimport { EBookingPaymentMethod } from '@roomstay/core';\nimport dayjs from 'dayjs';\nimport React, { useContext } from 'react';\n\nimport PlanpayLabel from '@/components/steps/confirmation/PlanpayLabel';\nimport { PlanpayPaymentMethod } from '@/components/steps/confirmation/PlanpayPaymentMethod';\nimport { useConfirmationQuery } from '@/hooks/ConfirmationQuery';\nimport usePlanpay from '@/hooks/Planpay';\n\nimport { PaymentHandler } from './PaymentHandler';\n\nexport const planpayPaymentHandler = (): PaymentHandler => {\n const { queryPlanpayCheckoutId } = useConfirmationQuery();\n\n const basketContext = useContext(BasketContext);\n const context = useBookingEngine();\n\n const { hasPricePreview, planpayConfig } = usePlanpay();\n\n return {\n name: 'Planpay',\n isAvailable: !!hasPricePreview && !!planpayConfig?.minDaysShowPlanpay && dayjs(basketContext.startDate).diff(dayjs(), 'day') > planpayConfig.minDaysShowPlanpay,\n isExclusive: false,\n\n disabledReason: 'You must fill all the above details before proceeding with Planpay',\n requireBookingPlaced: true,\n requireFormFilled: true,\n bookingPaymentMethod: EBookingPaymentMethod.Planpay,\n onConfirm: async () => {\n // No need for validation as passthrough moves all payment data to 3rd party.\n\n return { success: true, retryPayment: false, message: 'Success' };\n },\n getBookingPaymentRequestObject: async () => {\n const params = new URLSearchParams(window.location.search);\n params.set('roomstayId', '{{rsId}}');\n params.set('session', context.sessionProvider.getCurrentSessionID().toString());\n params.set('paymentMethod', EBookingPaymentMethod.Planpay);\n const redirectURL = `${window.location.origin}${window.location.pathname}${window.location.search}#/step/confirmation/?${params}`;\n const payment = {\n Method: EBookingPaymentMethod.Planpay,\n PlanpayCheckoutId: queryPlanpayCheckoutId || undefined,\n RedirectUrl: redirectURL,\n };\n\n return payment;\n },\n renderInput: () => <PlanpayLabel />,\n renderPaymentInput: () => <PlanpayPaymentMethod />,\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VGSMemberPaymentHandler.js","sourceRoot":"/","sources":["src/handlers/payment/VGSMemberPaymentHandler.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iDAAsD;AACtD,2CAAkD;AAClD,yCAA4E;AAC5E,kDAA0B;AAE1B,+GAAuF;AAIhF,MAAM,uBAAuB,GAAG,GAAmB,EAAE;;IACxD,MAAM,EAAE,KAAK,EAAE,mCAAmC,EAAE,GAAG,IAAA,uBAAe,GAAE,CAAC;IACzE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,IAAA,2BAAgB,GAAE,CAAC;IAErD,kFAAkF;IAClF,MAAM,aAAa,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,EAAC,CAAC,CAAC,KAAK,CAAC,aAAa,KAAK,0BAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAE5G,IAAI,YAAY,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,CAAC,CAAC,CAAC;IAE9B,IAAI,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,WAAW,EAAE;
|
|
1
|
+
{"version":3,"file":"VGSMemberPaymentHandler.js","sourceRoot":"/","sources":["src/handlers/payment/VGSMemberPaymentHandler.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iDAAsD;AACtD,2CAAkD;AAClD,yCAA4E;AAC5E,kDAA0B;AAE1B,+GAAuF;AAIhF,MAAM,uBAAuB,GAAG,GAAmB,EAAE;;IACxD,MAAM,EAAE,KAAK,EAAE,mCAAmC,EAAE,GAAG,IAAA,uBAAe,GAAE,CAAC;IACzE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,IAAA,2BAAgB,GAAE,CAAC;IAErD,kFAAkF;IAClF,MAAM,aAAa,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,EAAC,CAAC,CAAC,KAAK,CAAC,aAAa,KAAK,0BAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAE5G,IAAI,YAAY,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,CAAC,CAAC,CAAC;IAE9B,IAAI,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,WAAW,EAAE,CAAC;QAC9B,YAAY,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,MAAK,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,WAAW,CAAA,CAAC,CAAC;IACtF,CAAC;IAED,OAAO;QACH,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,aAAa,IAAI,CAAC,CAAC,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,0CAAE,QAAQ,CAAC,4BAAqB,CAAC,IAAI,CAAC,CAAA,IAAI,CAAC,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAA,IAAI,mCAAmC;QACrJ,WAAW,EAAE,KAAK;QAClB,oBAAoB,EAAE,KAAK;QAC3B,oBAAoB,EAAE,4BAAqB,CAAC,IAAI;QAChD,UAAU,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC9B,KAAK,EAAE,8BAAC,6BAAmB,IAAC,IAAI,EAAE,IAAI,GAAI;YAC1C,KAAK,EAAE,IAAI,CAAC,MAAM;SACrB,CAAC,CAAC;QACH,SAAS,EAAE,GAAS,EAAE;YAClB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;QAC1D,CAAC,CAAA;QACD,8BAA8B,EAAE,GAAS,EAAE;YACvC,OAAO;gBACH,MAAM,EAAE,4BAAqB,CAAC,SAAS;gBACvC,WAAW,EAAE,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM;aACpC,CAAC;QACN,CAAC,CAAA;QACD,WAAW,EAAE,GAAG,EAAE,CAAC,8BAAC,6BAAmB,IAAC,IAAI,EAAE,YAAY,GAAI;QAE9D,kBAAkB,EAAE,SAAS;QAE7B,iBAAiB,EAAE,CAAC,KAAc,EAAE,EAAE;YAClC,YAAY,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC;QAChE,CAAC;KACJ,CAAC;AACN,CAAC,CAAC;AAxCW,QAAA,uBAAuB,2BAwClC","sourcesContent":["import { useMemberContext } from '@frontend/contexts';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport { EBookingPaymentMethod, EHotelCardProcessor } from '@roomstay/core';\nimport React from 'react';\n\nimport InlinePaymentOption from '@/components/generic/PaymentCard/InlinePaymentOption';\n\nimport { PaymentHandler } from './PaymentHandler';\n\nexport const vgsMemberPaymentHandler = (): PaymentHandler => {\n const { hotel, isMemberPaymentInformationAvailable } = useCurrentHotel();\n const { cards, roomstayMember } = useMemberContext();\n\n // In this instance Passthrough means that the card details are forwarded via VGS.\n const isPassthrough = hotel?.cardProcessor ? hotel.cardProcessor === EHotelCardProcessor.Passthrough : true;\n\n let selectedCard = cards?.[0];\n\n if (roomstayMember?.defaultCard) {\n selectedCard = cards?.find((card) => card.cardId === roomstayMember?.defaultCard);\n }\n\n return {\n name: 'VGSMember',\n isAvailable: isPassthrough && !!hotel?.paymentMethods?.includes(EBookingPaymentMethod.Card) && !!cards?.length && isMemberPaymentInformationAvailable,\n isExclusive: false,\n requireBookingPlaced: false,\n bookingPaymentMethod: EBookingPaymentMethod.Card,\n subOptions: cards?.map((card) => ({\n label: <InlinePaymentOption card={card} />,\n value: card.cardId,\n })),\n onConfirm: async () => {\n return { success: true, message: 'Using saved card' };\n },\n getBookingPaymentRequestObject: async () => {\n return {\n Method: EBookingPaymentMethod.SavedCard,\n SavedCardID: selectedCard?.cardId,\n };\n },\n renderInput: () => <InlinePaymentOption card={selectedCard} />,\n\n renderPaymentInput: undefined,\n\n onSubOptionChange: (value?: string) => {\n selectedCard = cards?.find((card) => card.cardId === value);\n },\n };\n};\n"]}
|
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
36
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
37
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -54,9 +64,9 @@ const vgsPaymentHandler = () => {
|
|
|
54
64
|
requireBookingPlaced: false,
|
|
55
65
|
bookingPaymentMethod: core_1.EBookingPaymentMethod.Card,
|
|
56
66
|
onConfirm: () => __awaiter(void 0, void 0, void 0, function* () {
|
|
57
|
-
var
|
|
67
|
+
var _a;
|
|
58
68
|
// No need for validation as passthrough moves all payment data to 3rd party.
|
|
59
|
-
const response = yield ((
|
|
69
|
+
const response = yield ((_a = paymentRef.current) === null || _a === void 0 ? void 0 : _a.submitPayment());
|
|
60
70
|
if (response) {
|
|
61
71
|
return response;
|
|
62
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VGSPaymentHandler.js","sourceRoot":"/","sources":["src/handlers/payment/VGSPaymentHandler.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"VGSPaymentHandler.js","sourceRoot":"/","sources":["src/handlers/payment/VGSPaymentHandler.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAkD;AAClD,yCAA4E;AAC5E,+CAAsC;AAEtC,+GAAuF;AACvF,kIAAgI;AAIzH,MAAM,iBAAiB,GAAG,GAAmB,EAAE;;IAClD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAA,uBAAe,GAAE,CAAC;IAEpC,MAAM,UAAU,GAAG,IAAA,cAAM,EAA2B,IAAI,CAAC,CAAC;IAE1D,kFAAkF;IAClF,MAAM,aAAa,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,EAAC,CAAC,CAAC,KAAK,CAAC,aAAa,KAAK,0BAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAE5G,OAAO;QACH,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,aAAa,IAAI,CAAC,CAAC,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,0CAAE,QAAQ,CAAC,4BAAqB,CAAC,IAAI,CAAC,CAAA;QAC3F,WAAW,EAAE,KAAK;QAClB,oBAAoB,EAAE,KAAK;QAC3B,oBAAoB,EAAE,4BAAqB,CAAC,IAAI;QAChD,SAAS,EAAE,GAAS,EAAE;;YAClB,6EAA6E;YAC7E,MAAM,QAAQ,GAAG,MAAM,CAAA,MAAA,UAAU,CAAC,OAAO,0CAAE,aAAa,EAAE,CAAA,CAAC;YAE3D,IAAI,QAAQ,EAAE,CAAC;gBACX,OAAO,QAAQ,CAAC;YACpB,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,sEAAsE,EAAE,CAAC;QACpI,CAAC,CAAA;QACD,8BAA8B,EAAE,GAAS,EAAE;YACvC,OAAO;gBACH,MAAM,EAAE,4BAAqB,CAAC,IAAI;aACrC,CAAC;QACN,CAAC,CAAA;QACD,WAAW,EAAE,GAAG,EAAE,CAAC,8BAAC,6BAAmB,IAAC,MAAM,SAAG;QACjD,kBAAkB,EAAE,GAAG,EAAE,CAAC,8BAAC,gEAA+B,IAAC,GAAG,EAAE,UAAU,GAAI;KACjF,CAAC;AACN,CAAC,CAAC;AAhCW,QAAA,iBAAiB,qBAgC5B","sourcesContent":["import { useCurrentHotel } from '@frontend/hooks';\nimport { EBookingPaymentMethod, EHotelCardProcessor } from '@roomstay/core';\nimport React, { useRef } from 'react';\n\nimport InlinePaymentOption from '@/components/generic/PaymentCard/InlinePaymentOption';\nimport { StepConfirmationVGSPaymentInput } from '@/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails';\n\nimport { PaymentHandler, PaymentHandlerElementRef } from './PaymentHandler';\n\nexport const vgsPaymentHandler = (): PaymentHandler => {\n const { hotel } = useCurrentHotel();\n\n const paymentRef = useRef<PaymentHandlerElementRef>(null);\n\n // In this instance Passthrough means that the card details are forwarded via VGS.\n const isPassthrough = hotel?.cardProcessor ? hotel.cardProcessor === EHotelCardProcessor.Passthrough : true;\n\n return {\n name: 'VGS',\n isAvailable: isPassthrough && !!hotel?.paymentMethods?.includes(EBookingPaymentMethod.Card),\n isExclusive: false,\n requireBookingPlaced: false,\n bookingPaymentMethod: EBookingPaymentMethod.Card,\n onConfirm: async () => {\n // No need for validation as passthrough moves all payment data to 3rd party.\n const response = await paymentRef.current?.submitPayment();\n\n if (response) {\n return response;\n }\n\n return { success: false, retryPayment: false, message: 'Something has gone wrong. Failed to get payment infromation details.' };\n },\n getBookingPaymentRequestObject: async () => {\n return {\n Method: EBookingPaymentMethod.Card,\n };\n },\n renderInput: () => <InlinePaymentOption active />,\n renderPaymentInput: () => <StepConfirmationVGSPaymentInput ref={paymentRef} />,\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoFocusOnSelect.js","sourceRoot":"/","sources":["src/hooks/AutoFocusOnSelect.ts"],"names":[],"mappings":";;;AAAA,iCAAiE;AAEjE,+CAA4C;AAQ5C,MAAM,QAAQ,GAAG,GAAG,CAAC;AAEd,MAAM,oBAAoB,GAAG,CAAC,EAAE,GAAG,EAAE,0BAA0B,GAAG,KAAK,EAAE,eAAe,GAAG,IAAI,EAA6B,EAAE,EAAE;IACnI,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,IAAA,gBAAQ,EAAU,KAAK,CAAC,CAAC;IAC3D,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAU,KAAK,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,IAAA,cAAM,GAAkB,CAAC;IAEzC,IAAA,iBAAS,EAAC,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAEnD,MAAM,gBAAgB,GAAG,IAAA,mBAAW,EAChC,IAAA,mBAAQ,EAAC,CAAC,KAAK,EAAE,EAAE;QACf,YAAY,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC,EAAE,QAAQ,CAAC,EACZ,EAAE,CACL,CAAC;IAEF,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC1B,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACxB,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,CAAC,CAAQ,EAAE,EAAE;QAClC,MAAM,YAAY,GAAG,CAAC,CAAC,YAAY,EAAmB,CAAC;QACvD,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,WAAC,OAAA,MAAA,EAAE,CAAC,UAAU,mDAAG,GAAG,CAAC,CAAA,EAAA,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"AutoFocusOnSelect.js","sourceRoot":"/","sources":["src/hooks/AutoFocusOnSelect.ts"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useRef, useState } from 'react';\n\nimport { debounce } from '../util/Debounce';\n\ninterface UseAutoFocusOnSelectProps {\n ref: HTMLInputElement | null;\n onlyAutoOpenWhenInputEmpty?: boolean;\n focusOnSelected?: boolean;\n}\n\nconst duration = 300;\n\nexport const useAutoFocusOnSelect = ({ ref, onlyAutoOpenWhenInputEmpty = false, focusOnSelected = true }: UseAutoFocusOnSelectProps) => {\n const [isFocused, setIsFocused] = useState<boolean>(false);\n const [isDropdownOpen, setIsDropdownOpen] = useState(false);\n const lockOpen = useRef<boolean>(false);\n const timeout = useRef<NodeJS.Timeout>();\n\n useEffect(() => clearTimeout(timeout.current), []);\n\n const debounceSetFocus = useCallback(\n debounce((value) => {\n setIsFocused(value);\n }, duration),\n []\n );\n\n const onTriggerClicked = () => {\n setIsDropdownOpen(true);\n debounceSetFocus(true);\n };\n\n const onDropdownClosed = (e: Event) => {\n const composedPath = e.composedPath() as HTMLElement[];\n if (composedPath.some((el) => el.isSameNode?.(ref))) {\n return;\n }\n if (!lockOpen.current) {\n setIsDropdownOpen(false);\n }\n debounceSetFocus(false);\n };\n\n const onItemSelected = () => {\n if (!lockOpen.current) setIsDropdownOpen(false);\n if (focusOnSelected) ref?.focus();\n else ref?.blur();\n };\n\n const _onFocus = useCallback(() => {\n if (!isFocused) {\n if (!onlyAutoOpenWhenInputEmpty || !ref?.value) {\n setIsDropdownOpen(true);\n lockOpen.current = true;\n timeout.current = setTimeout(() => {\n lockOpen.current = false;\n }, duration);\n }\n }\n debounceSetFocus(true);\n }, [setIsFocused, isFocused, isDropdownOpen, setIsDropdownOpen]);\n\n const _onBlur = useCallback(() => {\n debounceSetFocus(false);\n }, [setIsFocused]);\n\n useEffect(() => {\n if (!ref) return;\n ref.addEventListener('focus', _onFocus);\n ref.addEventListener('blur', _onBlur);\n ref.addEventListener('click', _onFocus);\n return () => {\n if (!ref) return;\n ref.removeEventListener('focus', _onFocus);\n ref.removeEventListener('blur', _onBlur);\n ref.removeEventListener('click', _onFocus);\n };\n }, [ref, _onFocus, _onBlur]);\n return {\n isFocused,\n isDropdownOpen,\n onDropdownClosed,\n onTriggerClicked,\n onItemSelected,\n setIsDropdownOpen,\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BodyClickHook.js","sourceRoot":"/","sources":["src/hooks/BodyClickHook.ts"],"names":[],"mappings":";;;AAAO,MAAM,YAAY,GAAG,GAAG,EAAE;IAC7B,MAAM,WAAW,GAAG,CAAC,KAAoB,EAAE,SAAwC,QAAQ,EAAE,EAAE;QAC3F,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,KAAoB,EAAE,SAAwC,QAAQ,EAAE,EAAE;QAC3F,MAAM,WAAW,GAAG,CAAC,CAAQ,EAAE,EAAE;YAC7B,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC;QAEF,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAE/C,OAAO;YACH,MAAM,EAAE,GAAG,EAAE;gBACT,MAAM,IAAI,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAC/C,CAAC;SACJ,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,KAAoB,EAAE,MAAmB,EAAE,SAAwC,QAAQ,EAAE,EAAE;QACtH,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAQ,EAAE,EAAE;;YACtC,KAAK,MAAM,OAAO,IAAI,CAAC,CAAC,YAAY,EAAmB,EAAE;
|
|
1
|
+
{"version":3,"file":"BodyClickHook.js","sourceRoot":"/","sources":["src/hooks/BodyClickHook.ts"],"names":[],"mappings":";;;AAAO,MAAM,YAAY,GAAG,GAAG,EAAE;IAC7B,MAAM,WAAW,GAAG,CAAC,KAAoB,EAAE,SAAwC,QAAQ,EAAE,EAAE;QAC3F,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,KAAoB,EAAE,SAAwC,QAAQ,EAAE,EAAE;QAC3F,MAAM,WAAW,GAAG,CAAC,CAAQ,EAAE,EAAE;YAC7B,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC;QAEF,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAE/C,OAAO;YACH,MAAM,EAAE,GAAG,EAAE;gBACT,MAAM,IAAI,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAC/C,CAAC;SACJ,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,KAAoB,EAAE,MAAmB,EAAE,SAAwC,QAAQ,EAAE,EAAE;QACtH,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAQ,EAAE,EAAE;;YACtC,KAAK,MAAM,OAAO,IAAI,CAAC,CAAC,YAAY,EAAmB,EAAE,CAAC;gBACtD,IAAI,MAAA,OAAO,CAAC,UAAU,wDAAG,MAAM,CAAC,EAAE,CAAC;oBAC/B,uEAAuE;oBACvE,OAAO;gBACX,CAAC;YACL,CAAC;YAED,yEAAyE;YACzE,KAAK,CAAC,CAAC,CAAC,CAAC;QACb,CAAC,EAAE,MAAM,CAAC,CAAC;QAEX,OAAO,QAAQ,CAAC;IACpB,CAAC,CAAC;IACF,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC;AAC9C,CAAC,CAAC;AAnCW,QAAA,YAAY,gBAmCvB","sourcesContent":["export const useBodyClick = () => {\n const removeEvent = (event: EventListener, target: HTMLElement | Document | null = document) => {\n target?.removeEventListener('click', event);\n };\n\n const onBodyClick = (event: EventListener, target: HTMLElement | Document | null = document) => {\n const mappedEvent = (e: Event) => {\n return event(e);\n };\n\n target?.addEventListener('click', mappedEvent);\n\n return {\n remove: () => {\n target && removeEvent(mappedEvent, target);\n },\n };\n };\n\n const onBodyClickExcept = (event: EventListener, ignore: HTMLElement, target: HTMLElement | Document | null = document) => {\n const response = onBodyClick((e: Event) => {\n for (const element of e.composedPath() as HTMLElement[]) {\n if (element.isSameNode?.(ignore)) {\n // Preventing the event from taking place, as it's in the ignored list.\n return;\n }\n }\n\n // Assuming target click isn't in the ignore area, proceed with the event\n event(e);\n }, target);\n\n return response;\n };\n return { onBodyClick, onBodyClickExcept };\n};\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { Dispatch, SetStateAction } from 'react';
|
|
2
|
-
export declare const useCombinedState: <T>(value?: T
|
|
2
|
+
export declare const useCombinedState: <T>(value?: T, defaultValue?: T) => [T | undefined, Dispatch<SetStateAction<T | undefined>>];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Currency.js","sourceRoot":"/","sources":["src/hooks/Currency.ts"],"names":[],"mappings":";;;;;AAAA,iCAAiE;AAEjE,yCAA4C;AAC5C,+DAA2D;AAC3D,oFAA4D;AAgB5D,MAAM,WAAW,GAAG,CAAC,KAAuB,EAAE,EAAE;;IAC5C,MAAM,EAAE,eAAe,EAAE,GAAG,IAAA,kBAAU,EAAC,yBAAc,CAAC,CAAC;IACvD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAA,kCAAe,GAAE,CAAC;IAEpC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;IACtC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAElD,MAAM,aAAa,GAAG,CAAC,QAAgB,EAAE,OAAiB,EAAE,EAAE;QAC1D,IAAI,KAAK,CAAC,mBAAmB,EAAE;
|
|
1
|
+
{"version":3,"file":"Currency.js","sourceRoot":"/","sources":["src/hooks/Currency.ts"],"names":[],"mappings":"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","sourcesContent":["import { useContext, useEffect, useMemo, useState } from 'react';\n\nimport { CompanyContext } from '@/contexts';\nimport { useCurrentHotel } from '@/hooks/CurrentHotelHook';\nimport CurrencyProvider from '@/providers/CurrencyProvider';\n\nexport interface UseCurrencyProps {\n removeCurrencyAfterChar?: number;\n shortenThousandsAfter?: number;\n\n children: any;\n\n hideDecimals?: boolean;\n\n disableLocalization?: boolean;\n disableLoading?: boolean;\n\n originalCurrencyCode?: string;\n}\n\nconst useCurrency = (props: UseCurrencyProps) => {\n const { currentCurrency } = useContext(CompanyContext);\n const { hotel } = useCurrentHotel();\n\n const [value, setValue] = useState(0);\n const [isLoading, setIsLoading] = useState(false);\n\n const toLocalString = (original: number, toFixed?: boolean) => {\n if (props.disableLocalization) {\n return original;\n }\n\n if (original) {\n return original.toLocaleString(undefined, { minimumFractionDigits: toFixed ? 2 : 0 });\n }\n\n return original;\n };\n\n useEffect(() => {\n let isCancelled = false;\n\n setIsLoading(true);\n setTimeout(\n () => {\n if (!isCancelled) {\n setIsLoading(false);\n\n if (isNaN(props.children)) {\n setValue(props.children);\n } else {\n const totalValue = CurrencyProvider.convertPrice(\n props.children,\n !props.hideDecimals,\n currentCurrency,\n props.originalCurrencyCode ?? (hotel?.defaultCurrency as string)\n );\n\n if (!isCancelled) {\n setValue(totalValue);\n }\n }\n }\n },\n props.disableLoading ? 0 : 200\n );\n\n return () => {\n setIsLoading(false);\n isCancelled = true;\n };\n }, [props.children, currentCurrency, props.originalCurrencyCode, CurrencyProvider.getRatesForCurrencyCode(props.originalCurrencyCode ?? (hotel?.defaultCurrency as string))]);\n\n return useMemo(() => {\n const stringVal = props.disableLocalization ? value.toString() : value?.toLocaleString();\n\n let symbol = CurrencyProvider.getSymbol(currentCurrency);\n if (props.removeCurrencyAfterChar) {\n const priceLength = String(value).length;\n if (priceLength + symbol.length > props.removeCurrencyAfterChar) {\n symbol = CurrencyProvider.getShortSymbol(currentCurrency);\n if (priceLength + symbol.length > props.removeCurrencyAfterChar) {\n symbol = '';\n }\n }\n }\n\n let prettyValue = toLocalString(value, !(props.hideDecimals || typeof value !== 'number'));\n\n if (props.shortenThousandsAfter && props.shortenThousandsAfter <= String(value).length && props.hideDecimals) {\n prettyValue = stringVal.substring(0, stringVal.length - 3) + '…';\n }\n\n return {\n isLoading,\n symbol,\n prettyValue,\n value,\n };\n }, [value, isLoading]);\n};\n\nexport default useCurrency;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CurrentHotelHook.js","sourceRoot":"/","sources":["src/hooks/CurrentHotelHook.tsx"],"names":[],"mappings":";;;AAAA,iDAAoD;AACpD,yCAAqD;AACrD,iCAA4C;AAE5C,0EAAuE;AACvE,wCAA2C;AAEpC,MAAM,eAAe,GAAG,GAAG,EAAE;;IAChC,IAAI;
|
|
1
|
+
{"version":3,"file":"CurrentHotelHook.js","sourceRoot":"/","sources":["src/hooks/CurrentHotelHook.tsx"],"names":[],"mappings":";;;AAAA,iDAAoD;AACpD,yCAAqD;AACrD,iCAA4C;AAE5C,0EAAuE;AACvE,wCAA2C;AAEpC,MAAM,eAAe,GAAG,GAAG,EAAE;;IAChC,IAAI,CAAC;QACD,MAAM,cAAc,GAAG,IAAA,kBAAU,EAAC,yBAAc,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,cAAc,CAAC,aAAa,CAAC;QAE3C,IAAI,CAAC,cAAc,EAAE,CAAC;YAClB,MAAM,IAAI,6CAAqB,EAAE,CAAC;QACtC,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;;YACnC,IAAI,CAAC,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,0CAAE,MAAM,CAAA;gBAAE,OAAO,KAAK,CAAC;YAEzC,OAAO,IAAA,mBAAW,EAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC;QACvD,CAAC,EAAE,CAAC,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,0CAAE,MAAM,CAAC,CAAC,CAAC;QAE5B,MAAM,kBAAkB,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;;YACpC,IAAI,CAAC,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,0CAAE,OAAO,CAAA;gBAAE,OAAO,KAAK,CAAC;YAE1C,OAAO,IAAA,mBAAW,EAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC;QACxD,CAAC,EAAE,CAAC,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,0CAAE,OAAO,CAAC,CAAC,CAAC;QAE7B,MAAM,oBAAoB,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,MAAK,0BAAmB,CAAC,WAAW,CAAC;QAEtF,MAAM,mCAAmC,GAAG,CAAC,KAAK,IAAI,CAAC,oBAAoB,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,oBAAoB,MAAK,IAAI,CAAC,CAAC;QAErH,OAAO;YACH,KAAK;YACL,oBAAoB;YACpB,mCAAmC;YACnC,iBAAiB;YACjB,kBAAkB;YAElB,WAAW,EAAE,CAAC,UAAkB,EAAE,EAAE;gBAChC,cAAc,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAC3C,CAAC;SACJ,CAAC;IACN,CAAC;IAAC,OAAO,EAAE,EAAE,CAAC;QACV,kEAAkE;QAClE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,EAAE,CAAC;IACd,CAAC;AACL,CAAC,CAAC;AAzCW,QAAA,eAAe,mBAyC1B","sourcesContent":["import { CompanyContext } from '@frontend/contexts';\nimport { EHotelCardProcessor } from '@roomstay/core';\nimport { useContext, useMemo } from 'react';\n\nimport { NoCompanyContextError } from '@/errors/NoCompanyContextError';\nimport { lightOrDark } from '@/util/Color';\n\nexport const useCurrentHotel = () => {\n try {\n const companyContext = useContext(CompanyContext);\n const hotel = companyContext.selectedHotel;\n\n if (!companyContext) {\n throw new NoCompanyContextError();\n }\n\n const isAccentColorDark = useMemo(() => {\n if (!hotel?.colors?.accent) return false;\n\n return lightOrDark(hotel.colors.accent) === 'dark';\n }, [hotel?.colors?.accent]);\n\n const isAccent2ColorDark = useMemo(() => {\n if (!hotel?.colors?.accent2) return false;\n\n return lightOrDark(hotel.colors.accent2) === 'dark';\n }, [hotel?.colors?.accent2]);\n\n const isPassthroughPayment = hotel?.cardProcessor === EHotelCardProcessor.Passthrough;\n\n const isMemberPaymentInformationAvailable = !hotel || (isPassthroughPayment && hotel?.disableSavedPayments !== true);\n\n return {\n hotel,\n isPassthroughPayment,\n isMemberPaymentInformationAvailable,\n isAccentColorDark,\n isAccent2ColorDark,\n\n changeHotel: (newHotelID: string) => {\n companyContext.changeHotel(newHotelID);\n },\n };\n } catch (ex) {\n // Masssive try /catch to isolate non-contextual uses of this hook\n console.error(ex);\n return {};\n }\n};\n"]}
|
|
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
15
15
|
}) : function(o, v) {
|
|
16
16
|
o["default"] = v;
|
|
17
17
|
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
25
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
36
|
exports.useElementSort = void 0;
|
|
27
37
|
const react_1 = __importStar(require("react"));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ElementSortHook.js","sourceRoot":"/","sources":["src/hooks/ElementSortHook.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ElementSortHook.js","sourceRoot":"/","sources":["src/hooks/ElementSortHook.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAwE;AAajE,MAAM,cAAc,GAAG,CAAC,IAAwB,EAAE,EAAE;IACvD,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,IAAA,gBAAQ,EAAgB,EAAE,CAAC,CAAC;IAE5E,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,MAAM,UAAU,GAAkB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;aAChD,IAAI,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,EAAE;YAC5B,OAAO,UAAU,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;QACpD,CAAC,CAAC;aACD,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,8BAAC,gBAAQ,IAAC,GAAG,EAAE,KAAK,IAAG,IAAI,CAAC,SAAS,CAAY,CAAC,CAAC;QAE7E,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,OAAO;QACH,gBAAgB;KACnB,CAAC;AACN,CAAC,CAAC;AAhBW,QAAA,cAAc,kBAgBzB","sourcesContent":["import React, { Fragment, ReactNode, useEffect, useState } from 'react';\n\nexport type OrderableReactNode = {\n // TODO: Add complex references to other OrderableReactNodes to chain blocks, and keep references.\n priority: number;\n // TODO: Add a way to pass props through to children.\n component: ReactNode;\n};\n\nexport type OrderableReactList = {\n [name: string]: OrderableReactNode;\n};\n\nexport const useElementSort = (list: OrderableReactList) => {\n const [sortedComponents, setSortedComponents] = useState<JSX.Element[]>([]);\n\n useEffect(() => {\n const valueArray: JSX.Element[] = Object.values(list)\n .sort((firstValue, nextValue) => {\n return firstValue.priority - nextValue.priority;\n })\n .map((item, index) => <Fragment key={index}>{item.component}</Fragment>);\n\n setSortedComponents(valueArray);\n }, [list]);\n\n return {\n sortedComponents,\n };\n};\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useHistoryConsistentPush =
|
|
3
|
+
exports.useHistoryConsistentPush = useHistoryConsistentPush;
|
|
4
4
|
const react_router_dom_1 = require("react-router-dom");
|
|
5
5
|
function useHistoryConsistentPush() {
|
|
6
6
|
const navigate = (0, react_router_dom_1.useNavigate)();
|
|
@@ -19,5 +19,4 @@ function useHistoryConsistentPush() {
|
|
|
19
19
|
});
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
|
-
exports.useHistoryConsistentPush = useHistoryConsistentPush;
|
|
23
22
|
//# sourceMappingURL=HistoryConsistentPush.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HistoryConsistentPush.js","sourceRoot":"/","sources":["src/hooks/HistoryConsistentPush.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"HistoryConsistentPush.js","sourceRoot":"/","sources":["src/hooks/HistoryConsistentPush.ts"],"names":[],"mappings":";;AAEA,4DAoBC;AAtBD,uDAA4D;AAE5D,SAAgB,wBAAwB;IACpC,MAAM,QAAQ,GAAG,IAAA,8BAAW,GAAE,CAAC;IAC/B,MAAM,QAAQ,GAAG,IAAA,8BAAW,GAAE,CAAC;IAE/B,OAAO,CAAC,QAAgB,EAAE,gBAA0B,EAAE,EAAE;QACpD,QAAQ,CACJ;YACI,QAAQ;YACR,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,IAAI,EAAE,QAAQ,CAAC,IAAI;SACtB,EACD;YACI,KAAK,EAAE;gBACH,gBAAgB,EAAE;oBACd,CAAC,QAAQ,CAAC,EAAE,gBAAgB;iBAC/B;aACJ;SACJ,CACJ,CAAC;IACN,CAAC,CAAC;AACN,CAAC","sourcesContent":["import { useLocation, useNavigate } from 'react-router-dom';\n\nexport function useHistoryConsistentPush() {\n const navigate = useNavigate();\n const location = useLocation();\n\n return (pathname: string, preventScrollTop?: boolean) => {\n navigate(\n {\n pathname,\n search: location.search,\n hash: location.hash,\n },\n {\n state: {\n preventScrollTop: {\n [pathname]: preventScrollTop,\n },\n },\n }\n );\n };\n}\n"]}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { MutableRefObject } from 'react';
|
|
2
2
|
import { Option, TSelectOptionKey } from '../components/generic/Select/Select';
|
|
3
3
|
export declare const useKeyboardControlOnSelect: <TOption extends Option<KeyName>, KeyName extends string>({ defaultOption, options, idName, overlayRef, isEnabled, onSelected, optionRefs, optionContainerRef, }: {
|
|
4
|
-
defaultOption?: TOption
|
|
4
|
+
defaultOption?: TOption;
|
|
5
5
|
options: TSelectOptionKey<TOption>[];
|
|
6
6
|
idName: keyof TOption;
|
|
7
7
|
overlayRef: HTMLDivElement | null;
|
|
8
8
|
isEnabled: boolean;
|
|
9
9
|
onSelected: (item: TOption) => void;
|
|
10
10
|
optionRefs: MutableRefObject<{
|
|
11
|
-
[id: string]: HTMLDivElement |
|
|
11
|
+
[id: string]: HTMLDivElement | undefined | null;
|
|
12
12
|
}>;
|
|
13
13
|
optionContainerRef: MutableRefObject<HTMLDivElement | null>;
|
|
14
14
|
}) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeyboardControlOnSelect.js","sourceRoot":"/","sources":["src/hooks/KeyboardControlOnSelect.ts"],"names":[],"mappings":"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","sourcesContent":["import { MutableRefObject, useCallback, useEffect, useState } from 'react';\n\nimport { Option, TSelectOptionKey } from '@/components/generic/Select/Select';\n\nexport const useKeyboardControlOnSelect = <TOption extends Option<KeyName>, KeyName extends string>({\n defaultOption,\n options,\n idName,\n overlayRef,\n isEnabled,\n onSelected,\n optionRefs,\n optionContainerRef,\n}: {\n defaultOption?: TOption;\n options: TSelectOptionKey<TOption>[];\n idName: keyof TOption;\n overlayRef: HTMLDivElement | null;\n isEnabled: boolean;\n onSelected: (item: TOption) => void;\n optionRefs: MutableRefObject<{ [id: string]: HTMLDivElement | undefined | null }>;\n optionContainerRef: MutableRefObject<HTMLDivElement | null>;\n}) => {\n const [selectingItem, setSelectingItem] = useState<TOption | undefined>(defaultOption);\n const [focusedItem, setFocusedItem] = useState<TOption | null>(null);\n const [lockHover, setLockHover] = useState<boolean>(false);\n const flattenedOptions = options.reduce<TOption[]>((flattenedOptions, optionGroup) => {\n if (optionGroup.options) return flattenedOptions.concat(optionGroup.options as TOption[]);\n return flattenedOptions.concat([optionGroup as TOption]);\n }, []);\n\n const _onKeyDown = useCallback(\n (e: KeyboardEvent) => {\n switch (e.key) {\n case 'ArrowUp': {\n e.preventDefault();\n setLockHover(true);\n const index = flattenedOptions.findIndex((item) => selectingItem?.[idName] === item[idName]);\n const newIndex = index - 1 < 0 ? flattenedOptions.length - 1 : index - 1;\n const newSelecting = flattenedOptions[newIndex];\n setSelectingItem(newSelecting);\n scrollIntoSelectingItem(newSelecting);\n break;\n }\n case 'ArrowDown': {\n e.preventDefault();\n setLockHover(true);\n const index = flattenedOptions.findIndex((item) => selectingItem?.[idName] === item[idName]);\n const newIndex = (index + 1) % flattenedOptions.length;\n const newSelecting = flattenedOptions[newIndex];\n setSelectingItem(newSelecting);\n scrollIntoSelectingItem(newSelecting);\n break;\n }\n case 'Tab':\n case 'Enter': {\n e.preventDefault();\n const selectedItem = selectingItem || flattenedOptions[0];\n if (selectedItem) onSelected(selectedItem);\n break;\n }\n default:\n }\n },\n [options, setSelectingItem, selectingItem]\n );\n\n const scrollIntoSelectingItem = (selecting: TOption, smooth = true) => {\n const optionRef = optionRefs.current[selecting[idName] as unknown as string];\n if (optionContainerRef.current && optionRef) {\n scrollToElm(optionContainerRef.current, optionRef, 0.2, optionContainerRef.current.getBoundingClientRect().height / 2);\n }\n };\n\n const scrollToElm = (container: HTMLElement, elm: HTMLElement, duration: number, offset = 0) => {\n const pos = getRelativePos(elm);\n scrollTo(container, pos.top - offset, duration); // duration in seconds\n };\n\n const getRelativePos = (elm: HTMLElement): { top: number; right: number; bottom: number; left: number } => {\n const pPos = (elm.parentNode as HTMLElement).getBoundingClientRect(), // parent pos\n cPos = elm.getBoundingClientRect(), // target pos\n pos: { top?: number; right?: number; bottom?: number; left?: number } = {};\n\n (pos.top = cPos.top - pPos.top + (elm.parentNode as HTMLElement).scrollTop),\n (pos.right = cPos.right - pPos.right),\n (pos.bottom = cPos.bottom - pPos.bottom),\n (pos.left = cPos.left - pPos.left);\n\n return pos as ReturnType<typeof getRelativePos>;\n };\n\n const scrollTo = (element: HTMLElement, to: number, duration: number, onDone?: () => void) => {\n let now, elapsed, t;\n const startTime = performance.now(),\n start = element.scrollTop,\n change = to - start;\n\n const animateScroll = () => {\n now = performance.now();\n elapsed = (now - startTime) / 1000;\n t = elapsed / duration;\n\n element.scrollTop = start + change * easeInOutQuad(t);\n\n if (t < 1) window.requestAnimationFrame(animateScroll);\n else onDone && onDone();\n };\n\n animateScroll();\n };\n\n const easeInOutQuad = (t: number) => {\n return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t;\n };\n\n useEffect(() => setSelectingItem(focusedItem || defaultOption), [defaultOption, focusedItem]);\n\n useEffect(() => {\n if (isEnabled) window.addEventListener('keydown', _onKeyDown);\n return () => {\n if (isEnabled) window.removeEventListener('keydown', _onKeyDown);\n };\n }, [_onKeyDown, isEnabled]);\n\n useEffect(() => {\n setSelectingItem(flattenedOptions.find((item) => item[idName] === selectingItem?.[idName]));\n }, [options]);\n\n useEffect(() => {\n if (isEnabled && overlayRef && defaultOption) {\n scrollIntoSelectingItem(defaultOption, false);\n }\n }, [isEnabled, defaultOption, overlayRef]);\n\n const onItemMouseEnter = (item: TOption) => {\n if (!lockHover) setFocusedItem(item);\n };\n\n const onItemMouseLeave = () => {\n if (!lockHover) setFocusedItem(null);\n };\n\n const onItemMouseMove = () => setLockHover(false);\n\n return {\n selectingItem,\n onItemMouseEnter,\n onItemMouseLeave,\n onItemMouseMove,\n };\n};\n"]}
|
|
1
|
+
{"version":3,"file":"KeyboardControlOnSelect.js","sourceRoot":"/","sources":["src/hooks/KeyboardControlOnSelect.ts"],"names":[],"mappings":"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","sourcesContent":["import { MutableRefObject, useCallback, useEffect, useState } from 'react';\n\nimport { Option, TSelectOptionKey } from '@/components/generic/Select/Select';\n\nexport const useKeyboardControlOnSelect = <TOption extends Option<KeyName>, KeyName extends string>({\n defaultOption,\n options,\n idName,\n overlayRef,\n isEnabled,\n onSelected,\n optionRefs,\n optionContainerRef,\n}: {\n defaultOption?: TOption;\n options: TSelectOptionKey<TOption>[];\n idName: keyof TOption;\n overlayRef: HTMLDivElement | null;\n isEnabled: boolean;\n onSelected: (item: TOption) => void;\n optionRefs: MutableRefObject<{ [id: string]: HTMLDivElement | undefined | null }>;\n optionContainerRef: MutableRefObject<HTMLDivElement | null>;\n}) => {\n const [selectingItem, setSelectingItem] = useState<TOption | undefined>(defaultOption);\n const [focusedItem, setFocusedItem] = useState<TOption | null>(null);\n const [lockHover, setLockHover] = useState<boolean>(false);\n const flattenedOptions = options.reduce<TOption[]>((flattenedOptions, optionGroup) => {\n if (optionGroup.options) return flattenedOptions.concat(optionGroup.options as TOption[]);\n return flattenedOptions.concat([optionGroup as TOption]);\n }, []);\n\n const _onKeyDown = useCallback(\n (e: KeyboardEvent) => {\n switch (e.key) {\n case 'ArrowUp': {\n e.preventDefault();\n setLockHover(true);\n const index = flattenedOptions.findIndex((item) => selectingItem?.[idName] === item[idName]);\n const newIndex = index - 1 < 0 ? flattenedOptions.length - 1 : index - 1;\n const newSelecting = flattenedOptions[newIndex];\n setSelectingItem(newSelecting);\n scrollIntoSelectingItem(newSelecting);\n break;\n }\n case 'ArrowDown': {\n e.preventDefault();\n setLockHover(true);\n const index = flattenedOptions.findIndex((item) => selectingItem?.[idName] === item[idName]);\n const newIndex = (index + 1) % flattenedOptions.length;\n const newSelecting = flattenedOptions[newIndex];\n setSelectingItem(newSelecting);\n scrollIntoSelectingItem(newSelecting);\n break;\n }\n case 'Tab':\n case 'Enter': {\n e.preventDefault();\n const selectedItem = selectingItem || flattenedOptions[0];\n if (selectedItem) onSelected(selectedItem);\n break;\n }\n default:\n }\n },\n [options, setSelectingItem, selectingItem]\n );\n\n const scrollIntoSelectingItem = (selecting: TOption, smooth = true) => {\n const optionRef = optionRefs.current[selecting[idName] as unknown as string];\n if (optionContainerRef.current && optionRef) {\n scrollToElm(optionContainerRef.current, optionRef, 0.2, optionContainerRef.current.getBoundingClientRect().height / 2);\n }\n };\n\n const scrollToElm = (container: HTMLElement, elm: HTMLElement, duration: number, offset = 0) => {\n const pos = getRelativePos(elm);\n scrollTo(container, pos.top - offset, duration); // duration in seconds\n };\n\n const getRelativePos = (elm: HTMLElement): { top: number; right: number; bottom: number; left: number } => {\n const pPos = (elm.parentNode as HTMLElement).getBoundingClientRect(), // parent pos\n cPos = elm.getBoundingClientRect(), // target pos\n pos: { top?: number; right?: number; bottom?: number; left?: number } = {};\n\n (pos.top = cPos.top - pPos.top + (elm.parentNode as HTMLElement).scrollTop),\n (pos.right = cPos.right - pPos.right),\n (pos.bottom = cPos.bottom - pPos.bottom),\n (pos.left = cPos.left - pPos.left);\n\n return pos as ReturnType<typeof getRelativePos>;\n };\n\n const scrollTo = (element: HTMLElement, to: number, duration: number, onDone?: () => void) => {\n let now, elapsed, t;\n const startTime = performance.now(),\n start = element.scrollTop,\n change = to - start;\n\n const animateScroll = () => {\n now = performance.now();\n elapsed = (now - startTime) / 1000;\n t = elapsed / duration;\n\n element.scrollTop = start + change * easeInOutQuad(t);\n\n if (t < 1) window.requestAnimationFrame(animateScroll);\n else onDone && onDone();\n };\n\n animateScroll();\n };\n\n const easeInOutQuad = (t: number) => {\n return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t;\n };\n\n useEffect(() => setSelectingItem(focusedItem || defaultOption), [defaultOption, focusedItem]);\n\n useEffect(() => {\n if (isEnabled) window.addEventListener('keydown', _onKeyDown);\n return () => {\n if (isEnabled) window.removeEventListener('keydown', _onKeyDown);\n };\n }, [_onKeyDown, isEnabled]);\n\n useEffect(() => {\n setSelectingItem(flattenedOptions.find((item) => item[idName] === selectingItem?.[idName]));\n }, [options]);\n\n useEffect(() => {\n if (isEnabled && overlayRef && defaultOption) {\n scrollIntoSelectingItem(defaultOption, false);\n }\n }, [isEnabled, defaultOption, overlayRef]);\n\n const onItemMouseEnter = (item: TOption) => {\n if (!lockHover) setFocusedItem(item);\n };\n\n const onItemMouseLeave = () => {\n if (!lockHover) setFocusedItem(null);\n };\n\n const onItemMouseMove = () => setLockHover(false);\n\n return {\n selectingItem,\n onItemMouseEnter,\n onItemMouseLeave,\n onItemMouseMove,\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoggedInUserHook.js","sourceRoot":"/","sources":["src/hooks/LoggedInUserHook.ts"],"names":[],"mappings":";;;AAAA,iDAA2D;AAE3D,iCAAwD;AAEjD,MAAM,SAAS,GAAG,GAAG,EAAE;IAC1B,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,YAAY,EAAE,GAAG,IAAA,kBAAU,EAAC,gCAAqB,CAAC,CAAC;IAC7H,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAC;IAE7C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,IAAI,cAAc,EAAE;
|
|
1
|
+
{"version":3,"file":"LoggedInUserHook.js","sourceRoot":"/","sources":["src/hooks/LoggedInUserHook.ts"],"names":[],"mappings":";;;AAAA,iDAA2D;AAE3D,iCAAwD;AAEjD,MAAM,SAAS,GAAG,GAAG,EAAE;IAC1B,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,YAAY,EAAE,GAAG,IAAA,kBAAU,EAAC,gCAAqB,CAAC,CAAC;IAC7H,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAC;IAE7C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,IAAI,cAAc,EAAE,CAAC;YACjB,WAAW,CAAC,GAAG,cAAc,CAAC,QAAQ,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC;QACxE,CAAC;aAAM,CAAC;YACJ,WAAW,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;IACL,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,MAAM,YAAY,GAAG,CAAC,EAAU,EAAiC,EAAE;QAC/D,KAAK,MAAM,OAAO,IAAI,WAAuC,EAAE,CAAC;YAC5D,IAAI,OAAO,CAAC,WAAW,KAAK,EAAE,EAAE,CAAC;gBAC7B,OAAO,OAAO,CAAC;YACnB,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEF;;;;;;OAMG;IACH,OAAO;QACH,IAAI,EAAE,cAAc;QACpB,QAAQ;QACR,WAAW;QAEX,iBAAiB;QACjB,YAAY;QACZ,gBAAgB;QAEhB,YAAY;KACf,CAAC;AACN,CAAC,CAAC;AAxCW,QAAA,SAAS,aAwCpB","sourcesContent":["import { RoomstayMemberContext } from '@frontend/contexts';\nimport { IRoomstayMemberBooking } from '@roomstay/core';\nimport { useContext, useEffect, useState } from 'react';\n\nexport const useMember = () => {\n const { roomstayMember, allBookings, cancelledBookings, upcomingBookings, pastBookings } = useContext(RoomstayMemberContext);\n const [fullName, setFullName] = useState('');\n\n useEffect(() => {\n if (roomstayMember) {\n setFullName(`${roomstayMember.forename} ${roomstayMember.surname}`);\n } else {\n setFullName('');\n }\n }, [roomstayMember]);\n\n const getItinerary = (id: string): IRoomstayMemberBooking | null => {\n for (const booking of allBookings as IRoomstayMemberBooking[]) {\n if (booking.itineraryId === id) {\n return booking;\n }\n }\n\n return null;\n };\n\n /**\n * TODO:\n *\n * Add:\n * * Is authenticated\n * * Is Loading User\n */\n return {\n user: roomstayMember,\n fullName,\n allBookings,\n\n cancelledBookings,\n pastBookings,\n upcomingBookings,\n\n getItinerary,\n };\n};\n"]}
|
|
@@ -5,7 +5,7 @@ declare const usePlanpay: () => {
|
|
|
5
5
|
planpayConfig: {
|
|
6
6
|
username: string;
|
|
7
7
|
minDaysShowPlanpay: number;
|
|
8
|
-
env:
|
|
8
|
+
env: import("@planpay/web/src/lib/shared-lib-duplicates").EnvironmentName;
|
|
9
9
|
} | undefined;
|
|
10
10
|
shouldShowPlanpay: (startDate: string) => boolean | 0 | undefined;
|
|
11
11
|
loadPlanPaySDK: () => void;
|
package/dist/src/hooks/Query.js
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.useHashQuery = useHashQuery;
|
|
4
|
+
exports.useQuery = useQuery;
|
|
4
5
|
const react_router_dom_1 = require("react-router-dom");
|
|
5
6
|
function useHashQuery() {
|
|
6
7
|
const { search } = (0, react_router_dom_1.useLocation)();
|
|
7
8
|
return new URLSearchParams(search);
|
|
8
9
|
}
|
|
9
|
-
exports.useHashQuery = useHashQuery;
|
|
10
10
|
function useQuery() {
|
|
11
11
|
return new URLSearchParams(window.location.search);
|
|
12
12
|
}
|
|
13
|
-
exports.useQuery = useQuery;
|
|
14
13
|
//# sourceMappingURL=Query.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Query.js","sourceRoot":"/","sources":["src/hooks/Query.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Query.js","sourceRoot":"/","sources":["src/hooks/Query.ts"],"names":[],"mappings":";;AAEA,oCAGC;AAED,4BAEC;AATD,uDAA+C;AAE/C,SAAgB,YAAY;IACxB,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,8BAAW,GAAE,CAAC;IACjC,OAAO,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AAED,SAAgB,QAAQ;IACpB,OAAO,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACvD,CAAC","sourcesContent":["import { useLocation } from 'react-router-dom';\n\nexport function useHashQuery() {\n const { search } = useLocation();\n return new URLSearchParams(search);\n}\n\nexport function useQuery() {\n return new URLSearchParams(window.location.search);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RoomRateAvailabilityListFromApi.js","sourceRoot":"/","sources":["src/hooks/RoomRateAvailabilityListFromApi.ts"],"names":[],"mappings":"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","sourcesContent":["import { BasketContext, BookingEngineContext, CompanyContext, RoomstayMemberContext } from '@frontend/contexts';\nimport { GuestSearchEvent, RoomListSearchEvent } from '@frontend/events';\nimport { useCurrentHotel, useEvent } from '@frontend/hooks';\nimport { IRoomstayMemberBookingItem } from '@roomstay/core';\nimport dayjs from 'dayjs';\nimport cloneDeep from 'lodash/cloneDeep';\nimport { useContext, useEffect, useMemo, useState } from 'react';\n\nimport BasketRow from '@/models/BasketRow';\nimport Filter from '@/models/Room/Filters/Filter';\nimport { Room } from '@/models/Room/Room';\nimport { RoomListSearch } from '@/models/RoomListSearch';\nimport { SearchParameters } from '@/models/SearchParameters';\nimport FilterProvider from '@/providers/FilterProvider';\n\nimport { useSignedInMember } from './useSignedInMember';\n\nexport const useRoomRateAvailabilityListFromApi = () => {\n const { hotel } = useCurrentHotel();\n const ccx = useContext(CompanyContext);\n\n const beContext = useContext(BookingEngineContext);\n const { roomstayMember } = useContext(RoomstayMemberContext);\n\n const { attemptSelectUnfilledRow, selectedBasketRow, getAllValidRows, currentBasketRows } = useContext(BasketContext);\n\n const [rooms, setRooms] = useState<Room[]>([]);\n\n const [isLoading, setIsLoading] = useState(false);\n const [loadingAttempted, setLoadingAttempted] = useState(false);\n\n const [openRoom, setOpenRoom] = useState<boolean | null>(null);\n const [apiHasError, setApiHasError] = useState<boolean | null>(null);\n\n const startDate = selectedBasketRow?.getStartDate();\n const endDate = selectedBasketRow?.getEndDate();\n const promoCode = selectedBasketRow?.getPromoCode();\n\n const adults = selectedBasketRow?.getAdults();\n const children = selectedBasketRow?.getChildren();\n\n const { memberNumber } = useSignedInMember();\n\n const { raise } = useEvent();\n\n const retargetingRoom = useMemo(() => {\n if (!roomstayMember || roomstayMember.bookings?.length === 0) return null;\n\n let lastBookingDate: dayjs.Dayjs;\n let lastBookingRoomcode = '';\n roomstayMember.bookings?.forEach?.((booking) => {\n if (booking.hotelId !== hotel?.hotelID) {\n return;\n }\n\n Object.values<IRoomstayMemberBookingItem>(booking.itinerary).map((itinerary) => {\n const { roomCode, nights } = itinerary;\n const dates = Object.keys(nights).map(dayjs);\n const maxDate = dayjs(\n Math.max.apply(\n null,\n dates.map((d) => +d)\n )\n );\n if (!lastBookingDate || maxDate.isAfter(maxDate)) {\n lastBookingDate = maxDate;\n lastBookingRoomcode = roomCode;\n }\n });\n });\n\n return rooms.find((room) => room.code === lastBookingRoomcode);\n }, [rooms, roomstayMember]);\n\n const getRoomsByBasketRow = async (basketRow: BasketRow): Promise<Room[]> => {\n const filters: Filter[] = Object.values(beContext.currentFilters).filter((filter) => !!filter) as Filter[];\n return await FilterProvider.getRoomList(basketRow, filters, hotel?.hotelID as string, memberNumber);\n };\n\n // Used so that we only recalculate the room list when the roomCode or dates of other basket rows change, instead of\n // any change to any basket row.\n const basketRowsRoomDatesKey = useMemo(() => {\n return currentBasketRows.map((r) => [r.getStartDate()?.format('YYYY-MM-DD'), r.getEndDate()?.format('YYYY-MM-DD'), r.getRoomCode()].join('_')).join('|');\n }, [currentBasketRows]);\n\n useEffect(() => {\n let isCancelled = false;\n\n try {\n const search: SearchParameters = {\n checkInTime: startDate?.format('YYYY-M-D'),\n checkOutTime: endDate?.format('YYYY-M-D'),\n numAdults: adults,\n numChildren: children,\n numRooms: 1,\n promoCode: promoCode,\n };\n\n const event = new GuestSearchEvent(search);\n raise(event);\n\n const filters: Filter[] = Object.values(beContext.currentFilters).filter((filter) => !!filter) as Filter[];\n\n let row = selectedBasketRow;\n\n if (!row && !rooms.length) {\n row = attemptSelectUnfilledRow() as BasketRow;\n }\n\n if (!row) {\n const validRows = getAllValidRows();\n row = validRows[validRows.length - 1];\n }\n\n const onRoomListFinished = () => {\n setLoadingAttempted(true);\n setIsLoading(false);\n };\n\n if (row) {\n setIsLoading(true);\n // Avoid using .finally() when you need to wait for .then() or .catch() logic to complete —\n // it runs after the Promise settles, but not after those blocks finish executing;\n // instead, manually call your cleanup function at the end of .then() and .catch().\n FilterProvider.getRoomList(row, filters, hotel?.hotelID as string, memberNumber)\n .then((rooms) =>\n // Subtract availability already taken by other basket rows\n rooms.map((cacheableRoom) => {\n const room = cloneDeep(cacheableRoom);\n\n const startDate = row.getStartDate();\n const endDate = row.getEndDate();\n\n if (!startDate || !endDate) {\n return room;\n }\n\n const otherBasketRowsForRoom = getAllValidRows().filter((candidate) => {\n if (candidate.getID() === selectedBasketRow?.getID()) {\n // We are editing this basket row, so don't count it.\n return false;\n }\n\n return candidate.getRoomCode() === room.code;\n });\n\n for (const rate of room.filteredRates ?? []) {\n for (const date of Object.keys(rate.nightRates)) {\n for (const otherRow of otherBasketRowsForRoom) {\n const otherRowStartDate = otherRow.getStartDate();\n const otherRowEndDate = otherRow.getEndDate();\n\n if (!otherRowStartDate || !otherRowEndDate) {\n continue;\n }\n\n if (dayjs(date).isBetween(otherRowStartDate, otherRowEndDate, 'day', '[)')) {\n // @ts-expect-error, the type is wrong :(\n rate.nightRates[date].available = Math.max(rate.nightRates[date].available - 1, 0);\n }\n }\n }\n }\n\n return room;\n })\n )\n .then((rooms) => rooms.filter((room) => hotel?.showUnavailableRooms || room.isAvailable()))\n .then((availableRooms) => {\n if (!isCancelled) {\n setRooms(availableRooms);\n setOpenRoom(!!selectedBasketRow);\n setApiHasError(false);\n\n const foundRooms: RoomListSearch[] =\n availableRooms?.map((room) => {\n const { name, code } = room;\n\n const foundRoom: RoomListSearch = {\n name: name as string,\n code: code as string,\n lowestPrice: room.getLowestPrice(),\n highestPrice: room.getHighestPrice(),\n currency: ccx.currentCurrency,\n\n rates:\n room.getRates()?.map((rate) => {\n const { name, code } = rate;\n return {\n name,\n code,\n\n price: {\n averagePrice: rate.getAveragePrice(),\n totalPrice: rate.getTotalPrice(),\n currency: ccx.currentCurrency,\n },\n };\n }) ?? [],\n };\n\n return foundRoom;\n }) ?? [];\n\n const event = new RoomListSearchEvent(search, foundRooms);\n raise(event);\n onRoomListFinished();\n }\n })\n .catch(() => {\n if (!isCancelled) {\n setRooms([]);\n setOpenRoom(null);\n setApiHasError(true);\n }\n onRoomListFinished();\n });\n }\n } catch (ex) {\n //\n }\n\n return () => {\n setIsLoading(false);\n isCancelled = true;\n };\n }, [\n adults,\n children,\n startDate,\n endDate,\n promoCode,\n ccx.currentLanguage,\n beContext.currentFilters,\n selectedBasketRow?.getStale(),\n memberNumber,\n roomstayMember,\n selectedBasketRow,\n basketRowsRoomDatesKey,\n ]);\n\n return { loadingAttempted, isLoading, rooms, openRoom, apiHasError, retargetingRoom, getRoomsByBasketRow };\n};\n"]}
|
|
1
|
+
{"version":3,"file":"RoomRateAvailabilityListFromApi.js","sourceRoot":"/","sources":["src/hooks/RoomRateAvailabilityListFromApi.ts"],"names":[],"mappings":"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","sourcesContent":["import { BasketContext, BookingEngineContext, CompanyContext, RoomstayMemberContext } from '@frontend/contexts';\nimport { GuestSearchEvent, RoomListSearchEvent } from '@frontend/events';\nimport { useCurrentHotel, useEvent } from '@frontend/hooks';\nimport { IRoomstayMemberBookingItem } from '@roomstay/core';\nimport dayjs from 'dayjs';\nimport cloneDeep from 'lodash/cloneDeep';\nimport { useContext, useEffect, useMemo, useState } from 'react';\n\nimport BasketRow from '@/models/BasketRow';\nimport Filter from '@/models/Room/Filters/Filter';\nimport { Room } from '@/models/Room/Room';\nimport { RoomListSearch } from '@/models/RoomListSearch';\nimport { SearchParameters } from '@/models/SearchParameters';\nimport FilterProvider from '@/providers/FilterProvider';\n\nimport { useSignedInMember } from './useSignedInMember';\n\nexport const useRoomRateAvailabilityListFromApi = () => {\n const { hotel } = useCurrentHotel();\n const ccx = useContext(CompanyContext);\n\n const beContext = useContext(BookingEngineContext);\n const { roomstayMember } = useContext(RoomstayMemberContext);\n\n const { attemptSelectUnfilledRow, selectedBasketRow, getAllValidRows, currentBasketRows } = useContext(BasketContext);\n\n const [rooms, setRooms] = useState<Room[]>([]);\n\n const [isLoading, setIsLoading] = useState(false);\n const [loadingAttempted, setLoadingAttempted] = useState(false);\n\n const [openRoom, setOpenRoom] = useState<boolean | null>(null);\n const [apiHasError, setApiHasError] = useState<boolean | null>(null);\n\n const startDate = selectedBasketRow?.getStartDate();\n const endDate = selectedBasketRow?.getEndDate();\n const promoCode = selectedBasketRow?.getPromoCode();\n\n const adults = selectedBasketRow?.getAdults();\n const children = selectedBasketRow?.getChildren();\n\n const { memberNumber } = useSignedInMember();\n\n const { raise } = useEvent();\n\n const retargetingRoom = useMemo(() => {\n if (!roomstayMember || roomstayMember.bookings?.length === 0) return null;\n\n let lastBookingDate: dayjs.Dayjs;\n let lastBookingRoomcode = '';\n roomstayMember.bookings?.forEach?.((booking) => {\n if (booking.hotelId !== hotel?.hotelID) {\n return;\n }\n\n Object.values<IRoomstayMemberBookingItem>(booking.itinerary).map((itinerary) => {\n const { roomCode, nights } = itinerary;\n const dates = Object.keys(nights).map(dayjs);\n const maxDate = dayjs(\n Math.max.apply(\n null,\n dates.map((d) => +d)\n )\n );\n if (!lastBookingDate || maxDate.isAfter(maxDate)) {\n lastBookingDate = maxDate;\n lastBookingRoomcode = roomCode;\n }\n });\n });\n\n return rooms.find((room) => room.code === lastBookingRoomcode);\n }, [rooms, roomstayMember]);\n\n const getRoomsByBasketRow = async (basketRow: BasketRow): Promise<Room[]> => {\n const filters: Filter[] = Object.values(beContext.currentFilters).filter((filter) => !!filter) as Filter[];\n return await FilterProvider.getRoomList(basketRow, filters, hotel?.hotelID as string, memberNumber);\n };\n\n // Used so that we only recalculate the room list when the roomCode or dates of other basket rows change, instead of\n // any change to any basket row.\n const basketRowsRoomDatesKey = useMemo(() => {\n return currentBasketRows.map((r) => [r.getStartDate()?.format('YYYY-MM-DD'), r.getEndDate()?.format('YYYY-MM-DD'), r.getRoomCode()].join('_')).join('|');\n }, [currentBasketRows]);\n\n useEffect(() => {\n let isCancelled = false;\n\n try {\n const search: SearchParameters = {\n checkInTime: startDate?.format('YYYY-M-D'),\n checkOutTime: endDate?.format('YYYY-M-D'),\n numAdults: adults,\n numChildren: children,\n numRooms: 1,\n promoCode: promoCode,\n };\n\n const event = new GuestSearchEvent(search);\n raise(event);\n\n const filters: Filter[] = Object.values(beContext.currentFilters).filter((filter) => !!filter) as Filter[];\n\n let row = selectedBasketRow;\n\n if (!row && !rooms.length) {\n row = attemptSelectUnfilledRow() as BasketRow;\n }\n\n if (!row) {\n const validRows = getAllValidRows();\n row = validRows[validRows.length - 1];\n }\n\n const onRoomListFinished = () => {\n setLoadingAttempted(true);\n setIsLoading(false);\n };\n\n if (row) {\n setIsLoading(true);\n // Avoid using .finally() when you need to wait for .then() or .catch() logic to complete —\n // it runs after the Promise settles, but not after those blocks finish executing;\n // instead, manually call your cleanup function at the end of .then() and .catch().\n FilterProvider.getRoomList(row, filters, hotel?.hotelID as string, memberNumber)\n .then((rooms) =>\n // Subtract availability already taken by other basket rows\n rooms.map((cacheableRoom) => {\n const room = cloneDeep(cacheableRoom);\n\n const startDate = row.getStartDate();\n const endDate = row.getEndDate();\n\n if (!startDate || !endDate) {\n return room;\n }\n\n const otherBasketRowsForRoom = getAllValidRows().filter((candidate) => {\n if (candidate.getID() === selectedBasketRow?.getID()) {\n // We are editing this basket row, so don't count it.\n return false;\n }\n\n return candidate.getRoomCode() === room.code;\n });\n\n for (const rate of room.filteredRates ?? []) {\n for (const date of Object.keys(rate.nightRates)) {\n for (const otherRow of otherBasketRowsForRoom) {\n const otherRowStartDate = otherRow.getStartDate();\n const otherRowEndDate = otherRow.getEndDate();\n\n if (!otherRowStartDate || !otherRowEndDate) {\n continue;\n }\n\n if (dayjs(date).isBetween(otherRowStartDate, otherRowEndDate, 'day', '[)')) {\n // @ts-expect-error, the type is wrong :(\n rate.nightRates[date].available = Math.max(rate.nightRates[date].available - 1, 0);\n }\n }\n }\n }\n\n return room;\n })\n )\n .then((rooms) => rooms.filter((room) => hotel?.showUnavailableRooms || room.isAvailable()))\n .then((availableRooms) => {\n if (!isCancelled) {\n setRooms(availableRooms);\n setOpenRoom(!!selectedBasketRow);\n setApiHasError(false);\n\n const foundRooms: RoomListSearch[] =\n availableRooms?.map((room) => {\n const { name, code } = room;\n\n const foundRoom: RoomListSearch = {\n name: name as string,\n code: code as string,\n lowestPrice: room.getLowestPrice(),\n highestPrice: room.getHighestPrice(),\n currency: ccx.currentCurrency,\n\n rates:\n room.getRates()?.map((rate) => {\n const { name, code } = rate;\n return {\n name,\n code,\n\n price: {\n averagePrice: rate.getAveragePrice(),\n totalPrice: rate.getTotalPrice(),\n currency: ccx.currentCurrency,\n },\n };\n }) ?? [],\n };\n\n return foundRoom;\n }) ?? [];\n\n const event = new RoomListSearchEvent(search, foundRooms);\n raise(event);\n onRoomListFinished();\n }\n })\n .catch(() => {\n if (!isCancelled) {\n setRooms([]);\n setOpenRoom(null);\n setApiHasError(true);\n }\n onRoomListFinished();\n });\n }\n } catch (ex) {\n //\n }\n\n return () => {\n setIsLoading(false);\n isCancelled = true;\n };\n }, [\n adults,\n children,\n startDate,\n endDate,\n promoCode,\n ccx.currentLanguage,\n beContext.currentFilters,\n selectedBasketRow?.getStale(),\n memberNumber,\n roomstayMember,\n selectedBasketRow,\n basketRowsRoomDatesKey,\n ]);\n\n return { loadingAttempted, isLoading, rooms, openRoom, apiHasError, retargetingRoom, getRoomsByBasketRow };\n};\n"]}
|