@roomstay/frontend 2.1.5 → 2.1.7
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/14.bundle.js +1 -0
- package/dist/151.bundle.js +1 -0
- package/dist/201.bundle.js +1 -1
- package/dist/279.bundle.js +1 -1
- package/dist/370.bundle.js +1 -1
- package/dist/399.bundle.js +2 -0
- package/dist/399.bundle.js.LICENSE.txt +30 -0
- package/dist/449.bundle.js +1 -1
- package/dist/559.bundle.js +1 -0
- package/dist/760.bundle.js +1 -1
- package/dist/815.bundle.js +1 -0
- package/dist/855.bundle.js +1 -0
- package/dist/873.bundle.js +1 -1
- package/dist/882.bundle.js +1 -1
- package/dist/962.bundle.js +1 -0
- package/dist/972.bundle.js +1 -1
- package/dist/main.bundle.js +1 -1
- package/dist/src/animations/AutoAutoHeight.d.ts +1 -1
- package/dist/src/animations/AutoAutoHeight.js +11 -34
- package/dist/src/animations/AutoAutoHeight.js.map +1 -1
- package/dist/src/animations/Fade.d.ts +1 -1
- package/dist/src/animations/Fade.js +3 -4
- package/dist/src/animations/Fade.js.map +1 -1
- package/dist/src/api/AddonAPI.js +3 -2
- package/dist/src/api/AddonAPI.js.map +1 -1
- package/dist/src/api/AvailabilityAPI.d.ts +2 -2
- package/dist/src/api/AvailabilityAPI.js +6 -6
- package/dist/src/api/AvailabilityAPI.js.map +1 -1
- package/dist/src/api/BaseAPI.d.ts +4 -4
- package/dist/src/api/BaseAPI.js +30 -24
- package/dist/src/api/BaseAPI.js.map +1 -1
- package/dist/src/api/ExchangeRateAPI.d.ts +1 -1
- package/dist/src/api/ExchangeRateAPI.js.map +1 -1
- package/dist/src/api/HotelAPI.js +1 -1
- package/dist/src/api/HotelAPI.js.map +1 -1
- package/dist/src/api/ReservationAPI.d.ts +1 -1
- package/dist/src/api/ReservationAPI.js +2 -1
- package/dist/src/api/ReservationAPI.js.map +1 -1
- package/dist/src/api/SessionAPI.d.ts +1 -1
- package/dist/src/api/SessionAPI.js +2 -2
- package/dist/src/api/SessionAPI.js.map +1 -1
- package/dist/src/components/User/Forms/ForgotPasswordForm.js +19 -23
- package/dist/src/components/User/Forms/ForgotPasswordForm.js.map +1 -1
- package/dist/src/components/User/Forms/SignInForm.js +50 -52
- package/dist/src/components/User/Forms/SignInForm.js.map +1 -1
- package/dist/src/components/User/Forms/SignUpForm.js +61 -62
- package/dist/src/components/User/Forms/SignUpForm.js.map +1 -1
- package/dist/src/components/generic/Alert.js +3 -26
- package/dist/src/components/generic/Alert.js.map +1 -1
- package/dist/src/components/generic/BEButton.d.ts +1 -1
- package/dist/src/components/generic/BEButton.js +8 -7
- package/dist/src/components/generic/BEButton.js.map +1 -1
- package/dist/src/components/generic/BESelect.d.ts +0 -0
- package/dist/src/components/generic/BESelect.js +2 -0
- package/dist/src/components/generic/BESelect.js.map +1 -0
- package/dist/src/components/generic/BackButton.js +2 -26
- package/dist/src/components/generic/BackButton.js.map +1 -1
- package/dist/src/components/generic/BookNowPayLaterInfoBlock.d.ts +2 -1
- package/dist/src/components/generic/BookNowPayLaterInfoBlock.js +9 -9
- package/dist/src/components/generic/BookNowPayLaterInfoBlock.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.d.ts +1 -3
- package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardContent.js +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardContent.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardContext.d.ts +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardContext.js +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardContext.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js +6 -4
- package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardGuestSelector/BookingWizardGuestSelector.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js +5 -4
- package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js.map +1 -1
- package/dist/src/components/generic/Card/Card/Card.js +4 -27
- package/dist/src/components/generic/Card/Card/Card.js.map +1 -1
- package/dist/src/components/generic/Card/IconNavCard/IconNavCard.d.ts +1 -1
- package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js +8 -8
- package/dist/src/components/generic/Card/IconNavCard/IconNavCard.js.map +1 -1
- package/dist/src/components/generic/Checkbox/Checkbox.d.ts +1 -1
- package/dist/src/components/generic/Checkbox/Checkbox.js +8 -8
- package/dist/src/components/generic/Checkbox/Checkbox.js.map +1 -1
- package/dist/src/components/generic/Countdown.js +6 -29
- package/dist/src/components/generic/Countdown.js.map +1 -1
- package/dist/src/components/generic/Currency.js +10 -10
- package/dist/src/components/generic/Currency.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePicker.d.ts +3 -3
- package/dist/src/components/generic/DateRangePicker/DateRangePicker.js +28 -28
- package/dist/src/components/generic/DateRangePicker/DateRangePicker.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerContext.d.ts +13 -7
- package/dist/src/components/generic/DateRangePicker/DateRangePickerContext.js +4 -39
- package/dist/src/components/generic/DateRangePicker/DateRangePickerContext.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js +18 -16
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js +4 -27
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js +10 -10
- package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.js.map +1 -1
- package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.d.ts +3 -3
- package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js +13 -36
- package/dist/src/components/generic/DateRangePicker/FloatingDateRangePicker.js.map +1 -1
- package/dist/src/components/generic/Distance.js +5 -28
- package/dist/src/components/generic/Distance.js.map +1 -1
- package/dist/src/components/generic/ForwardedSelect.d.ts +1 -1
- package/dist/src/components/generic/ForwardedSelect.js +9 -29
- package/dist/src/components/generic/ForwardedSelect.js.map +1 -1
- package/dist/src/components/generic/Headline.d.ts +1 -1
- package/dist/src/components/generic/Headline.js +5 -30
- package/dist/src/components/generic/Headline.js.map +1 -1
- package/dist/src/components/generic/Icon/Icon.js +5 -28
- package/dist/src/components/generic/Icon/Icon.js.map +1 -1
- package/dist/src/components/generic/IconText/IconText.js +5 -4
- package/dist/src/components/generic/IconText/IconText.js.map +1 -1
- package/dist/src/components/generic/InputGroup/InputGroup.js +6 -29
- package/dist/src/components/generic/InputGroup/InputGroup.js.map +1 -1
- package/dist/src/components/generic/LineBreak.js +2 -25
- package/dist/src/components/generic/LineBreak.js.map +1 -1
- package/dist/src/components/generic/Notification.d.ts +2 -3
- package/dist/src/components/generic/Notification.js +16 -13
- package/dist/src/components/generic/Notification.js.map +1 -1
- package/dist/src/components/generic/NumberIncrement.js +10 -10
- package/dist/src/components/generic/NumberIncrement.js.map +1 -1
- package/dist/src/components/generic/Overlay/Overlay.d.ts +3 -3
- package/dist/src/components/generic/Overlay/Overlay.js +16 -40
- package/dist/src/components/generic/Overlay/Overlay.js.map +1 -1
- package/dist/src/components/generic/PasswordBox/PasswordBox.d.ts +1 -1
- package/dist/src/components/generic/PasswordBox/PasswordBox.js +8 -8
- package/dist/src/components/generic/PasswordBox/PasswordBox.js.map +1 -1
- package/dist/src/components/generic/PaymentCard/CardTypeSelect.js +9 -28
- package/dist/src/components/generic/PaymentCard/CardTypeSelect.js.map +1 -1
- package/dist/src/components/generic/PaymentCard/PaymentCard.js +18 -41
- package/dist/src/components/generic/PaymentCard/PaymentCard.js.map +1 -1
- package/dist/src/components/generic/PaymentCard/PaymentCardInput.js +66 -51
- package/dist/src/components/generic/PaymentCard/PaymentCardInput.js.map +1 -1
- package/dist/src/components/generic/Pill.d.ts +1 -1
- package/dist/src/components/generic/Pill.js +4 -27
- package/dist/src/components/generic/Pill.js.map +1 -1
- package/dist/src/components/generic/Placeholder.js +4 -27
- package/dist/src/components/generic/Placeholder.js.map +1 -1
- package/dist/src/components/generic/PlanpayButton/PlanpayButton.js +2 -25
- package/dist/src/components/generic/PlanpayButton/PlanpayButton.js.map +1 -1
- package/dist/src/components/generic/Portal/Portal.d.ts +1 -1
- package/dist/src/components/generic/Portal/Portal.js +4 -24
- package/dist/src/components/generic/Portal/Portal.js.map +1 -1
- package/dist/src/components/generic/PromoCodeInput.js +27 -28
- package/dist/src/components/generic/PromoCodeInput.js.map +1 -1
- package/dist/src/components/generic/RadioButtonGroup/RadioButton.js +9 -32
- package/dist/src/components/generic/RadioButtonGroup/RadioButton.js.map +1 -1
- package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.d.ts +6 -6
- package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js +6 -29
- package/dist/src/components/generic/RadioButtonGroup/RadioButtonGroup.js.map +1 -1
- package/dist/src/components/generic/RecentSearchesCard.js +19 -18
- package/dist/src/components/generic/RecentSearchesCard.js.map +1 -1
- package/dist/src/components/generic/RoomstayMark.d.ts +1 -0
- package/dist/src/components/generic/RoomstayMark.js +49 -0
- package/dist/src/components/generic/RoomstayMark.js.map +1 -0
- package/dist/src/components/generic/ScrollToTop.d.ts +2 -0
- package/dist/src/components/generic/ScrollToTop.js +3 -3
- package/dist/src/components/generic/ScrollToTop.js.map +1 -1
- package/dist/src/components/generic/Select/Select.d.ts +4 -4
- package/dist/src/components/generic/Select/Select.js +16 -6
- package/dist/src/components/generic/Select/Select.js.map +1 -1
- package/dist/src/components/generic/Select.d.ts +0 -0
- package/dist/src/components/generic/Select.js +2 -0
- package/dist/src/components/generic/Select.js.map +1 -0
- package/dist/src/components/generic/Slider/Slider.d.ts +3 -3
- package/dist/src/components/generic/Slider/Slider.js +23 -45
- package/dist/src/components/generic/Slider/Slider.js.map +1 -1
- package/dist/src/components/generic/Tabs/ElementChildren.d.ts +1 -1
- package/dist/src/components/generic/Tabs/ElementChildren.js +6 -26
- package/dist/src/components/generic/Tabs/ElementChildren.js.map +1 -1
- package/dist/src/components/generic/Tabs/Tab.d.ts +1 -1
- package/dist/src/components/generic/Tabs/Tab.js +4 -24
- package/dist/src/components/generic/Tabs/Tab.js.map +1 -1
- package/dist/src/components/generic/Tabs/TabContext.d.ts +5 -6
- package/dist/src/components/generic/Tabs/TabContext.js +11 -31
- package/dist/src/components/generic/Tabs/TabContext.js.map +1 -1
- package/dist/src/components/generic/Tabs/TabLink.d.ts +1 -1
- package/dist/src/components/generic/Tabs/TabLink.js +7 -30
- package/dist/src/components/generic/Tabs/TabLink.js.map +1 -1
- package/dist/src/components/generic/Tabs/TabRouteContainer.js +10 -33
- package/dist/src/components/generic/Tabs/TabRouteContainer.js.map +1 -1
- package/dist/src/components/generic/Tabs/Tabs.d.ts +2 -2
- package/dist/src/components/generic/Tabs/Tabs.js +9 -32
- package/dist/src/components/generic/Tabs/Tabs.js.map +1 -1
- package/dist/src/components/generic/Text.d.ts +1 -1
- package/dist/src/components/generic/Text.js +3 -26
- package/dist/src/components/generic/Text.js.map +1 -1
- package/dist/src/components/generic/TextArea.d.ts +1 -1
- package/dist/src/components/generic/TextArea.js +6 -26
- package/dist/src/components/generic/TextArea.js.map +1 -1
- package/dist/src/components/generic/TextBox.d.ts +2 -2
- package/dist/src/components/generic/TextBox.js +11 -34
- package/dist/src/components/generic/TextBox.js.map +1 -1
- package/dist/src/components/generic/Tooltip/Tooltip.d.ts +1 -1
- package/dist/src/components/generic/Tooltip/Tooltip.js +8 -31
- package/dist/src/components/generic/Tooltip/Tooltip.js.map +1 -1
- package/dist/src/components/generic/badging/SSLSecureBadge.js +3 -26
- package/dist/src/components/generic/badging/SSLSecureBadge.js.map +1 -1
- package/dist/src/components/generic/buttons/NextStepButton.js +5 -28
- package/dist/src/components/generic/buttons/NextStepButton.js.map +1 -1
- package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.d.ts +3 -4
- package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js +23 -32
- package/dist/src/components/generic/custom/EnhancedPhoneNumberField/EnhancedPhoneNumberField.js.map +1 -1
- package/dist/src/components/generic/date/DatePicker.js +42 -42
- package/dist/src/components/generic/date/DatePicker.js.map +1 -1
- package/dist/src/components/generic/date/DatePickerDay.js +27 -27
- package/dist/src/components/generic/date/DatePickerDay.js.map +1 -1
- package/dist/src/components/generic/date/DatePickerDays.js +4 -27
- package/dist/src/components/generic/date/DatePickerDays.js.map +1 -1
- package/dist/src/components/generic/date/DatePickerMonth.js +9 -9
- package/dist/src/components/generic/date/DatePickerMonth.js.map +1 -1
- package/dist/src/components/generic/date/DatePickerWeek.js +26 -26
- package/dist/src/components/generic/date/DatePickerWeek.js.map +1 -1
- package/dist/src/components/generic/date/FloatingDatePicker.d.ts +1 -1
- package/dist/src/components/generic/date/FloatingDatePicker.js +11 -11
- package/dist/src/components/generic/date/FloatingDatePicker.js.map +1 -1
- package/dist/src/components/generic/date/WeekViewSkeleton.js +23 -46
- package/dist/src/components/generic/date/WeekViewSkeleton.js.map +1 -1
- package/dist/src/components/generic/loader/ImageLoader.d.ts +1 -1
- package/dist/src/components/generic/loader/ImageLoader.js +8 -8
- package/dist/src/components/generic/loader/ImageLoader.js.map +1 -1
- package/dist/src/components/generic/loader/LargeLoader.js +15 -38
- package/dist/src/components/generic/loader/LargeLoader.js.map +1 -1
- package/dist/src/components/generic/loader/SmallSpinner.js +6 -3
- package/dist/src/components/generic/loader/SmallSpinner.js.map +1 -1
- package/dist/src/components/generic/map/HotelLocationMap.js +3 -26
- package/dist/src/components/generic/map/HotelLocationMap.js.map +1 -1
- package/dist/src/components/generic/modal/ConfirmationModal.js +8 -8
- package/dist/src/components/generic/modal/ConfirmationModal.js.map +1 -1
- package/dist/src/components/generic/modal/ErrorModal.d.ts +2 -2
- package/dist/src/components/generic/modal/ErrorModal.js +5 -5
- package/dist/src/components/generic/modal/ErrorModal.js.map +1 -1
- package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.d.ts +3 -2
- package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js +16 -16
- package/dist/src/components/generic/modal/SigninModal/AuthenticatedUserModal.js.map +1 -1
- package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.d.ts +1 -1
- package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js +26 -26
- package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.js.map +1 -1
- package/dist/src/components/generic/modal/SimpleModal.d.ts +2 -2
- package/dist/src/components/generic/modal/SimpleModal.js +21 -22
- package/dist/src/components/generic/modal/SimpleModal.js.map +1 -1
- package/dist/src/components/generic/modal/TabbedModal.d.ts +1 -1
- package/dist/src/components/generic/modal/TabbedModal.js +12 -12
- package/dist/src/components/generic/modal/TabbedModal.js.map +1 -1
- package/dist/src/components/generic/radio/RadioFields.js +11 -11
- package/dist/src/components/generic/radio/RadioFields.js.map +1 -1
- package/dist/src/components/iconComponents/BookNowPayLaterIcon.js +16 -36
- package/dist/src/components/iconComponents/BookNowPayLaterIcon.js.map +1 -1
- package/dist/src/components/members/EditMyProfile.d.ts +1 -1
- package/dist/src/components/members/EditMyProfile.js +35 -59
- package/dist/src/components/members/EditMyProfile.js.map +1 -1
- package/dist/src/components/navigation/Header.js +69 -64
- package/dist/src/components/navigation/Header.js.map +1 -1
- package/dist/src/components/navigation/StepSelector.js +27 -27
- package/dist/src/components/navigation/StepSelector.js.map +1 -1
- package/dist/src/components/navigation/StepSelectorModal.js +14 -13
- package/dist/src/components/navigation/StepSelectorModal.js.map +1 -1
- package/dist/src/components/pages/Account/Card/CardList.js +10 -33
- package/dist/src/components/pages/Account/Card/CardList.js.map +1 -1
- package/dist/src/components/pages/Account/Card/MemberCardItem.js +10 -10
- package/dist/src/components/pages/Account/Card/MemberCardItem.js.map +1 -1
- package/dist/src/components/pages/PageColorComponent.js +4 -27
- package/dist/src/components/pages/PageColorComponent.js.map +1 -1
- package/dist/src/components/reservation/EmptyReservation.d.ts +6 -0
- package/dist/src/components/reservation/EmptyReservation.js +52 -0
- package/dist/src/components/reservation/EmptyReservation.js.map +1 -0
- package/dist/src/components/reservation/ReservationItem.js +56 -56
- package/dist/src/components/reservation/ReservationItem.js.map +1 -1
- package/dist/src/components/reservation/ReservationList.d.ts +3 -2
- package/dist/src/components/reservation/ReservationList.js +7 -26
- package/dist/src/components/reservation/ReservationList.js.map +1 -1
- package/dist/src/components/steps/DaysSelectedInformer.js +9 -6
- package/dist/src/components/steps/DaysSelectedInformer.js.map +1 -1
- package/dist/src/components/steps/MinimumNightStayPill.d.ts +1 -1
- package/dist/src/components/steps/MinimumNightStayPill.js +8 -8
- package/dist/src/components/steps/MinimumNightStayPill.js.map +1 -1
- package/dist/src/components/steps/addons/AddonCard.js +59 -58
- package/dist/src/components/steps/addons/AddonCard.js.map +1 -1
- package/dist/src/components/steps/addons/AddonList.js +16 -39
- package/dist/src/components/steps/addons/AddonList.js.map +1 -1
- package/dist/src/components/steps/addons/AddonsNotFound.js +38 -61
- package/dist/src/components/steps/addons/AddonsNotFound.js.map +1 -1
- package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.d.ts +1 -1
- package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js +19 -19
- package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.js.map +1 -1
- package/dist/src/components/steps/confirmation/AccountDetails.js +11 -34
- package/dist/src/components/steps/confirmation/AccountDetails.js.map +1 -1
- package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js +5 -27
- package/dist/src/components/steps/confirmation/PaymentDetails/AcceptablePaymentCard.js.map +1 -1
- package/dist/src/components/steps/confirmation/PaymentDetails/CardPaymentDetails.js +1 -0
- package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js +12 -32
- package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.js.map +1 -1
- package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.d.ts +1 -1
- package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js +26 -25
- package/dist/src/components/steps/confirmation/PaymentDetails/StepConfirmationPaymentDetails.js.map +1 -1
- package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js +35 -58
- package/dist/src/components/steps/confirmation/PlanpayPaymentMethod.js.map +1 -1
- package/dist/src/components/steps/confirmation/RoomContactDetails.js +72 -68
- package/dist/src/components/steps/confirmation/RoomContactDetails.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js +14 -14
- package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js +36 -35
- package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js +7 -30
- package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.d.ts +2 -2
- package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js +29 -24
- package/dist/src/components/steps/confirmation/StepConfirmationCountrySelector.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationForm.js +94 -89
- package/dist/src/components/steps/confirmation/StepConfirmationForm.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js +3 -26
- package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js +13 -13
- package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js +16 -16
- package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js +25 -20
- package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.js.map +1 -1
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js +26 -26
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.js.map +1 -1
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js +13 -9
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.js.map +1 -1
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js +61 -61
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.js.map +1 -1
- package/dist/src/components/steps/date/PeoplePicker.js +11 -7
- package/dist/src/components/steps/date/PeoplePicker.js.map +1 -1
- package/dist/src/components/steps/date/PeoplePickerRow.js +18 -18
- package/dist/src/components/steps/date/PeoplePickerRow.js.map +1 -1
- package/dist/src/components/steps/date/StepDatePricePerRoom.js +16 -16
- package/dist/src/components/steps/date/StepDatePricePerRoom.js.map +1 -1
- package/dist/src/components/steps/date/StepOneDateRange.js +10 -10
- package/dist/src/components/steps/date/StepOneDateRange.js.map +1 -1
- package/dist/src/components/steps/date/StepOneDateRangePicker.js +6 -6
- package/dist/src/components/steps/date/StepOneDateRangePicker.js.map +1 -1
- package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js +6 -6
- package/dist/src/components/steps/date/StepOneDateRangePickerLegend.js.map +1 -1
- package/dist/src/components/steps/date/StepOneNextStepButton.js +5 -5
- package/dist/src/components/steps/date/StepOneNextStepButton.js.map +1 -1
- package/dist/src/components/steps/date/StepOneStatusPeople.js +4 -27
- package/dist/src/components/steps/date/StepOneStatusPeople.js.map +1 -1
- package/dist/src/components/steps/hotel/HotelCard.js +56 -56
- package/dist/src/components/steps/hotel/HotelCard.js.map +1 -1
- package/dist/src/components/steps/hotel/HotelCardList.js +5 -28
- package/dist/src/components/steps/hotel/HotelCardList.js.map +1 -1
- package/dist/src/components/steps/hotel/HotelCardModal.d.ts +1 -1
- package/dist/src/components/steps/hotel/HotelCardModal.js +45 -45
- package/dist/src/components/steps/hotel/HotelCardModal.js.map +1 -1
- package/dist/src/components/steps/hotel/HotelSearchParameters.js +40 -40
- package/dist/src/components/steps/hotel/HotelSearchParameters.js.map +1 -1
- package/dist/src/components/steps/hotel/NoHotelsAvailable.js +57 -80
- package/dist/src/components/steps/hotel/NoHotelsAvailable.js.map +1 -1
- package/dist/src/components/steps/room/AvailableUpgradesModal.d.ts +2 -1
- package/dist/src/components/steps/room/AvailableUpgradesModal.js +40 -42
- package/dist/src/components/steps/room/AvailableUpgradesModal.js.map +1 -1
- package/dist/src/components/steps/room/ImageGallerySlider.js +21 -21
- package/dist/src/components/steps/room/ImageGallerySlider.js.map +1 -1
- package/dist/src/components/steps/room/InactivityWindow.js +20 -20
- package/dist/src/components/steps/room/InactivityWindow.js.map +1 -1
- package/dist/src/components/steps/room/LargeRoomCard.js +36 -35
- package/dist/src/components/steps/room/LargeRoomCard.js.map +1 -1
- package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js +44 -48
- package/dist/src/components/steps/room/MemberSignInModal/MemberSignInModal.js.map +1 -1
- package/dist/src/components/steps/room/NoRoomsFoundBlock.js +52 -52
- package/dist/src/components/steps/room/NoRoomsFoundBlock.js.map +1 -1
- package/dist/src/components/steps/room/RatesNotFound.js +39 -62
- package/dist/src/components/steps/room/RatesNotFound.js.map +1 -1
- package/dist/src/components/steps/room/RoomList.js +13 -36
- package/dist/src/components/steps/room/RoomList.js.map +1 -1
- package/dist/src/components/steps/room/RoomListAlert.d.ts +1 -1
- package/dist/src/components/steps/room/RoomListAlert.js +11 -34
- package/dist/src/components/steps/room/RoomListAlert.js.map +1 -1
- package/dist/src/components/steps/room/RoomListCrossSellBlock.d.ts +2 -1
- package/dist/src/components/steps/room/RoomListCrossSellBlock.js +38 -38
- package/dist/src/components/steps/room/RoomListCrossSellBlock.js.map +1 -1
- package/dist/src/components/steps/room/RoomModal.js +32 -32
- package/dist/src/components/steps/room/RoomModal.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomAlertBlocks.js +9 -9
- package/dist/src/components/steps/room/StepRoomAlertBlocks.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomBestRateAlert.js +6 -6
- package/dist/src/components/steps/room/StepRoomBestRateAlert.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomErrorForm.js +34 -34
- package/dist/src/components/steps/room/StepRoomErrorForm.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomHotelDetails.js +18 -18
- package/dist/src/components/steps/room/StepRoomHotelDetails.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomNextStepButton.js +4 -4
- package/dist/src/components/steps/room/StepRoomNextStepButton.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomSortBy.js +6 -6
- package/dist/src/components/steps/room/StepRoomSortBy.js.map +1 -1
- package/dist/src/components/steps/room/StepRoomSummaryAndButton.js +15 -38
- package/dist/src/components/steps/room/StepRoomSummaryAndButton.js.map +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js +2 -25
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.js.map +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js +2 -25
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.js.map +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js +9 -9
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.js.map +1 -1
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js +71 -69
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetails.js +42 -39
- package/dist/src/components/steps/room/roomDetails/RoomDetails.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js +18 -15
- package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js +6 -7
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js +16 -16
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.d.ts +1 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js +37 -36
- package/dist/src/components/steps/room/roomDetails/RoomDetailsRetargeting.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js +8 -31
- package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js +26 -26
- package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +43 -43
- package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js +34 -34
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js +8 -8
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js +11 -11
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js +8 -10
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js +32 -32
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js +16 -39
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js +10 -9
- package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js +32 -31
- package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.d.ts +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js +20 -21
- package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.d.ts +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js +17 -17
- package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.js.map +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.d.ts +1 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js +20 -18
- package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.js.map +1 -1
- package/dist/src/components/summary/BEMapWidget.d.ts +1 -1
- package/dist/src/components/summary/BEMapWidget.js +29 -27
- package/dist/src/components/summary/BEMapWidget.js.map +1 -1
- package/dist/src/components/summary/BEMobileSummary.js +22 -22
- package/dist/src/components/summary/BEMobileSummary.js.map +1 -1
- package/dist/src/components/summary/BEMobileSummaryModal.js +62 -60
- package/dist/src/components/summary/BEMobileSummaryModal.js.map +1 -1
- package/dist/src/components/summary/BESummary.js +42 -41
- package/dist/src/components/summary/BESummary.js.map +1 -1
- package/dist/src/components/summary/BESummaryAddonRow.js +18 -18
- package/dist/src/components/summary/BESummaryAddonRow.js.map +1 -1
- package/dist/src/components/summary/BESummaryPerkBlock.js +11 -11
- package/dist/src/components/summary/BESummaryPerkBlock.js.map +1 -1
- package/dist/src/components/summary/BESummaryPrivacyPolicy.js +11 -8
- package/dist/src/components/summary/BESummaryPrivacyPolicy.js.map +1 -1
- package/dist/src/components/summary/BESummaryRoomRow.js +57 -57
- package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
- package/dist/src/components/summary/TransportDistanceFromHotelBlock.js +12 -12
- package/dist/src/components/summary/TransportDistanceFromHotelBlock.js.map +1 -1
- package/dist/src/components/temp/Login.js +29 -29
- package/dist/src/components/temp/Login.js.map +1 -1
- package/dist/src/containers/PrivateRoute.js +6 -26
- package/dist/src/containers/PrivateRoute.js.map +1 -1
- package/dist/src/contexts/BasketContext/BasketContext.js +1 -1
- package/dist/src/contexts/BasketContext/BasketContext.js.map +1 -1
- package/dist/src/contexts/BasketContext/BasketContextType.d.ts +3 -3
- package/dist/src/contexts/BasketContext/BasketContextType.js.map +1 -1
- package/dist/src/contexts/BasketContext/BasketContextWrapper.d.ts +1 -1
- package/dist/src/contexts/BasketContext/BasketContextWrapper.js +35 -59
- package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
- package/dist/src/contexts/BookingEngineContext/BookingEngineContext.js +1 -1
- package/dist/src/contexts/BookingEngineContext/BookingEngineContext.js.map +1 -1
- package/dist/src/contexts/BookingEngineContext/BookingEngineContextType.types.d.ts +1 -1
- package/dist/src/contexts/BookingEngineContext/BookingEngineContextType.types.js.map +1 -1
- package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.d.ts +1 -1
- package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js +3 -4
- package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.js.map +1 -1
- package/dist/src/contexts/CompanyContext/CompanyContext.js +1 -1
- package/dist/src/contexts/CompanyContext/CompanyContext.js.map +1 -1
- package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +24 -47
- package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
- package/dist/src/contexts/ConfirmationFormContext.d.ts +2 -2
- package/dist/src/contexts/ConfirmationFormContext.js +8 -28
- package/dist/src/contexts/ConfirmationFormContext.js.map +1 -1
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +10 -10
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -1
- package/dist/src/contexts/DatePickerContext.d.ts +12 -11
- package/dist/src/contexts/DatePickerContext.js +4 -41
- package/dist/src/contexts/DatePickerContext.js.map +1 -1
- package/dist/src/contexts/ErrorContext.d.ts +2 -2
- package/dist/src/contexts/ErrorContext.js +10 -10
- package/dist/src/contexts/ErrorContext.js.map +1 -1
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContext.js +1 -1
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContext.js.map +1 -1
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.d.ts +1 -1
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +43 -49
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
- package/dist/src/contexts/HotelOverridesContext.d.ts +1 -1
- package/dist/src/contexts/HotelOverridesContext.js +14 -37
- package/dist/src/contexts/HotelOverridesContext.js.map +1 -1
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.d.ts +7 -7
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js +18 -6
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContext.js.map +1 -1
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.d.ts +1 -1
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js +38 -53
- package/dist/src/contexts/Members/AuthenticationContext/AuthenticationContextProvider.js.map +1 -1
- package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.d.ts +1 -1
- package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js +29 -49
- package/dist/src/contexts/Members/RoomstayMemberContext/RoomstayMemberContextProvider.js.map +1 -1
- package/dist/src/contexts/ModalContext.d.ts +1 -1
- package/dist/src/contexts/ModalContext.js +4 -5
- package/dist/src/contexts/ModalContext.js.map +1 -1
- package/dist/src/contexts/NotificationContext.d.ts +1 -1
- package/dist/src/contexts/NotificationContext.js +8 -31
- package/dist/src/contexts/NotificationContext.js.map +1 -1
- package/dist/src/engines/BaseEngine.js.map +1 -1
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js +2 -0
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js.map +1 -1
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js +4 -27
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js.map +1 -1
- package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js +15 -35
- package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.js.map +1 -1
- package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +67 -66
- package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js.map +1 -1
- package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngine.js.map +1 -1
- package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js +20 -20
- package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.js.map +1 -1
- package/dist/src/events/RoomstayEvent.d.ts +0 -1
- package/dist/src/events/RoomstayEvent.js +0 -1
- package/dist/src/events/RoomstayEvent.js.map +1 -1
- package/dist/src/events/RoomstayEventManager.d.ts +2 -2
- package/dist/src/events/RoomstayEventManager.js +1 -1
- package/dist/src/events/RoomstayEventManager.js.map +1 -1
- package/dist/src/hooks/AutoFocusOnSelect.d.ts +1 -1
- package/dist/src/hooks/AutoFocusOnSelect.js.map +1 -1
- package/dist/src/hooks/BodyClickHook.d.ts +2 -4
- package/dist/src/hooks/BodyClickHook.js +3 -3
- package/dist/src/hooks/BodyClickHook.js.map +1 -1
- package/dist/src/hooks/CombineState.d.ts +1 -1
- package/dist/src/hooks/CombineState.js.map +1 -1
- package/dist/src/hooks/ConfirmationQuery.d.ts +3 -3
- package/dist/src/hooks/CurrentHotelHook.d.ts +1 -1
- package/dist/src/hooks/ElementSortHook.d.ts +1 -1
- package/dist/src/hooks/ElementSortHook.js +7 -27
- package/dist/src/hooks/ElementSortHook.js.map +1 -1
- package/dist/src/hooks/EventHook.d.ts +1 -1
- package/dist/src/hooks/EventHook.js.map +1 -1
- package/dist/src/hooks/KeyboardControlOnSelect.d.ts +3 -3
- package/dist/src/hooks/LoggedInUserHook.d.ts +6 -6
- package/dist/src/hooks/LoggedInUserHook.js.map +1 -1
- package/dist/src/hooks/Query.js +5 -25
- package/dist/src/hooks/Query.js.map +1 -1
- package/dist/src/hooks/VGSHooks.d.ts +4 -4
- package/dist/src/hooks/VGSHooks.js +16 -11
- package/dist/src/hooks/VGSHooks.js.map +1 -1
- package/dist/src/icons/Check.js +7 -27
- package/dist/src/icons/Check.js.map +1 -1
- package/dist/src/index.d.ts +3 -3
- package/dist/src/index.js +2 -17
- package/dist/src/index.js.map +1 -1
- package/dist/src/mockApi/AddonAPI.js +2 -1
- package/dist/src/mockApi/AddonAPI.js.map +1 -1
- package/dist/src/mockApi/MockAPI.d.ts +1 -1
- package/dist/src/mockApi/ReservationAPI.d.ts +1 -1
- package/dist/src/mockApi/ReservationAPI.js +2 -1
- package/dist/src/mockApi/ReservationAPI.js.map +1 -1
- package/dist/src/models/Addon/Addon.js +1 -1
- package/dist/src/models/Addon/Addon.js.map +1 -1
- package/dist/src/models/BasketAddonRow.d.ts +2 -2
- package/dist/src/models/BasketAddonRow.js +1 -1
- package/dist/src/models/BasketAddonRow.js.map +1 -1
- package/dist/src/models/BasketRow.d.ts +6 -6
- package/dist/src/models/BasketRow.js +3 -2
- package/dist/src/models/BasketRow.js.map +1 -1
- package/dist/src/models/BookingWizard/BookingWizardProperty.d.ts +1 -1
- package/dist/src/models/BookingWizard/BookingWizardProperty.js.map +1 -1
- package/dist/src/models/Client/Client.js.map +1 -1
- package/dist/src/models/Currency.d.ts +1 -1
- package/dist/src/models/Currency.js.map +1 -1
- package/dist/src/models/Room/Filters/BudgetFilter.d.ts +1 -1
- package/dist/src/models/Room/Filters/RoomTypeFilter.d.ts +1 -1
- package/dist/src/models/Room/Filters/RoomTypeFilter.js.map +1 -1
- package/dist/src/models/Room/Room.d.ts +10 -10
- package/dist/src/models/Room/Room.js +10 -8
- package/dist/src/models/Room/Room.js.map +1 -1
- package/dist/src/models/Room/RoomRate.d.ts +1 -1
- package/dist/src/models/Room/RoomRate.js +1 -1
- package/dist/src/models/Room/RoomRate.js.map +1 -1
- package/dist/src/models/Room/RoomRateNight.js.map +1 -1
- package/dist/src/models/RoomstaySession.d.ts +2 -2
- package/dist/src/models/RoomstaySession.js.map +1 -1
- package/dist/src/pages/account/AccountHome/AccountHomePage.js +31 -31
- package/dist/src/pages/account/AccountHome/AccountHomePage.js.map +1 -1
- package/dist/src/pages/account/AccountOutlet.d.ts +1 -1
- package/dist/src/pages/account/AccountOutlet.js +5 -25
- package/dist/src/pages/account/AccountOutlet.js.map +1 -1
- package/dist/src/pages/account/AccountRouter.js +12 -37
- package/dist/src/pages/account/AccountRouter.js.map +1 -1
- package/dist/src/pages/account/Details/AccountDetailsCardsPage.js +24 -28
- package/dist/src/pages/account/Details/AccountDetailsCardsPage.js.map +1 -1
- package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js +8 -8
- package/dist/src/pages/account/Details/AccountDetailsNoCardsPage.js.map +1 -1
- package/dist/src/pages/account/Details/AccountDetailsProfilePage.js +41 -42
- package/dist/src/pages/account/Details/AccountDetailsProfilePage.js.map +1 -1
- package/dist/src/pages/account/Help/AccountHelpPage.js +42 -44
- package/dist/src/pages/account/Help/AccountHelpPage.js.map +1 -1
- package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js +78 -82
- package/dist/src/pages/account/Reservations/AccountReservationSinglePage.js.map +1 -1
- package/dist/src/pages/account/Reservations/AccountReservationsPage.js +17 -40
- package/dist/src/pages/account/Reservations/AccountReservationsPage.js.map +1 -1
- package/dist/src/pages/findReservation/FindReservation.js +81 -76
- package/dist/src/pages/findReservation/FindReservation.js.map +1 -1
- package/dist/src/pages/findReservation/FindReservationResults.js +33 -33
- package/dist/src/pages/findReservation/FindReservationResults.js.map +1 -1
- package/dist/src/pages/findReservation/ReservationRow.js +66 -65
- package/dist/src/pages/findReservation/ReservationRow.js.map +1 -1
- package/dist/src/pages/findReservation/ReservationRowModal.js +52 -52
- package/dist/src/pages/findReservation/ReservationRowModal.js.map +1 -1
- package/dist/src/pages/hotel/HotelInfo.js +88 -88
- package/dist/src/pages/hotel/HotelInfo.js.map +1 -1
- package/dist/src/pages/hotel/HotelInfoPlaceholder.js +4 -27
- package/dist/src/pages/hotel/HotelInfoPlaceholder.js.map +1 -1
- package/dist/src/pages/steps/Step.d.ts +2 -2
- package/dist/src/pages/steps/Step.js.map +1 -1
- package/dist/src/pages/steps/StepAddon/StepAddon.d.ts +1 -1
- package/dist/src/pages/steps/StepAddon/StepAddon.js.map +1 -1
- package/dist/src/pages/steps/StepAddon/StepAddonComponent.js +18 -41
- package/dist/src/pages/steps/StepAddon/StepAddonComponent.js.map +1 -1
- package/dist/src/pages/steps/StepAddon/StepAddonLoader.js +51 -51
- package/dist/src/pages/steps/StepAddon/StepAddonLoader.js.map +1 -1
- package/dist/src/pages/steps/StepConfirmation/StepConfirmation.d.ts +1 -1
- package/dist/src/pages/steps/StepConfirmation/StepConfirmation.js.map +1 -1
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js +28 -51
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.js.map +1 -1
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js +72 -72
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.js.map +1 -1
- package/dist/src/pages/steps/StepDate/StepDate.d.ts +14 -0
- package/dist/src/pages/steps/StepDate/StepDate.js.map +1 -1
- package/dist/src/pages/steps/StepDate/StepDateComponent.d.ts +2 -0
- package/dist/src/pages/steps/StepDate/StepDateComponent.js +46 -48
- package/dist/src/pages/steps/StepDate/StepDateComponent.js.map +1 -1
- package/dist/src/pages/steps/StepGuide.d.ts +1 -1
- package/dist/src/pages/steps/StepGuide.js +3 -26
- package/dist/src/pages/steps/StepGuide.js.map +1 -1
- package/dist/src/pages/steps/StepHotel/StepHotelComponent.js +21 -21
- package/dist/src/pages/steps/StepHotel/StepHotelComponent.js.map +1 -1
- package/dist/src/pages/steps/StepHotel/StepHotelLoader.js +43 -43
- package/dist/src/pages/steps/StepHotel/StepHotelLoader.js.map +1 -1
- package/dist/src/pages/steps/StepRoom/StepRoom.d.ts +1 -1
- package/dist/src/pages/steps/StepRoom/StepRoom.js.map +1 -1
- package/dist/src/pages/steps/StepRoom/StepRoomComponent.js +33 -33
- package/dist/src/pages/steps/StepRoom/StepRoomComponent.js.map +1 -1
- package/dist/src/pages/steps/StepRoom/StepRoomLoader.js +74 -74
- package/dist/src/pages/steps/StepRoom/StepRoomLoader.js.map +1 -1
- package/dist/src/pages/steps/StepThanks/StepThanks.d.ts +1 -1
- package/dist/src/pages/steps/StepThanks/StepThanks.js.map +1 -1
- package/dist/src/pages/steps/StepThanks/StepThanksComponent.js +28 -29
- package/dist/src/pages/steps/StepThanks/StepThanksComponent.js.map +1 -1
- package/dist/src/providers/CurrencyProvider.d.ts +1 -1
- package/dist/src/providers/DIProvider.js +5 -25
- package/dist/src/providers/DIProvider.js.map +1 -1
- package/dist/src/providers/FilterProvider.d.ts +1 -1
- package/dist/src/providers/FilterProvider.js +3 -2
- package/dist/src/providers/FilterProvider.js.map +1 -1
- package/dist/src/providers/LanguageProvider.d.ts +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 +1 -1
- package/dist/src/providers/PromotionProvider.js.map +1 -1
- package/dist/src/providers/RoomstayThemeEngine.d.ts +2 -2
- package/dist/src/providers/RoomstayThemeEngine.js +5 -7
- package/dist/src/providers/RoomstayThemeEngine.js.map +1 -1
- package/dist/src/providers/SessionProvider.js +4 -4
- package/dist/src/providers/SessionProvider.js.map +1 -1
- package/dist/src/providers/feature/Feature.d.ts +1 -1
- package/dist/src/providers/feature/Feature.js +3 -0
- package/dist/src/providers/feature/Feature.js.map +1 -1
- package/dist/src/providers/feature/InlineAddonStepFeature.js.map +1 -1
- package/dist/src/providers/feature/MemberPortalFeature.d.ts +0 -1
- package/dist/src/providers/feature/MemberPortalFeature.js +0 -1
- package/dist/src/providers/feature/MemberPortalFeature.js.map +1 -1
- package/dist/src/providers/feature/NumberOfPeopleBookedPillFeature.d.ts +0 -1
- package/dist/src/providers/feature/NumberOfPeopleBookedPillFeature.js +0 -1
- package/dist/src/providers/feature/NumberOfPeopleBookedPillFeature.js.map +1 -1
- package/dist/src/providers/storage/LocalStorageProvider.d.ts +2 -2
- package/dist/src/providers/storage/LocalStorageProvider.js.map +1 -1
- package/dist/src/reducers/BasketReducer.js +3 -2
- package/dist/src/reducers/BasketReducer.js.map +1 -1
- package/dist/src/routes/NaturallyProgressedStepRoute.js +6 -29
- package/dist/src/routes/NaturallyProgressedStepRoute.js.map +1 -1
- package/dist/src/stories/Alert.stories.d.ts +2 -2
- package/dist/src/stories/Alert.stories.js +2 -25
- package/dist/src/stories/Alert.stories.js.map +1 -1
- package/dist/src/stories/BEButton.stories.d.ts +2 -2
- package/dist/src/stories/BEButton.stories.js +2 -25
- package/dist/src/stories/BEButton.stories.js.map +1 -1
- package/dist/src/stories/BackButton.stories.d.ts +2 -2
- package/dist/src/stories/BackButton.stories.js +2 -25
- package/dist/src/stories/BackButton.stories.js.map +1 -1
- package/dist/src/stories/BookNowPayLaterInfoBlock.stories.d.ts +2 -2
- package/dist/src/stories/BookNowPayLaterInfoBlock.stories.js +4 -24
- package/dist/src/stories/BookNowPayLaterInfoBlock.stories.js.map +1 -1
- package/dist/src/stories/BookingWizard.stories.d.ts +5 -5
- package/dist/src/stories/BookingWizard.stories.js +25 -9
- package/dist/src/stories/BookingWizard.stories.js.map +1 -1
- package/dist/src/stories/Card.stories.d.ts +6 -3
- package/dist/src/stories/CardTypeSelect.stories.d.ts +3 -3
- package/dist/src/stories/CardTypeSelect.stories.js +4 -24
- package/dist/src/stories/CardTypeSelect.stories.js.map +1 -1
- package/dist/src/stories/Checkbox.stories.d.ts +3 -3
- package/dist/src/stories/Checkbox.stories.js +2 -25
- package/dist/src/stories/Checkbox.stories.js.map +1 -1
- package/dist/src/stories/ConfirmationModal.stories.js +6 -29
- package/dist/src/stories/ConfirmationModal.stories.js.map +1 -1
- package/dist/src/stories/Countdown.stories.d.ts +2 -2
- package/dist/src/stories/Countdown.stories.js +4 -27
- package/dist/src/stories/Countdown.stories.js.map +1 -1
- package/dist/src/stories/Currency.stories.d.ts +2 -2
- package/dist/src/stories/Currency.stories.js +2 -25
- package/dist/src/stories/Currency.stories.js.map +1 -1
- package/dist/src/stories/DateRangePicker.stories.js +25 -15
- package/dist/src/stories/DateRangePicker.stories.js.map +1 -1
- package/dist/src/stories/Distance.stories.d.ts +2 -2
- package/dist/src/stories/Distance.stories.js +2 -25
- package/dist/src/stories/Distance.stories.js.map +1 -1
- package/dist/src/stories/EnhancedPhoneNumberField.stories.d.ts +5 -0
- package/dist/src/stories/EnhancedPhoneNumberField.stories.js +2 -25
- package/dist/src/stories/EnhancedPhoneNumberField.stories.js.map +1 -1
- package/dist/src/stories/ErrorModal.stories.js +7 -30
- package/dist/src/stories/ErrorModal.stories.js.map +1 -1
- package/dist/src/stories/FloatingDateRangePicker.stories.d.ts +1 -1
- package/dist/src/stories/FloatingDateRangePicker.stories.js +15 -38
- package/dist/src/stories/FloatingDateRangePicker.stories.js.map +1 -1
- package/dist/src/stories/ForwardedSelect.stories.d.ts +3 -3
- package/dist/src/stories/ForwardedSelect.stories.js +4 -27
- package/dist/src/stories/ForwardedSelect.stories.js.map +1 -1
- package/dist/src/stories/Headline.stories.d.ts +2 -2
- package/dist/src/stories/Headline.stories.js +2 -25
- package/dist/src/stories/Headline.stories.js.map +1 -1
- package/dist/src/stories/Icon.stories.d.ts +2 -2
- package/dist/src/stories/Icon.stories.js +5 -2
- package/dist/src/stories/Icon.stories.js.map +1 -1
- package/dist/src/stories/IconNavCard.stories.d.ts +18 -8
- package/dist/src/stories/IconNavCard.stories.js +5 -25
- package/dist/src/stories/IconNavCard.stories.js.map +1 -1
- package/dist/src/stories/IconText.stories.d.ts +5 -0
- package/dist/src/stories/IconText.stories.js +4 -6
- package/dist/src/stories/IconText.stories.js.map +1 -1
- package/dist/src/stories/ImageLoader.stories.d.ts +2 -2
- package/dist/src/stories/ImageLoader.stories.js +2 -25
- package/dist/src/stories/ImageLoader.stories.js.map +1 -1
- package/dist/src/stories/InputGroup.stories.d.ts +2 -2
- package/dist/src/stories/InputGroup.stories.js +3 -26
- package/dist/src/stories/InputGroup.stories.js.map +1 -1
- package/dist/src/stories/LargeLoader.stories.d.ts +2 -2
- package/dist/src/stories/LargeLoader.stories.js +2 -25
- package/dist/src/stories/LargeLoader.stories.js.map +1 -1
- package/dist/src/stories/LineBreak.stories.d.ts +2 -2
- package/dist/src/stories/LineBreak.stories.js +2 -25
- package/dist/src/stories/LineBreak.stories.js.map +1 -1
- package/dist/src/stories/Notification.stories.d.ts +2 -2
- package/dist/src/stories/Notification.stories.js +2 -25
- package/dist/src/stories/Notification.stories.js.map +1 -1
- package/dist/src/stories/NumberIncrement.stories.js +6 -28
- package/dist/src/stories/NumberIncrement.stories.js.map +1 -1
- package/dist/src/stories/PasswordBox.stories.d.ts +3 -3
- package/dist/src/stories/PasswordBox.stories.js +4 -24
- package/dist/src/stories/PasswordBox.stories.js.map +1 -1
- package/dist/src/stories/PaymentCard.stories.d.ts +2 -2
- package/dist/src/stories/PaymentCard.stories.js +4 -24
- package/dist/src/stories/PaymentCard.stories.js.map +1 -1
- package/dist/src/stories/PaymentCardInput.stories.d.ts +4 -4
- package/dist/src/stories/PaymentCardInput.stories.js +13 -25
- package/dist/src/stories/PaymentCardInput.stories.js.map +1 -1
- package/dist/src/stories/Pill.stories.d.ts +2 -2
- package/dist/src/stories/Pill.stories.js +2 -25
- package/dist/src/stories/Pill.stories.js.map +1 -1
- package/dist/src/stories/Placeholder.stories.d.ts +2 -2
- package/dist/src/stories/Placeholder.stories.js +2 -25
- package/dist/src/stories/Placeholder.stories.js.map +1 -1
- package/dist/src/stories/PlanpayButton.stories.d.ts +3 -3
- package/dist/src/stories/PlanpayButton.stories.js +4 -24
- package/dist/src/stories/PlanpayButton.stories.js.map +1 -1
- package/dist/src/stories/PromoCodeInput.stories.d.ts +2 -2
- package/dist/src/stories/PromoCodeInput.stories.js +2 -25
- package/dist/src/stories/PromoCodeInput.stories.js.map +1 -1
- package/dist/src/stories/RadioButton.stories.d.ts +4 -4
- package/dist/src/stories/RadioButton.stories.js +4 -24
- package/dist/src/stories/RadioButton.stories.js.map +1 -1
- package/dist/src/stories/RadioButtonGroup.stories.d.ts +2 -2
- package/dist/src/stories/RadioButtonGroup.stories.js +4 -27
- package/dist/src/stories/RadioButtonGroup.stories.js.map +1 -1
- package/dist/src/stories/RadioFields.stories.d.ts +2 -2
- package/dist/src/stories/RadioFields.stories.js +2 -25
- package/dist/src/stories/RadioFields.stories.js.map +1 -1
- package/dist/src/stories/SSLSecureBadge.stories.d.ts +2 -2
- package/dist/src/stories/SSLSecureBadge.stories.js +1 -1
- package/dist/src/stories/SSLSecureBadge.stories.js.map +1 -1
- package/dist/src/stories/Select.stories.d.ts +14 -14
- package/dist/src/stories/Select.stories.js +18 -38
- package/dist/src/stories/Select.stories.js.map +1 -1
- package/dist/src/stories/SimpleModal.stories.js +11 -33
- package/dist/src/stories/SimpleModal.stories.js.map +1 -1
- package/dist/src/stories/Slider.stories.d.ts +4 -4
- package/dist/src/stories/Slider.stories.js +6 -26
- package/dist/src/stories/Slider.stories.js.map +1 -1
- package/dist/src/stories/SmallSpinner.stories.d.ts +2 -2
- package/dist/src/stories/SmallSpinner.stories.js +2 -25
- package/dist/src/stories/SmallSpinner.stories.js.map +1 -1
- package/dist/src/stories/TabbedModal.stories.js +6 -29
- package/dist/src/stories/TabbedModal.stories.js.map +1 -1
- package/dist/src/stories/Tabs.stories.d.ts +1 -1
- package/dist/src/stories/Tabs.stories.js +7 -30
- package/dist/src/stories/Tabs.stories.js.map +1 -1
- package/dist/src/stories/Text.stories.d.ts +2 -2
- package/dist/src/stories/Text.stories.js +2 -25
- package/dist/src/stories/Text.stories.js.map +1 -1
- package/dist/src/stories/TextArea.stories.d.ts +3 -3
- package/dist/src/stories/TextArea.stories.js +2 -25
- package/dist/src/stories/TextArea.stories.js.map +1 -1
- package/dist/src/stories/TextBox.stories.d.ts +3 -3
- package/dist/src/stories/TextBox.stories.js +2 -25
- package/dist/src/stories/TextBox.stories.js.map +1 -1
- package/dist/src/stories/Tooltip.stories.d.ts +2 -2
- package/dist/src/stories/Tooltip.stories.js +2 -25
- package/dist/src/stories/Tooltip.stories.js.map +1 -1
- package/dist/src/translations/Translation.d.ts +4 -0
- package/dist/src/translations/Translation.js +4 -0
- package/dist/src/translations/Translation.js.map +1 -1
- package/dist/src/translations/languages/en-gb.js +4 -0
- package/dist/src/translations/languages/en-gb.js.map +1 -1
- package/dist/src/util/AsyncAuth.d.ts +5 -0
- package/dist/src/util/AsyncAuth.js +44 -0
- package/dist/src/util/AsyncAuth.js.map +1 -0
- package/dist/src/util/DataLayer.js +3 -3
- package/dist/src/util/DataLayer.js.map +1 -1
- package/dist/src/util/EnumHelper.d.ts +1 -1
- package/dist/src/util/EnumHelper.js +1 -1
- package/dist/src/util/EnumHelper.js.map +1 -1
- package/dist/src/util/ObjectHelper.d.ts +1 -1
- package/dist/src/util/PaymentCardHelper.js +2 -1
- package/dist/src/util/PaymentCardHelper.js.map +1 -1
- package/dist/src/util/StepManager.d.ts +1 -1
- package/dist/src/util/Validation.d.ts +0 -1
- package/dist/src/util/Validation.js +3 -4
- package/dist/src/util/Validation.js.map +1 -1
- package/dist/test.bundle.js +1 -1
- package/dist/tests/jest/engines/RoomstayThemeEngine.test.js +5 -3
- package/dist/tests/jest/engines/RoomstayThemeEngine.test.js.map +1 -1
- package/dist/tests/jest/providers/LanguageProvider.test.js +6 -4
- package/dist/tests/jest/providers/LanguageProvider.test.js.map +1 -1
- package/dist/tests/jest/providers/SessionProvider.test.js +12 -10
- package/dist/tests/jest/providers/SessionProvider.test.js.map +1 -1
- package/dist/tests/jest/reducers/BasketReducer.test.js +2 -1
- package/dist/tests/jest/reducers/BasketReducer.test.js.map +1 -1
- package/dist/tests/offline/RoomstayBestRateAlert.js +6 -6
- package/dist/tests/offline/RoomstayBestRateAlert.js.map +1 -1
- package/dist/tests/offline/entry/ReactWrapper.js +26 -49
- package/dist/tests/offline/entry/ReactWrapper.js.map +1 -1
- package/dist/tests/offline/entry/allEngines.js +2 -2
- package/dist/tests/offline/entry/allEngines.js.map +1 -1
- package/dist/tests/offline/entry/components/TestPicker.js +42 -52
- package/dist/tests/offline/entry/components/TestPicker.js.map +1 -1
- package/dist/tests/setupTests.js +1 -0
- package/dist/tests/setupTests.js.map +1 -1
- package/dist/vendors.bundle.js +1 -1
- package/dist/vendors.bundle.js.LICENSE.txt +0 -31
- package/package.json +11 -5
- package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.d.ts +0 -1
- package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.js +0 -133
- package/dist/src/pages/account/Reservations/AccountReservationCancelledPage.js.map +0 -1
- package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.d.ts +0 -2
- package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.js +0 -158
- package/dist/src/pages/account/Reservations/AccountReservationMultiplePage.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RoomBuilderProgressRow.js","sourceRoot":"/","sources":["src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport BasketRow from '@/models/BasketRow';\nimport { useRef, useState, useContext, useEffect } from 'react';\nimport classNames from 'classnames';\n\nimport BEButton from '@/components/generic/BEButton';\nimport { useTranslation } from 'react-i18next';\nimport { Translation } from 'translations/Translation';\nimport Icon, { IconType } from '@/components/generic/Icon/Icon';\nimport Text, { TextType } from '@/components/generic/Text';\nimport StringHelper from '@/util/StringHelper';\nimport { Color } from '@/util/Color';\nimport { BasketContext, BookingEngineContext } from '@frontend/contexts';\nimport FloatingDatePicker from '@/components/generic/date/FloatingDatePicker';\nimport ScreenSize from '@/util/ScreenSize';\nimport dayjs from 'dayjs';\nimport Tooltip from '@/components/generic/Tooltip/Tooltip';\nimport Pill, { PillType } from '@/components/generic/Pill';\nimport DataLayer, { InteractionStep, InteractionType } from '@/util/DataLayer';\nimport PromoCodeInput from '@/components/generic/PromoCodeInput';\nimport NumberOfChildrenPicker from '@/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker';\nimport NumberOfAdultsPicker from '@/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker';\nimport { Overlay } from '@/components/generic/Overlay/Overlay';\n\nexport interface RoomBuilderProgressRowProps {\n row: BasketRow;\n number?: number;\n}\n\nexport default function RoomBuilderProgressRow(props: RoomBuilderProgressRowProps) {\n const context = useContext(BasketContext);\n const engineContext = useContext(BookingEngineContext);\n const { t } = useTranslation();\n\n const [isEditing, setIsEditing] = useState(false);\n\n const { row } = props;\n\n const isCurrent = context.selectedBasketRow && context.selectedBasketRow.getID() === row.getID();\n const classes = classNames('room-builder-progress--item', {\n '--current': isCurrent,\n '--complete': row.isValid(),\n });\n const [promoCode, setPromoCode] = useState(row.getPromoCode());\n const thisElement = useRef();\n\n const [isPromoModalOpen, setIsPromoModalOpen] = useState(false);\n\n useEffect(() => {\n if (isEditing && !isCurrent) {\n setIsEditing(false);\n }\n }, [context.selectBasketRow]);\n\n const updatePeopleValues = ({ adults, children, updatedPromoCode }: { adults?: number; children?: number; updatedPromoCode?: string }) => {\n if (adults && adults !== row.getAdults()) {\n DataLayer.instance.sendInteraction('Guests', InteractionType.NUMBER_INPUT, InteractionStep.ROOMS);\n row.setAdults(adults);\n }\n\n if ((children || children === 0) && children !== row.getChildren()) {\n DataLayer.instance.sendInteraction('Guests', InteractionType.NUMBER_INPUT, InteractionStep.ROOMS);\n row.setChildren(children);\n }\n\n if ((updatedPromoCode || updatedPromoCode === '') && updatedPromoCode !== row.getPromoCode()) {\n DataLayer.instance.sendInteraction('Promo Code', InteractionType.FORM_FIELD, InteractionStep.ROOMS);\n row.setPromoCode(updatedPromoCode);\n }\n\n context.updateBasketRow(row);\n };\n\n const updateDateValues = (startDate: dayjs.Dayjs, endDate: dayjs.Dayjs) => {\n if (startDate) {\n row.setStartDate(startDate);\n }\n\n if (endDate) {\n row.setEndDate(endDate);\n }\n\n context.updateBasketRow(row);\n };\n\n const updatePromoCode = (code: string) => {\n DataLayer.instance.sendInteraction('Promo Code', InteractionType.FORM_FIELD, InteractionStep.ROOMS);\n\n if (context.selectedBasketRow) {\n context.selectedBasketRow.setPromoCode(code);\n context.updateBasketRow(context.selectedBasketRow);\n\n if (code) {\n setIsPromoModalOpen(false);\n }\n }\n };\n\n const isRemovable = context.currentBasketRows.length > 1;\n const removeRoomOnClick = () => {\n DataLayer.instance.sendInteraction('Remove Room', InteractionType.BUTTON, InteractionStep.ROOMS);\n context.removeBasketRow(row);\n };\n const removeButton = (\n <Tooltip title={isRemovable ? 'Remove this room' : 'Cannot remove this room as at least one must be selected.'}>\n <div className=\"room-builder-progress--remove\">\n <BEButton isText={true} icon={IconType.Close} iconPosition=\"right\" stopIconAnimation={true} disabled={!isRemovable} onClick={removeRoomOnClick} />\n </div>\n </Tooltip>\n );\n\n const isLargerThanLarge = engineContext.screenSize > ScreenSize.ExtraLarge;\n const showEditSection = isLargerThanLarge || isCurrent;\n\n const roomLabel = context.currentBasketRows.length !== 1 ? props.number + 1 : '';\n\n let promoCodeTooltip = '';\n\n if (row.getPromoCodeStatus() === 'new') {\n promoCodeTooltip = row.getPromoCode() ? 'Promo Code is being checked... please wait.' : 'Set a Promo Code for a possible offer!';\n } else {\n if (row.getPromoCodeStatus() === 'valid') {\n promoCodeTooltip = 'Successful promo code entered';\n } else {\n promoCodeTooltip = 'Error code not valid';\n }\n }\n const openPromoModalOnClick = () => {\n setIsPromoModalOpen(true);\n };\n const setPromoCodeOnClose = () => {\n setPromoCode(row.getPromoCode());\n setIsPromoModalOpen(false);\n };\n const cancelPromoPopupOnClick = () => {\n DataLayer.instance.sendInteraction('Cancel Promo Popup', InteractionType.BUTTON, InteractionStep.ROOMS);\n setPromoCode(row.getPromoCode());\n setIsPromoModalOpen(false);\n };\n const saveRoomChangesOnClick = () => {\n DataLayer.instance.sendInteraction('Save Room Changes', InteractionType.BUTTON, InteractionStep.ROOMS);\n context.selectBasketRow(null);\n setIsEditing(false);\n };\n const cancelRoomChangesOnClick = () => {\n DataLayer.instance.sendInteraction('Cancel Room Changes', InteractionType.LINK, InteractionStep.ROOMS);\n context.selectBasketRow(null);\n setIsEditing(false);\n };\n const editRoomOnClick = () => {\n DataLayer.instance.sendInteraction('Edit Room', InteractionType.LINK, InteractionStep.ROOMS);\n context.selectBasketRow(row);\n setIsEditing(true);\n };\n const changePromoCode = (val: any) => {\n updatePromoCode(val);\n };\n const updateNumberOfAdultsOnChange = (value: string) => {\n updatePeopleValues({ adults: +value });\n };\n const updateNumberOfChildrenOnChange = (value: string) => {\n updatePeopleValues({ children: +value });\n };\n return (\n <div className={classes}>\n {isCurrent || !row.isValid() ? (\n <div className=\"u-flex w-100\">\n <div className=\"u-flex flex-wrap flex-xl-nowrap flex-row u-w-100@xl- align-items-center\">\n <div>\n {row.isValid() ? (\n <Text>\n <strong className=\"u-nowrap\">\n {t(Translation.Step.Room.EditingRoom)} {roomLabel}\n </strong>\n </Text>\n ) : (\n <Text>\n <strong className=\"u-nowrap\">\n {t(Translation.Step.Room.SelectRoom)} {roomLabel}\n </strong>\n </Text>\n )}\n </div>\n {showEditSection ? (\n <>\n {!isLargerThanLarge && (\n <div className={'w-100 d-flex' + (showEditSection ? ' u-marg-bottom@xl-' : '')}>\n <Text type={TextType.Small} color={Color.DarkGrey} inline={true}>\n Choose room below\n </Text>\n </div>\n )}\n <Tooltip title=\"Update number of adults\" wrapperClasses={'u-w-100@xl- d-flex'}>\n <div className=\"room-builder-progress--value u-flex-justify-center u-flex\">\n <NumberOfAdultsPicker row={row} onChange={updateNumberOfAdultsOnChange} />\n </div>\n </Tooltip>\n <Tooltip title=\"Update number of children\" wrapperClasses={'u-w-100@xl- d-flex'}>\n <div className=\"room-builder-progress--value u-flex-justify-center u-flex\">\n <NumberOfChildrenPicker row={row} onChange={updateNumberOfChildrenOnChange} />\n </div>\n </Tooltip>\n\n <>\n <div className=\"room-builder-progress--value\">\n <FloatingDatePicker\n startDate={row.getStartDate()}\n selectedDateChanged={updateDateValues}\n className=\"u-w-100@xl- d-flex align-items-center justify-content-center\"\n >\n <Tooltip title=\"Select Arrival and departure dates by clicking here\">\n <div className=\"u-flex align-items-center justify-content-center u-w-100@xl- u-cursor-pointer\">\n <Text color={Color.Accent} bold={true} className=\"u-nowrap\">\n {row.getArrivalDate()}\n </Text>\n <Icon icon={IconType.ArrowRight2} />\n <Text color={Color.Accent} bold={true} className=\"u-nowrap\">\n {row.getDepartureDate()}\n </Text>\n </div>\n </Tooltip>\n </FloatingDatePicker>\n </div>\n\n <Tooltip title={promoCodeTooltip} wrapperClasses={'u-w-100@xl- d-flex'}>\n <div className=\"room-builder-progress--value u-cursor-pointer\" ref={thisElement} onClick={openPromoModalOnClick}>\n <div className=\"u-flex align-items-center justify-content-center u-w-100@xl-\">\n <Text className=\"u-pad-right--light\" type={TextType.Body} color={row.getPromoCode() ? row.getPromoCodeColour() : Color.Navy}>\n {row.getPromoCode() ? row.getPromoCode() : 'Promo Code'}\n </Text>\n <Icon icon={IconType.Dropdown} color={Color.DarkGrey} />\n </div>\n </div>\n </Tooltip>\n </>\n\n <Overlay open={isPromoModalOpen} followElement={thisElement.current} onClose={setPromoCodeOnClose}>\n <div className=\"u-pad--heavy\">\n <div>\n <PromoCodeInput\n value={context.selectedBasketRow?.getPromoCode()}\n onChange={changePromoCode}\n valid={\n context.selectedBasketRow?.getPromoCodeStatus() !== 'new' ? context.selectedBasketRow?.getPromoCodeStatus() === 'valid' : null\n }\n />\n </div>\n\n <div className=\"u-flex justify-content-end align-items-center u-marg-top\">\n <BEButton isText={true} size=\"small\" onClick={cancelPromoPopupOnClick}>\n Cancel\n </BEButton>\n </div>\n </div>\n </Overlay>\n {!isLargerThanLarge && row.isValid() && (\n <BEButton wide={true} primary={true} filled={true} onClick={saveRoomChangesOnClick}>\n Save\n </BEButton>\n )}\n </>\n ) : (\n <div className=\"w-100\">\n <Text type={TextType.Small} color={Color.DarkGrey}>\n {t(Translation.Step.Room.NextRoom)}\n </Text>\n </div>\n )}\n </div>\n <div className=\"u-flex align-items-center\">\n {row.isValid() && (\n <div className=\"u-none@xl-\">\n <Tooltip title=\"Cancel changes\">\n <div className=\"u-flex align-items-center\">\n <BEButton isText={true} size=\"tiny\" onClick={cancelRoomChangesOnClick}>\n {t(Translation.Misc.Cancel).toUpperCase()}\n </BEButton>\n </div>\n </Tooltip>\n </div>\n )}\n {removeButton}\n </div>\n </div>\n ) : (\n <div className=\"u-flex w-100\">\n <div className=\"u-flex justify-content-start\">\n <div className=\"u-flex flex-column\">\n <span>\n <Text inline={isLargerThanLarge}>\n <strong>{row.getRoom().name}</strong>\n </Text>\n <Text inline={isLargerThanLarge} type={isLargerThanLarge ? TextType.Body : TextType.Small}>\n <span className=\"u-marg-left--light@xl\">\n {StringHelper.pluralWithDictAndCount(row.getAdults(), Translation.Step.Date.Adult, t)}\n , \n {StringHelper.pluralWithDictAndCount(row.getChildren(), Translation.Step.Date.Child, t)}\n </span>\n </Text>\n </span>\n <Text type={TextType.Caption} color={Color.DarkGrey}>\n <strong>{row.getStayDateRange('ddd, MMM D, YYYY', ' -')}</strong>\n </Text>\n </div>\n {row.isPromoCodeValid() && (\n <div className=\"u-marg-left d-flex align-items-center\">\n <Pill type={PillType.Success} icon={IconType.Money}>\n {row.getPromoCode()}\n </Pill>\n </div>\n )}\n </div>\n <div className=\"u-flex align-items-center\">\n <Tooltip title=\"Edit this room\">\n <div className=\"u-flex align-items-center room-builder-progress--edit\">\n <BEButton isText={true} size=\"tiny\" onClick={editRoomOnClick}>\n {t(Translation.Misc.Edit).toUpperCase()}\n </BEButton>\n </div>\n </Tooltip>\n {removeButton}\n </div>\n </div>\n )}\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"RoomBuilderProgressRow.js","sourceRoot":"/","sources":["src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport BasketRow from '@/models/BasketRow';\nimport { useRef, useState, useContext, useEffect } from 'react';\nimport classNames from 'classnames';\n\nimport BEButton from '@/components/generic/BEButton';\nimport { useTranslation } from 'react-i18next';\nimport { Translation } from 'translations/Translation';\nimport Icon, { IconType } from '@/components/generic/Icon/Icon';\nimport Text, { TextType } from '@/components/generic/Text';\nimport StringHelper from '@/util/StringHelper';\nimport { Color } from '@/util/Color';\nimport { BasketContext, BookingEngineContext } from '@frontend/contexts';\nimport FloatingDatePicker from '@/components/generic/date/FloatingDatePicker';\nimport ScreenSize from '@/util/ScreenSize';\nimport dayjs from 'dayjs';\nimport Tooltip from '@/components/generic/Tooltip/Tooltip';\nimport Pill, { PillType } from '@/components/generic/Pill';\nimport DataLayer, { InteractionStep, InteractionType } from '@/util/DataLayer';\nimport PromoCodeInput from '@/components/generic/PromoCodeInput';\nimport NumberOfChildrenPicker from '@/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker';\nimport NumberOfAdultsPicker from '@/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker';\nimport { Overlay } from '@/components/generic/Overlay/Overlay';\n\nexport interface RoomBuilderProgressRowProps {\n row: BasketRow;\n number?: number;\n}\n\nexport default function RoomBuilderProgressRow(props: RoomBuilderProgressRowProps) {\n const context = useContext(BasketContext);\n const engineContext = useContext(BookingEngineContext);\n const { t } = useTranslation();\n\n const [isEditing, setIsEditing] = useState(false);\n\n const { row } = props;\n\n const isCurrent = context.selectedBasketRow && context.selectedBasketRow.getID() === row.getID();\n const classes = classNames('room-builder-progress--item', {\n '--current': isCurrent,\n '--complete': row.isValid(),\n });\n const [promoCode, setPromoCode] = useState(row.getPromoCode());\n const thisElement = useRef<HTMLDivElement | null>(null);\n\n const [isPromoModalOpen, setIsPromoModalOpen] = useState(false);\n\n useEffect(() => {\n if (isEditing && !isCurrent) {\n setIsEditing(false);\n }\n }, [context.selectBasketRow]);\n\n const updatePeopleValues = ({ adults, children, updatedPromoCode }: { adults?: number; children?: number; updatedPromoCode?: string }) => {\n if (adults && adults !== row.getAdults()) {\n DataLayer.instance.sendInteraction('Guests', InteractionType.NUMBER_INPUT, InteractionStep.ROOMS);\n row.setAdults(adults);\n }\n\n if ((children || children === 0) && children !== row.getChildren()) {\n DataLayer.instance.sendInteraction('Guests', InteractionType.NUMBER_INPUT, InteractionStep.ROOMS);\n row.setChildren(children);\n }\n\n if ((updatedPromoCode || updatedPromoCode === '') && updatedPromoCode !== row.getPromoCode()) {\n DataLayer.instance.sendInteraction('Promo Code', InteractionType.FORM_FIELD, InteractionStep.ROOMS);\n row.setPromoCode(updatedPromoCode);\n }\n\n context.updateBasketRow(row);\n };\n\n const updateDateValues = (startDate: dayjs.Dayjs, endDate: dayjs.Dayjs) => {\n if (startDate) {\n row.setStartDate(startDate);\n }\n\n if (endDate) {\n row.setEndDate(endDate);\n }\n\n context.updateBasketRow(row);\n };\n\n const updatePromoCode = (code: string) => {\n DataLayer.instance.sendInteraction('Promo Code', InteractionType.FORM_FIELD, InteractionStep.ROOMS);\n\n if (context.selectedBasketRow) {\n context.selectedBasketRow.setPromoCode(code);\n context.updateBasketRow(context.selectedBasketRow);\n\n if (code) {\n setIsPromoModalOpen(false);\n }\n }\n };\n\n const isRemovable = context.currentBasketRows.length > 1;\n const removeRoomOnClick = () => {\n DataLayer.instance.sendInteraction('Remove Room', InteractionType.BUTTON, InteractionStep.ROOMS);\n context.removeBasketRow(row);\n };\n const removeButton = (\n <Tooltip title={isRemovable ? 'Remove this room' : 'Cannot remove this room as at least one must be selected.'}>\n <div className=\"room-builder-progress--remove\">\n <BEButton isText icon={IconType.Close} iconPosition=\"right\" stopIconAnimation disabled={!isRemovable} onClick={removeRoomOnClick} />\n </div>\n </Tooltip>\n );\n\n const isLargerThanLarge = engineContext.screenSize > ScreenSize.ExtraLarge;\n const showEditSection = isLargerThanLarge || isCurrent;\n\n const roomLabel = context.currentBasketRows.length !== 1 ? (props.number as number) + 1 : '';\n\n let promoCodeTooltip = '';\n\n if (row.getPromoCodeStatus() === 'new') {\n promoCodeTooltip = row.getPromoCode() ? 'Promo Code is being checked... please wait.' : 'Set a Promo Code for a possible offer!';\n } else {\n if (row.getPromoCodeStatus() === 'valid') {\n promoCodeTooltip = 'Successful promo code entered';\n } else {\n promoCodeTooltip = 'Error code not valid';\n }\n }\n const openPromoModalOnClick = () => {\n setIsPromoModalOpen(true);\n };\n const setPromoCodeOnClose = () => {\n setPromoCode(row.getPromoCode());\n setIsPromoModalOpen(false);\n };\n const cancelPromoPopupOnClick = () => {\n DataLayer.instance.sendInteraction('Cancel Promo Popup', InteractionType.BUTTON, InteractionStep.ROOMS);\n setPromoCode(row.getPromoCode());\n setIsPromoModalOpen(false);\n };\n const saveRoomChangesOnClick = () => {\n DataLayer.instance.sendInteraction('Save Room Changes', InteractionType.BUTTON, InteractionStep.ROOMS);\n context.selectBasketRow(null);\n setIsEditing(false);\n };\n const cancelRoomChangesOnClick = () => {\n DataLayer.instance.sendInteraction('Cancel Room Changes', InteractionType.LINK, InteractionStep.ROOMS);\n context.selectBasketRow(null);\n setIsEditing(false);\n };\n const editRoomOnClick = () => {\n DataLayer.instance.sendInteraction('Edit Room', InteractionType.LINK, InteractionStep.ROOMS);\n context.selectBasketRow(row);\n setIsEditing(true);\n };\n const changePromoCode = (val: any) => {\n updatePromoCode(val);\n };\n const updateNumberOfAdultsOnChange = (value: string) => {\n updatePeopleValues({ adults: +value });\n };\n const updateNumberOfChildrenOnChange = (value: string) => {\n updatePeopleValues({ children: +value });\n };\n return (\n <div className={classes}>\n {isCurrent || !row.isValid() ? (\n <div className=\"u-flex w-100\">\n <div className=\"u-flex flex-wrap flex-xl-nowrap flex-row u-w-100@xl- align-items-center\">\n <div>\n {row.isValid() ? (\n <Text>\n <strong className=\"u-nowrap\">\n {t(Translation.Step.Room.EditingRoom)} {roomLabel}\n </strong>\n </Text>\n ) : (\n <Text>\n <strong className=\"u-nowrap\">\n {t(Translation.Step.Room.SelectRoom)} {roomLabel}\n </strong>\n </Text>\n )}\n </div>\n {showEditSection ? (\n <>\n {!isLargerThanLarge && (\n <div className={'w-100 d-flex' + (showEditSection ? ' u-marg-bottom@xl-' : '')}>\n <Text type={TextType.Small} color={Color.DarkGrey} inline>\n Choose room below\n </Text>\n </div>\n )}\n <Tooltip title=\"Update number of adults\" wrapperClasses=\"u-w-100@xl- d-flex\">\n <div className=\"room-builder-progress--value u-flex-justify-center u-flex\">\n <NumberOfAdultsPicker row={row} onChange={updateNumberOfAdultsOnChange} />\n </div>\n </Tooltip>\n <Tooltip title=\"Update number of children\" wrapperClasses=\"u-w-100@xl- d-flex\">\n <div className=\"room-builder-progress--value u-flex-justify-center u-flex\">\n <NumberOfChildrenPicker row={row} onChange={updateNumberOfChildrenOnChange} />\n </div>\n </Tooltip>\n\n <>\n <div className=\"room-builder-progress--value\">\n <FloatingDatePicker\n startDate={row.getStartDate()}\n selectedDateChanged={updateDateValues}\n className=\"u-w-100@xl- d-flex align-items-center justify-content-center\"\n >\n <Tooltip title=\"Select Arrival and departure dates by clicking here\">\n <div className=\"u-flex align-items-center justify-content-center u-w-100@xl- u-cursor-pointer\">\n <Text color={Color.Accent} bold className=\"u-nowrap\">\n {row.getArrivalDate()}\n </Text>\n <Icon icon={IconType.ArrowRight2} />\n <Text color={Color.Accent} bold className=\"u-nowrap\">\n {row.getDepartureDate()}\n </Text>\n </div>\n </Tooltip>\n </FloatingDatePicker>\n </div>\n\n <Tooltip title={promoCodeTooltip} wrapperClasses=\"u-w-100@xl- d-flex\">\n <div className=\"room-builder-progress--value u-cursor-pointer\" ref={thisElement} onClick={openPromoModalOnClick}>\n <div className=\"u-flex align-items-center justify-content-center u-w-100@xl-\">\n <Text className=\"u-pad-right--light\" type={TextType.Body} color={row.getPromoCode() ? row.getPromoCodeColour() : Color.Navy}>\n {row.getPromoCode() ? row.getPromoCode() : 'Promo Code'}\n </Text>\n <Icon icon={IconType.Dropdown} color={Color.DarkGrey} />\n </div>\n </div>\n </Tooltip>\n </>\n\n <Overlay open={isPromoModalOpen} followElement={thisElement.current} onClose={setPromoCodeOnClose}>\n <div className=\"u-pad--heavy\">\n <div>\n <PromoCodeInput\n value={context.selectedBasketRow?.getPromoCode()}\n onChange={changePromoCode}\n valid={\n context.selectedBasketRow?.getPromoCodeStatus() !== 'new'\n ? context.selectedBasketRow?.getPromoCodeStatus() === 'valid'\n : undefined\n }\n />\n </div>\n\n <div className=\"u-flex justify-content-end align-items-center u-marg-top\">\n <BEButton isText size=\"small\" onClick={cancelPromoPopupOnClick}>\n Cancel\n </BEButton>\n </div>\n </div>\n </Overlay>\n {!isLargerThanLarge && row.isValid() && (\n <BEButton wide primary filled onClick={saveRoomChangesOnClick}>\n Save\n </BEButton>\n )}\n </>\n ) : (\n <div className=\"w-100\">\n <Text type={TextType.Small} color={Color.DarkGrey}>\n {t(Translation.Step.Room.NextRoom)}\n </Text>\n </div>\n )}\n </div>\n <div className=\"u-flex align-items-center\">\n {row.isValid() && (\n <div className=\"u-none@xl-\">\n <Tooltip title=\"Cancel changes\">\n <div className=\"u-flex align-items-center\">\n <BEButton isText size=\"tiny\" onClick={cancelRoomChangesOnClick}>\n {t(Translation.Misc.Cancel).toUpperCase()}\n </BEButton>\n </div>\n </Tooltip>\n </div>\n )}\n {removeButton}\n </div>\n </div>\n ) : (\n <div className=\"u-flex w-100\">\n <div className=\"u-flex justify-content-start\">\n <div className=\"u-flex flex-column\">\n <span>\n <Text inline={isLargerThanLarge}>\n <strong>{row.getRoom().name}</strong>\n </Text>\n <Text inline={isLargerThanLarge} type={isLargerThanLarge ? TextType.Body : TextType.Small}>\n <span className=\"u-marg-left--light@xl\">\n {StringHelper.pluralWithDictAndCount(row.getAdults(), Translation.Step.Date.Adult, t)}\n , \n {StringHelper.pluralWithDictAndCount(row.getChildren(), Translation.Step.Date.Child, t)}\n </span>\n </Text>\n </span>\n <Text type={TextType.Caption} color={Color.DarkGrey}>\n <strong>{row.getStayDateRange('ddd, MMM D, YYYY', ' -')}</strong>\n </Text>\n </div>\n {row.isPromoCodeValid() && (\n <div className=\"u-marg-left d-flex align-items-center\">\n <Pill type={PillType.Success} icon={IconType.Money}>\n {row.getPromoCode()}\n </Pill>\n </div>\n )}\n </div>\n <div className=\"u-flex align-items-center\">\n <Tooltip title=\"Edit this room\">\n <div className=\"u-flex align-items-center room-builder-progress--edit\">\n <BEButton isText size=\"tiny\" onClick={editRoomOnClick}>\n {t(Translation.Misc.Edit).toUpperCase()}\n </BEButton>\n </div>\n </Tooltip>\n {removeButton}\n </div>\n </div>\n )}\n </div>\n );\n}\n"]}
|
|
@@ -33,7 +33,7 @@ const BEButton_1 = __importDefault(require("../../../generic/BEButton"));
|
|
|
33
33
|
const Icon_1 = require("../../../generic/Icon/Icon");
|
|
34
34
|
const react_1 = require("react");
|
|
35
35
|
const classnames_1 = __importDefault(require("classnames"));
|
|
36
|
-
const
|
|
36
|
+
const react_2 = __importDefault(require("react"));
|
|
37
37
|
const RoomRates_1 = __importDefault(require("./roomRates/RoomRates"));
|
|
38
38
|
const RoomModal_1 = __importDefault(require("../RoomModal"));
|
|
39
39
|
const Currency_1 = __importDefault(require("../../../generic/Currency"));
|
|
@@ -52,6 +52,7 @@ const hooks_1 = require("../../../../hooks/index.js");
|
|
|
52
52
|
const contexts_2 = require("../../../../contexts/index.js");
|
|
53
53
|
const RoomRatePills_1 = __importDefault(require("./roomRates/RoomRatePills"));
|
|
54
54
|
const ImageProvider_1 = require("../../../../providers/ImageProvider");
|
|
55
|
+
const CurrencyProvider_1 = __importDefault(require("../../../../providers/CurrencyProvider"));
|
|
55
56
|
function RoomDetails(props) {
|
|
56
57
|
var _a;
|
|
57
58
|
const [featuredRates, setFeaturedRates] = (0, react_1.useState)([]);
|
|
@@ -77,7 +78,7 @@ function RoomDetails(props) {
|
|
|
77
78
|
(0, react_1.useEffect)(() => {
|
|
78
79
|
var _a, _b, _c;
|
|
79
80
|
let nonPromoRates = [];
|
|
80
|
-
|
|
81
|
+
const toSetFeaturedRate = [];
|
|
81
82
|
if (FeaturedPromoFeature_1.default.isActive()) {
|
|
82
83
|
for (const currentRate of room.getRates()) {
|
|
83
84
|
if (((_a = currentRate.promoCode) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === ((_c = (_b = basketContext.selectedBasketRow) === null || _b === void 0 ? void 0 : _b.getPromoCode()) === null || _c === void 0 ? void 0 : _c.toLowerCase())) {
|
|
@@ -97,7 +98,7 @@ function RoomDetails(props) {
|
|
|
97
98
|
}
|
|
98
99
|
setStandardRates(nonPromoRates);
|
|
99
100
|
}, [room.getRates()]);
|
|
100
|
-
const perks = (_a = hotel.perks) === null || _a === void 0 ? void 0 : _a.slice(0, 5);
|
|
101
|
+
const perks = (_a = hotel === null || hotel === void 0 ? void 0 : hotel.perks) === null || _a === void 0 ? void 0 : _a.slice(0, 5);
|
|
101
102
|
const trimmedDescription = room.getShortDescription();
|
|
102
103
|
const isMobile = context.screenSize <= ScreenSize_1.default.Large;
|
|
103
104
|
const ratesOpen = viewingRates || (context.screenSize <= ScreenSize_1.default.Medium && viewingRates === null);
|
|
@@ -116,46 +117,48 @@ function RoomDetails(props) {
|
|
|
116
117
|
};
|
|
117
118
|
const lowestPrice = Math.round(room.getLowestPrice(false, true));
|
|
118
119
|
const currencySize = context.screenSize > ScreenSize_1.default.Medium && lowestPrice.toLocaleString().length < 7 ? 'large' : 'normal';
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
120
|
+
const convertCurrencyPrice = (value) => Math.round(CurrencyProvider_1.default.convertPrice(value, true, ccx.currentCurrency, hotel === null || hotel === void 0 ? void 0 : hotel.defaultCurrency));
|
|
121
|
+
return (react_2.default.createElement("div", { className: `room-details-container ${props.disableMarginBottom ? '' : 'u-marg-bottom'}` },
|
|
122
|
+
react_2.default.createElement("div", { className: classes },
|
|
123
|
+
react_2.default.createElement("div", { className: "room-details--image" },
|
|
124
|
+
react_2.default.createElement(ImageGallerySlider_1.default, { images: props.room.getImages(), imageSize: ImageProvider_1.ImageSize.Medium })),
|
|
125
|
+
react_2.default.createElement("div", { className: "room-details--content u-pad--heavy u-pad@l-" },
|
|
126
|
+
react_2.default.createElement("div", { className: "u-marg-bottom" },
|
|
127
|
+
context.screenSize > ScreenSize_1.default.Large && (react_2.default.createElement(react_2.default.Fragment, null,
|
|
128
|
+
react_2.default.createElement("div", { className: "u-marg-bottom" },
|
|
129
|
+
react_2.default.createElement(RoomRatePills_1.default, { room: room, limit: 2 })))),
|
|
130
|
+
react_2.default.createElement("div", { className: "room-details--content-title u-marg-bottom--light" },
|
|
131
|
+
react_2.default.createElement(Headline_1.default, { bold: true }, room.name)),
|
|
132
|
+
react_2.default.createElement(RoomDetailsBedsBlock_1.RoomDetailsBedsBlock, { room: room }),
|
|
133
|
+
react_2.default.createElement("div", { className: "room-details--content-description u-marg-bottom--light" },
|
|
134
|
+
react_2.default.createElement(Text_1.default, { color: Color_1.Color.DarkGrey, type: Text_1.TextType.Small },
|
|
135
|
+
react_2.default.createElement("span", { dangerouslySetInnerHTML: { __html: (trimmedDescription === null || trimmedDescription === void 0 ? void 0 : trimmedDescription.replace(/<br(\/|)>/g, '')) || '' } })))),
|
|
136
|
+
react_2.default.createElement("div", { className: "row" },
|
|
137
|
+
react_2.default.createElement("div", { className: "col-md-6 u-flex u-marg-bottom@m- flex-column align-items-start" },
|
|
138
|
+
react_2.default.createElement("div", { className: "room-details--content-perks u-marg-bottom@m-" },
|
|
139
|
+
isMobile && (react_2.default.createElement("div", { className: "u-marg-bottom" },
|
|
140
|
+
react_2.default.createElement(Text_1.default, { type: Text_1.TextType.Small, bold: true, color: Color_1.Color.Accent }, t(Translation_1.Translation.Misc.Perks.AndYouGetAll)))),
|
|
141
|
+
react_2.default.createElement(RoomDetailsPerkBlock_1.RoomDetailsPerkBlock, { perks: perks })),
|
|
142
|
+
react_2.default.createElement(BEButton_1.default, { icon: Icon_1.IconType.ArrowRight2, isText: true, primary: true, size: "tiny", iconPosition: "right", onClick: moreDetailsOnClick }, t(Translation_1.Translation.Step.Room.RoomInfo.MoreDetails))),
|
|
143
|
+
react_2.default.createElement("div", { className: "col-md-6 u-flex justify-content-end flex-column align-items-start align-items-md-end" },
|
|
144
|
+
react_2.default.createElement(Text_1.default, { type: Text_1.TextType.Small, color: Color_1.Color.Navy, inline: true }, t(Translation_1.Translation.Misc.From)),
|
|
145
|
+
react_2.default.createElement("div", { className: "room-details--content-price flex-row align-items-end" },
|
|
146
|
+
react_2.default.createElement(Headline_1.default, { size: currencySize, bold: true },
|
|
147
|
+
react_2.default.createElement(Currency_1.default, { hideDecimals: true }, lowestPrice)),
|
|
148
|
+
react_2.default.createElement(Text_1.default, { color: Color_1.Color.DarkGrey, inline: true },
|
|
146
149
|
"/",
|
|
147
150
|
t(Translation_1.Translation.Misc.Night))),
|
|
148
|
-
|
|
149
|
-
|
|
151
|
+
react_2.default.createElement("div", { className: "u-marg-bottom" },
|
|
152
|
+
react_2.default.createElement(Text_1.default, { type: Text_1.TextType.Small, color: Color_1.Color.Grey, inline: true, className: "u-nowrap" }, room.getLowestPriceType() === RoomRate_1.RoomRatePriceInclusion.IncludingFeesAndTaxes
|
|
150
153
|
? t(Translation_1.Translation.Step.Room.RoomInfo.IncludesTaxes)
|
|
151
154
|
: t(Translation_1.Translation.Step.Room.ExcludingTaxes))),
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
155
|
+
react_2.default.createElement("div", { className: "u-marg-top--light u-flex justify-content-end u-w-100@m-" },
|
|
156
|
+
react_2.default.createElement(BEButton_1.default, { name: "ViewRatesNowButton", primary: true, primaryActive: !!ratesOpen, filled: true, stopIconAnimation: true, icon: ratesOpen ? Icon_1.IconType.ArrowUp2 : Icon_1.IconType.ArrowDown2, iconPosition: "right", onClick: sendRoomClickOnClick, wide: context.screenSize <= ScreenSize_1.default.Large }, ratesOpen ? t(Translation_1.Translation.Step.Room.RoomInfo.CloseRates) : t(Translation_1.Translation.Step.Room.RoomInfo.ViewRates))))))),
|
|
157
|
+
react_2.default.createElement(AutoAutoHeight_1.default, { open: !!ratesOpen },
|
|
158
|
+
react_2.default.createElement(RoomRates_1.default, { roomCode: room.code, rates: standardRates, featuredRates: featuredRates })),
|
|
159
|
+
react_2.default.createElement(RoomModal_1.default, { open: viewingDescription, room: props.room, rates: standardRates, featuredRates: featuredRates, onClose: closeDescriptionOnClose }),
|
|
157
160
|
room.getRates().map((rate) => {
|
|
158
|
-
return (
|
|
161
|
+
return (react_2.default.createElement("script", { key: room.code + '-' + rate.code, type: "application/ld+json" }, JSON.stringify({
|
|
159
162
|
'@context': 'http://schema.org/',
|
|
160
163
|
'@type': 'Offer',
|
|
161
164
|
itemOffered: {
|
|
@@ -166,7 +169,7 @@ function RoomDetails(props) {
|
|
|
166
169
|
identifier: rate.code,
|
|
167
170
|
priceSpecification: {
|
|
168
171
|
'@type': 'UnitPriceSpecification',
|
|
169
|
-
price: rate.getAveragePrice(),
|
|
172
|
+
price: convertCurrencyPrice(rate.getAveragePrice()),
|
|
170
173
|
priceCurrency: ccx.currentCurrency,
|
|
171
174
|
unitText: 'Nightly',
|
|
172
175
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RoomDetails.js","sourceRoot":"/","sources":["src/components/steps/room/roomDetails/RoomDetails.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6EAAqD;AACrD,kEAA2D;AAC3D,wCAAqC;AACrC,6EAAqD;AACrD,yDAA0D;AAC1D,iCAAwD;AACxD,4DAAoC;AACpC,6CAA+B;AAC/B,wGAAgF;AAChF,kFAA0D;AAC1D,6EAAqD;AACrD,oGAA4E;AAC5E,iDAA+C;AAC/C,0DAAuD;AACvD,mEAA2C;AAE3C,iFAAyD;AACzD,iDAAyE;AACzE,8DAA+E;AAC/E,mGAAgG;AAChG,mGAAgG;AAChG,qDAA0E;AAC1E,oGAA4E;AAC5E,2CAAkD;AAClD,iDAAoD;AACpD,gHAAwF;AACxF,6DAAsD;AAOtD,SAAwB,WAAW,CAAC,KAAuB;;IACvD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,IAAA,gBAAQ,EAAa,EAAE,CAAC,CAAC;IACnE,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,IAAA,gBAAQ,EAAa,EAAE,CAAC,CAAC;IAEnE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,IAAA,gBAAQ,EAAU,IAAI,CAAC,CAAC;IAChE,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAC;IAEpE,MAAM,EAAE,CAAC,EAAE,GAAG,IAAA,8BAAc,GAAE,CAAC;IAE/B,MAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,+BAAoB,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,IAAA,kBAAU,EAAC,wBAAa,CAAC,CAAC;IAChD,MAAM,GAAG,GAAG,IAAA,kBAAU,EAAC,yBAAc,CAAC,CAAC;IACvC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAA,uBAAe,GAAE,CAAC;IAEpC,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAEvB,MAAM,OAAO,GAAG,IAAA,oBAAU,EAAC,cAAc,EAAE;QACvC,CAAC,UAAU,CAAC,EAAE,YAAY;KAC7B,CAAC,CAAC;IAEH,IAAA,iBAAS,EAAC,GAAG,EAAE;;QACX,IAAI,CAAA,MAAA,aAAa,CAAC,iBAAiB,0CAAE,OAAO,EAAE,KAAI,aAAa,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE;YAClH,eAAe,CAAC,IAAI,CAAC,CAAC;SACzB;QAED,mBAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAEtC,IAAA,iBAAS,EAAC,GAAG,EAAE;;QACX,IAAI,aAAa,GAAe,EAAE,CAAC;QACnC,IAAI,iBAAiB,GAAe,EAAE,CAAC;QAEvC,IAAI,8BAAoB,CAAC,QAAQ,EAAE,EAAE;YACjC,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE;gBACvC,IAAI,CAAA,MAAA,WAAW,CAAC,SAAS,0CAAE,WAAW,EAAE,OAAK,MAAA,MAAA,aAAa,CAAC,iBAAiB,0CAAE,YAAY,EAAE,0CAAE,WAAW,EAAE,CAAA,EAAE;oBACzG,iBAAiB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;iBAC1C;qBAAM;oBACH,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;iBACnC;aACJ;YAED,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC9B,eAAe,CAAC,IAAI,CAAC,CAAC;gBACtB,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;aACvC;SACJ;aAAM;YACH,aAAa,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;SACnC;QAED,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACpC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAEtB,MAAM,KAAK,GAAG,MAAA,KAAK,CAAC,KAAK,0CAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvC,MAAM,kBAAkB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAEtD,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,IAAI,oBAAU,CAAC,KAAK,CAAC;IAExD,MAAM,SAAS,GAAG,YAAY,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,oBAAU,CAAC,MAAM,IAAI,YAAY,KAAK,IAAI,CAAC,CAAC;IACrG,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC5B,mBAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,mBAAmB,EAAE,2BAAe,CAAC,IAAI,EAAE,2BAAe,CAAC,KAAK,CAAC,CAAC;QACrG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC;IACF,MAAM,oBAAoB,GAAG,GAAG,EAAE;QAC9B,IAAI,CAAC,SAAS,EAAE;YACZ,mBAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;SAC1F;QACD,eAAe,CAAC,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC,CAAC;IACF,MAAM,uBAAuB,GAAG,GAAG,EAAE;QACjC,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,GAAG,oBAAU,CAAC,MAAM,IAAI,WAAW,CAAC,cAAc,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;IAE5H,OAAO,CACH,6BAAK,SAAS,EAAE,0BAA0B,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE;QACxF,6BAAK,SAAS,EAAE,OAAO;YACnB,6BAAK,SAAS,EAAC,qBAAqB;gBAChC,oBAAC,4BAAkB,IAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,yBAAS,CAAC,MAAM,GAAI,CACjF;YACN,6BAAK,SAAS,EAAC,6CAA6C;gBACxD,6BAAK,SAAS,EAAC,eAAe;oBACzB,OAAO,CAAC,UAAU,GAAG,oBAAU,CAAC,KAAK,IAAI,CACtC;wBACI,6BAAK,SAAS,EAAC,eAAe;4BAC1B,oBAAC,uBAAa,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAI,CACrC,CACP,CACN;oBACD,6BAAK,SAAS,EAAC,kDAAkD;wBAC7D,oBAAC,kBAAQ,IAAC,IAAI,EAAE,IAAI,IAAG,IAAI,CAAC,IAAI,CAAY,CAC1C;oBACN,oBAAC,2CAAoB,IAAC,IAAI,EAAE,IAAI,GAAI;oBACpC,6BAAK,SAAS,EAAC,wDAAwD;wBACnE,oBAAC,cAAI,IAAC,KAAK,EAAE,aAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,eAAQ,CAAC,KAAK,IAC5C,8BAAM,uBAAuB,EAAE,EAAE,MAAM,EAAE,kBAAkB,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,EAAE,GAAI,CACzF,CACL,CACJ;gBAEN,6BAAK,SAAS,EAAC,KAAK;oBAChB,6BAAK,SAAS,EAAC,gEAAgE;wBAC3E,6BAAK,SAAS,EAAC,8CAA8C;4BACxD,QAAQ,IAAI,CACT,6BAAK,SAAS,EAAC,eAAe;gCAC1B,oBAAC,cAAI,IAAC,IAAI,EAAE,eAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,aAAK,CAAC,MAAM,IACtD,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CACpC,CACL,CACT;4BACD,oBAAC,2CAAoB,IAAC,KAAK,EAAE,KAAK,GAAI,CACpC;wBACN,oBAAC,kBAAQ,IAAC,IAAI,EAAE,eAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,EAAC,YAAY,EAAC,OAAO,EAAC,OAAO,EAAE,kBAAkB,IAC1H,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CACvC,CACT;oBACN,6BAAK,SAAS,EAAC,sFAAsF;wBACjG,oBAAC,cAAI,IAAC,IAAI,EAAE,eAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,aAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,IACtD,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CACtB;wBACP,6BAAK,SAAS,EAAC,sDAAsD;4BACjE,oBAAC,kBAAQ,IAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI;gCACpC,oBAAC,kBAAQ,IAAC,YAAY,EAAE,IAAI,IAAG,WAAW,CAAY,CAC/C;4BACX,oBAAC,cAAI,IAAC,KAAK,EAAE,aAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI;;gCACnC,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CACxB,CACL;wBACN,6BAAK,SAAS,EAAC,eAAe;4BAC1B,oBAAC,cAAI,IAAC,IAAI,EAAE,eAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,aAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAC,UAAU,IAC5E,IAAI,CAAC,kBAAkB,EAAE,KAAK,iCAAsB,CAAC,qBAAqB;gCACvE,CAAC,CAAC,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC;gCACjD,CAAC,CAAC,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAC1C,CACL;wBACN,6BAAK,SAAS,EAAC,yDAAyD;4BACpE,oBAAC,kBAAQ,IACL,IAAI,EAAC,oBAAoB,EACzB,OAAO,EAAE,IAAI,EACb,aAAa,EAAE,SAAS,EACxB,MAAM,EAAE,IAAI,EACZ,iBAAiB,EAAE,IAAI,EACvB,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,eAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAQ,CAAC,UAAU,EACzD,YAAY,EAAE,OAAO,EACrB,OAAO,EAAE,oBAAoB,EAC7B,IAAI,EAAE,OAAO,CAAC,UAAU,IAAI,oBAAU,CAAC,KAAK,IAE3C,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,yBAAW,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAChG,CACT,CACJ,CACJ,CACJ,CACJ;QACN,oBAAC,wBAAc,IAAC,IAAI,EAAE,SAAS;YAC3B,oBAAC,mBAAS,IAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,GAAI,CACzE;QAChB,oBAAC,mBAAS,IAAC,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,uBAAuB,GAAI;QAC/I,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC1B,OAAO,CACH,gCAAQ,GAAG,EAAE,IAAI,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,EAAC,qBAAqB,IAC/D,IAAI,CAAC,SAAS,CAAC;gBACZ,UAAU,EAAE,oBAAoB;gBAChC,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE;oBACT,OAAO,EAAE,WAAW;oBACpB,IAAI,EAAE,IAAI,CAAC,IAAI;iBAClB;gBACD,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,UAAU,EAAE,IAAI,CAAC,IAAI;gBACrB,kBAAkB,EAAE;oBAChB,OAAO,EAAE,wBAAwB;oBACjC,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE;oBAC7B,aAAa,EAAE,GAAG,CAAC,eAAe;oBAClC,QAAQ,EAAE,SAAS;iBACtB;aACJ,CAAC,CACG,CACZ,CAAC;QACN,CAAC,CAAC,CACA,CACT,CAAC;AACN,CAAC;AAxLD,8BAwLC","sourcesContent":["import Headline from '@/components/generic/Headline';\nimport Text, { TextType } from '@/components/generic/Text';\nimport { Color } from '@/util/Color';\nimport BEButton from '@/components/generic/BEButton';\nimport { IconType } from '@/components/generic/Icon/Icon';\nimport { useState, useContext, useEffect } from 'react';\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport RoomRates from '@/components/steps/room/roomDetails/roomRates/RoomRates';\nimport RoomModal from '@/components/steps/room/RoomModal';\nimport Currency from '@/components/generic/Currency';\nimport ImageGallerySlider from '@/components/steps/room/ImageGallerySlider';\nimport { useTranslation } from 'react-i18next';\nimport { Translation } from 'translations/Translation';\nimport ScreenSize from '@/util/ScreenSize';\nimport { Room } from '@/models/Room/Room';\nimport AutoAutoHeight from '@/animations/AutoAutoHeight';\nimport { BasketContext, BookingEngineContext } from '@frontend/contexts';\nimport DataLayer, { InteractionStep, InteractionType } from '@/util/DataLayer';\nimport { RoomDetailsPerkBlock } from '@/components/steps/room/roomDetails/RoomDetailsPerkBlock';\nimport { RoomDetailsBedsBlock } from '@/components/steps/room/roomDetails/RoomDetailsBedsBlock';\nimport { RoomRate, RoomRatePriceInclusion } from '@/models/Room/RoomRate';\nimport FeaturedPromoFeature from '@/providers/feature/FeaturedPromoFeature';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport { CompanyContext } from '@frontend/contexts';\nimport RoomRatePills from '@/components/steps/room/roomDetails/roomRates/RoomRatePills';\nimport { ImageSize } from '@/providers/ImageProvider';\n\nexport interface RoomDetailsProps {\n room: Room;\n disableMarginBottom?: boolean;\n}\n\nexport default function RoomDetails(props: RoomDetailsProps) {\n const [featuredRates, setFeaturedRates] = useState<RoomRate[]>([]);\n const [standardRates, setStandardRates] = useState<RoomRate[]>([]);\n\n const [viewingRates, setViewingRates] = useState<boolean>(null);\n const [viewingDescription, setViewingDescription] = useState(false);\n\n const { t } = useTranslation();\n\n const context = useContext(BookingEngineContext);\n const basketContext = useContext(BasketContext);\n const ccx = useContext(CompanyContext);\n const { hotel } = useCurrentHotel();\n\n const { room } = props;\n\n const classes = classNames('room-details', {\n ['+is-open']: viewingRates,\n });\n\n useEffect(() => {\n if (basketContext.selectedBasketRow?.getRoom() && basketContext.selectedBasketRow.getRoom().code === props.room.code) {\n setViewingRates(true);\n }\n\n DataLayer.instance.addRoomImpression(room);\n }, [basketContext.selectedBasketRow]);\n\n useEffect(() => {\n let nonPromoRates: RoomRate[] = [];\n let toSetFeaturedRate: RoomRate[] = [];\n\n if (FeaturedPromoFeature.isActive()) {\n for (const currentRate of room.getRates()) {\n if (currentRate.promoCode?.toLowerCase() === basketContext.selectedBasketRow?.getPromoCode()?.toLowerCase()) {\n toSetFeaturedRate.unshift(currentRate);\n } else {\n nonPromoRates.push(currentRate);\n }\n }\n\n if (toSetFeaturedRate.length > 0) {\n setViewingRates(true);\n setFeaturedRates(toSetFeaturedRate);\n }\n } else {\n nonPromoRates = room.getRates();\n }\n\n setStandardRates(nonPromoRates);\n }, [room.getRates()]);\n\n const perks = hotel.perks?.slice(0, 5);\n\n const trimmedDescription = room.getShortDescription();\n\n const isMobile = context.screenSize <= ScreenSize.Large;\n\n const ratesOpen = viewingRates || (context.screenSize <= ScreenSize.Medium && viewingRates === null);\n const moreDetailsOnClick = () => {\n DataLayer.instance.sendInteraction('More Room Details', InteractionType.LINK, InteractionStep.ROOMS);\n setViewingDescription(true);\n };\n const sendRoomClickOnClick = () => {\n if (!ratesOpen) {\n DataLayer.instance.sendRoomClick(room, basketContext.startDate, basketContext.endDate);\n }\n setViewingRates(!ratesOpen);\n };\n const closeDescriptionOnClose = () => {\n setViewingDescription(false);\n };\n\n const lowestPrice = Math.round(room.getLowestPrice(false, true));\n const currencySize = context.screenSize > ScreenSize.Medium && lowestPrice.toLocaleString().length < 7 ? 'large' : 'normal';\n\n return (\n <div className={`room-details-container ${props.disableMarginBottom ? '' : 'u-marg-bottom'}`}>\n <div className={classes}>\n <div className=\"room-details--image\">\n <ImageGallerySlider images={props.room.getImages()} imageSize={ImageSize.Medium} />\n </div>\n <div className=\"room-details--content u-pad--heavy u-pad@l-\">\n <div className=\"u-marg-bottom\">\n {context.screenSize > ScreenSize.Large && (\n <>\n <div className=\"u-marg-bottom\">\n <RoomRatePills room={room} limit={2} />\n </div>\n </>\n )}\n <div className=\"room-details--content-title u-marg-bottom--light\">\n <Headline bold={true}>{room.name}</Headline>\n </div>\n <RoomDetailsBedsBlock room={room} />\n <div className=\"room-details--content-description u-marg-bottom--light\">\n <Text color={Color.DarkGrey} type={TextType.Small}>\n {<span dangerouslySetInnerHTML={{ __html: trimmedDescription.replace(/<br(\\/|)>/g, '') }} />}\n </Text>\n </div>\n </div>\n\n <div className=\"row\">\n <div className=\"col-md-6 u-flex u-marg-bottom@m- flex-column align-items-start\">\n <div className=\"room-details--content-perks u-marg-bottom@m-\">\n {isMobile && (\n <div className=\"u-marg-bottom\">\n <Text type={TextType.Small} bold={true} color={Color.Accent}>\n {t(Translation.Misc.Perks.AndYouGetAll)}\n </Text>\n </div>\n )}\n <RoomDetailsPerkBlock perks={perks} />\n </div>\n <BEButton icon={IconType.ArrowRight2} isText={true} primary={true} size=\"tiny\" iconPosition=\"right\" onClick={moreDetailsOnClick}>\n {t(Translation.Step.Room.RoomInfo.MoreDetails)}\n </BEButton>\n </div>\n <div className=\"col-md-6 u-flex justify-content-end flex-column align-items-start align-items-md-end\">\n <Text type={TextType.Small} color={Color.Navy} inline={true}>\n {t(Translation.Misc.From)}\n </Text>\n <div className=\"room-details--content-price flex-row align-items-end\">\n <Headline size={currencySize} bold={true}>\n <Currency hideDecimals={true}>{lowestPrice}</Currency>\n </Headline>\n <Text color={Color.DarkGrey} inline={true}>\n /{t(Translation.Misc.Night)}\n </Text>\n </div>\n <div className=\"u-marg-bottom\">\n <Text type={TextType.Small} color={Color.Grey} inline={true} className=\"u-nowrap\">\n {room.getLowestPriceType() === RoomRatePriceInclusion.IncludingFeesAndTaxes\n ? t(Translation.Step.Room.RoomInfo.IncludesTaxes)\n : t(Translation.Step.Room.ExcludingTaxes)}\n </Text>\n </div>\n <div className=\"u-marg-top--light u-flex justify-content-end u-w-100@m-\">\n <BEButton\n name=\"ViewRatesNowButton\"\n primary={true}\n primaryActive={ratesOpen}\n filled={true}\n stopIconAnimation={true}\n icon={ratesOpen ? IconType.ArrowUp2 : IconType.ArrowDown2}\n iconPosition={'right'}\n onClick={sendRoomClickOnClick}\n wide={context.screenSize <= ScreenSize.Large}\n >\n {ratesOpen ? t(Translation.Step.Room.RoomInfo.CloseRates) : t(Translation.Step.Room.RoomInfo.ViewRates)}\n </BEButton>\n </div>\n </div>\n </div>\n </div>\n </div>\n <AutoAutoHeight open={ratesOpen}>\n <RoomRates roomCode={room.code} rates={standardRates} featuredRates={featuredRates} />\n </AutoAutoHeight>\n {<RoomModal open={viewingDescription} room={props.room} rates={standardRates} featuredRates={featuredRates} onClose={closeDescriptionOnClose} />}\n {room.getRates().map((rate) => {\n return (\n <script key={room.code + '-' + rate.code} type=\"application/ld+json\">\n {JSON.stringify({\n '@context': 'http://schema.org/',\n '@type': 'Offer',\n itemOffered: {\n '@type': 'HotelRoom',\n name: room.name,\n },\n name: rate.name,\n identifier: rate.code,\n priceSpecification: {\n '@type': 'UnitPriceSpecification',\n price: rate.getAveragePrice(),\n priceCurrency: ccx.currentCurrency,\n unitText: 'Nightly',\n },\n })}\n </script>\n );\n })}\n </div>\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"RoomDetails.js","sourceRoot":"/","sources":["src/components/steps/room/roomDetails/RoomDetails.tsx"],"names":[],"mappings":"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","sourcesContent":["import Headline from '@/components/generic/Headline';\nimport Text, { TextType } from '@/components/generic/Text';\nimport { Color } from '@/util/Color';\nimport BEButton from '@/components/generic/BEButton';\nimport { IconType } from '@/components/generic/Icon/Icon';\nimport { useState, useContext, useEffect } from 'react';\nimport classNames from 'classnames';\nimport React from 'react';\nimport RoomRates from '@/components/steps/room/roomDetails/roomRates/RoomRates';\nimport RoomModal from '@/components/steps/room/RoomModal';\nimport Currency from '@/components/generic/Currency';\nimport ImageGallerySlider from '@/components/steps/room/ImageGallerySlider';\nimport { useTranslation } from 'react-i18next';\nimport { Translation } from 'translations/Translation';\nimport ScreenSize from '@/util/ScreenSize';\nimport { Room } from '@/models/Room/Room';\nimport AutoAutoHeight from '@/animations/AutoAutoHeight';\nimport { BasketContext, BookingEngineContext } from '@frontend/contexts';\nimport DataLayer, { InteractionStep, InteractionType } from '@/util/DataLayer';\nimport { RoomDetailsPerkBlock } from '@/components/steps/room/roomDetails/RoomDetailsPerkBlock';\nimport { RoomDetailsBedsBlock } from '@/components/steps/room/roomDetails/RoomDetailsBedsBlock';\nimport { RoomRate, RoomRatePriceInclusion } from '@/models/Room/RoomRate';\nimport FeaturedPromoFeature from '@/providers/feature/FeaturedPromoFeature';\nimport { useCurrentHotel } from '@frontend/hooks';\nimport { CompanyContext } from '@frontend/contexts';\nimport RoomRatePills from '@/components/steps/room/roomDetails/roomRates/RoomRatePills';\nimport { ImageSize } from '@/providers/ImageProvider';\nimport { HotelPerk } from '@/models/Client/Hotel/HotelPerk';\nimport CurrencyProvider from '@/providers/CurrencyProvider';\n\nexport interface RoomDetailsProps {\n room: Room;\n disableMarginBottom?: boolean;\n}\n\nexport default function RoomDetails(props: RoomDetailsProps) {\n const [featuredRates, setFeaturedRates] = useState<RoomRate[]>([]);\n const [standardRates, setStandardRates] = useState<RoomRate[]>([]);\n\n const [viewingRates, setViewingRates] = useState<boolean | number | null>(null);\n const [viewingDescription, setViewingDescription] = useState(false);\n\n const { t } = useTranslation();\n\n const context = useContext(BookingEngineContext);\n const basketContext = useContext(BasketContext);\n const ccx = useContext(CompanyContext);\n const { hotel } = useCurrentHotel();\n\n const { room } = props;\n\n const classes = classNames('room-details', {\n ['+is-open']: viewingRates,\n });\n\n useEffect(() => {\n if (basketContext.selectedBasketRow?.getRoom() && basketContext.selectedBasketRow.getRoom().code === props.room.code) {\n setViewingRates(true);\n }\n\n DataLayer.instance.addRoomImpression(room);\n }, [basketContext.selectedBasketRow]);\n\n useEffect(() => {\n let nonPromoRates: RoomRate[] = [];\n const toSetFeaturedRate: RoomRate[] = [];\n\n if (FeaturedPromoFeature.isActive()) {\n for (const currentRate of room.getRates()) {\n if (currentRate.promoCode?.toLowerCase() === basketContext.selectedBasketRow?.getPromoCode()?.toLowerCase()) {\n toSetFeaturedRate.unshift(currentRate);\n } else {\n nonPromoRates.push(currentRate);\n }\n }\n\n if (toSetFeaturedRate.length > 0) {\n setViewingRates(true);\n setFeaturedRates(toSetFeaturedRate);\n }\n } else {\n nonPromoRates = room.getRates();\n }\n\n setStandardRates(nonPromoRates);\n }, [room.getRates()]);\n\n const perks = hotel?.perks?.slice(0, 5);\n\n const trimmedDescription = room.getShortDescription();\n\n const isMobile = context.screenSize <= ScreenSize.Large;\n\n const ratesOpen = viewingRates || (context.screenSize <= ScreenSize.Medium && viewingRates === null);\n const moreDetailsOnClick = () => {\n DataLayer.instance.sendInteraction('More Room Details', InteractionType.LINK, InteractionStep.ROOMS);\n setViewingDescription(true);\n };\n const sendRoomClickOnClick = () => {\n if (!ratesOpen) {\n DataLayer.instance.sendRoomClick(room, basketContext.startDate, basketContext.endDate);\n }\n setViewingRates(!ratesOpen);\n };\n const closeDescriptionOnClose = () => {\n setViewingDescription(false);\n };\n\n const lowestPrice = Math.round(room.getLowestPrice(false, true));\n const currencySize = context.screenSize > ScreenSize.Medium && lowestPrice.toLocaleString().length < 7 ? 'large' : 'normal';\n\n const convertCurrencyPrice = (value: number) => Math.round(CurrencyProvider.convertPrice(value, true, ccx.currentCurrency, hotel?.defaultCurrency as string));\n\n return (\n <div className={`room-details-container ${props.disableMarginBottom ? '' : 'u-marg-bottom'}`}>\n <div className={classes}>\n <div className=\"room-details--image\">\n <ImageGallerySlider images={props.room.getImages()} imageSize={ImageSize.Medium} />\n </div>\n <div className=\"room-details--content u-pad--heavy u-pad@l-\">\n <div className=\"u-marg-bottom\">\n {context.screenSize > ScreenSize.Large && (\n <>\n <div className=\"u-marg-bottom\">\n <RoomRatePills room={room} limit={2} />\n </div>\n </>\n )}\n <div className=\"room-details--content-title u-marg-bottom--light\">\n <Headline bold>{room.name}</Headline>\n </div>\n <RoomDetailsBedsBlock room={room} />\n <div className=\"room-details--content-description u-marg-bottom--light\">\n <Text color={Color.DarkGrey} type={TextType.Small}>\n <span dangerouslySetInnerHTML={{ __html: trimmedDescription?.replace(/<br(\\/|)>/g, '') || '' }} />\n </Text>\n </div>\n </div>\n\n <div className=\"row\">\n <div className=\"col-md-6 u-flex u-marg-bottom@m- flex-column align-items-start\">\n <div className=\"room-details--content-perks u-marg-bottom@m-\">\n {isMobile && (\n <div className=\"u-marg-bottom\">\n <Text type={TextType.Small} bold color={Color.Accent}>\n {t(Translation.Misc.Perks.AndYouGetAll)}\n </Text>\n </div>\n )}\n <RoomDetailsPerkBlock perks={perks as HotelPerk[]} />\n </div>\n <BEButton icon={IconType.ArrowRight2} isText primary size=\"tiny\" iconPosition=\"right\" onClick={moreDetailsOnClick}>\n {t(Translation.Step.Room.RoomInfo.MoreDetails)}\n </BEButton>\n </div>\n <div className=\"col-md-6 u-flex justify-content-end flex-column align-items-start align-items-md-end\">\n <Text type={TextType.Small} color={Color.Navy} inline>\n {t(Translation.Misc.From)}\n </Text>\n <div className=\"room-details--content-price flex-row align-items-end\">\n <Headline size={currencySize} bold>\n <Currency hideDecimals>{lowestPrice}</Currency>\n </Headline>\n <Text color={Color.DarkGrey} inline>\n /{t(Translation.Misc.Night)}\n </Text>\n </div>\n <div className=\"u-marg-bottom\">\n <Text type={TextType.Small} color={Color.Grey} inline className=\"u-nowrap\">\n {room.getLowestPriceType() === RoomRatePriceInclusion.IncludingFeesAndTaxes\n ? t(Translation.Step.Room.RoomInfo.IncludesTaxes)\n : t(Translation.Step.Room.ExcludingTaxes)}\n </Text>\n </div>\n <div className=\"u-marg-top--light u-flex justify-content-end u-w-100@m-\">\n <BEButton\n name=\"ViewRatesNowButton\"\n primary\n primaryActive={!!ratesOpen}\n filled\n stopIconAnimation\n icon={ratesOpen ? IconType.ArrowUp2 : IconType.ArrowDown2}\n iconPosition=\"right\"\n onClick={sendRoomClickOnClick}\n wide={context.screenSize <= ScreenSize.Large}\n >\n {ratesOpen ? t(Translation.Step.Room.RoomInfo.CloseRates) : t(Translation.Step.Room.RoomInfo.ViewRates)}\n </BEButton>\n </div>\n </div>\n </div>\n </div>\n </div>\n <AutoAutoHeight open={!!ratesOpen}>\n <RoomRates roomCode={room.code as string} rates={standardRates} featuredRates={featuredRates} />\n </AutoAutoHeight>\n <RoomModal open={viewingDescription} room={props.room} rates={standardRates} featuredRates={featuredRates} onClose={closeDescriptionOnClose} />\n {room.getRates().map((rate) => {\n return (\n <script key={room.code + '-' + rate.code} type=\"application/ld+json\">\n {JSON.stringify({\n '@context': 'http://schema.org/',\n '@type': 'Offer',\n itemOffered: {\n '@type': 'HotelRoom',\n name: room.name,\n },\n name: rate.name,\n identifier: rate.code,\n priceSpecification: {\n '@type': 'UnitPriceSpecification',\n price: convertCurrencyPrice(rate.getAveragePrice()),\n priceCurrency: ccx.currentCurrency,\n unitText: 'Nightly',\n },\n })}\n </script>\n );\n })}\n </div>\n );\n}\n"]}
|
|
@@ -22,9 +22,12 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
22
22
|
__setModuleDefault(result, mod);
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
25
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
29
|
exports.RoomDetailsBedsBlock = void 0;
|
|
27
|
-
const
|
|
30
|
+
const react_1 = __importDefault(require("react"));
|
|
28
31
|
const Icon_1 = __importStar(require("../../../generic/Icon/Icon"));
|
|
29
32
|
const Color_1 = require("../../../../util/Color");
|
|
30
33
|
const Text_1 = require("../../../generic/Text");
|
|
@@ -32,27 +35,27 @@ const hooks_1 = require("../../../../hooks/index.js");
|
|
|
32
35
|
function RoomDetailsBedsBlock(props) {
|
|
33
36
|
var _a, _b, _c, _d, _e;
|
|
34
37
|
const { hotel } = (0, hooks_1.useCurrentHotel)();
|
|
35
|
-
const extraRoomData = (_a = hotel.rooms) === null || _a === void 0 ? void 0 : _a[(_b = props.room) === null || _b === void 0 ? void 0 : _b.code];
|
|
38
|
+
const extraRoomData = (_a = hotel === null || hotel === void 0 ? void 0 : hotel.rooms) === null || _a === void 0 ? void 0 : _a[(_b = props.room) === null || _b === void 0 ? void 0 : _b.code];
|
|
36
39
|
const roomSize = (_c = hotel === null || hotel === void 0 ? void 0 : hotel.overwrites) === null || _c === void 0 ? void 0 : _c[(_d = props.room) === null || _d === void 0 ? void 0 : _d.code];
|
|
37
40
|
const textColor = (_e = props.textColor) !== null && _e !== void 0 ? _e : Color_1.Color.DarkGrey;
|
|
38
|
-
return (
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
return (react_1.default.createElement("ul", { className: "u-list-inline-flex u-marg-bottom" },
|
|
42
|
+
react_1.default.createElement("li", { className: "align-items-center" },
|
|
43
|
+
react_1.default.createElement(Icon_1.default, { icon: Icon_1.IconType.People, size: "24px", color: Color_1.Color.Navy }),
|
|
44
|
+
react_1.default.createElement("div", { className: "u-pad-left--light" },
|
|
45
|
+
react_1.default.createElement(Text_1.Text, { type: Text_1.TextType.Small, inline: true, color: textColor },
|
|
43
46
|
"Sleeps ", extraRoomData === null || extraRoomData === void 0 ? void 0 :
|
|
44
47
|
extraRoomData.maxOccupancy))),
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
48
|
+
react_1.default.createElement("li", { className: "u-pad-left align-items-center" },
|
|
49
|
+
react_1.default.createElement(Icon_1.default, { icon: Icon_1.IconType.Bed, size: "24px", color: Color_1.Color.Navy }),
|
|
50
|
+
react_1.default.createElement("div", { className: "u-pad-left--light" },
|
|
51
|
+
react_1.default.createElement(Text_1.Text, { type: Text_1.TextType.Small, inline: true, color: textColor },
|
|
49
52
|
(extraRoomData === null || extraRoomData === void 0 ? void 0 : extraRoomData.bedQuantity) > 0 ? extraRoomData === null || extraRoomData === void 0 ? void 0 : extraRoomData.bedQuantity : '',
|
|
50
53
|
" ", extraRoomData === null || extraRoomData === void 0 ? void 0 :
|
|
51
54
|
extraRoomData.bedType))),
|
|
52
|
-
!!(roomSize === null || roomSize === void 0 ? void 0 : roomSize.RoomDimensions) && (
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
55
|
+
!!(roomSize === null || roomSize === void 0 ? void 0 : roomSize.RoomDimensions) && (react_1.default.createElement("li", { className: "u-pad-left align-items-center" },
|
|
56
|
+
react_1.default.createElement(Icon_1.default, { icon: Icon_1.IconType.RoomSize, size: "24px", color: Color_1.Color.Navy }),
|
|
57
|
+
react_1.default.createElement("div", { className: "u-pad-left--light" },
|
|
58
|
+
react_1.default.createElement(Text_1.Text, { type: Text_1.TextType.Small, inline: true, color: textColor }, roomSize.RoomDimensions))))));
|
|
56
59
|
}
|
|
57
60
|
exports.RoomDetailsBedsBlock = RoomDetailsBedsBlock;
|
|
58
61
|
//# sourceMappingURL=RoomDetailsBedsBlock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RoomDetailsBedsBlock.js","sourceRoot":"/","sources":["src/components/steps/room/roomDetails/RoomDetailsBedsBlock.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RoomDetailsBedsBlock.js","sourceRoot":"/","sources":["src/components/steps/room/roomDetails/RoomDetailsBedsBlock.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAE1B,uEAAgE;AAChE,wCAAqC;AACrC,oDAA2D;AAC3D,2CAAkD;AAQlD,SAAgB,oBAAoB,CAAC,KAAgC;;IACjE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAA,uBAAe,GAAE,CAAC;IAEpC,MAAM,aAAa,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,0CAAG,MAAA,KAAK,CAAC,IAAI,0CAAE,IAAc,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,UAAU,0CAAG,MAAA,KAAK,CAAC,IAAI,0CAAE,IAAc,CAAC,CAAC;IAEjE,MAAM,SAAS,GAAG,MAAA,KAAK,CAAC,SAAS,mCAAI,aAAK,CAAC,QAAQ,CAAC;IAEpD,OAAO,CACH,sCAAI,SAAS,EAAC,kCAAkC;QAC5C,sCAAI,SAAS,EAAC,oBAAoB;YAC9B,8BAAC,cAAI,IAAC,IAAI,EAAE,eAAQ,CAAC,MAAM,EAAE,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,aAAK,CAAC,IAAI,GAAI;YAC9D,uCAAK,SAAS,EAAC,mBAAmB;gBAC9B,8BAAC,WAAI,IAAC,IAAI,EAAE,eAAQ,CAAC,KAAK,EAAE,MAAM,QAAC,KAAK,EAAE,SAAS;+BACvC,aAAa,aAAb,aAAa;oBAAb,aAAa,CAAE,YAAY,CAChC,CACL,CACL;QACL,sCAAI,SAAS,EAAC,+BAA+B;YACzC,8BAAC,cAAI,IAAC,IAAI,EAAE,eAAQ,CAAC,GAAG,EAAE,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,aAAK,CAAC,IAAI,GAAI;YAC3D,uCAAK,SAAS,EAAC,mBAAmB;gBAC9B,8BAAC,WAAI,IAAC,IAAI,EAAE,eAAQ,CAAC,KAAK,EAAE,MAAM,QAAC,KAAK,EAAE,SAAS;oBAC9C,CAAC,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,WAAsB,IAAG,CAAC,CAAC,CAAC,CAAC,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,WAAW,CAAC,CAAC,CAAC,EAAE;yBAAG,aAAa,aAAb,aAAa;oBAAb,aAAa,CAAE,OAAO,CACnG,CACL,CACL;QACJ,CAAC,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,cAAc,CAAA,IAAI,CAC3B,sCAAI,SAAS,EAAC,+BAA+B;YACzC,8BAAC,cAAI,IAAC,IAAI,EAAE,eAAQ,CAAC,QAAQ,EAAE,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,aAAK,CAAC,IAAI,GAAI;YAChE,uCAAK,SAAS,EAAC,mBAAmB;gBAC9B,8BAAC,WAAI,IAAC,IAAI,EAAE,eAAQ,CAAC,KAAK,EAAE,MAAM,QAAC,KAAK,EAAE,SAAS,IAC9C,QAAQ,CAAC,cAAc,CACrB,CACL,CACL,CACR,CACA,CACR,CAAC;AACN,CAAC;AAtCD,oDAsCC","sourcesContent":["import React from 'react';\nimport { Room } from '@/models/Room/Room';\nimport Icon, { IconType } from '@/components/generic/Icon/Icon';\nimport { Color } from '@/util/Color';\nimport { Text, TextType } from '@/components/generic/Text';\nimport { useCurrentHotel } from '@frontend/hooks';\n\ninterface RoomDetailsBedsBlockProps {\n room: Room;\n\n textColor?: Color;\n}\n\nexport function RoomDetailsBedsBlock(props: RoomDetailsBedsBlockProps) {\n const { hotel } = useCurrentHotel();\n\n const extraRoomData = hotel?.rooms?.[props.room?.code as string];\n const roomSize = hotel?.overwrites?.[props.room?.code as string];\n\n const textColor = props.textColor ?? Color.DarkGrey;\n\n return (\n <ul className=\"u-list-inline-flex u-marg-bottom\">\n <li className=\"align-items-center\">\n <Icon icon={IconType.People} size=\"24px\" color={Color.Navy} />\n <div className=\"u-pad-left--light\">\n <Text type={TextType.Small} inline color={textColor}>\n Sleeps {extraRoomData?.maxOccupancy}\n </Text>\n </div>\n </li>\n <li className=\"u-pad-left align-items-center\">\n <Icon icon={IconType.Bed} size=\"24px\" color={Color.Navy} />\n <div className=\"u-pad-left--light\">\n <Text type={TextType.Small} inline color={textColor}>\n {(extraRoomData?.bedQuantity as number) > 0 ? extraRoomData?.bedQuantity : ''} {extraRoomData?.bedType}\n </Text>\n </div>\n </li>\n {!!roomSize?.RoomDimensions && (\n <li className=\"u-pad-left align-items-center\">\n <Icon icon={IconType.RoomSize} size=\"24px\" color={Color.Navy} />\n <div className=\"u-pad-left--light\">\n <Text type={TextType.Small} inline color={textColor}>\n {roomSize.RoomDimensions}\n </Text>\n </div>\n </li>\n )}\n </ul>\n );\n}\n"]}
|
|
@@ -27,8 +27,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
exports.RoomDetailsPerkBlock = void 0;
|
|
30
|
-
const
|
|
31
|
-
const react_1 = require("react");
|
|
30
|
+
const react_1 = __importStar(require("react"));
|
|
32
31
|
const ScreenSize_1 = __importDefault(require("../../../../util/ScreenSize"));
|
|
33
32
|
const Icon_1 = __importDefault(require("../../../generic/Icon/Icon"));
|
|
34
33
|
const Text_1 = require("../../../generic/Text");
|
|
@@ -43,16 +42,16 @@ function RoomDetailsPerkBlock(props) {
|
|
|
43
42
|
const perkIconClasses = (0, classnames_1.default)('room-perk-icon', {
|
|
44
43
|
'--has-bg': isMobile,
|
|
45
44
|
});
|
|
46
|
-
return (
|
|
45
|
+
return (react_1.default.createElement(react_1.default.Fragment, null, !!(perks === null || perks === void 0 ? void 0 : perks.length) && (react_1.default.createElement("ul", null, perks.map((perk, index) => {
|
|
47
46
|
if (isMobile && index >= 4)
|
|
48
47
|
return;
|
|
49
48
|
const setPerkOnClick = () => {
|
|
50
49
|
setOpenPerk(perk.name);
|
|
51
50
|
};
|
|
52
|
-
return (
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
51
|
+
return (react_1.default.createElement("li", { key: index, onClick: setPerkOnClick },
|
|
52
|
+
react_1.default.createElement("div", { className: perkIconClasses }, perk.iconElement ? perk.iconElement : react_1.default.createElement(Icon_1.default, { icon: perk.icon })),
|
|
53
|
+
react_1.default.createElement("div", { className: 'u-marg-right u-none@l- u-block@m- ' + ((isMobile && openPerk !== perk.name) || context.screenSize === ScreenSize_1.default.Tiny ? 'u-none-2' : '') },
|
|
54
|
+
react_1.default.createElement(Text_1.Text, { type: Text_1.TextType.Small }, perk.name))));
|
|
56
55
|
})))));
|
|
57
56
|
}
|
|
58
57
|
exports.RoomDetailsPerkBlock = RoomDetailsPerkBlock;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RoomDetailsPerkBlock.js","sourceRoot":"/","sources":["src/components/steps/room/roomDetails/RoomDetailsPerkBlock.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA
|
|
1
|
+
{"version":3,"file":"RoomDetailsPerkBlock.js","sourceRoot":"/","sources":["src/components/steps/room/roomDetails/RoomDetailsPerkBlock.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAoD;AAEpD,mEAA2C;AAC3C,0EAAgE;AAChE,oDAA2D;AAC3D,4DAAoC;AACpC,iDAA0D;AAM1D,SAAgB,oBAAoB,CAAC,KAAgC;;IACjE,MAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,+BAAoB,CAAC,CAAC;IAEjD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,IAAI,oBAAU,CAAC,KAAK,CAAC;IAExD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAC,MAAA,KAAK,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAC,CAAC;IAEzD,MAAM,eAAe,GAAG,IAAA,oBAAU,EAAC,gBAAgB,EAAE;QACjD,UAAU,EAAE,QAAQ;KACvB,CAAC,CAAC;IAEH,OAAO,CACH,8DACK,CAAC,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAA,IAAI,CAChB,0CACK,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACvB,IAAI,QAAQ,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO;QAEnC,MAAM,cAAc,GAAG,GAAG,EAAE;YACxB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC;QAEF,OAAO,CACH,sCAAI,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc;YACnC,uCAAK,SAAS,EAAE,eAAe,IAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,8BAAC,cAAI,IAAC,IAAI,EAAE,IAAI,CAAC,IAAgB,GAAI,CAAO;YACpH,uCACI,SAAS,EACL,oCAAoC,GAAG,CAAC,CAAC,QAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,UAAU,KAAK,oBAAU,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;gBAG7I,8BAAC,WAAI,IAAC,IAAI,EAAE,eAAQ,CAAC,KAAK,IAAG,IAAI,CAAC,IAAI,CAAQ,CAC5C,CACL,CACR,CAAC;IACN,CAAC,CAAC,CACD,CACR,CACF,CACN,CAAC;AACN,CAAC;AAxCD,oDAwCC","sourcesContent":["import React, { useContext, useState } from 'react';\nimport { HotelPerk } from '@/models/Client/Hotel/HotelPerk';\nimport ScreenSize from '@/util/ScreenSize';\nimport Icon, { IconType } from '@/components/generic/Icon/Icon';\nimport { Text, TextType } from '@/components/generic/Text';\nimport classNames from 'classnames';\nimport { BookingEngineContext } from '@frontend/contexts';\n\ninterface RoomDetailsPerkBlockProps {\n perks: HotelPerk[];\n}\n\nexport function RoomDetailsPerkBlock(props: RoomDetailsPerkBlockProps) {\n const context = useContext(BookingEngineContext);\n\n const perks = props.perks;\n const isMobile = context.screenSize <= ScreenSize.Large;\n\n const [openPerk, setOpenPerk] = useState(perks[0]?.name);\n\n const perkIconClasses = classNames('room-perk-icon', {\n '--has-bg': isMobile,\n });\n\n return (\n <>\n {!!perks?.length && (\n <ul>\n {perks.map((perk, index) => {\n if (isMobile && index >= 4) return;\n\n const setPerkOnClick = () => {\n setOpenPerk(perk.name);\n };\n\n return (\n <li key={index} onClick={setPerkOnClick}>\n <div className={perkIconClasses}>{perk.iconElement ? perk.iconElement : <Icon icon={perk.icon as IconType} />}</div>\n <div\n className={\n 'u-marg-right u-none@l- u-block@m- ' + ((isMobile && openPerk !== perk.name) || context.screenSize === ScreenSize.Tiny ? 'u-none-2' : '')\n }\n >\n <Text type={TextType.Small}>{perk.name}</Text>\n </div>\n </li>\n );\n })}\n </ul>\n )}\n </>\n );\n}\n"]}
|
|
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
const
|
|
29
|
+
const react_1 = __importDefault(require("react"));
|
|
30
30
|
const react_i18next_1 = require("react-i18next");
|
|
31
31
|
const Color_1 = require("../../../../util/Color");
|
|
32
32
|
const Text_1 = __importStar(require("../../../generic/Text"));
|
|
@@ -40,31 +40,31 @@ const classnames_1 = __importDefault(require("classnames"));
|
|
|
40
40
|
const contexts_1 = require("../../../../contexts/index.js");
|
|
41
41
|
function RoomDetailsPriceBlock(props) {
|
|
42
42
|
const { t } = (0, react_i18next_1.useTranslation)();
|
|
43
|
-
const context =
|
|
43
|
+
const context = react_1.default.useContext(contexts_1.BookingEngineContext);
|
|
44
44
|
const { isLocked, averagePreDiscount, averagePrice } = props;
|
|
45
45
|
const discountApplied = averagePreDiscount > averagePrice;
|
|
46
46
|
const headlineClasses = (0, classnames_1.default)('room-details--content-price-protection', {
|
|
47
47
|
'--accent-headline': discountApplied,
|
|
48
48
|
'--accent-success': props.isMemberOnly,
|
|
49
49
|
});
|
|
50
|
-
return (
|
|
51
|
-
|
|
52
|
-
!isLocked && discountApplied && (
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
!props.hidePerNight && (
|
|
50
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
51
|
+
react_1.default.createElement("div", { className: 'room-details--content-price u-flex u-flex-direction-column justify-content-end flex-wrap' + (isLocked ? ' --locked' : '') },
|
|
52
|
+
!isLocked && discountApplied && (react_1.default.createElement("span", { className: "room-details--content-price-protection --original align-self-end" },
|
|
53
|
+
react_1.default.createElement(Text_1.default, { color: Color_1.Color.DarkGrey },
|
|
54
|
+
react_1.default.createElement("strong", null,
|
|
55
|
+
react_1.default.createElement(Currency_1.default, null, averagePreDiscount))),
|
|
56
|
+
!props.hidePerNight && (react_1.default.createElement(Text_1.default, { color: Color_1.Color.DarkGrey, type: Text_1.TextType.Caption },
|
|
57
57
|
"/",
|
|
58
58
|
t(Translation_1.Translation.Misc.Night))))),
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
!props.hidePerNight &&
|
|
59
|
+
react_1.default.createElement("span", { className: headlineClasses },
|
|
60
|
+
react_1.default.createElement(Headline_1.default, { size: context.screenSize > ScreenSize_1.default.Medium ? 'large' : 'normal', bold: true, className: props.isMemberOnly ? '--success' : '' },
|
|
61
|
+
react_1.default.createElement(Currency_1.default, { disableLoading: true, hideDecimals: true }, isLocked ? 321 : averagePrice)),
|
|
62
|
+
!props.hidePerNight && react_1.default.createElement(Text_1.default, { color: Color_1.Color.DarkGrey },
|
|
63
63
|
"/",
|
|
64
64
|
t(Translation_1.Translation.Misc.Night))),
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
react_1.default.createElement(Tooltip_1.default, { title: t(Translation_1.Translation.Step.Room.RoomInfo.MemberRateLockedTooltip) },
|
|
66
|
+
react_1.default.createElement("span", { className: "room-details--content-price-lock" },
|
|
67
|
+
react_1.default.createElement(Icon_1.default, { icon: Icon_1.IconType.Lock, color: Color_1.Color.Success }))))));
|
|
68
68
|
}
|
|
69
69
|
exports.default = RoomDetailsPriceBlock;
|
|
70
70
|
//# sourceMappingURL=RoomDetailsPriceBlock.js.map
|