@roomstay/frontend 2.6.76 → 2.6.77-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/153.bundle.js +1 -0
- package/dist/176.bundle.js +1 -0
- package/dist/273.bundle.js +1 -0
- package/dist/292.bundle.js +1 -0
- package/dist/316.bundle.js +1 -0
- package/dist/349.bundle.js +2 -0
- package/dist/{535.bundle.js.LICENSE.txt → 349.bundle.js.LICENSE.txt} +1 -1
- package/dist/352.bundle.js +1 -0
- package/dist/41.bundle.js +1 -0
- package/dist/{151.bundle.js → 451.bundle.js} +1 -1
- package/dist/479.bundle.js +1 -0
- package/dist/534.bundle.js +1 -0
- package/dist/557.bundle.js +1 -0
- package/dist/620.bundle.js +1 -0
- package/dist/696.bundle.js +1 -0
- package/dist/734.bundle.js +1 -0
- package/dist/83.bundle.js +1 -0
- package/dist/910.bundle.js +1 -0
- package/dist/922.bundle.js +1 -0
- package/dist/99.bundle.js +1 -0
- package/dist/main.bundle.js +1 -1
- package/dist/src/animations/AutoAutoHeight.d.ts +1 -1
- package/dist/src/api/HotelAPI.d.ts +2 -0
- package/dist/src/api/HotelAPI.js +7 -0
- package/dist/src/api/HotelAPI.js.map +1 -1
- package/dist/src/api/ReservationAPI.js +12 -9
- package/dist/src/api/ReservationAPI.js.map +1 -1
- package/dist/src/components/User/Forms/ForgotPasswordForm.d.ts +2 -1
- package/dist/src/components/User/Forms/SignUpForm.d.ts +2 -1
- package/dist/src/components/User/Forms/VerifyEmailForm.d.ts +2 -1
- package/dist/src/components/generic/AgedBetweenLabel/AgedBetweenLabel.d.ts +2 -1
- package/dist/src/components/generic/Alert.d.ts +2 -2
- package/dist/src/components/generic/BEButton.d.ts +1 -1
- package/dist/src/components/generic/BackButton.d.ts +2 -1
- package/dist/src/components/generic/BookingWizard/BookingWizard.d.ts +1 -0
- package/dist/src/components/generic/BookingWizard/BookingWizard.js +7 -1
- package/dist/src/components/generic/BookingWizard/BookingWizard.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.d.ts +2 -2
- package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.js +0 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardBottomSheet/BookingWizardBottomSheet.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardContent.d.ts +14 -5
- package/dist/src/components/generic/BookingWizard/BookingWizardContent.js +24 -10
- package/dist/src/components/generic/BookingWizard/BookingWizardContent.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardDateSelector/BookingWizardDateSelector.js.map +1 -1
- package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.d.ts +10 -2
- package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js +187 -22
- package/dist/src/components/generic/BookingWizard/BookingWizardHotelSelector/BookingWizardHotelSelector.js.map +1 -1
- package/dist/src/components/generic/Card/IconNavCard/IconNavCard.d.ts +2 -2
- package/dist/src/components/generic/Countdown.d.ts +2 -1
- package/dist/src/components/generic/Currency.d.ts +2 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePicker.d.ts +2 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDay.d.ts +2 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerDays.d.ts +2 -1
- package/dist/src/components/generic/DateRangePicker/DateRangePickerMonth.d.ts +2 -1
- package/dist/src/components/generic/Distance.d.ts +2 -1
- package/dist/src/components/generic/Headline.d.ts +1 -1
- package/dist/src/components/generic/HtmlContentViewer.d.ts +2 -1
- package/dist/src/components/generic/InputGroup/InputGroup.d.ts +2 -2
- package/dist/src/components/generic/LineBreak.d.ts +2 -1
- package/dist/src/components/generic/Notification.d.ts +1 -1
- package/dist/src/components/generic/NumberIncrement.d.ts +2 -1
- package/dist/src/components/generic/Overlay/Overlay.d.ts +2 -2
- package/dist/src/components/generic/PageTitle/index.d.ts +2 -1
- package/dist/src/components/generic/PaymentCard/PaymentCard.d.ts +2 -1
- package/dist/src/components/generic/Pill.d.ts +1 -1
- package/dist/src/components/generic/Placeholder.d.ts +2 -1
- package/dist/src/components/generic/PromoCodeInput.d.ts +2 -1
- package/dist/src/components/generic/RecentSearchesCard.d.ts +2 -1
- package/dist/src/components/generic/RoomstayMark.d.ts +2 -1
- package/dist/src/components/generic/Select/Select.d.ts +2 -1
- package/dist/src/components/generic/Select/Select.js +2 -2
- package/dist/src/components/generic/Select/Select.js.map +1 -1
- package/dist/src/components/generic/Slider/Slider.d.ts +1 -1
- package/dist/src/components/generic/Tabs/TabRouteContainer.d.ts +2 -2
- package/dist/src/components/generic/Tooltip/Tooltip.d.ts +2 -2
- package/dist/src/components/generic/badging/SSLSecureBadge.d.ts +2 -1
- package/dist/src/components/generic/buttons/NextStepButton.d.ts +2 -1
- package/dist/src/components/generic/date/DatePicker.d.ts +2 -1
- package/dist/src/components/generic/date/DatePickerDay.d.ts +2 -1
- package/dist/src/components/generic/date/DatePickerDays.d.ts +2 -1
- package/dist/src/components/generic/date/DatePickerMonth.d.ts +2 -1
- package/dist/src/components/generic/date/DatePickerWeek.d.ts +2 -1
- package/dist/src/components/generic/date/FloatingDatePicker.d.ts +1 -1
- package/dist/src/components/generic/date/WeekViewSkeleton.d.ts +2 -1
- package/dist/src/components/generic/loader/ImageLoader.d.ts +1 -1
- package/dist/src/components/generic/loader/LargeLoader.d.ts +2 -1
- package/dist/src/components/generic/loader/OverlayLoader.d.ts +2 -1
- package/dist/src/components/generic/loader/SmallSpinner.d.ts +2 -1
- package/dist/src/components/generic/map/HotelLocationMap.d.ts +2 -1
- package/dist/src/components/generic/modal/ConfirmationModal.d.ts +2 -1
- package/dist/src/components/generic/modal/ErrorModal.d.ts +1 -1
- package/dist/src/components/generic/modal/SigninModal/UnauthenticatedUserModal.d.ts +2 -1
- package/dist/src/components/generic/modal/SimpleModal.d.ts +1 -1
- package/dist/src/components/generic/modal/TabbedModal.d.ts +1 -1
- package/dist/src/components/generic/radio/RadioFields.d.ts +2 -1
- package/dist/src/components/graphics/TravelerNotfound.d.ts +2 -1
- package/dist/src/components/iconComponents/BookNowPayLaterIcon.d.ts +2 -1
- package/dist/src/components/members/InlineSignUpSection.d.ts +2 -1
- package/dist/src/components/members/SignInModal/ExternalMemberModal.d.ts +2 -1
- package/dist/src/components/members/SignInModal/InternalMemberSignInModal.d.ts +2 -1
- package/dist/src/components/members/SignInModal/MemberPortalSignInModal.d.ts +2 -1
- package/dist/src/components/members/SignInModal/MemberSignInModal.d.ts +2 -1
- package/dist/src/components/navigation/Header.d.ts +2 -1
- package/dist/src/components/navigation/StepSelector.d.ts +2 -1
- package/dist/src/components/navigation/StepSelectorModal.d.ts +2 -1
- package/dist/src/components/pages/Account/Card/MemberCardItem.d.ts +2 -1
- package/dist/src/components/pages/PageColorComponent.d.ts +2 -1
- package/dist/src/components/reservation/ReservationItem.d.ts +2 -1
- package/dist/src/components/steps/DaysSelectedInformer.d.ts +2 -1
- package/dist/src/components/steps/MinimumNightStayPill.d.ts +2 -1
- package/dist/src/components/steps/addons/AddonCard.d.ts +2 -1
- package/dist/src/components/steps/addons/AddonList.d.ts +2 -1
- package/dist/src/components/steps/addons/AddonsNotFoundBlock.d.ts +2 -1
- package/dist/src/components/steps/common/CommonAddonSummary/CommonAddonSummary.d.ts +2 -1
- package/dist/src/components/steps/common/ItemisedFeesListing/ItemisedFeesListing.d.ts +2 -1
- package/dist/src/components/steps/common/ItemisedFeesSummary/ItemisedFeesSummary.d.ts +2 -1
- package/dist/src/components/steps/confirmation/AccountDetails.d.ts +2 -1
- package/dist/src/components/steps/confirmation/PaymentDetails/ExistingCardPicker.d.ts +2 -1
- package/dist/src/components/steps/confirmation/PaymentInformation.d.ts +2 -1
- package/dist/src/components/steps/confirmation/PlanpayLabel.d.ts +2 -1
- package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.d.ts +2 -1
- package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js +11 -10
- package/dist/src/components/steps/confirmation/StepConfirmationAcknowledgement.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationCheckoutDifferencesModal.d.ts +2 -1
- package/dist/src/components/steps/confirmation/StepConfirmationCommentsComponent.d.ts +2 -1
- package/dist/src/components/steps/confirmation/StepConfirmationForm.d.ts +2 -1
- package/dist/src/components/steps/confirmation/StepConfirmationForm.js +11 -4
- package/dist/src/components/steps/confirmation/StepConfirmationForm.js.map +1 -1
- package/dist/src/components/steps/confirmation/StepConfirmationFormProvider.d.ts +2 -1
- package/dist/src/components/steps/confirmation/StepConfirmationImportantInformation.d.ts +7 -0
- package/dist/src/components/steps/confirmation/StepConfirmationImportantInformation.js +54 -0
- package/dist/src/components/steps/confirmation/StepConfirmationImportantInformation.js.map +1 -0
- package/dist/src/components/steps/confirmation/StepConfirmationLimitedOffer.d.ts +2 -1
- package/dist/src/components/steps/confirmation/StepConfirmationPoliciesSection.d.ts +2 -1
- package/dist/src/components/steps/confirmation/StepConfirmationPolicyBlock.d.ts +2 -1
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffers.d.ts +2 -1
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersColumn.d.ts +2 -1
- package/dist/src/components/steps/confirmation/additionalOffers/AdditionalOffersModal.d.ts +2 -1
- package/dist/src/components/steps/date/OccupancyWarningBlock.d.ts +2 -1
- package/dist/src/components/steps/date/PeoplePicker.d.ts +2 -1
- package/dist/src/components/steps/date/PeoplePickerRow.d.ts +2 -1
- package/dist/src/components/steps/date/StepDatePricePerRoom.d.ts +2 -1
- package/dist/src/components/steps/date/StepOneDateRange.d.ts +2 -1
- package/dist/src/components/steps/date/StepOneDateRangePicker.d.ts +2 -1
- package/dist/src/components/steps/date/StepOneDateRangePickerLegend.d.ts +2 -1
- package/dist/src/components/steps/date/StepOneNextStepButton.d.ts +2 -1
- package/dist/src/components/steps/date/StepOneStatusPeople.d.ts +2 -1
- package/dist/src/components/steps/hotel/HotelCard.d.ts +2 -1
- package/dist/src/components/steps/hotel/HotelCardList.d.ts +2 -1
- package/dist/src/components/steps/hotel/HotelCardModal.d.ts +2 -1
- package/dist/src/components/steps/hotel/HotelInfoPerksRow.d.ts +2 -1
- package/dist/src/components/steps/hotel/HotelSearchParameters.d.ts +2 -1
- package/dist/src/components/steps/hotel/NoHotelsAvailable.d.ts +2 -1
- package/dist/src/components/steps/room/AvailableUpgradesModal.js +0 -5
- package/dist/src/components/steps/room/AvailableUpgradesModal.js.map +1 -1
- package/dist/src/components/steps/room/ImageGallerySlider.d.ts +2 -1
- package/dist/src/components/steps/room/InactivityWindow.d.ts +2 -1
- package/dist/src/components/steps/room/LargeRoomCard.d.ts +2 -1
- package/dist/src/components/steps/room/NoRoomsFoundBlock.d.ts +2 -1
- package/dist/src/components/steps/room/RatesNotFoundBlock.d.ts +2 -1
- package/dist/src/components/steps/room/RoomList.d.ts +2 -1
- package/dist/src/components/steps/room/RoomModal.d.ts +2 -1
- package/dist/src/components/steps/room/RoomModalPerkRow.d.ts +2 -1
- package/dist/src/components/steps/room/StepRoomAlertBlocks.d.ts +2 -1
- package/dist/src/components/steps/room/StepRoomBestRateAlert.d.ts +2 -1
- package/dist/src/components/steps/room/StepRoomErrorForm.d.ts +2 -1
- package/dist/src/components/steps/room/StepRoomHotelDetails.d.ts +2 -1
- package/dist/src/components/steps/room/StepRoomSortBy.d.ts +2 -1
- package/dist/src/components/steps/room/StepRoomSummaryAndButton.d.ts +2 -1
- package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRoomList.d.ts +2 -1
- package/dist/src/components/steps/room/TabGroupedRooms/TabGroupedRooms.d.ts +2 -1
- package/dist/src/components/steps/room/TripteaseLodgingSearchSchema.d.ts +2 -1
- package/dist/src/components/steps/room/UserSearchSummary/PromoCodeVerificationAlert.d.ts +2 -1
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummary.d.ts +2 -1
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryPromocodeInput.d.ts +2 -1
- package/dist/src/components/steps/room/UserSearchSummary/UserSearchSummaryRow.d.ts +2 -1
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfAdultsPicker.d.ts +2 -1
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfChildrenPicker.d.ts +2 -1
- package/dist/src/components/steps/room/roomBuilderProgress/NumberOfInfantsPicker.d.ts +2 -1
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgress.d.ts +2 -1
- package/dist/src/components/steps/room/roomBuilderProgress/RoomBuilderProgressRow.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetails.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsBedsBlock.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPerkBlock.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/RoomDetailsPriceBlock.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/BookNowButton.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/MembersOnlyRow.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.d.ts +3 -2
- package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js +2 -2
- package/dist/src/components/steps/room/roomDetails/roomRates/PriceBreakdownBlock.js.map +1 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/ReadMoreRoomRateRow.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDescriptionTab.d.ts +3 -2
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateDetailsAndPriceBreakdownModal.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateListPromotion/RoomRateListPromotion.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRatePills.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRateRow.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/roomRates/RoomRates.d.ts +2 -1
- package/dist/src/components/steps/room/roomDetails/unavailableRoom/UnavailableRoom.d.ts +2 -1
- package/dist/src/components/steps/room/roomFilter/AppliedFiltersBlock.d.ts +2 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterOverlay.d.ts +2 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterPriceSlider.d.ts +2 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterRateType.d.ts +2 -1
- package/dist/src/components/steps/room/roomFilter/RoomFilterRoomType.d.ts +2 -1
- package/dist/src/components/summary/BEMobileSummary.d.ts +2 -1
- package/dist/src/components/summary/BEMobileSummaryModal.d.ts +2 -1
- package/dist/src/components/summary/BESummary.d.ts +2 -1
- package/dist/src/components/summary/BESummaryAddonRow.d.ts +2 -1
- package/dist/src/components/summary/BESummaryPerkBlock.d.ts +2 -1
- package/dist/src/components/summary/BESummaryPrivacyPolicy.d.ts +2 -1
- package/dist/src/components/summary/BESummaryRoomRow.d.ts +2 -1
- package/dist/src/components/summary/BESummaryRoomRow.js +1 -1
- package/dist/src/components/summary/BESummaryRoomRow.js.map +1 -1
- package/dist/src/components/summary/TransportDistanceFromHotelBlock.d.ts +2 -1
- package/dist/src/contexts/BasketContext/BasketContextWrapper.d.ts +1 -1
- package/dist/src/contexts/BasketContext/BasketContextWrapper.js +63 -11
- package/dist/src/contexts/BasketContext/BasketContextWrapper.js.map +1 -1
- package/dist/src/contexts/BookingEngineContext/BookingEngineContextWrapper.d.ts +1 -1
- package/dist/src/contexts/CompanyContext/CompanyContextWrapper.d.ts +2 -2
- package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js +1 -0
- package/dist/src/contexts/CompanyContext/CompanyContextWrapper.js.map +1 -1
- package/dist/src/contexts/ConfirmationFormContext.d.ts +1 -1
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js +3 -2
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepContextWrapper.js.map +1 -1
- package/dist/src/contexts/ConfirmationStepContext/ConfirmationStepErrorModal.d.ts +2 -1
- package/dist/src/contexts/ErrorContext.d.ts +1 -1
- package/dist/src/contexts/FullPageEngineContext/EngineBodyLayout.d.ts +2 -1
- package/dist/src/contexts/FullPageEngineContext/EnginePageLayout.d.ts +2 -1
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.d.ts +2 -1
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js +10 -2
- package/dist/src/contexts/FullPageEngineContext/FullPageEngineContextWrapper.js.map +1 -1
- package/dist/src/contexts/HotelOverridesContext.d.ts +1 -1
- package/dist/src/contexts/ModalContext.d.ts +1 -1
- package/dist/src/contexts/NotificationContext.d.ts +1 -1
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.d.ts +7 -0
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngine.js.map +1 -1
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.d.ts +2 -1
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js +1 -0
- package/dist/src/engines/BookingWizardEngine/BookingWizardEngineElement.js.map +1 -1
- package/dist/src/engines/FullPageBookingEngine/FullPageBookingEngineElement.d.ts +2 -1
- package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.d.ts +2 -2
- package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js +3 -0
- package/dist/src/engines/InlineRoomMiniEngine/InlineRoomMiniEngineElement.js.map +1 -1
- package/dist/src/engines/MemberPortalWidget/MemberPortalWidgetElement.d.ts +2 -1
- package/dist/src/engines/RecentSearchesEngine/RecentSearchesEngineElement.d.ts +2 -1
- package/dist/src/hooks/RoomRateAvailabilityListFromApi.js +2 -1
- package/dist/src/hooks/RoomRateAvailabilityListFromApi.js.map +1 -1
- package/dist/src/hooks/useNextStepAction.d.ts +2 -1
- package/dist/src/icons/Check.d.ts +2 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +4 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/models/Api/HotelDTO.d.ts +1 -0
- package/dist/src/models/Api/HotelDTO.js.map +1 -1
- package/dist/src/models/BasketRow.d.ts +2 -1
- package/dist/src/models/BasketRow.js +32 -2
- package/dist/src/models/BasketRow.js.map +1 -1
- package/dist/src/models/BookingWizard/BookingWizardProperty.d.ts +13 -0
- package/dist/src/models/BookingWizard/BookingWizardProperty.js.map +1 -1
- package/dist/src/models/Client/Hotel/Hotel.d.ts +1 -0
- package/dist/src/models/Client/Hotel/Hotel.js.map +1 -1
- package/dist/src/models/RoomstaySession.d.ts +1 -0
- package/dist/src/models/RoomstaySession.js.map +1 -1
- package/dist/src/pages/account/AccountHome/AccountHomePage.d.ts +2 -1
- package/dist/src/pages/account/AccountOutlet.d.ts +1 -1
- package/dist/src/pages/account/AccountRouter.d.ts +2 -1
- package/dist/src/pages/account/ChangePassword/AccountChangePasswordPage.d.ts +2 -1
- package/dist/src/pages/account/Details/AccountDetailsCardsPage.d.ts +2 -1
- package/dist/src/pages/account/Details/AccountDetailsProfilePage.d.ts +2 -1
- package/dist/src/pages/account/Help/AccountHelpPage.d.ts +2 -1
- package/dist/src/pages/account/Reservations/AccountReservationSinglePage.d.ts +2 -1
- package/dist/src/pages/account/Reservations/AccountReservationsPage.d.ts +2 -1
- package/dist/src/pages/findReservation/FindReservation.d.ts +2 -1
- package/dist/src/pages/findReservation/FindReservationResults.d.ts +2 -1
- package/dist/src/pages/findReservation/ReservationRow.d.ts +2 -1
- package/dist/src/pages/findReservation/ReservationRowModal.d.ts +2 -1
- package/dist/src/pages/hotel/HotelInfo.d.ts +2 -1
- package/dist/src/pages/hotel/HotelInfoPlaceholder.d.ts +2 -1
- package/dist/src/pages/steps/StepAddon/StepAddon.d.ts +2 -1
- package/dist/src/pages/steps/StepAddon/StepAddonComponent.d.ts +2 -1
- package/dist/src/pages/steps/StepAddon/StepAddonLoader.d.ts +2 -1
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationComponent.d.ts +2 -1
- package/dist/src/pages/steps/StepConfirmation/StepConfirmationLoader.d.ts +2 -1
- package/dist/src/pages/steps/StepDate/StepDate.d.ts +2 -1
- package/dist/src/pages/steps/StepDate/StepDateComponent.d.ts +2 -1
- package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomComponent.d.ts +2 -1
- package/dist/src/pages/steps/StepGroupedRoom/StepGroupedRoomLoader.d.ts +2 -1
- package/dist/src/pages/steps/StepGuide.d.ts +1 -1
- package/dist/src/pages/steps/StepHotel/StepHotel.d.ts +2 -1
- package/dist/src/pages/steps/StepHotel/StepHotelComponent.d.ts +2 -1
- package/dist/src/pages/steps/StepHotel/StepHotelLoader.d.ts +2 -1
- package/dist/src/pages/steps/StepRoom/StepRoomComponent.d.ts +2 -1
- package/dist/src/pages/steps/StepRoom/StepRoomLoader.d.ts +2 -1
- package/dist/src/pages/steps/StepThanks/StepThanksComponent.d.ts +2 -1
- package/dist/src/providers/DIProvider.d.ts +2 -1
- package/dist/src/providers/FeatureProvider.js +2 -0
- package/dist/src/providers/FeatureProvider.js.map +1 -1
- package/dist/src/providers/feature/ConfirmationImportantInformationFeature.d.ts +10 -0
- package/dist/src/providers/feature/ConfirmationImportantInformationFeature.js +13 -0
- package/dist/src/providers/feature/ConfirmationImportantInformationFeature.js.map +1 -0
- package/dist/src/providers/feature/Feature.d.ts +2 -0
- package/dist/src/providers/feature/Feature.js +4 -0
- package/dist/src/providers/feature/Feature.js.map +1 -1
- package/dist/src/providers/storage/SessionProvider.js +2 -0
- package/dist/src/providers/storage/SessionProvider.js.map +1 -1
- package/dist/src/routes/NaturallyProgressedStepRoute.d.ts +2 -1
- package/dist/src/stories/BookingWizard.stories.d.ts +1 -1
- package/dist/src/stories/ConfirmationModal.stories.d.ts +2 -1
- package/dist/src/stories/DateRangePicker.stories.d.ts +5 -4
- package/dist/src/stories/ErrorModal.stories.d.ts +2 -1
- package/dist/src/stories/EventCarousel.stories.d.ts +2 -2
- package/dist/src/stories/FloatingDateRangePicker.stories.d.ts +2 -2
- package/dist/src/stories/IconNavCard.stories.d.ts +2 -2
- package/dist/src/stories/NumberIncrement.stories.d.ts +2 -1
- package/dist/src/stories/PaymentCard.stories.d.ts +3 -2
- package/dist/src/stories/RadioButtonGroup.stories.d.ts +3 -3
- package/dist/src/stories/Select.stories.d.ts +3 -3
- package/dist/src/stories/SimpleModal.stories.d.ts +2 -1
- package/dist/src/stories/Slider.stories.d.ts +3 -2
- package/dist/src/stories/TabbedModal.stories.d.ts +2 -1
- package/dist/src/stories/Tabs.stories.d.ts +1 -1
- package/dist/src/translations/Translation.d.ts +6 -0
- package/dist/src/translations/Translation.js +6 -0
- package/dist/src/translations/Translation.js.map +1 -1
- package/dist/src/translations/languages/en-gb.js +6 -0
- package/dist/src/translations/languages/en-gb.js.map +1 -1
- package/dist/src/util/TotalCalculator.js.map +1 -1
- package/dist/test.bundle.js +1 -1
- package/dist/tests/offline/entry/config/hotelSpecDefault.d.ts +2 -1
- package/dist/vendors.bundle.js +1 -1
- package/dist/vendors.bundle.js.LICENSE.txt +6 -6
- package/package.json +2 -2
- package/dist/177.bundle.js +0 -1
- package/dist/279.bundle.js +0 -1
- package/dist/288.bundle.js +0 -1
- package/dist/370.bundle.js +0 -1
- package/dist/430.bundle.js +0 -1
- package/dist/439.bundle.js +0 -1
- package/dist/446.bundle.js +0 -1
- package/dist/449.bundle.js +0 -1
- package/dist/535.bundle.js +0 -2
- package/dist/537.bundle.js +0 -1
- package/dist/619.bundle.js +0 -1
- package/dist/625.bundle.js +0 -1
- package/dist/659.bundle.js +0 -1
- package/dist/686.bundle.js +0 -1
- package/dist/873.bundle.js +0 -1
- package/dist/972.bundle.js +0 -1
- package/dist/978.bundle.js +0 -1
- package/dist/984.bundle.js +0 -1
|
@@ -9,6 +9,9 @@ class Feature {
|
|
|
9
9
|
getName() {
|
|
10
10
|
return this.name;
|
|
11
11
|
}
|
|
12
|
+
getOptions() {
|
|
13
|
+
return this.options;
|
|
14
|
+
}
|
|
12
15
|
isActive() {
|
|
13
16
|
return this.active;
|
|
14
17
|
}
|
|
@@ -22,6 +25,7 @@ class Feature {
|
|
|
22
25
|
}
|
|
23
26
|
onLoad(options) {
|
|
24
27
|
// Empty function to be overwritten
|
|
28
|
+
this.options = options;
|
|
25
29
|
}
|
|
26
30
|
onUnLoad() {
|
|
27
31
|
// Empty function to be overwritten
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Feature.js","sourceRoot":"/","sources":["src/providers/feature/Feature.ts"],"names":[],"mappings":";;;AAAA,MAAsB,OAAO;
|
|
1
|
+
{"version":3,"file":"Feature.js","sourceRoot":"/","sources":["src/providers/feature/Feature.ts"],"names":[],"mappings":";;;AAAA,MAAsB,OAAO;IAKzB,YAAmB,IAAY;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACxB,CAAC;IAEM,OAAO;QACV,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAEM,IAAI,CAAC,OAAkB;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAEM,MAAM;QACT,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QAEpB,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAES,MAAM,CAAC,OAAkB;QAC/B,mCAAmC;QACnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAES,QAAQ;QACd,mCAAmC;IACvC,CAAC;CACJ;AAzCD,0BAyCC","sourcesContent":["export abstract class Feature<TOptions = any> {\n private name: string;\n private active: boolean;\n private options?: TOptions;\n\n public constructor(name: string) {\n this.name = name;\n this.active = false;\n }\n\n public getName() {\n return this.name;\n }\n\n public getOptions() {\n return this.options;\n }\n\n public isActive() {\n return this.active;\n }\n\n public load(options?: TOptions) {\n this.active = true;\n this.onLoad(options);\n }\n\n public unLoad() {\n this.active = false;\n\n this.onUnLoad();\n }\n\n protected onLoad(options?: TOptions): void {\n // Empty function to be overwritten\n this.options = options;\n }\n\n protected onUnLoad() {\n // Empty function to be overwritten\n }\n}\n"]}
|
|
@@ -209,6 +209,7 @@ class SessionProvider {
|
|
|
209
209
|
children: unSerializeBasketRow.getChildren(),
|
|
210
210
|
infants: unSerializeBasketRow.getInfants(),
|
|
211
211
|
promoCode: unSerializeBasketRow.getPromoCode(),
|
|
212
|
+
roomCode: unSerializeBasketRow.getRoomCode(),
|
|
212
213
|
promoCodeStatus: unSerializeBasketRow.getPromoCodeStatus(),
|
|
213
214
|
rate: serializedRate,
|
|
214
215
|
room: serializedRoom,
|
|
@@ -261,6 +262,7 @@ class SessionProvider {
|
|
|
261
262
|
basketRow.setAdults(serializedBasketRow.adults);
|
|
262
263
|
basketRow.setChildren(serializedBasketRow.children);
|
|
263
264
|
basketRow.setInfants(serializedBasketRow.infants);
|
|
265
|
+
basketRow.setRoomCode(serializedBasketRow.roomCode);
|
|
264
266
|
basketRows.push(basketRow);
|
|
265
267
|
});
|
|
266
268
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionProvider.js","sourceRoot":"/","sources":["src/providers/storage/SessionProvider.ts"],"names":[],"mappings":"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","sourcesContent":["import { SignInUser } from '@frontend/contexts';\nimport dayjs from 'dayjs';\n\nimport BasketRow from '@/models/BasketRow';\nimport { IRoom, Room } from '@/models/Room/Room';\nimport { IRoomRate, RoomRate } from '@/models/Room/RoomRate';\nimport { RoomstaySession, SERIALIZED_DATE_FORMAT, SerializedRoomstaySession, SerializedRoomstaySessionBasketRow } from '@/models/RoomstaySession';\nimport { StorageProvider } from '@/providers/storage/StorageProvider';\nimport { debounce, delay } from '@/util/Debounce';\n\n/**\n * Session provider is in charge of handling the loading, saving and passing of the current Engine Session.\n *\n * Desired flow:\n * * App Opened\n * * Session Provider loaded\n * * New User Session Created\n * * User moves through the app, updating the session with vital details (current step, basket context )\n * * User refreshes browser - session is re-loaded and user resumes where they left off\n * * User proceeds to checkout.\n * * Session is saved.\n *\n * Mini Booking Widget:\n * * User loads mini booking widget, selects dates, people\n * * Rates are loaded, and user selects a rate, redirecting to Full Booking Engine\n * * Session Provider creates a SessionID to pass to redirected path\n * * Session Provider loads the passed SessionID and loads the correct session\n * * Resume to Desired Flow\n *\n * Re-targeting:\n * ---Since re-targeting will happen on client site, under client domain, localStorage will be preserved, ergo we can load the previous incomplete sessions back to the user\n * * User lands on client Homepage\n * * Session Provider loads previous incomplete sessions\n * * A slider with details of previous baskets is shown back to the user\n * * User clicks on a previous session and is brought to the Booking Engine\n * * Resume to Desired Flow\n */\n\nexport default class SessionProvider {\n private currentSessionID!: number;\n private hotelID!: string;\n private cachedSession: Partial<RoomstaySession> = {};\n\n private syncSession = async () => {\n try {\n const currentSession = await this.getSession();\n const cachedSession = this.cachedSession;\n this.cachedSession = {};\n await this.saveSession({\n ...currentSession,\n ...cachedSession,\n });\n } catch (error) {\n console.error('Failed to sync session:', error);\n }\n };\n\n private debouncedUpdateSession = debounce(async () => {\n await this.syncSession();\n }, 300);\n\n private async updateSessionWithAsync() {\n await delay(300); // 300 milliseconds delay -- Why is a delay necessary?\n await this.syncSession();\n }\n\n public async setHotelID(hotelID: string) {\n this.hotelID = hotelID;\n this.updateSession({ hotelID });\n }\n\n public async initialize(sessionID?: number, source?: string) {\n await this.setSessionID(sessionID, source);\n }\n\n public async setSessionID(sessionID?: number, source?: string) {\n const foundSession = await this.findOrCreateSessionID(sessionID as number, source as string);\n\n if (foundSession) {\n this.currentSessionID = foundSession;\n\n // Never read?\n const storage = new StorageProvider(sessionStorage);\n await storage.write('currentSession', this.currentSessionID);\n }\n }\n\n /**\n * @returns the current session ID\n */\n public getCurrentSessionID(): number {\n return this.currentSessionID;\n }\n\n public getSession(): RoomstaySession {\n const storage = new StorageProvider();\n\n const sessionFromStorage = storage.read<SerializedRoomstaySession>(this.getSessionKey());\n\n if (sessionFromStorage) {\n return this.unSerializeSession(sessionFromStorage);\n } else {\n return this.generateNewSession('');\n }\n }\n\n public async saveSession(changedSession: RoomstaySession) {\n if (!changedSession) {\n return console.log('Attempted to save empty session');\n }\n\n const storage = new StorageProvider();\n\n const serializedSession = this.serializeSession(changedSession);\n\n await storage.write(this.getSessionKey(serializedSession.id), serializedSession);\n }\n\n public async updateSession(partialSession: Partial<RoomstaySession>) {\n Object.assign(this.cachedSession, partialSession);\n this.debouncedUpdateSession();\n }\n\n public async updateSessionAsync(partialSession: Partial<RoomstaySession>) {\n Object.assign(this.cachedSession, partialSession);\n await this.updateSessionWithAsync();\n }\n\n public async deleteSession() {\n const storage = new StorageProvider();\n storage.delete(this.getSessionKey());\n }\n\n public async getAllSessions() {\n const storage = new StorageProvider();\n const sessionKeys = storage.getAllKeys((name) => name.startsWith('roomstay-session'));\n\n return (await storage.readAll<SerializedRoomstaySession>(sessionKeys)).map((session) => this.unSerializeSession(session));\n }\n\n /**\n * Function to find the right session from session storage, or local storage\n *\n * If one isn't found it is then created.\n */\n private async findOrCreateSessionID(sessionID: number, source: string) {\n let session: RoomstaySession;\n\n if (sessionID) {\n session = (await this.findSession(sessionID)) as RoomstaySession;\n\n if (session) {\n return session.id;\n }\n }\n\n session = await this.generateNewSession(source);\n\n return session.id;\n }\n\n private async findSession(sessionID: number): Promise<RoomstaySession | undefined> {\n const storage = new StorageProvider();\n const session = await storage.read<SerializedRoomstaySession>(this.getSessionKey(sessionID));\n\n if (session) {\n return this.unSerializeSession(session);\n }\n }\n\n private generateNewSession(source: string): RoomstaySession {\n const sessionId = new Date().getTime();\n\n const session: RoomstaySession = {\n id: sessionId,\n startDate: null,\n endDate: null,\n step: '',\n hotelID: this.hotelID ?? null,\n basketRows: [],\n source,\n };\n\n this.saveSession(session);\n\n return session;\n }\n\n private serializeSession(session: RoomstaySession): SerializedRoomstaySession {\n const basketRows: SerializedRoomstaySessionBasketRow[] = [];\n\n // TODO possibly refactor BasketRow to serialize itself, or instead make a serializer that can do all this.\n session.basketRows.forEach((unSerializeBasketRow: BasketRow) => {\n const rate = unSerializeBasketRow.getRate();\n const room = unSerializeBasketRow.getRoom();\n\n let serializedRate = null;\n let serializedRoom = null;\n\n if (rate) {\n serializedRate = rate.serialize();\n }\n\n if (room) {\n serializedRoom = room.serialize();\n }\n\n basketRows.push({\n uniqId: unSerializeBasketRow.getID(),\n startDate: unSerializeBasketRow.getStartDate()?.format(SERIALIZED_DATE_FORMAT),\n endDate: unSerializeBasketRow.getEndDate()?.format(SERIALIZED_DATE_FORMAT),\n adults: unSerializeBasketRow.getAdults(),\n children: unSerializeBasketRow.getChildren(),\n infants: unSerializeBasketRow.getInfants(),\n promoCode: unSerializeBasketRow.getPromoCode(),\n promoCodeStatus: unSerializeBasketRow.getPromoCodeStatus(),\n rate: serializedRate as IRoomRate,\n room: serializedRoom as IRoom,\n });\n });\n\n return {\n id: session.id,\n startDate: session.startDate?.format(SERIALIZED_DATE_FORMAT) as string,\n endDate: session.endDate?.format(SERIALIZED_DATE_FORMAT) as string,\n step: session.step,\n hotelID: session.hotelID,\n basketRows,\n source: session.source,\n user: JSON.stringify(session.user),\n memberId: session.memberId,\n reservation: session.reservation,\n reservationRequest: session.reservationRequest,\n };\n }\n\n private unSerializeSession(session: SerializedRoomstaySession): RoomstaySession {\n const basketRows: BasketRow[] = [];\n let startDate: dayjs.Dayjs | null = null;\n let endDate: dayjs.Dayjs | null = null;\n\n if (session.startDate) {\n startDate = dayjs(session.startDate, SERIALIZED_DATE_FORMAT);\n }\n\n if (session.endDate) {\n endDate = dayjs(session.endDate, SERIALIZED_DATE_FORMAT);\n }\n\n session.basketRows?.forEach((serializedBasketRow) => {\n let rate;\n let room;\n\n if (serializedBasketRow.room) {\n room = new Room();\n room.unSerialize(serializedBasketRow.room);\n }\n\n if (serializedBasketRow.rate && room) {\n rate = new RoomRate();\n rate.unSerialize(serializedBasketRow.rate);\n rate.setRoom(room);\n }\n\n const basketRow = new BasketRow(rate, serializedBasketRow.uniqId);\n\n if (serializedBasketRow.startDate) {\n basketRow.setStartDate(dayjs(serializedBasketRow.startDate, SERIALIZED_DATE_FORMAT));\n }\n if (serializedBasketRow.endDate) {\n basketRow.setEndDate(dayjs(serializedBasketRow.endDate, SERIALIZED_DATE_FORMAT));\n }\n\n basketRow.setAdults(serializedBasketRow.adults);\n basketRow.setChildren(serializedBasketRow.children);\n basketRow.setInfants(serializedBasketRow.infants);\n\n basketRows.push(basketRow);\n });\n\n return {\n id: session.id,\n startDate,\n endDate,\n step: session.step,\n hotelID: session.hotelID,\n basketRows,\n source: session.source,\n user: session.user ? (JSON.parse(session.user) as SignInUser) : undefined,\n memberId: session.memberId,\n reservation: session.reservation,\n reservationRequest: session.reservationRequest,\n };\n }\n\n private getSessionKey(sessionId?: number): string {\n return `session-${sessionId ?? this.currentSessionID}`;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SessionProvider.js","sourceRoot":"/","sources":["src/providers/storage/SessionProvider.ts"],"names":[],"mappings":"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","sourcesContent":["import { SignInUser } from '@frontend/contexts';\nimport dayjs from 'dayjs';\n\nimport BasketRow from '@/models/BasketRow';\nimport { IRoom, Room } from '@/models/Room/Room';\nimport { IRoomRate, RoomRate } from '@/models/Room/RoomRate';\nimport { RoomstaySession, SERIALIZED_DATE_FORMAT, SerializedRoomstaySession, SerializedRoomstaySessionBasketRow } from '@/models/RoomstaySession';\nimport { StorageProvider } from '@/providers/storage/StorageProvider';\nimport { debounce, delay } from '@/util/Debounce';\n\n/**\n * Session provider is in charge of handling the loading, saving and passing of the current Engine Session.\n *\n * Desired flow:\n * * App Opened\n * * Session Provider loaded\n * * New User Session Created\n * * User moves through the app, updating the session with vital details (current step, basket context )\n * * User refreshes browser - session is re-loaded and user resumes where they left off\n * * User proceeds to checkout.\n * * Session is saved.\n *\n * Mini Booking Widget:\n * * User loads mini booking widget, selects dates, people\n * * Rates are loaded, and user selects a rate, redirecting to Full Booking Engine\n * * Session Provider creates a SessionID to pass to redirected path\n * * Session Provider loads the passed SessionID and loads the correct session\n * * Resume to Desired Flow\n *\n * Re-targeting:\n * ---Since re-targeting will happen on client site, under client domain, localStorage will be preserved, ergo we can load the previous incomplete sessions back to the user\n * * User lands on client Homepage\n * * Session Provider loads previous incomplete sessions\n * * A slider with details of previous baskets is shown back to the user\n * * User clicks on a previous session and is brought to the Booking Engine\n * * Resume to Desired Flow\n */\n\nexport default class SessionProvider {\n private currentSessionID!: number;\n private hotelID!: string;\n private cachedSession: Partial<RoomstaySession> = {};\n\n private syncSession = async () => {\n try {\n const currentSession = await this.getSession();\n const cachedSession = this.cachedSession;\n this.cachedSession = {};\n await this.saveSession({\n ...currentSession,\n ...cachedSession,\n });\n } catch (error) {\n console.error('Failed to sync session:', error);\n }\n };\n\n private debouncedUpdateSession = debounce(async () => {\n await this.syncSession();\n }, 300);\n\n private async updateSessionWithAsync() {\n await delay(300); // 300 milliseconds delay -- Why is a delay necessary?\n await this.syncSession();\n }\n\n public async setHotelID(hotelID: string) {\n this.hotelID = hotelID;\n this.updateSession({ hotelID });\n }\n\n public async initialize(sessionID?: number, source?: string) {\n await this.setSessionID(sessionID, source);\n }\n\n public async setSessionID(sessionID?: number, source?: string) {\n const foundSession = await this.findOrCreateSessionID(sessionID as number, source as string);\n\n if (foundSession) {\n this.currentSessionID = foundSession;\n\n // Never read?\n const storage = new StorageProvider(sessionStorage);\n await storage.write('currentSession', this.currentSessionID);\n }\n }\n\n /**\n * @returns the current session ID\n */\n public getCurrentSessionID(): number {\n return this.currentSessionID;\n }\n\n public getSession(): RoomstaySession {\n const storage = new StorageProvider();\n\n const sessionFromStorage = storage.read<SerializedRoomstaySession>(this.getSessionKey());\n\n if (sessionFromStorage) {\n return this.unSerializeSession(sessionFromStorage);\n } else {\n return this.generateNewSession('');\n }\n }\n\n public async saveSession(changedSession: RoomstaySession) {\n if (!changedSession) {\n return console.log('Attempted to save empty session');\n }\n\n const storage = new StorageProvider();\n\n const serializedSession = this.serializeSession(changedSession);\n\n await storage.write(this.getSessionKey(serializedSession.id), serializedSession);\n }\n\n public async updateSession(partialSession: Partial<RoomstaySession>) {\n Object.assign(this.cachedSession, partialSession);\n this.debouncedUpdateSession();\n }\n\n public async updateSessionAsync(partialSession: Partial<RoomstaySession>) {\n Object.assign(this.cachedSession, partialSession);\n await this.updateSessionWithAsync();\n }\n\n public async deleteSession() {\n const storage = new StorageProvider();\n storage.delete(this.getSessionKey());\n }\n\n public async getAllSessions() {\n const storage = new StorageProvider();\n const sessionKeys = storage.getAllKeys((name) => name.startsWith('roomstay-session'));\n\n return (await storage.readAll<SerializedRoomstaySession>(sessionKeys)).map((session) => this.unSerializeSession(session));\n }\n\n /**\n * Function to find the right session from session storage, or local storage\n *\n * If one isn't found it is then created.\n */\n private async findOrCreateSessionID(sessionID: number, source: string) {\n let session: RoomstaySession;\n\n if (sessionID) {\n session = (await this.findSession(sessionID)) as RoomstaySession;\n\n if (session) {\n return session.id;\n }\n }\n\n session = await this.generateNewSession(source);\n\n return session.id;\n }\n\n private async findSession(sessionID: number): Promise<RoomstaySession | undefined> {\n const storage = new StorageProvider();\n const session = await storage.read<SerializedRoomstaySession>(this.getSessionKey(sessionID));\n\n if (session) {\n return this.unSerializeSession(session);\n }\n }\n\n private generateNewSession(source: string): RoomstaySession {\n const sessionId = new Date().getTime();\n\n const session: RoomstaySession = {\n id: sessionId,\n startDate: null,\n endDate: null,\n step: '',\n hotelID: this.hotelID ?? null,\n basketRows: [],\n source,\n };\n\n this.saveSession(session);\n\n return session;\n }\n\n private serializeSession(session: RoomstaySession): SerializedRoomstaySession {\n const basketRows: SerializedRoomstaySessionBasketRow[] = [];\n\n // TODO possibly refactor BasketRow to serialize itself, or instead make a serializer that can do all this.\n session.basketRows.forEach((unSerializeBasketRow: BasketRow) => {\n const rate = unSerializeBasketRow.getRate();\n const room = unSerializeBasketRow.getRoom();\n\n let serializedRate = null;\n let serializedRoom = null;\n\n if (rate) {\n serializedRate = rate.serialize();\n }\n\n if (room) {\n serializedRoom = room.serialize();\n }\n\n basketRows.push({\n uniqId: unSerializeBasketRow.getID(),\n startDate: unSerializeBasketRow.getStartDate()?.format(SERIALIZED_DATE_FORMAT),\n endDate: unSerializeBasketRow.getEndDate()?.format(SERIALIZED_DATE_FORMAT),\n adults: unSerializeBasketRow.getAdults(),\n children: unSerializeBasketRow.getChildren(),\n infants: unSerializeBasketRow.getInfants(),\n promoCode: unSerializeBasketRow.getPromoCode(),\n roomCode: unSerializeBasketRow.getRoomCode(),\n promoCodeStatus: unSerializeBasketRow.getPromoCodeStatus(),\n rate: serializedRate as IRoomRate,\n room: serializedRoom as IRoom,\n });\n });\n\n return {\n id: session.id,\n startDate: session.startDate?.format(SERIALIZED_DATE_FORMAT) as string,\n endDate: session.endDate?.format(SERIALIZED_DATE_FORMAT) as string,\n step: session.step,\n hotelID: session.hotelID,\n basketRows,\n source: session.source,\n user: JSON.stringify(session.user),\n memberId: session.memberId,\n reservation: session.reservation,\n reservationRequest: session.reservationRequest,\n };\n }\n\n private unSerializeSession(session: SerializedRoomstaySession): RoomstaySession {\n const basketRows: BasketRow[] = [];\n let startDate: dayjs.Dayjs | null = null;\n let endDate: dayjs.Dayjs | null = null;\n\n if (session.startDate) {\n startDate = dayjs(session.startDate, SERIALIZED_DATE_FORMAT);\n }\n\n if (session.endDate) {\n endDate = dayjs(session.endDate, SERIALIZED_DATE_FORMAT);\n }\n\n session.basketRows?.forEach((serializedBasketRow) => {\n let rate;\n let room;\n\n if (serializedBasketRow.room) {\n room = new Room();\n room.unSerialize(serializedBasketRow.room);\n }\n\n if (serializedBasketRow.rate && room) {\n rate = new RoomRate();\n rate.unSerialize(serializedBasketRow.rate);\n rate.setRoom(room);\n }\n\n const basketRow = new BasketRow(rate, serializedBasketRow.uniqId);\n\n if (serializedBasketRow.startDate) {\n basketRow.setStartDate(dayjs(serializedBasketRow.startDate, SERIALIZED_DATE_FORMAT));\n }\n if (serializedBasketRow.endDate) {\n basketRow.setEndDate(dayjs(serializedBasketRow.endDate, SERIALIZED_DATE_FORMAT));\n }\n\n basketRow.setAdults(serializedBasketRow.adults);\n basketRow.setChildren(serializedBasketRow.children);\n basketRow.setInfants(serializedBasketRow.infants);\n basketRow.setRoomCode(serializedBasketRow.roomCode);\n\n basketRows.push(basketRow);\n });\n\n return {\n id: session.id,\n startDate,\n endDate,\n step: session.step,\n hotelID: session.hotelID,\n basketRows,\n source: session.source,\n user: session.user ? (JSON.parse(session.user) as SignInUser) : undefined,\n memberId: session.memberId,\n reservation: session.reservation,\n reservationRequest: session.reservationRequest,\n };\n }\n\n private getSessionKey(sessionId?: number): string {\n return `session-${sessionId ?? this.currentSessionID}`;\n }\n}\n"]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
import Step from '../pages/steps/Step';
|
|
2
3
|
export interface StepRouteProps {
|
|
3
4
|
step: Step;
|
|
4
5
|
}
|
|
5
|
-
declare const StepRoute: (props: StepRouteProps) => JSX.Element;
|
|
6
|
+
declare const StepRoute: (props: StepRouteProps) => React.JSX.Element;
|
|
6
7
|
export default StepRoute;
|
|
@@ -6,5 +6,5 @@ export default _default;
|
|
|
6
6
|
export declare const Horizontal: ComponentStory<React.FC<BookingWizardProps>>;
|
|
7
7
|
export declare const Vertical: ComponentStory<React.FC<BookingWizardProps>>;
|
|
8
8
|
export declare const Button: ComponentStory<React.FC<BookingWizardProps>>;
|
|
9
|
-
export declare const FixedCompany: ({ properties, ...props }: BookingWizardProps) => JSX.Element;
|
|
9
|
+
export declare const FixedCompany: ({ properties, ...props }: BookingWizardProps) => React.JSX.Element;
|
|
10
10
|
export declare const ThemeMini: ComponentStory<React.FC<BookingWizardProps>>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ComponentMeta } from '@storybook/react';
|
|
2
|
+
import React from 'react';
|
|
2
3
|
import ConfirmationModal, { ConfirmationModalProps } from '../components/generic/modal/ConfirmationModal';
|
|
3
4
|
declare const _default: ComponentMeta<typeof ConfirmationModal>;
|
|
4
5
|
export default _default;
|
|
5
|
-
export declare const Default: (args: ConfirmationModalProps) => JSX.Element;
|
|
6
|
+
export declare const Default: (args: ConfirmationModalProps) => React.JSX.Element;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { ComponentMeta } from '@storybook/react';
|
|
2
|
+
import React from 'react';
|
|
2
3
|
import DateRangePicker, { DatePickerProps } from '../components/generic/DateRangePicker/DateRangePicker';
|
|
3
4
|
declare const _default: ComponentMeta<typeof DateRangePicker>;
|
|
4
5
|
export default _default;
|
|
5
|
-
export declare const Primary: (args: DatePickerProps) => JSX.Element;
|
|
6
|
-
export declare const StartDatePopulated: (args: DatePickerProps) => JSX.Element;
|
|
7
|
-
export declare const MultipleMonths: (args: DatePickerProps) => JSX.Element;
|
|
8
|
-
export declare const ThemeSpecific: (args: DatePickerProps) => JSX.Element;
|
|
6
|
+
export declare const Primary: (args: DatePickerProps) => React.JSX.Element;
|
|
7
|
+
export declare const StartDatePopulated: (args: DatePickerProps) => React.JSX.Element;
|
|
8
|
+
export declare const MultipleMonths: (args: DatePickerProps) => React.JSX.Element;
|
|
9
|
+
export declare const ThemeSpecific: (args: DatePickerProps) => React.JSX.Element;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ComponentMeta } from '@storybook/react';
|
|
2
|
+
import React from 'react';
|
|
2
3
|
import ErrorModal from '../components/generic/modal/ErrorModal';
|
|
3
4
|
declare const _default: ComponentMeta<typeof ErrorModal>;
|
|
4
5
|
export default _default;
|
|
5
|
-
export declare const Default: () => JSX.Element;
|
|
6
|
+
export declare const Default: () => React.JSX.Element;
|
|
@@ -2,5 +2,5 @@ import { ComponentMeta } from '@storybook/react';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
declare const _default: ComponentMeta<React.FC<import("../components/generic/Event/EventCarousel").EventCarouselProps>>;
|
|
4
4
|
export default _default;
|
|
5
|
-
export declare const Default: () => JSX.Element;
|
|
6
|
-
export declare const Vertical: () => JSX.Element;
|
|
5
|
+
export declare const Default: () => React.JSX.Element;
|
|
6
|
+
export declare const Vertical: () => React.JSX.Element;
|
|
@@ -2,5 +2,5 @@ import { ComponentMeta } from '@storybook/react';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
declare const _default: ComponentMeta<React.ForwardRefExoticComponent<import("../components/generic/DateRangePicker/FloatingDateRangePicker").FloatingDateRangePickerProps & React.RefAttributes<import("../components/generic/DateRangePicker/FloatingDateRangePicker").FloatingDateRangePickerHandle>>>;
|
|
4
4
|
export default _default;
|
|
5
|
-
export declare const Primary: () => JSX.Element;
|
|
6
|
-
export declare const ThemeSpecific: () => JSX.Element;
|
|
5
|
+
export declare const Primary: () => React.JSX.Element;
|
|
6
|
+
export declare const ThemeSpecific: () => React.JSX.Element;
|
|
@@ -12,7 +12,7 @@ declare const _default: ComponentMeta<(props: {
|
|
|
12
12
|
icon?: "arrow" | "open-new" | undefined;
|
|
13
13
|
color?: Color | undefined;
|
|
14
14
|
} | undefined;
|
|
15
|
-
}) => JSX.Element | null>;
|
|
15
|
+
}) => React.JSX.Element | null>;
|
|
16
16
|
export default _default;
|
|
17
17
|
export declare const Default: ComponentStory<(props: {
|
|
18
18
|
icon: IconType;
|
|
@@ -24,4 +24,4 @@ export declare const Default: ComponentStory<(props: {
|
|
|
24
24
|
icon?: "arrow" | "open-new" | undefined;
|
|
25
25
|
color?: Color | undefined;
|
|
26
26
|
} | undefined;
|
|
27
|
-
}) => JSX.Element | null>;
|
|
27
|
+
}) => React.JSX.Element | null>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ComponentMeta } from '@storybook/react';
|
|
2
|
+
import React from 'react';
|
|
2
3
|
import NumberIncrement, { NumberIncrementProps } from '../components/generic/NumberIncrement';
|
|
3
4
|
declare const _default: ComponentMeta<typeof NumberIncrement>;
|
|
4
5
|
export default _default;
|
|
5
|
-
export declare const Default: (args: NumberIncrementProps) => JSX.Element;
|
|
6
|
+
export declare const Default: (args: NumberIncrementProps) => React.JSX.Element;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ComponentMeta, ComponentStory } from '@storybook/react';
|
|
2
|
-
|
|
2
|
+
import React from 'react';
|
|
3
|
+
declare const _default: ComponentMeta<({ card }: import("../components/generic/PaymentCard/PaymentCard").PaymentCardProps) => React.JSX.Element>;
|
|
3
4
|
export default _default;
|
|
4
|
-
export declare const Primary: ComponentStory<({ card }: import("../components/generic/PaymentCard/PaymentCard").PaymentCardProps) => JSX.Element>;
|
|
5
|
+
export declare const Primary: ComponentStory<({ card }: import("../components/generic/PaymentCard/PaymentCard").PaymentCardProps) => React.JSX.Element>;
|
|
@@ -3,6 +3,6 @@ import React from 'react';
|
|
|
3
3
|
import { IRadioButtonGroupProps } from '../components/generic/RadioButtonGroup/RadioButtonGroup';
|
|
4
4
|
declare const _default: ComponentMeta<(<TValue extends string = string>({ options, value: valueProp, onChange, renderChildrenContent, isSubGroup, }: IRadioButtonGroupProps<TValue>) => React.ReactElement<any, string | React.JSXElementConstructor<any>> | null)>;
|
|
5
5
|
export default _default;
|
|
6
|
-
export declare const Default: () => JSX.Element;
|
|
7
|
-
export declare const SelectRadio: () => JSX.Element;
|
|
8
|
-
export declare const DisabledSelectRadio: () => JSX.Element;
|
|
6
|
+
export declare const Default: () => React.JSX.Element;
|
|
7
|
+
export declare const SelectRadio: () => React.JSX.Element;
|
|
8
|
+
export declare const DisabledSelectRadio: () => React.JSX.Element;
|
|
@@ -4,6 +4,6 @@ declare const _default: ComponentMeta<(<TOption extends import("../components/ge
|
|
|
4
4
|
ref?: React.Ref<HTMLDivElement> | undefined;
|
|
5
5
|
}) => JSX.Element)>;
|
|
6
6
|
export default _default;
|
|
7
|
-
export declare const Default: () => JSX.Element;
|
|
8
|
-
export declare const Customized: () => JSX.Element;
|
|
9
|
-
export declare const Group: () => JSX.Element;
|
|
7
|
+
export declare const Default: () => React.JSX.Element;
|
|
8
|
+
export declare const Customized: () => React.JSX.Element;
|
|
9
|
+
export declare const Group: () => React.JSX.Element;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ComponentMeta } from '@storybook/react';
|
|
2
|
+
import React from 'react';
|
|
2
3
|
import SimpleModal, { SimpleModalProps } from '../components/generic/modal/SimpleModal';
|
|
3
4
|
declare const _default: ComponentMeta<typeof SimpleModal>;
|
|
4
5
|
export default _default;
|
|
5
|
-
export declare const Primary: (args: SimpleModalProps) => JSX.Element;
|
|
6
|
+
export declare const Primary: (args: SimpleModalProps) => React.JSX.Element;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { ComponentMeta } from '@storybook/react';
|
|
2
|
+
import React from 'react';
|
|
2
3
|
declare const _default: ComponentMeta<(props: {
|
|
3
4
|
min: number;
|
|
4
5
|
max: number;
|
|
5
6
|
onChange?: ((markers: import("../components/generic/Slider/Slider").MarkerType[]) => void) | undefined;
|
|
6
7
|
markers: import("../components/generic/Slider/Slider").MarkerType[];
|
|
7
8
|
backgroundMarkers?: import("../components/generic/Slider/Slider").BackgroundMarkerType[] | undefined;
|
|
8
|
-
}) => JSX.Element>;
|
|
9
|
+
}) => React.JSX.Element>;
|
|
9
10
|
export default _default;
|
|
10
|
-
export declare const Default: () => JSX.Element;
|
|
11
|
+
export declare const Default: () => React.JSX.Element;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ComponentMeta } from '@storybook/react';
|
|
2
|
+
import React from 'react';
|
|
2
3
|
import TabbedModal from '../components/generic/modal/TabbedModal';
|
|
3
4
|
declare const _default: ComponentMeta<typeof TabbedModal>;
|
|
4
5
|
export default _default;
|
|
5
|
-
export declare const Default: () => JSX.Element;
|
|
6
|
+
export declare const Default: () => React.JSX.Element;
|
|
@@ -2,4 +2,4 @@ import { ComponentMeta } from '@storybook/react';
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
declare const _default: ComponentMeta<React.FC<import("../components/generic/Tabs/Tabs").TabsProps>>;
|
|
4
4
|
export default _default;
|
|
5
|
-
export declare const Default: () => JSX.Element;
|
|
5
|
+
export declare const Default: () => React.JSX.Element;
|
|
@@ -372,6 +372,10 @@ export declare const Translation: {
|
|
|
372
372
|
YouCanAddAndEditRooms: string;
|
|
373
373
|
AddMoreRooms: string;
|
|
374
374
|
EmailSpecialOffers: string;
|
|
375
|
+
ImportantInformation: string;
|
|
376
|
+
ImportantInformationNotes: string;
|
|
377
|
+
ImportantInformationIHaveUnderstood: string;
|
|
378
|
+
ImportantInformationError: string;
|
|
375
379
|
Acknowledgement: string;
|
|
376
380
|
IHaveUnderstoodPrivacyPolicy: string;
|
|
377
381
|
PrivacyPolicy: string;
|
|
@@ -540,6 +544,8 @@ export declare const Translation: {
|
|
|
540
544
|
ChooseHotelMobile: string;
|
|
541
545
|
PleaseSelectHotel: string;
|
|
542
546
|
PleaseSelectHotelMobile: string;
|
|
547
|
+
EmptySearchHotel: string;
|
|
548
|
+
Ungrouped: string;
|
|
543
549
|
Guests: string;
|
|
544
550
|
GuestsPlaceHolder: string;
|
|
545
551
|
Promocode: string;
|
|
@@ -375,6 +375,10 @@ exports.Translation = {
|
|
|
375
375
|
YouCanAddAndEditRooms: 'Step.Confirmation.YouCanAddAndEditRooms',
|
|
376
376
|
AddMoreRooms: 'Step.Confirmation.AddMoreRooms',
|
|
377
377
|
EmailSpecialOffers: 'Step.Confirmation.EmailSpecialOffers',
|
|
378
|
+
ImportantInformation: 'Step.Confirmation.ImportantInformation',
|
|
379
|
+
ImportantInformationNotes: 'Step.Confirmation.ImportantInformationNotes',
|
|
380
|
+
ImportantInformationIHaveUnderstood: 'Step.Confirmation.ImportantInformationIHaveUnderstood',
|
|
381
|
+
ImportantInformationError: 'Step.Confirmation.ImportantInformationError',
|
|
378
382
|
Acknowledgement: 'Step.Confirmation.Acknowledgement',
|
|
379
383
|
IHaveUnderstoodPrivacyPolicy: 'Step.Confirmation.IHaveUnderstoodPrivacyPolicy',
|
|
380
384
|
PrivacyPolicy: 'Step.Confirmation.PrivacyPolicy',
|
|
@@ -543,6 +547,8 @@ exports.Translation = {
|
|
|
543
547
|
ChooseHotelMobile: 'Misc.ChooseHotelMobile',
|
|
544
548
|
PleaseSelectHotel: 'Misc.PleaseSelectHotel',
|
|
545
549
|
PleaseSelectHotelMobile: 'Misc.PleaseSelectHotelMobile',
|
|
550
|
+
EmptySearchHotel: 'Misc.EmptySearchHotel',
|
|
551
|
+
Ungrouped: 'Misc.Ungrouped',
|
|
546
552
|
Guests: 'Misc.Guests',
|
|
547
553
|
GuestsPlaceHolder: 'Misc.GuestsPlaceHolder',
|
|
548
554
|
Promocode: 'Misc.Promocode',
|