@tripian/model 9.1.73 → 9.1.74
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.
|
@@ -16,6 +16,7 @@ export type ProviderObject = {
|
|
|
16
16
|
clientId: string;
|
|
17
17
|
affiliateParams?: Record<string, string>;
|
|
18
18
|
apiSecret?: string;
|
|
19
|
+
limit?: number;
|
|
19
20
|
};
|
|
20
21
|
export type Theme = {
|
|
21
22
|
dark: {
|
|
@@ -69,6 +70,7 @@ export type ConfigList = {
|
|
|
69
70
|
business: string;
|
|
70
71
|
customer: string;
|
|
71
72
|
};
|
|
73
|
+
cookieConsentUrl: string;
|
|
72
74
|
providers: {
|
|
73
75
|
name: CONFIG_CONTENTS_PROVIDER_NAME;
|
|
74
76
|
apikey: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type TranslationKey = 'landing.poweredBy' | 'landing.getStarted' | 'landing.getStartedNow' | 'landing.login' | 'landing.title' | 'landing.description' | 'landing.feelLikeALocalWhereverYouGo.title' | 'landing.feelLikeALocalWhereverYouGo.personalizedRecommendations.title' | 'landing.feelLikeALocalWhereverYouGo.personalizedRecommendations.description' | 'landing.feelLikeALocalWhereverYouGo.mappedOutDailyItineraries.title' | 'landing.feelLikeALocalWhereverYouGo.mappedOutDailyItineraries.description' | 'landing.feelLikeALocalWhereverYouGo.bestPlacesFeatures.title' | 'landing.feelLikeALocalWhereverYouGo.bestPlacesFeatures.description' | 'landing.feelLikeALocalWhereverYouGo.accessAnywhereAnytime.title' | 'landing.feelLikeALocalWhereverYouGo.accessAnywhereAnytime.description' | 'landing.weHaveGotYouCoveredIn.title' | 'landing.weHaveGotYouCoveredIn.countries' | 'landing.weHaveGotYouCoveredIn.cities' | 'landing.weHaveGotYouCoveredIn.handPickedLocations' | 'landing.feelLikeALocalWhereverYouGo.personalizedRecommendations.descriptionStudy' | 'landing.feelLikeALocalWhereverYouGo.mappedOutDailyItineraries.titleStudy' | 'landing.feelLikeALocalWhereverYouGo.mappedOutDailyItineraries.descriptionStudy' | 'landing.feelLikeALocalWhereverYouGo.accessAnywhereAnytime.titleStudy' | 'landing.feelLikeALocalWhereverYouGo.accessAnywhereAnytime.descriptionStudy' | 'landing.feelLikeALocalWhereverYouGo.bestPlacesFeatures.titleStudy' | 'landing.feelLikeALocalWhereverYouGo.bestPlacesFeatures.descriptionStudy' | 'landing.ourCoverageStudy' | 'landing.weHaveGotYouCoveredIn.titleStudy' | 'landing.weHaveGotYouCoveredIn.study.restaurants' | 'landing.weHaveGotYouCoveredIn.study.toursActivities' | 'landing.weHaveGotYouCoveredIn.study.liveEventsTickets' | 'landing.weHaveGotYouCoveredIn.study.culturalLandmarks' | 'landing.howTripianWorks.createYourAccount.descriptionStudy' | 'landing.howTripianWorks.setUpYourTrip.descriptionStudy' | 'landing.howTripianWorks.readyToGo.descriptionStudy' | 'landing.planYourAdventureStudy' | 'landing.whatTravelersAreSaying.title' | 'landing.whatTravelersAreSaying.traveler1.message' | 'landing.whatTravelersAreSaying.traveler1.customer' | 'landing.whatTravelersAreSaying.traveler1.customerCity' | 'landing.whatTravelersAreSaying.traveler2.message' | 'landing.whatTravelersAreSaying.traveler2.customer' | 'landing.whatTravelersAreSaying.traveler2.customerCity' | 'landing.whatTravelersAreSaying.traveler3.message' | 'landing.whatTravelersAreSaying.traveler3.customer' | 'landing.whatTravelersAreSaying.traveler3.customerCity' | 'landing.howItWorks.title' | 'landing.howTripianWorks.createYourAccount.title' | 'landing.howTripianWorks.createYourAccount.description' | 'landing.viator.howTripianWorks.createYourAccount.description' | 'landing.howTripianWorks.setUpYourTrip.title' | 'landing.howTripianWorks.setUpYourTrip.description' | 'landing.howTripianWorks.readyToGo.title' | 'landing.howTripianWorks.readyToGo.description' | 'landing.howTripianWorks.step' | 'landing.testimonials' | 'landing.ourCoverage' | 'landing.benefits' | 'landing.readyToGetStarted' | 'landing.planYourTrip' | 'landing.yourPersonalTripPlanner' | 'landing.yourPersonalTripPlannerStudy' | 'landing.about' | 'landing.termsOfUse' | 'landing.privacyPolicy' | 'landing.allRightsReserved' | 'auth.login.title' | 'auth.login.email.label' | 'auth.login.email.placeholder' | 'auth.login.password.label' | 'auth.login.password.placeholder' | 'auth.login.forgotPassword' | 'auth.login.submit' | 'auth.login.or' | 'auth.login.google' | 'auth.login.apple' | 'auth.login.account' | 'auth.login.registerNow' | 'auth.login.error.emailFormat' | 'auth.login.error.password' | 'auth.login.error.emailEmpty' | 'auth.login.error.verifyThatYouAreNotaRobot' | 'auth.loginWithHash.message' | 'auth.newPassword.header' | 'auth.forgotPassword.back' | 'auth.forgotPassword.title' | 'auth.forgotPassword.email.label' | 'auth.forgotPassword.email.placeholder' | 'auth.forgotPassword.submit' | 'auth.forgotPassword.error.emailEmpty' | 'auth.forgotPassword.error.emailFormat' | 'auth.forgotPassword.success.title' | 'auth.forgotPassword.success.description' | 'auth.forgotPassword.success.submit' | 'auth.resetPassword.title' | 'auth.resetPassword.password.label' | 'auth.resetPassword.password.placeholder' | 'auth.resetPassword.confirmPassword.label' | 'auth.resetPassword.confirmPassword.placeholder' | 'auth.resetPassword.submit' | 'auth.resetPassword.error.passwordFormat' | 'auth.resetPassword.error.passwordsNotEqual' | 'auth.resetPassword.success.title' | 'auth.resetPassword.success.description' | 'auth.resetPassword.success.button' | 'auth.register.back' | 'auth.register.title' | 'auth.register.name.label' | 'auth.register.name.placeholder' | 'auth.register.surname.label' | 'auth.register.surname.placeholder' | 'auth.register.email.label' | 'auth.register.email.placeholder' | 'auth.register.password.label' | 'auth.register.password.placeholder' | 'auth.register.termsOfUse.description' | 'auth.register.termsOfUse.button' | 'auth.register.submit' | 'auth.register.error.emailEmpty' | 'auth.register.error.emailFormat' | 'auth.register.error.password' | 'auth.register.error.acceptTheTermsOfUse' | 'auth.register.error.verifyThatYouAreNotaRobot' | 'trips.title' | 'trips.days' | 'trips.myTrips.upComingTrips.title' | 'trips.myTrips.upComingTrips.emptyMessage' | 'trips.myTrips.pastTrips.title' | 'trips.myTrips.pastTrips.emptyMessage' | 'trips.shareTrip.title' | 'trips.shareTrip.checkbox' | 'trips.shareTrip.description' | 'trips.shareTrip.copyLink' | 'trips.shareTrip.copiedLink' | 'trips.deleteTrip.title' | 'trips.deleteTrip.cancel' | 'trips.deleteTrip.submit' | 'trips.deleteTrip.question' | 'trips.editTrip.title' | 'trips.editTrip.submit' | 'trips.editTripName.title' | 'trips.editTripName.submit' | 'trips.cloneTrip.title' | 'trips.cloneTrip.loginWithHashTitle' | 'trips.cloneTrip.loggedIn.description' | 'trips.cloneTrip.loggedIn.submit' | 'trips.cloneTrip.notLoggedIn.description' | 'trips.cloneTrip.notLoggedIn.submit' | 'trips.cloneTrip.cancel' | 'trips.cloneTrip.back' | 'trips.myTrips.title' | 'trips.itineraryPlanner' | 'trips.myTrips.shareToFriends.title' | 'trips.myTrips.shareToFriends.description' | 'trips.myTrips.localExperiences.title' | 'trips.myTrips.localExperiences.toursEmpty' | 'trips.myTrips.localExperiences.categories.adventure' | 'trips.myTrips.localExperiences.categories.food' | 'trips.myTrips.localExperiences.categories.cultureHistory' | 'trips.myTrips.localExperiences.categories.sightSeeing' | 'trips.myTrips.localExperiences.categories.artMuseum' | 'trips.myTrips.localExperiences.categories.localNeighborhood' | 'trips.myTrips.localExperiences.categories.others' | 'trips.myTrips.localExperiences.categories.events' | 'trips.myTrips.localExperiences.categories.all' | 'trips.myTrips.localExperiences.tourDetails.reviews' | 'trips.myTrips.localExperiences.tourDetails.aboutThisActivity.title' | 'trips.myTrips.localExperiences.tourDetails.aboutThisActivity.duration' | 'trips.myTrips.localExperiences.tourDetails.aboutThisActivity.cancelation' | 'trips.myTrips.localExperiences.tourDetails.aboutThisActivity.ticketInfo' | 'trips.myTrips.localExperiences.tourDetails.aboutThisActivity.guide' | 'trips.myTrips.localExperiences.tourDetails.selectParticipantsAndDate' | 'trips.myTrips.localExperiences.tourDetails.startingTime' | 'trips.myTrips.localExperiences.tourDetails.bookNow' | 'trips.myTrips.localExperiences.tourDetails.experience.title' | 'trips.myTrips.localExperiences.tourDetails.experience.itinerary' | 'trips.myTrips.localExperiences.tourDetails.experience.highlights' | 'trips.myTrips.localExperiences.tourDetails.experience.fullDescription' | 'trips.myTrips.localExperiences.tourDetails.experience.includes' | 'trips.myTrips.localExperiences.tourDetails.experience.excludes' | 'trips.myTrips.localExperiences.tourDetails.experience.destinations' | 'trips.myTrips.localExperiences.tourDetails.experience.departures' | 'trips.myTrips.localExperiences.tourDetails.experience.availableOffers' | 'trips.myTrips.localExperiences.tourDetails.experience.importantInformation' | 'trips.myTrips.localExperiences.tourDetails.experience.additionalInformation' | 'trips.myTrips.localExperiences.tourDetails.experience.doesNotSupport' | 'trips.myTrips.localExperiences.tourDetails.experience.perPerson' | 'trips.myTrips.localExperiences.tourDetails.experience.tours' | 'trips.myTrips.localExperiences.tourDetails.saveUpTo' | 'trips.myTrips.localExperiences.tourDetails.taxesAndFees' | 'trips.myTrips.localExperiences.tourDetails.totalPrice' | 'trips.myTrips.localExperiences.tourDetails.priceBreakdown' | 'trips.myTrips.localExperiences.tourDetails.age' | 'trips.myTrips.localExperiences.tourDetails.noAvailableDays' | 'trips.myTrips.localExperiences.tourDetails.pleaseSelect' | 'trips.myTrips.localExperiences.tourDetails.maxTravelerYouCanBringAlong' | 'trips.myTrips.localExperiences.tourDetails.maxTravelerAmountReached' | 'trips.myTrips.localExperiences.tourDetails.pleaseLowerTheTravelerCount' | 'trips.myTrips.localExperiences.tourDetails.checkAvailability' | 'trips.myTrips.localExperiences.tourDetails.bookingStatus.rejected.title' | 'trips.myTrips.localExperiences.tourDetails.bookingStatus.confirmed.title' | 'trips.myTrips.localExperiences.tourDetails.bookingStatus.pending.title' | 'trips.myTrips.localExperiences.tourDetails.bookingStatus.rejected.description' | 'trips.myTrips.localExperiences.tourDetails.bookingStatus.pending.description' | 'trips.myTrips.localExperiences.tourDetails.person' | 'trips.myTrips.localExperiences.tourDetails.people' | 'trips.myTrips.localExperiences.tourDetails.contactDetails' | 'trips.myTrips.localExperiences.tourDetails.goToTicketDetails' | 'trips.myTrips.localExperiences.tourDetails.selectParticipantsAndDate' | 'trips.myTrips.localExperiences.tourDetails.travelerInformations' | 'trips.myTrips.localExperiences.tourDetails.firstName' | 'trips.myTrips.localExperiences.tourDetails.lastName' | 'trips.myTrips.localExperiences.tourDetails.countryCode' | 'trips.myTrips.localExperiences.tourDetails.phoneNumber' | 'trips.myTrips.localExperiences.tourDetails.email' | 'trips.myTrips.localExperiences.tourDetails.address' | 'trips.myTrips.localExperiences.tourDetails.city' | 'trips.myTrips.localExperiences.tourDetails.postalCode' | 'trips.myTrips.localExperiences.tourDetails.edit' | 'trips.myTrips.localExperiences.tourDetails.paymentDetails' | 'trips.myTrips.localExperiences.tourDetails.country' | 'trips.myTrips.localExperiences.tourDetails.zipCode' | 'trips.myTrips.localExperiences.tourDetails.submitPayment' | 'trips.myTrips.localExperiences.tourDetails.billingInformations' | 'trips.myTrips.localExperiences.tourDetails.paymentAreSecureAndEncrypted' | 'trips.myTrips.localExperiences.tourDetails.holderName' | 'trips.myTrips.localExperiences.tourDetails.cardNumber' | 'trips.myTrips.localExperiences.tourDetails.expiryMonth' | 'trips.myTrips.localExperiences.tourDetails.expiryYear' | 'trips.myTrips.localExperiences.tourDetails.confirmBooking' | 'trips.myTrips.localExperiences.tourDetails.otherDetails' | 'trips.myTrips.localExperiences.tourDetails.tourLanguage' | 'trips.myTrips.localExperiences.tourDetails.activityDetails' | 'trips.myTrips.localExperiences.tourDetails.languageGuides' | 'trips.myTrips.localExperiences.tourDetails.specialRequirements' | 'trips.myTrips.localExperiences.tourDetails.primaryTraveler' | 'trips.myTrips.localExperiences.tourDetails.traveler' | 'trips.myTrips.localExperiences.tourDetails.lead' | 'trips.myTrips.localExperiences.tourDetails.enterLocation' | 'trips.myTrips.localExperiences.tourDetails.mustBeAValidNumber' | 'trips.myTrips.localExperiences.tourDetails.mustBeAValidTime' | 'trips.myTrips.localExperiences.tourDetails.characterLimitExceeded' | 'trips.myTrips.localExperiences.tourDetails.max' | 'trips.myTrips.localExperiences.tourDetails.minimum' | 'trips.myTrips.localExperiences.tourDetails.adultRequired' | 'trips.myTrips.localExperiences.tourDetails.pleaseAddAtLeastOneAdult' | 'trips.myTrips.localExperiences.tourDetails.seeLessTimes' | 'trips.myTrips.localExperiences.tourDetails.seeMoreTimes' | 'trips.myTrips.localExperiences.tourDetails.cancellation.allSalesFinal' | 'trips.myTrips.localExperiences.tourDetails.cancellation.freeCancellation' | 'trips.myTrips.localExperiences.tourDetails.cancellation.freeCancellationBefore' | 'trips.myTrips.localExperiences.tourDetails.cancellation.noRefundAvailable' | 'trips.myTrips.localExperiences.tourDetails.cancellation.refundCouldNotDetermined' | 'trips.myTrips.localExperiences.tourDetails.cancellation.notRecognized' | 'trips.myTrips.localExperiences.tourDetails.cancellation.refundAmount' | 'trips.myTrips.localExperiences.tourDetails.cancellation.refundPercentage' | 'trips.myTrips.localExperiences.tourDetails.pickup.location' | 'trips.myTrips.localExperiences.tourDetails.pickup.freeText' | 'trips.myTrips.localExperiences.tourDetails.pickup.showDetails' | 'trips.myTrips.localExperiences.tourDetails.pickup.option' | 'trips.myTrips.localExperiences.tourDetails.questions.transferAirArrivalAirline' | 'trips.myTrips.localExperiences.tourDetails.questions.transferAirArrivalFlightNumber' | 'trips.myTrips.localExperiences.tourDetails.questions.transferRailArrivalLine' | 'trips.myTrips.localExperiences.tourDetails.questions.transferRailArrivalStation' | 'trips.myTrips.localExperiences.tourDetails.questions.transferArrivalDropOff' | 'trips.myTrips.localExperiences.tourDetails.questions.transferArrivalTime' | 'trips.myTrips.localExperiences.tourDetails.questions.transferPortArrivalTime' | 'trips.myTrips.localExperiences.tourDetails.questions.transferDepartureMode' | 'trips.myTrips.localExperiences.tourDetails.questions.transferArrivalMode' | 'trips.myTrips.localExperiences.tourDetails.questions.transferAirDepartureAirline' | 'trips.myTrips.localExperiences.tourDetails.questions.transferAirDepartureFlightNumber' | 'trips.myTrips.localExperiences.tourDetails.questions.transferDepartureDate' | 'trips.myTrips.localExperiences.tourDetails.questions.transferDepartureTime' | 'trips.myTrips.localExperiences.tourDetails.questions.transferDeparturePickup' | 'trips.myTrips.localExperiences.tourDetails.questions.transferPortCruiseShip' | 'trips.myTrips.localExperiences.tourDetails.questions.transferPortDepartureTime' | 'trips.myTrips.localExperiences.tourDetails.questions.transferRailDepartureLine' | 'trips.myTrips.localExperiences.tourDetails.questions.transferRailDepartureStation' | 'trips.myTrips.localExperiences.tourDetails.questions.specialRequirements' | 'trips.myTrips.localExperiences.tourDetails.questions.arrivalDetails' | 'trips.myTrips.localExperiences.tourDetails.questions.departureDetails' | 'trips.myTrips.localExperiences.tourDetails.questions.pickupPoint' | 'trips.myTrips.localExperiences.tourDetails.mins' | 'trips.myTrips.localExperiences.tourDetails.next' | 'trips.myTrips.localExperiences.tourDetails.freeCancellation' | 'trips.myTrips.localExperiences.tourDetails.freeText' | 'trips.myTrips.localExperiences.tourDetails.meetingPoint' | 'trips.myTrips.localExperiences.tourDetails.pickup' | 'trips.myTrips.localExperiences.tourDetails.group' | 'trips.myTrips.localExperiences.tourDetails.optionNotFound' | 'trips.myTrips.localExperiences.tourDetails.bookingChildSafetySeat' | 'trips.myTrips.localExperiences.tourDetails.bookingCruiseDetails' | 'trips.myTrips.localExperiences.tourDetails.bookingCustomerAccommodation' | 'trips.myTrips.localExperiences.tourDetails.bookingDropOffAddress' | 'trips.myTrips.localExperiences.tourDetails.flightNumber' | 'trips.myTrips.localExperiences.tourDetails.timeOfArrival' | 'trips.myTrips.localExperiences.tourDetails.bookingMedicalConditions' | 'trips.myTrips.localExperiences.tourDetails.bookingMobilityIssues' | 'trips.myTrips.localExperiences.tourDetails.bookingShippingAddress' | 'trips.myTrips.localExperiences.tourDetails.bookingWheelchair' | 'trips.myTrips.localExperiences.tourDetails.travelerDietaryRestrictions' | 'trips.myTrips.localExperiences.tourDetails.travelerDivingLevel' | 'trips.myTrips.localExperiences.tourDetails.travelerDriverLicense' | 'trips.myTrips.localExperiences.tourDetails.amountShoe' | 'trips.myTrips.localExperiences.tourDetails.unitShoe' | 'trips.myTrips.localExperiences.tourDetails.travelerSkillLevel' | 'trips.myTrips.localExperiences.tourDetails.travelerAge' | 'trips.myTrips.localExperiences.tourDetails.travelerChildrenAge' | 'trips.myTrips.localExperiences.tourDetails.travelerDateOfBirth' | 'trips.myTrips.localExperiences.tourDetails.amountHeight' | 'trips.myTrips.localExperiences.tourDetails.unitHeight' | 'trips.myTrips.localExperiences.tourDetails.travelerIdDetails' | 'trips.myTrips.localExperiences.tourDetails.travelerIdNumber' | 'trips.myTrips.localExperiences.tourDetails.travelerFirstName' | 'trips.myTrips.localExperiences.tourDetails.travelerLastName' | 'trips.myTrips.localExperiences.tourDetails.travelerPassportDetails' | 'trips.myTrips.localExperiences.tourDetails.travelerPassportNumber' | 'trips.myTrips.localExperiences.tourDetails.amountWeight' | 'trips.myTrips.localExperiences.tourDetails.unitWeight' | 'trips.myTrips.localExperiences.tourDetails.likelyToSellOut' | 'trips.myTrips.localExperiences.tourDetails.newOnViator' | 'trips.myTrips.localExperiences.tourDetails.viatorExclusive' | 'trips.myTrips.localExperiences.tourDetails.skipTheLine' | 'trips.myTrips.localExperiences.tourDetails.privateTour' | 'trips.myTrips.localExperiences.tourDetails.specialOffer' | 'trips.myTrips.localExperiences.tourDetails.tryAgain' | 'trips.myTrips.localExperiences.tourDetails.paymentFailed' | 'trips.myTrips.localExperiences.tourDetails.cancelReservation' | 'trips.myTrips.localExperiences.tourDetails.close' | 'trips.myTrips.localExperiences.tourDetails.isRequired' | 'trips.myTrips.localExperiences.tourDetails.zipCodeisRequired' | 'trips.myTrips.localExperiences.tourDetails.zipCodeMin3Char' | 'trips.myTrips.localExperiences.tourDetails.zipCodeMax9Char' | 'trips.myTrips.localExperiences.tourDetails.zipCodeMax9Char' | 'trips.myTrips.localExperiences.tourDetails.phoneNumberIsInvalid' | 'trips.myTrips.localExperiences.tourDetails.pleaseEnterYourPhoneNumber' | 'trips.myTrips.localExperiences.tourDetails.emailIsInvalid' | 'trips.myTrips.localExperiences.tourDetails.pleaseEnterYourEmail' | 'trips.myTrips.localExperiences.tourDetails.pleaseEnterYourEmail' | 'trips.myTrips.localExperiences.tourDetails.pleaseEnterYourFirstName' | 'trips.myTrips.localExperiences.tourDetails.pleaseEnterYourLastName' | 'trips.myTrips.localExperiences.tourDetails.pickupLocation' | 'trips.myTrips.localExperiences.tourDetails.successfullyBooked' | 'trips.myTrips.localExperiences.tourDetails.bookingIsStillAwatingConfirm' | 'trips.myTrips.localExperiences.tourDetails.bookingRejected' | 'trips.myTrips.localExperiences.tourDetails.min' | 'trips.myTrips.localExperiences.tourDetails.max' | 'trips.myTrips.localExperiences.tourDetails.participantsForThisActivity' | 'trips.myTrips.localExperiences.tourDetails.conductionLanguage' | 'trips.myTrips.localExperiences.tourDetails.yourSessionExpired.title' | 'trips.myTrips.localExperiences.tourDetails.yourSessionExpired.desc' | 'trips.myTrips.exploreMore.title' | 'trips.myTrips.exploreMore.categories.attractions' | 'trips.myTrips.exploreMore.categories.restaurants' | 'trips.myTrips.exploreMore.categories.cafes' | 'trips.myTrips.exploreMore.categories.nightlife' | 'trips.myTrips.exploreMore.categories.shopping' | 'trips.myTrips.exploreMore.categories.unknown' | 'trips.myTrips.exploreMore.placeholder' | 'trips.myTrips.exploreMore.onlyWithOffers' | 'trips.myTrips.exploreMore.onlyWithBookings' | 'trips.myTrips.exploreMore.loadMore' | 'trips.myTrips.exploreMore.pleaseSelectCategory' | 'trips.myTrips.exploreMore.selectCategory' | 'trips.myTrips.exploreMore.noResultsFound' | 'trips.myTrips.exploreMore.noResultsFound' | 'trips.myTrips.itinerary.title' | 'trips.myTrips.itinerary.day' | 'trips.myTrips.itinerary.accommodation.address' | 'trips.myTrips.itinerary.step.address' | 'trips.myTrips.itinerary.step.cuisine' | 'trips.myTrips.itinerary.step.features' | 'trips.myTrips.itinerary.step.status.permanentlyClosed' | 'trips.myTrips.itinerary.step.status.temporarilyClosed' | 'trips.myTrips.itinerary.step.thumbs.remove' | 'trips.myTrips.itinerary.step.thumbs.replace.title' | 'trips.myTrips.itinerary.step.thumbs.replace.alternativeLocations' | 'trips.myTrips.itinerary.step.poi.match' | 'trips.myTrips.itinerary.step.poi.photo' | 'trips.myTrips.itinerary.step.addToItinerary.title' | 'trips.myTrips.itinerary.step.addToItinerary.from' | 'trips.myTrips.itinerary.step.addToItinerary.to' | 'trips.myTrips.itinerary.step.addToItinerary.submit.apply' | 'trips.myTrips.itinerary.step.addToItinerary.submit.add' | 'trips.myTrips.itinerary.step.addToItinerary.estimatedDuration' | 'trips.myTrips.itinerary.step.poi.partOfDay' | 'trips.myTrips.itinerary.step.poi.price' | 'trips.myTrips.itinerary.step.poi.rating' | 'trips.myTrips.itinerary.step.poi.hours.explore' | 'trips.myTrips.itinerary.step.poi.hours.close' | 'trips.myTrips.itinerary.step.poi.address.title' | 'trips.myTrips.itinerary.step.poi.address.copy' | 'trips.myTrips.itinerary.step.poi.address.copied' | 'trips.myTrips.itinerary.step.poi.address.failed' | 'trips.myTrips.itinerary.step.poi.web' | 'trips.myTrips.itinerary.step.poi.phone.title' | 'trips.myTrips.itinerary.step.poi.phone.callNow' | 'trips.myTrips.itinerary.step.poi.phone.call' | 'trips.myTrips.itinerary.step.poi.description' | 'trips.myTrips.itinerary.step.poi.cuisine' | 'trips.myTrips.itinerary.step.poi.tags.title' | 'trips.myTrips.itinerary.step.poi.tags.more' | 'trips.myTrips.itinerary.step.poi.tags.less' | 'trips.myTrips.itinerary.step.poi.mustTry.title' | 'trips.myTrips.itinerary.step.poi.mustTry.message' | 'trips.myTrips.itinerary.step.poi.bookATable.viewCancel' | 'trips.myTrips.itinerary.step.poi.bookATable.reserve' | 'trips.myTrips.itinerary.step.poi.reportAProblem' | 'trips.myTrips.itinerary.step.poi.reportAProblemDescription' | 'trips.myTrips.itinerary.step.poi.reportAProblemBtnText' | 'trips.myTrips.itinerary.step.poi.noBookableItems' | 'trips.myTrips.itinerary.step.poi.and' | 'trips.myTrips.itinerary.step.poi.readMore' | 'trips.myTrips.itinerary.step.poi.readLess' | 'trips.myTrips.itinerary.step.poi.warning.title' | 'trips.myTrips.itinerary.step.poi.warning.and' | 'trips.myTrips.itinerary.step.poi.warning.message1' | 'trips.myTrips.itinerary.step.poi.warning.message2' | 'trips.myTrips.itinerary.step.poi.warning.message3' | 'trips.myTrips.itinerary.step.poi.tourTicket.buttonText' | 'trips.myTrips.itinerary.step.poi.tourTicket.ticket.title' | 'trips.myTrips.itinerary.step.poi.tourTicket.tour.title' | 'trips.myTrips.itinerary.step.poi.tourTicket.tour.covering' | 'trips.myTrips.itinerary.direction' | 'trips.myTrips.itinerary.places' | 'trips.myTrips.itinerary.favorites.title' | 'trips.myTrips.itinerary.favorites.emptyMessage' | 'trips.myTrips.itinerary.experiences' | 'trips.myTrips.itinerary.deals.title' | 'trips.myTrips.itinerary.bookings.title' | 'trips.myTrips.itinerary.bookings.header' | 'trips.myTrips.itinerary.bookings.emptyMessage' | 'trips.myTrips.itinerary.offers.title' | 'trips.myTrips.itinerary.offers.myOffers.title' | 'trips.myTrips.itinerary.offers.campaignOffers.title' | 'trips.myTrips.itinerary.offers.myOffers.emptyOffersMessage' | 'trips.myTrips.itinerary.offers.myOffers.error.optInCouldntMade' | 'trips.myTrips.itinerary.offers.myOffers.success.succesfullyMade' | 'trips.myTrips.itinerary.offers.categories.experiences' | 'trips.myTrips.itinerary.offers.categories.dining' | 'trips.myTrips.itinerary.offers.categories.shopping' | 'trips.myTrips.itinerary.offers.emptyOffersMessage' | 'trips.myTrips.itinerary.offers.payment.error.notFound' | 'trips.myTrips.itinerary.offers.payment.error.somethingWentWrong' | 'trips.myTrips.itinerary.offers.payment.error.youDontHaveCoupon' | 'trips.myTrips.itinerary.offers.payment.error.paymentCouldNotBeCompleted' | 'trips.myTrips.itinerary.offers.payment.success.redeemed' | 'trips.myTrips.itinerary.offers.payment.goBack' | 'trips.myTrips.itinerary.offers.payment.myWallet' | 'trips.myTrips.itinerary.offers.payment.worldOfDifference' | 'trips.myTrips.itinerary.offers.payment.willBeBeducted' | 'trips.myTrips.itinerary.offers.payment.fromYourWallet' | 'trips.myTrips.itinerary.offers.payment.doYouConfirm' | 'trips.myTrips.itinerary.offers.payment.submit' | 'trips.myTrips.itinerary.offers.payment.cancel' | 'trips.myTrips.itinerary.offers.qrWriter.error.invalidOfferId' | 'trips.myTrips.itinerary.offers.qrWriter.error.offerNotFound' | 'trips.myTrips.itinerary.offers.qrWriter.error.offerAlreadyRedeemed' | 'trips.myTrips.itinerary.offers.qrWriter.error.qrCodeNotFound' | 'trips.myTrips.itinerary.offers.qrWriter.error.anErrorOccurred' | 'trips.myTrips.itinerary.offers.qrWriter.completed' | 'trips.myTrips.itinerary.offers.qrWriter.title' | 'trips.myTrips.itinerary.offers.qrWriter.back' | 'trips.myTrips.itinerary.offers.qrWriter.loading' | 'trips.myTrips.itinerary.searchThisArea.title' | 'trips.myTrips.itinerary.searchThisArea.cancel' | 'trips.myTrips.itinerary.searchThisArea.clear' | 'trips.myTrips.itinerary.error.emptyMesssage' | 'trips.myTrips.itinerary.error.generatedStatusNegative1' | 'trips.myTrips.itinerary.error.generatedStatus2' | 'trips.myTrips.itinerary.error.generatedStatus3' | 'trips.myTrips.itinerary.customPoiModal.button' | 'trips.myTrips.itinerary.customPoiModal.addACustomEvent' | 'trips.myTrips.itinerary.customPoiModal.selectADay' | 'trips.myTrips.itinerary.updateTripHours' | 'trips.myTrips.itinerary.customPoiModal.addAddressButton' | 'trips.myTrips.itinerary.customPoiModal.addAddressInfo' | 'trips.myTrips.itinerary.customPoiModal.stepDetails.title' | 'trips.myTrips.itinerary.customPoiModal.stepDetails.poi' | 'trips.myTrips.itinerary.customPoiModal.stepDetails.event' | 'trips.myTrips.itinerary.customPoiModal.name.title' | 'trips.myTrips.itinerary.customPoiModal.name.placeholder' | 'trips.myTrips.itinerary.customPoiModal.description.title' | 'trips.myTrips.itinerary.customPoiModal.description.placeholder' | 'trips.myTrips.itinerary.customPoiModal.visitTime.title' | 'trips.myTrips.itinerary.customPoiModal.visitTime.from' | 'trips.myTrips.itinerary.customPoiModal.visitTime.to' | 'trips.myTrips.itinerary.customPoiModal.cancel' | 'trips.myTrips.itinerary.customPoiModal.submit' | 'trips.myTrips.itinerary.customPoiModal.locationModal.addLocation.title' | 'trips.myTrips.itinerary.customPoiModal.locationModal.addLocation.info' | 'trips.myTrips.itinerary.customPoiModal.locationModal.addLocation.address.title' | 'trips.myTrips.itinerary.customPoiModal.locationModal.addLocation.address.placeholder' | 'trips.myTrips.itinerary.customPoiModal.locationModal.addLocation.address.submit' | 'trips.myTrips.itinerary.customPoiModal.addYourCustomizeStep' | 'trips.createNewTrip.title' | 'trips.createNewTrip.header' | 'trips.createNewTrip.warning.title' | 'trips.createNewTrip.warning.message' | 'trips.createNewTrip.form.destination.title' | 'trips.createNewTrip.form.destination.city.label' | 'trips.createNewTrip.form.destination.city.placeholder' | 'trips.createNewTrip.form.destination.tripName.label' | 'trips.createNewTrip.form.destination.tripName.placeHolder' | 'trips.createNewTrip.form.destination.dates' | 'trips.createNewTrip.form.destination.hours' | 'trips.createNewTrip.form.travelerInfo.title' | 'trips.createNewTrip.form.travelerInfo.adults' | 'trips.createNewTrip.form.travelerInfo.children' | 'trips.createNewTrip.form.travelerInfo.accommodation.label' | 'trips.createNewTrip.form.travelerInfo.accommodation.placeholder' | 'trips.createNewTrip.form.travelerInfo.companion.label' | 'trips.createNewTrip.form.travelerInfo.companion.placeholder' | 'trips.createNewTrip.form.travelerInfo.companion.title' | 'trips.createNewTrip.form.travelerInfo.companion.description' | 'trips.createNewTrip.form.travelerInfo.companion.submit' | 'trips.createNewTrip.form.itineraryProfile.title' | 'trips.createNewTrip.form.personalInterests.title' | 'trips.createNewTrip.form.previous' | 'trips.createNewTrip.form.continue' | 'trips.createNewTrip.form.submit' | 'trips.createNewTrip.form.cancel' | 'trips.agentCreateNewTrip.form.submit' | 'trips.agentCreateNewTrip.form.userId' | 'trips.agentCreateNewTrip.tripCreated' | 'trips.createNewTrip.stepHeaders.destination' | 'trips.createNewTrip.stepHeaders.travelerInfo' | 'trips.createNewTrip.stepHeaders.itineraryProfile' | 'trips.createNewTrip.stepHeaders.personalInterests' | 'trips.createNewTrip.destinationTips.destination.title' | 'trips.createNewTrip.destinationTips.destination.description' | 'trips.createNewTrip.destinationTips.arrivalDate.title' | 'trips.createNewTrip.destinationTips.arrivalDate.description' | 'trips.createNewTrip.destinationTips.departureDate.title' | 'trips.createNewTrip.destinationTips.departureDate.description' | 'trips.createNewTrip.destinationTips.arrivalHours.title' | 'trips.createNewTrip.destinationTips.arrivalHours.description' | 'trips.createNewTrip.destinationTips.departureHours.title' | 'trips.createNewTrip.destinationTips.departureHours.description' | 'trips.createNewTrip.travelerInfoTips.travelers.title' | 'trips.createNewTrip.travelerInfoTips.travelers.description' | 'trips.createNewTrip.travelerInfoTips.children.title' | 'trips.createNewTrip.travelerInfoTips.children.description' | 'trips.createNewTrip.travelerInfoTips.startingPoint.title' | 'trips.createNewTrip.travelerInfoTips.startingPoint.description' | 'trips.createNewTrip.travelerInfoTips.companions.title' | 'trips.createNewTrip.travelerInfoTips.companions.description' | 'trips.createNewTrip.questionDefaultTip.hover.title' | 'trips.createNewTrip.questionDefaultTip.hover.description' | 'trips.createNewTrip.restaurantQuestion.title' | 'trips.createNewTrip.restaurantQuestion.lunchBrunch' | 'trips.createNewTrip.restaurantQuestion.dinner' | 'trips.toursAndTickets.title' | 'trips.toursAndTickets.destination.label' | 'trips.toursAndTickets.destination.placeholder' | 'trips.toursAndTickets.dates' | 'trips.toursAndTickets.adults.title' | 'trips.toursAndTickets.adults.label' | 'trips.toursAndTickets.children.title' | 'trips.toursAndTickets.children.label' | 'trips.toursAndTickets.cancel' | 'trips.toursAndTickets.submit' | 'trips.toursAndTickets.error.notAvailable' | 'trips.toursAndTickets.error.stillFetching' | 'trips.toursAndTickets.error.anErrorOccured' | 'trips.toursAndTickets.error.unexpectedResponse' | 'trips.loading.exploring' | 'trips.loading.customizing' | 'trips.loading.handSelecting' | 'trips.loading.researching' | 'trips.loading.mapping' | 'trips.addTrip' | 'trips.searchPlaceHolder' | 'user.title' | 'user.hi' | 'user.login' | 'user.register' | 'user.profile' | 'user.profile.email' | 'user.profile.changePassword.button' | 'user.profile.changePassword.success' | 'user.profile.changePassword.modal.forgotPassword' | 'user.profile.changePassword.modal.currentPassword.label' | 'user.profile.changePassword.modal.currentPassword.placeholder' | 'user.profile.changePassword.modal.currentPassword.error.currentPasswordIsEmpty' | 'user.profile.changePassword.modal.currentPassword.error.passwordFormat' | 'user.profile.changePassword.modal.currentPassword.error.passwordsNotEqual' | 'user.profile.changePassword.modal.newPassword.label' | 'user.profile.changePassword.modal.newPassword.placeholder' | 'user.profile.changePassword.modal.confirmPassword.label' | 'user.profile.changePassword.modal.confirmPassword.placeholder' | 'user.profile.changePassword.modal.submit' | 'user.profile.changePassword.modal.cancel' | 'user.profile.firstName.label' | 'user.profile.firstName.placeholder' | 'user.profile.lastName.label' | 'user.profile.lastName.placeholder' | 'user.profile.dateOfBirth' | 'user.profile.submit' | 'user.profile.cancel' | 'user.profile.success' | 'user.profile.notificationSettings' | 'user.profile.updateUserProfile' | 'user.deleteUser.warningHeader' | 'user.deleteUser.warningMessage' | 'user.deleteUser.cancel' | 'user.deleteUser.deleteMyAccount' | 'user.deleteUser.successHeader' | 'user.deleteUser.successMessage' | 'user.deleteUser.createNew' | 'user.deleteUser.deleteBtn' | 'user.myWallet.title' | 'user.myWallet.emptyMessage' | 'user.travelCompanions.title' | 'user.travelCompanions.companionTitle' | 'user.travelCompanions.companionName' | 'user.travelCompanions.companionAge' | 'user.travelCompanions.submit' | 'user.travelCompanions.companionList' | 'user.travelCompanions.editDelete' | 'user.travelCompanions.emptyMessage' | 'user.myFeedback.title' | 'user.myFeedback.warning' | 'user.myFeedback.feedbackSentOn' | 'user.myFeedback.replySentOn' | 'user.myFeedback.feedbackCount' | 'user.myFeedback.noFeedbacksYet' | 'user.myFeedback.reply' | 'user.myFeedback.replies' | 'user.myFeedback.createFeedback' | 'user.myFeedback.noFeedbackMessage' | 'user.myFeedback.yourFeedbacks' | 'user.myFeedback.unreadCount' | 'user.myFeedback.generalFeedback' | 'user.myFeedback.waiting' | 'user.myFeedback.noReply' | 'user.myFeedback.selectFeedback' | 'user.myFeedback.selectFeedbackInstruction' | 'user.myFeedback.showingSelectedFeedback' | 'user.myFeedback.unreadStatus' | 'user.myFeedback.generalFeedback' | 'user.myFeedback.you' | 'user.myFeedback.you' | 'user.myFeedback.supportTeam' | 'user.myFeedback.sending' | 'user.myFeedback.feedbackReceivedMessage' | 'user.myFeedback.noResponseYet' | 'user.myFeedback.writeReplyPlaceholder' | 'user.myFeedback.replyWillBeSent' | 'user.myFeedback.sending' | 'user.myFeedback.sendMessage' | 'user.myFeedback.errorSendingReply' | 'cityInfo.title' | 'cityInfo.additionalCityInformation' | 'cityInfo.wifiInformation.label' | 'cityInfo.wifiInformation.mobile' | 'cityInfo.wifiInformation.broadband' | 'cityInfo.emergencyNumbers.label' | 'cityInfo.emergencyNumbers.fire' | 'cityInfo.emergencyNumbers.police' | 'cityInfo.emergencyNumbers.ambulance' | 'cityInfo.emergencyNumbers.notes' | 'cityInfo.powerInformation.label' | 'cityInfo.powerInformation.plugs' | 'cityInfo.powerInformation.voltage' | 'cityInfo.powerInformation.frequency' | 'cityInfo.bestTimeToVisit.label' | 'cityInfo.bestTimeToVisit.notes' | 'cityInfo.bestTimeToVisit.offSeason' | 'cityInfo.bestTimeToVisit.peakSeason' | 'cityInfo.bestTimeToVisit.shoulderSeason' | 'cityInfo.bestTimeToVisit.months' | 'cityInfo.lifeQualityIndices.label' | 'cityInfo.lifeQualityIndices.safety' | 'cityInfo.lifeQualityIndices.healthCare' | 'cityInfo.lifeQualityIndices.propertyPriceToIncomeRatio' | 'cityInfo.lifeQualityIndices.trafficCommuteTime' | 'cityInfo.lifeQualityIndices.purchasingPower' | 'cityInfo.lifeQualityIndices.qualityOfLife' | 'cityInfo.lifeQualityIndices.climate' | 'cityInfo.lifeQualityIndices.pollution' | 'cityInfo.lifeQualityIndices.costOfLiving' | 'cityInfo.events.label' | 'cityInfo.events.startTime' | 'cityInfo.events.venue' | 'cityInfo.events.about' | 'cityInfo.events.getTickets' | 'cityInfo.events.buyTickets' | 'cityInfo.events.viewOnMaps' | 'cityInfo.clickForMoreInfo' | 'user.logout' | 'support.title' | 'support.termsOfUse.title' | 'support.feedback.title' | 'support.myFeedback.title' | 'support.feedback.modal.title' | 'support.feedback.modal.messageTitle' | 'support.feedback.modal.close' | 'support.feedback.modal.send' | 'support.privacyPolicy.title' | 'support.aboutTripian.title' | 'pageNotFound.title' | 'pageNotFound.description' | 'theme.dark' | 'theme.light' | 'notification.couponValidDateWarning.name' | 'notification.couponValidDateWarning.title' | 'notification.couponValidDateWarning.message' | 'notification.bookbarbadosFetch.name' | 'notification.bookbarbadosFetch.title' | 'notification.bookbarbadosFetch.message' | 'notification.changeCompanionWarning.title' | 'notification.changeCompanionWarning.message' | 'notification.offerOptIn.name' | 'notification.offerOptIn.title' | 'notification.offerOptIn.message' | 'notification.gygReservationSuccess.name' | 'notification.gygReservationSuccess.title' | 'notification.gygReservationSuccess.message' | 'notification.gygReservationError.name' | 'notification.gygReservationError.title' | 'notification.gygReservationError.message' | 'notification.gygFetchTourDataError.name' | 'notification.feedbackSuccess.message' | 'notification.feedbackError.message' | 'notification.replyError.message' | 'notification.gygFetchTourDataError.title' | 'notification.replySuccess.message' | 'notification.replyError.messag' | 'reservation.firstName' | 'reservation.lastName' | 'reservation.email' | 'reservation.mobileNumber' | 'reservation.note' | 'reservation.loadMore' | 'reservation.findATable' | 'reservation.reservationInfo' | 'reservation.restaurantName' | 'reservation.phone' | 'reservation.date' | 'reservation.covers' | 'reservation.name' | 'reservation.person' | 'reservation.people' | 'reservation.confirm' | 'welcome' | 'widgets' | 'auth.loginWithHash' | 'trips.updateTrip.header' | 'tripPlan.header' | 'tripCopy.header' | 'qrReader.header' | 'qrCode.header' | 'offerPayment.header' | 'placeInfo.header' | 'tourInfo.header' | 'useTripUrl.header' | 'auth.forgotPassword.header' | 'socialLoginCode.header' | 'sunday' | 'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday' | 'closed' | 'success' | 'error' | 'warning' | 'common.showMore' | 'common.showLess' | 'common.reviews' | 'trips.myTrips.itinerary.step.poi.showAllPhotos' | 'trips.myTrips.itinerary.slider.goToSlide' | 'trips.myTrips.itinerary.day' | 'trips.categories.all' | 'trips.filters.title' | 'trips.filters.clearAll' | 'open' | 'itinerary' | 'bookable.mobile' | 'bookable.desktop' | 'explore.mobile' | 'explore.desktop' | 'overview.desktop' | 'visa.hotel.mobile' | 'visa.hotel.desktop' | 'visa.auth.title' | 'visa.auth.description' | 'visa.auth.continueText' | 'visa.auth.cancelText' | 'visa.auth.invalidPayload' | 'visa.auth.invalidResponse' | 'visa.auth.apiError' | 'visa.auth.unknownError' | 'visa.auth.emptyContent' | 'visa.auth.validationResult' | 'visa.auth.ineligibleUser' | 'visa.auth.notEligible' | 'visa.auth.validationError' | 'visa.auth.systemError' | 'visa.auth.missingRedirectUrl' | 'visa.auth.invalidRedirectUrl' | 'visa.auth.userBlocked' | 'visa.auth.accountBlocked' | 'visa.auth.sessionExpired' | 'visa.auth.receivedMessage' | 'visa.auth.invalidMessageFormat' | 'visa.auth.invalidData' | 'visa.auth.formTitle' | 'visa.error.title' | 'visa.error.redirecting' | 'visa.error.goToLogin' | 'cancel' | 'continue' | 'update' | 'destination.placeholder.default' | 'destination.search.noResults' | 'destination.ai.buttonText' | 'destination.ai.modal.title' | 'destination.ai.modal.description' | 'destination.ai.modal.instruction' | 'destination.ai.quickSearch.beach' | 'destination.ai.quickSearch.history' | 'destination.ai.quickSearch.nature' | 'destination.ai.quickSearch.food' | 'destination.ai.quickSearch.culture' | 'destination.ai.searching.title' | 'destination.ai.searching.subtitle' | 'destination.ai.result.select' | 'destination.ai.result.reasonLabel' | 'destination.ai.result.matchLabel' | 'destination.ai.noResults.message' | 'destination.ai.noResults.suggestion' | 'destination.ai.modal.headerTitle' | 'destination.ai.modal.closOeButton' | 'destination.ai.modal.searchPlaceholder' | 'destination.ai.modal.searchButton' | 'destination.ai.modal.clearButton' | 'destination.ai.modal.pressEnter' | 'destination.ai.modal.closeButton' | 'poi.bookable.tickets' | 'poi.bookable.tours' | 'poi.bookable.covering' | 'book' | 'travelify.seeAllToursAndActivities' | 'travelify.openVacavia' | 'cloneTrip.header.login' | 'cloneTrip.header.register' | 'cloneTrip.error' | 'cloneTrip.description' | 'cloneTrip.login' | 'cloneTrip.register' | 'plan.removeStep.question' | 'plan.removeStep.submit' | 'plan.removeStep.cancel' | 'user' | 'favorites' | 'offers' | 'bookings' | 'category' | 'theatre' | 'entertainmentShows' | 'noTicketsAvailable' | 'dateAndTime' | 'place' | 'performers' | 'availableTicket' | 'checkAvailableTickets' | 'selectTickets' | 'minPrice' | 'maxPrice' | 'minQuantity' | 'type' | 'section' | 'row' | 'available' | 'tickets' | 'faceValue' | 'instantDelivery' | 'quantity' | 'total' | 'purchaseTickets';
|
|
1
|
+
export type TranslationKey = 'landing.poweredBy' | 'landing.getStarted' | 'landing.getStartedNow' | 'landing.login' | 'landing.title' | 'landing.description' | 'landing.feelLikeALocalWhereverYouGo.title' | 'landing.feelLikeALocalWhereverYouGo.personalizedRecommendations.title' | 'landing.feelLikeALocalWhereverYouGo.personalizedRecommendations.description' | 'landing.feelLikeALocalWhereverYouGo.mappedOutDailyItineraries.title' | 'landing.feelLikeALocalWhereverYouGo.mappedOutDailyItineraries.description' | 'landing.feelLikeALocalWhereverYouGo.bestPlacesFeatures.title' | 'landing.feelLikeALocalWhereverYouGo.bestPlacesFeatures.description' | 'landing.feelLikeALocalWhereverYouGo.accessAnywhereAnytime.title' | 'landing.feelLikeALocalWhereverYouGo.accessAnywhereAnytime.description' | 'landing.weHaveGotYouCoveredIn.title' | 'landing.weHaveGotYouCoveredIn.countries' | 'landing.weHaveGotYouCoveredIn.cities' | 'landing.weHaveGotYouCoveredIn.handPickedLocations' | 'landing.feelLikeALocalWhereverYouGo.personalizedRecommendations.descriptionStudy' | 'landing.feelLikeALocalWhereverYouGo.mappedOutDailyItineraries.titleStudy' | 'landing.feelLikeALocalWhereverYouGo.mappedOutDailyItineraries.descriptionStudy' | 'landing.feelLikeALocalWhereverYouGo.accessAnywhereAnytime.titleStudy' | 'landing.feelLikeALocalWhereverYouGo.accessAnywhereAnytime.descriptionStudy' | 'landing.feelLikeALocalWhereverYouGo.bestPlacesFeatures.titleStudy' | 'landing.feelLikeALocalWhereverYouGo.bestPlacesFeatures.descriptionStudy' | 'landing.ourCoverageStudy' | 'landing.weHaveGotYouCoveredIn.titleStudy' | 'landing.weHaveGotYouCoveredIn.study.restaurants' | 'landing.weHaveGotYouCoveredIn.study.toursActivities' | 'landing.weHaveGotYouCoveredIn.study.liveEventsTickets' | 'landing.weHaveGotYouCoveredIn.study.culturalLandmarks' | 'landing.howTripianWorks.createYourAccount.descriptionStudy' | 'landing.howTripianWorks.setUpYourTrip.descriptionStudy' | 'landing.howTripianWorks.readyToGo.descriptionStudy' | 'landing.planYourAdventureStudy' | 'landing.whatTravelersAreSaying.title' | 'landing.whatTravelersAreSaying.traveler1.message' | 'landing.whatTravelersAreSaying.traveler1.customer' | 'landing.whatTravelersAreSaying.traveler1.customerCity' | 'landing.whatTravelersAreSaying.traveler2.message' | 'landing.whatTravelersAreSaying.traveler2.customer' | 'landing.whatTravelersAreSaying.traveler2.customerCity' | 'landing.whatTravelersAreSaying.traveler3.message' | 'landing.whatTravelersAreSaying.traveler3.customer' | 'landing.whatTravelersAreSaying.traveler3.customerCity' | 'landing.howItWorks.title' | 'landing.howTripianWorks.createYourAccount.title' | 'landing.howTripianWorks.createYourAccount.description' | 'landing.viator.howTripianWorks.createYourAccount.description' | 'landing.howTripianWorks.setUpYourTrip.title' | 'landing.howTripianWorks.setUpYourTrip.description' | 'landing.howTripianWorks.readyToGo.title' | 'landing.howTripianWorks.readyToGo.description' | 'landing.howTripianWorks.step' | 'landing.testimonials' | 'landing.ourCoverage' | 'landing.benefits' | 'landing.readyToGetStarted' | 'landing.planYourTrip' | 'landing.yourPersonalTripPlanner' | 'landing.yourPersonalTripPlannerStudy' | 'landing.about' | 'landing.termsOfUse' | 'landing.privacyPolicy' | 'landing.allRightsReserved' | 'auth.login.title' | 'auth.login.email.label' | 'auth.login.email.placeholder' | 'auth.login.password.label' | 'auth.login.password.placeholder' | 'auth.login.forgotPassword' | 'auth.login.submit' | 'auth.login.or' | 'auth.login.google' | 'auth.login.apple' | 'auth.login.account' | 'auth.login.registerNow' | 'auth.login.error.emailFormat' | 'auth.login.error.password' | 'auth.login.error.emailEmpty' | 'auth.login.error.verifyThatYouAreNotaRobot' | 'auth.loginWithHash.message' | 'auth.newPassword.header' | 'auth.forgotPassword.back' | 'auth.forgotPassword.title' | 'auth.forgotPassword.email.label' | 'auth.forgotPassword.email.placeholder' | 'auth.forgotPassword.submit' | 'auth.forgotPassword.error.emailEmpty' | 'auth.forgotPassword.error.emailFormat' | 'auth.forgotPassword.success.title' | 'auth.forgotPassword.success.description' | 'auth.forgotPassword.success.submit' | 'auth.resetPassword.title' | 'auth.resetPassword.password.label' | 'auth.resetPassword.password.placeholder' | 'auth.resetPassword.confirmPassword.label' | 'auth.resetPassword.confirmPassword.placeholder' | 'auth.resetPassword.submit' | 'auth.resetPassword.error.passwordFormat' | 'auth.resetPassword.error.passwordsNotEqual' | 'auth.resetPassword.success.title' | 'auth.resetPassword.success.description' | 'auth.resetPassword.success.button' | 'auth.register.back' | 'auth.register.title' | 'auth.register.name.label' | 'auth.register.name.placeholder' | 'auth.register.surname.label' | 'auth.register.surname.placeholder' | 'auth.register.email.label' | 'auth.register.email.placeholder' | 'auth.register.password.label' | 'auth.register.password.placeholder' | 'auth.register.termsOfUse.description' | 'auth.register.termsOfUse.button' | 'auth.register.submit' | 'auth.register.error.emailEmpty' | 'auth.register.error.emailFormat' | 'auth.register.error.password' | 'auth.register.error.acceptTheTermsOfUse' | 'auth.register.error.verifyThatYouAreNotaRobot' | 'trips.title' | 'trips.days' | 'trips.myTrips.upComingTrips.title' | 'trips.myTrips.upComingTrips.emptyMessage' | 'trips.myTrips.pastTrips.title' | 'trips.myTrips.pastTrips.emptyMessage' | 'trips.shareTrip.title' | 'trips.shareTrip.checkbox' | 'trips.shareTrip.description' | 'trips.shareTrip.copyLink' | 'trips.shareTrip.copiedLink' | 'trips.deleteTrip.title' | 'trips.deleteTrip.cancel' | 'trips.deleteTrip.submit' | 'trips.deleteTrip.question' | 'trips.editTrip.title' | 'trips.editTrip.submit' | 'trips.editTripName.title' | 'trips.editTripName.submit' | 'trips.cloneTrip.title' | 'trips.cloneTrip.loginWithHashTitle' | 'trips.cloneTrip.loggedIn.description' | 'trips.cloneTrip.loggedIn.submit' | 'trips.cloneTrip.notLoggedIn.description' | 'trips.cloneTrip.notLoggedIn.submit' | 'trips.cloneTrip.cancel' | 'trips.cloneTrip.back' | 'trips.myTrips.title' | 'trips.itineraryPlanner' | 'trips.myTrips.shareToFriends.title' | 'trips.myTrips.shareToFriends.description' | 'trips.myTrips.localExperiences.title' | 'trips.myTrips.localExperiences.toursEmpty' | 'trips.myTrips.localExperiences.categories.adventure' | 'trips.myTrips.localExperiences.categories.food' | 'trips.myTrips.localExperiences.categories.cultureHistory' | 'trips.myTrips.localExperiences.categories.sightSeeing' | 'trips.myTrips.localExperiences.categories.artMuseum' | 'trips.myTrips.localExperiences.categories.localNeighborhood' | 'trips.myTrips.localExperiences.categories.others' | 'trips.myTrips.localExperiences.categories.events' | 'trips.myTrips.localExperiences.categories.all' | 'trips.myTrips.localExperiences.tourDetails.reviews' | 'trips.myTrips.localExperiences.tourDetails.aboutThisActivity.title' | 'trips.myTrips.localExperiences.tourDetails.aboutThisActivity.duration' | 'trips.myTrips.localExperiences.tourDetails.aboutThisActivity.cancelation' | 'trips.myTrips.localExperiences.tourDetails.aboutThisActivity.ticketInfo' | 'trips.myTrips.localExperiences.tourDetails.aboutThisActivity.guide' | 'trips.myTrips.localExperiences.tourDetails.selectParticipantsAndDate' | 'trips.myTrips.localExperiences.tourDetails.startingTime' | 'trips.myTrips.localExperiences.tourDetails.bookNow' | 'trips.myTrips.localExperiences.tourDetails.experience.title' | 'trips.myTrips.localExperiences.tourDetails.experience.itinerary' | 'trips.myTrips.localExperiences.tourDetails.experience.highlights' | 'trips.myTrips.localExperiences.tourDetails.experience.fullDescription' | 'trips.myTrips.localExperiences.tourDetails.experience.includes' | 'trips.myTrips.localExperiences.tourDetails.experience.excludes' | 'trips.myTrips.localExperiences.tourDetails.experience.destinations' | 'trips.myTrips.localExperiences.tourDetails.experience.departures' | 'trips.myTrips.localExperiences.tourDetails.experience.availableOffers' | 'trips.myTrips.localExperiences.tourDetails.experience.importantInformation' | 'trips.myTrips.localExperiences.tourDetails.experience.additionalInformation' | 'trips.myTrips.localExperiences.tourDetails.experience.doesNotSupport' | 'trips.myTrips.localExperiences.tourDetails.experience.perPerson' | 'trips.myTrips.localExperiences.tourDetails.experience.tours' | 'trips.myTrips.localExperiences.tourDetails.saveUpTo' | 'trips.myTrips.localExperiences.tourDetails.taxesAndFees' | 'trips.myTrips.localExperiences.tourDetails.totalPrice' | 'trips.myTrips.localExperiences.tourDetails.priceBreakdown' | 'trips.myTrips.localExperiences.tourDetails.age' | 'trips.myTrips.localExperiences.tourDetails.noAvailableDays' | 'trips.myTrips.localExperiences.tourDetails.pleaseSelect' | 'trips.myTrips.localExperiences.tourDetails.maxTravelerYouCanBringAlong' | 'trips.myTrips.localExperiences.tourDetails.maxTravelerAmountReached' | 'trips.myTrips.localExperiences.tourDetails.pleaseLowerTheTravelerCount' | 'trips.myTrips.localExperiences.tourDetails.checkAvailability' | 'trips.myTrips.localExperiences.tourDetails.bookingStatus.rejected.title' | 'trips.myTrips.localExperiences.tourDetails.bookingStatus.confirmed.title' | 'trips.myTrips.localExperiences.tourDetails.bookingStatus.pending.title' | 'trips.myTrips.localExperiences.tourDetails.bookingStatus.rejected.description' | 'trips.myTrips.localExperiences.tourDetails.bookingStatus.pending.description' | 'trips.myTrips.localExperiences.tourDetails.person' | 'trips.myTrips.localExperiences.tourDetails.people' | 'trips.myTrips.localExperiences.tourDetails.contactDetails' | 'trips.myTrips.localExperiences.tourDetails.goToTicketDetails' | 'trips.myTrips.localExperiences.tourDetails.selectParticipantsAndDate' | 'trips.myTrips.localExperiences.tourDetails.travelerInformations' | 'trips.myTrips.localExperiences.tourDetails.firstName' | 'trips.myTrips.localExperiences.tourDetails.lastName' | 'trips.myTrips.localExperiences.tourDetails.countryCode' | 'trips.myTrips.localExperiences.tourDetails.phoneNumber' | 'trips.myTrips.localExperiences.tourDetails.email' | 'trips.myTrips.localExperiences.tourDetails.address' | 'trips.myTrips.localExperiences.tourDetails.city' | 'trips.myTrips.localExperiences.tourDetails.postalCode' | 'trips.myTrips.localExperiences.tourDetails.edit' | 'trips.myTrips.localExperiences.tourDetails.paymentDetails' | 'trips.myTrips.localExperiences.tourDetails.country' | 'trips.myTrips.localExperiences.tourDetails.zipCode' | 'trips.myTrips.localExperiences.tourDetails.submitPayment' | 'trips.myTrips.localExperiences.tourDetails.billingInformations' | 'trips.myTrips.localExperiences.tourDetails.paymentAreSecureAndEncrypted' | 'trips.myTrips.localExperiences.tourDetails.holderName' | 'trips.myTrips.localExperiences.tourDetails.cardNumber' | 'trips.myTrips.localExperiences.tourDetails.expiryMonth' | 'trips.myTrips.localExperiences.tourDetails.expiryYear' | 'trips.myTrips.localExperiences.tourDetails.confirmBooking' | 'trips.myTrips.localExperiences.tourDetails.otherDetails' | 'trips.myTrips.localExperiences.tourDetails.tourLanguage' | 'trips.myTrips.localExperiences.tourDetails.activityDetails' | 'trips.myTrips.localExperiences.tourDetails.languageGuides' | 'trips.myTrips.localExperiences.tourDetails.specialRequirements' | 'trips.myTrips.localExperiences.tourDetails.primaryTraveler' | 'trips.myTrips.localExperiences.tourDetails.traveler' | 'trips.myTrips.localExperiences.tourDetails.lead' | 'trips.myTrips.localExperiences.tourDetails.enterLocation' | 'trips.myTrips.localExperiences.tourDetails.mustBeAValidNumber' | 'trips.myTrips.localExperiences.tourDetails.mustBeAValidTime' | 'trips.myTrips.localExperiences.tourDetails.characterLimitExceeded' | 'trips.myTrips.localExperiences.tourDetails.max' | 'trips.myTrips.localExperiences.tourDetails.minimum' | 'trips.myTrips.localExperiences.tourDetails.adultRequired' | 'trips.myTrips.localExperiences.tourDetails.pleaseAddAtLeastOneAdult' | 'trips.myTrips.localExperiences.tourDetails.seeLessTimes' | 'trips.myTrips.localExperiences.tourDetails.seeMoreTimes' | 'trips.myTrips.localExperiences.tourDetails.cancellation.allSalesFinal' | 'trips.myTrips.localExperiences.tourDetails.cancellation.freeCancellation' | 'trips.myTrips.localExperiences.tourDetails.cancellation.freeCancellationBefore' | 'trips.myTrips.localExperiences.tourDetails.cancellation.noRefundAvailable' | 'trips.myTrips.localExperiences.tourDetails.cancellation.refundCouldNotDetermined' | 'trips.myTrips.localExperiences.tourDetails.cancellation.notRecognized' | 'trips.myTrips.localExperiences.tourDetails.cancellation.refundAmount' | 'trips.myTrips.localExperiences.tourDetails.cancellation.refundPercentage' | 'trips.myTrips.localExperiences.tourDetails.pickup.location' | 'trips.myTrips.localExperiences.tourDetails.pickup.freeText' | 'trips.myTrips.localExperiences.tourDetails.pickup.showDetails' | 'trips.myTrips.localExperiences.tourDetails.pickup.option' | 'trips.myTrips.localExperiences.tourDetails.questions.transferAirArrivalAirline' | 'trips.myTrips.localExperiences.tourDetails.questions.transferAirArrivalFlightNumber' | 'trips.myTrips.localExperiences.tourDetails.questions.transferRailArrivalLine' | 'trips.myTrips.localExperiences.tourDetails.questions.transferRailArrivalStation' | 'trips.myTrips.localExperiences.tourDetails.questions.transferArrivalDropOff' | 'trips.myTrips.localExperiences.tourDetails.questions.transferArrivalTime' | 'trips.myTrips.localExperiences.tourDetails.questions.transferPortArrivalTime' | 'trips.myTrips.localExperiences.tourDetails.questions.transferDepartureMode' | 'trips.myTrips.localExperiences.tourDetails.questions.transferArrivalMode' | 'trips.myTrips.localExperiences.tourDetails.questions.transferAirDepartureAirline' | 'trips.myTrips.localExperiences.tourDetails.questions.transferAirDepartureFlightNumber' | 'trips.myTrips.localExperiences.tourDetails.questions.transferDepartureDate' | 'trips.myTrips.localExperiences.tourDetails.questions.transferDepartureTime' | 'trips.myTrips.localExperiences.tourDetails.questions.transferDeparturePickup' | 'trips.myTrips.localExperiences.tourDetails.questions.transferPortCruiseShip' | 'trips.myTrips.localExperiences.tourDetails.questions.transferPortDepartureTime' | 'trips.myTrips.localExperiences.tourDetails.questions.transferRailDepartureLine' | 'trips.myTrips.localExperiences.tourDetails.questions.transferRailDepartureStation' | 'trips.myTrips.localExperiences.tourDetails.questions.specialRequirements' | 'trips.myTrips.localExperiences.tourDetails.questions.arrivalDetails' | 'trips.myTrips.localExperiences.tourDetails.questions.departureDetails' | 'trips.myTrips.localExperiences.tourDetails.questions.pickupPoint' | 'trips.myTrips.localExperiences.tourDetails.mins' | 'trips.myTrips.localExperiences.tourDetails.next' | 'trips.myTrips.localExperiences.tourDetails.freeCancellation' | 'trips.myTrips.localExperiences.tourDetails.freeText' | 'trips.myTrips.localExperiences.tourDetails.meetingPoint' | 'trips.myTrips.localExperiences.tourDetails.pickup' | 'trips.myTrips.localExperiences.tourDetails.group' | 'trips.myTrips.localExperiences.tourDetails.optionNotFound' | 'trips.myTrips.localExperiences.tourDetails.bookingChildSafetySeat' | 'trips.myTrips.localExperiences.tourDetails.bookingCruiseDetails' | 'trips.myTrips.localExperiences.tourDetails.bookingCustomerAccommodation' | 'trips.myTrips.localExperiences.tourDetails.bookingDropOffAddress' | 'trips.myTrips.localExperiences.tourDetails.flightNumber' | 'trips.myTrips.localExperiences.tourDetails.timeOfArrival' | 'trips.myTrips.localExperiences.tourDetails.bookingMedicalConditions' | 'trips.myTrips.localExperiences.tourDetails.bookingMobilityIssues' | 'trips.myTrips.localExperiences.tourDetails.bookingShippingAddress' | 'trips.myTrips.localExperiences.tourDetails.bookingWheelchair' | 'trips.myTrips.localExperiences.tourDetails.travelerDietaryRestrictions' | 'trips.myTrips.localExperiences.tourDetails.travelerDivingLevel' | 'trips.myTrips.localExperiences.tourDetails.travelerDriverLicense' | 'trips.myTrips.localExperiences.tourDetails.amountShoe' | 'trips.myTrips.localExperiences.tourDetails.unitShoe' | 'trips.myTrips.localExperiences.tourDetails.travelerSkillLevel' | 'trips.myTrips.localExperiences.tourDetails.travelerAge' | 'trips.myTrips.localExperiences.tourDetails.travelerChildrenAge' | 'trips.myTrips.localExperiences.tourDetails.travelerDateOfBirth' | 'trips.myTrips.localExperiences.tourDetails.amountHeight' | 'trips.myTrips.localExperiences.tourDetails.unitHeight' | 'trips.myTrips.localExperiences.tourDetails.travelerIdDetails' | 'trips.myTrips.localExperiences.tourDetails.travelerIdNumber' | 'trips.myTrips.localExperiences.tourDetails.travelerFirstName' | 'trips.myTrips.localExperiences.tourDetails.travelerLastName' | 'trips.myTrips.localExperiences.tourDetails.travelerPassportDetails' | 'trips.myTrips.localExperiences.tourDetails.travelerPassportNumber' | 'trips.myTrips.localExperiences.tourDetails.amountWeight' | 'trips.myTrips.localExperiences.tourDetails.unitWeight' | 'trips.myTrips.localExperiences.tourDetails.likelyToSellOut' | 'trips.myTrips.localExperiences.tourDetails.newOnViator' | 'trips.myTrips.localExperiences.tourDetails.viatorExclusive' | 'trips.myTrips.localExperiences.tourDetails.skipTheLine' | 'trips.myTrips.localExperiences.tourDetails.privateTour' | 'trips.myTrips.localExperiences.tourDetails.specialOffer' | 'trips.myTrips.localExperiences.tourDetails.tryAgain' | 'trips.myTrips.localExperiences.tourDetails.paymentFailed' | 'trips.myTrips.localExperiences.tourDetails.cancelReservation' | 'trips.myTrips.localExperiences.tourDetails.close' | 'trips.myTrips.localExperiences.tourDetails.isRequired' | 'trips.myTrips.localExperiences.tourDetails.zipCodeisRequired' | 'trips.myTrips.localExperiences.tourDetails.zipCodeMin3Char' | 'trips.myTrips.localExperiences.tourDetails.zipCodeMax9Char' | 'trips.myTrips.localExperiences.tourDetails.zipCodeMax9Char' | 'trips.myTrips.localExperiences.tourDetails.phoneNumberIsInvalid' | 'trips.myTrips.localExperiences.tourDetails.pleaseEnterYourPhoneNumber' | 'trips.myTrips.localExperiences.tourDetails.emailIsInvalid' | 'trips.myTrips.localExperiences.tourDetails.pleaseEnterYourEmail' | 'trips.myTrips.localExperiences.tourDetails.pleaseEnterYourEmail' | 'trips.myTrips.localExperiences.tourDetails.pleaseEnterYourFirstName' | 'trips.myTrips.localExperiences.tourDetails.pleaseEnterYourLastName' | 'trips.myTrips.localExperiences.tourDetails.pickupLocation' | 'trips.myTrips.localExperiences.tourDetails.successfullyBooked' | 'trips.myTrips.localExperiences.tourDetails.bookingIsStillAwatingConfirm' | 'trips.myTrips.localExperiences.tourDetails.bookingRejected' | 'trips.myTrips.localExperiences.tourDetails.min' | 'trips.myTrips.localExperiences.tourDetails.max' | 'trips.myTrips.localExperiences.tourDetails.participantsForThisActivity' | 'trips.myTrips.localExperiences.tourDetails.conductionLanguage' | 'trips.myTrips.localExperiences.tourDetails.yourSessionExpired.title' | 'trips.myTrips.localExperiences.tourDetails.yourSessionExpired.desc' | 'trips.myTrips.exploreMore.title' | 'trips.myTrips.exploreMore.categories.attractions' | 'trips.myTrips.exploreMore.categories.restaurants' | 'trips.myTrips.exploreMore.categories.cafes' | 'trips.myTrips.exploreMore.categories.nightlife' | 'trips.myTrips.exploreMore.categories.shopping' | 'trips.myTrips.exploreMore.categories.unknown' | 'trips.myTrips.exploreMore.placeholder' | 'trips.myTrips.exploreMore.onlyWithOffers' | 'trips.myTrips.exploreMore.onlyWithBookings' | 'trips.myTrips.exploreMore.loadMore' | 'trips.myTrips.exploreMore.pleaseSelectCategory' | 'trips.myTrips.exploreMore.selectCategory' | 'trips.myTrips.exploreMore.noResultsFound' | 'trips.myTrips.exploreMore.noResultsFound' | 'trips.myTrips.itinerary.title' | 'trips.myTrips.itinerary.day' | 'trips.myTrips.itinerary.accommodation.address' | 'trips.myTrips.itinerary.step.address' | 'trips.myTrips.itinerary.step.cuisine' | 'trips.myTrips.itinerary.step.features' | 'trips.myTrips.itinerary.step.status.permanentlyClosed' | 'trips.myTrips.itinerary.step.status.temporarilyClosed' | 'trips.myTrips.itinerary.step.thumbs.remove' | 'trips.myTrips.itinerary.step.thumbs.replace.title' | 'trips.myTrips.itinerary.step.thumbs.replace.alternativeLocations' | 'trips.myTrips.itinerary.step.poi.match' | 'trips.myTrips.itinerary.step.poi.photo' | 'trips.myTrips.itinerary.step.addToItinerary.title' | 'trips.myTrips.itinerary.step.addToItinerary.from' | 'trips.myTrips.itinerary.step.addToItinerary.to' | 'trips.myTrips.itinerary.step.addToItinerary.submit.apply' | 'trips.myTrips.itinerary.step.addToItinerary.submit.add' | 'trips.myTrips.itinerary.step.addToItinerary.estimatedDuration' | 'trips.myTrips.itinerary.step.poi.partOfDay' | 'trips.myTrips.itinerary.step.poi.price' | 'trips.myTrips.itinerary.step.poi.rating' | 'trips.myTrips.itinerary.step.poi.hours.explore' | 'trips.myTrips.itinerary.step.poi.hours.close' | 'trips.myTrips.itinerary.step.poi.address.title' | 'trips.myTrips.itinerary.step.poi.address.copy' | 'trips.myTrips.itinerary.step.poi.address.copied' | 'trips.myTrips.itinerary.step.poi.address.failed' | 'trips.myTrips.itinerary.step.poi.web' | 'trips.myTrips.itinerary.step.poi.phone.title' | 'trips.myTrips.itinerary.step.poi.phone.callNow' | 'trips.myTrips.itinerary.step.poi.phone.call' | 'trips.myTrips.itinerary.step.poi.description' | 'trips.myTrips.itinerary.step.poi.cuisine' | 'trips.myTrips.itinerary.step.poi.tags.title' | 'trips.myTrips.itinerary.step.poi.tags.more' | 'trips.myTrips.itinerary.step.poi.tags.less' | 'trips.myTrips.itinerary.step.poi.mustTry.title' | 'trips.myTrips.itinerary.step.poi.mustTry.message' | 'trips.myTrips.itinerary.step.poi.bookATable.viewCancel' | 'trips.myTrips.itinerary.step.poi.bookATable.reserve' | 'trips.myTrips.itinerary.step.poi.reportAProblem' | 'trips.myTrips.itinerary.step.poi.reportAProblemDescription' | 'trips.myTrips.itinerary.step.poi.reportAProblemBtnText' | 'trips.myTrips.itinerary.step.poi.noBookableItems' | 'trips.myTrips.itinerary.step.poi.and' | 'trips.myTrips.itinerary.step.poi.readMore' | 'trips.myTrips.itinerary.step.poi.readLess' | 'trips.myTrips.itinerary.step.poi.warning.title' | 'trips.myTrips.itinerary.step.poi.warning.and' | 'trips.myTrips.itinerary.step.poi.warning.message1' | 'trips.myTrips.itinerary.step.poi.warning.message2' | 'trips.myTrips.itinerary.step.poi.warning.message3' | 'trips.myTrips.itinerary.step.poi.tourTicket.buttonText' | 'trips.myTrips.itinerary.step.poi.tourTicket.ticket.title' | 'trips.myTrips.itinerary.step.poi.tourTicket.tour.title' | 'trips.myTrips.itinerary.step.poi.tourTicket.tour.covering' | 'trips.myTrips.itinerary.direction' | 'trips.myTrips.itinerary.places' | 'trips.myTrips.itinerary.favorites.title' | 'trips.myTrips.itinerary.favorites.emptyMessage' | 'trips.myTrips.itinerary.experiences' | 'trips.myTrips.itinerary.deals.title' | 'trips.myTrips.itinerary.bookings.title' | 'trips.myTrips.itinerary.bookings.header' | 'trips.myTrips.itinerary.bookings.emptyMessage' | 'trips.myTrips.itinerary.offers.title' | 'trips.myTrips.itinerary.offers.myOffers.title' | 'trips.myTrips.itinerary.offers.campaignOffers.title' | 'trips.myTrips.itinerary.offers.myOffers.emptyOffersMessage' | 'trips.myTrips.itinerary.offers.myOffers.error.optInCouldntMade' | 'trips.myTrips.itinerary.offers.myOffers.success.succesfullyMade' | 'trips.myTrips.itinerary.offers.categories.experiences' | 'trips.myTrips.itinerary.offers.categories.dining' | 'trips.myTrips.itinerary.offers.categories.shopping' | 'trips.myTrips.itinerary.offers.emptyOffersMessage' | 'trips.myTrips.itinerary.offers.payment.error.notFound' | 'trips.myTrips.itinerary.offers.payment.error.somethingWentWrong' | 'trips.myTrips.itinerary.offers.payment.error.youDontHaveCoupon' | 'trips.myTrips.itinerary.offers.payment.error.paymentCouldNotBeCompleted' | 'trips.myTrips.itinerary.offers.payment.success.redeemed' | 'trips.myTrips.itinerary.offers.payment.goBack' | 'trips.myTrips.itinerary.offers.payment.myWallet' | 'trips.myTrips.itinerary.offers.payment.worldOfDifference' | 'trips.myTrips.itinerary.offers.payment.willBeBeducted' | 'trips.myTrips.itinerary.offers.payment.fromYourWallet' | 'trips.myTrips.itinerary.offers.payment.doYouConfirm' | 'trips.myTrips.itinerary.offers.payment.submit' | 'trips.myTrips.itinerary.offers.payment.cancel' | 'trips.myTrips.itinerary.offers.qrWriter.error.invalidOfferId' | 'trips.myTrips.itinerary.offers.qrWriter.error.offerNotFound' | 'trips.myTrips.itinerary.offers.qrWriter.error.offerAlreadyRedeemed' | 'trips.myTrips.itinerary.offers.qrWriter.error.qrCodeNotFound' | 'trips.myTrips.itinerary.offers.qrWriter.error.anErrorOccurred' | 'trips.myTrips.itinerary.offers.qrWriter.completed' | 'trips.myTrips.itinerary.offers.qrWriter.title' | 'trips.myTrips.itinerary.offers.qrWriter.back' | 'trips.myTrips.itinerary.offers.qrWriter.loading' | 'trips.myTrips.itinerary.searchThisArea.title' | 'trips.myTrips.itinerary.searchThisArea.cancel' | 'trips.myTrips.itinerary.searchThisArea.clear' | 'trips.myTrips.itinerary.error.emptyMesssage' | 'trips.myTrips.itinerary.error.generatedStatusNegative1' | 'trips.myTrips.itinerary.error.generatedStatus2' | 'trips.myTrips.itinerary.error.generatedStatus3' | 'trips.myTrips.itinerary.customPoiModal.button' | 'trips.myTrips.itinerary.customPoiModal.addACustomEvent' | 'trips.myTrips.itinerary.customPoiModal.selectADay' | 'trips.myTrips.itinerary.updateTripHours' | 'trips.myTrips.itinerary.customPoiModal.addAddressButton' | 'trips.myTrips.itinerary.customPoiModal.addAddressInfo' | 'trips.myTrips.itinerary.customPoiModal.stepDetails.title' | 'trips.myTrips.itinerary.customPoiModal.stepDetails.poi' | 'trips.myTrips.itinerary.customPoiModal.stepDetails.event' | 'trips.myTrips.itinerary.customPoiModal.name.title' | 'trips.myTrips.itinerary.customPoiModal.name.placeholder' | 'trips.myTrips.itinerary.customPoiModal.description.title' | 'trips.myTrips.itinerary.customPoiModal.description.placeholder' | 'trips.myTrips.itinerary.customPoiModal.visitTime.title' | 'trips.myTrips.itinerary.customPoiModal.visitTime.from' | 'trips.myTrips.itinerary.customPoiModal.visitTime.to' | 'trips.myTrips.itinerary.customPoiModal.cancel' | 'trips.myTrips.itinerary.customPoiModal.submit' | 'trips.myTrips.itinerary.customPoiModal.locationModal.addLocation.title' | 'trips.myTrips.itinerary.customPoiModal.locationModal.addLocation.info' | 'trips.myTrips.itinerary.customPoiModal.locationModal.addLocation.address.title' | 'trips.myTrips.itinerary.customPoiModal.locationModal.addLocation.address.placeholder' | 'trips.myTrips.itinerary.customPoiModal.locationModal.addLocation.address.submit' | 'trips.myTrips.itinerary.customPoiModal.addYourCustomizeStep' | 'trips.createNewTrip.title' | 'trips.createNewTrip.header' | 'trips.createNewTrip.warning.title' | 'trips.createNewTrip.warning.message' | 'trips.createNewTrip.form.destination.title' | 'trips.createNewTrip.form.destination.city.label' | 'trips.createNewTrip.form.destination.city.placeholder' | 'trips.createNewTrip.form.destination.tripName.label' | 'trips.createNewTrip.form.destination.tripName.placeHolder' | 'trips.createNewTrip.form.destination.dates' | 'trips.createNewTrip.form.destination.hours' | 'trips.createNewTrip.form.travelerInfo.title' | 'trips.createNewTrip.form.travelerInfo.adults' | 'trips.createNewTrip.form.travelerInfo.children' | 'trips.createNewTrip.form.travelerInfo.accommodation.label' | 'trips.createNewTrip.form.travelerInfo.accommodation.placeholder' | 'trips.createNewTrip.form.travelerInfo.companion.label' | 'trips.createNewTrip.form.travelerInfo.companion.placeholder' | 'trips.createNewTrip.form.travelerInfo.companion.title' | 'trips.createNewTrip.form.travelerInfo.companion.description' | 'trips.createNewTrip.form.travelerInfo.companion.submit' | 'trips.createNewTrip.form.itineraryProfile.title' | 'trips.createNewTrip.form.personalInterests.title' | 'trips.createNewTrip.form.previous' | 'trips.createNewTrip.form.continue' | 'trips.createNewTrip.form.submit' | 'trips.createNewTrip.form.cancel' | 'trips.agentCreateNewTrip.form.submit' | 'trips.agentCreateNewTrip.form.userId' | 'trips.agentCreateNewTrip.tripCreated' | 'trips.createNewTrip.stepHeaders.destination' | 'trips.createNewTrip.stepHeaders.travelerInfo' | 'trips.createNewTrip.stepHeaders.itineraryProfile' | 'trips.createNewTrip.stepHeaders.personalInterests' | 'trips.createNewTrip.destinationTips.destination.title' | 'trips.createNewTrip.destinationTips.destination.description' | 'trips.createNewTrip.destinationTips.arrivalDate.title' | 'trips.createNewTrip.destinationTips.arrivalDate.description' | 'trips.createNewTrip.destinationTips.departureDate.title' | 'trips.createNewTrip.destinationTips.departureDate.description' | 'trips.createNewTrip.destinationTips.arrivalHours.title' | 'trips.createNewTrip.destinationTips.arrivalHours.description' | 'trips.createNewTrip.destinationTips.departureHours.title' | 'trips.createNewTrip.destinationTips.departureHours.description' | 'trips.createNewTrip.travelerInfoTips.travelers.title' | 'trips.createNewTrip.travelerInfoTips.travelers.description' | 'trips.createNewTrip.travelerInfoTips.children.title' | 'trips.createNewTrip.travelerInfoTips.children.description' | 'trips.createNewTrip.travelerInfoTips.startingPoint.title' | 'trips.createNewTrip.travelerInfoTips.startingPoint.description' | 'trips.createNewTrip.travelerInfoTips.companions.title' | 'trips.createNewTrip.travelerInfoTips.companions.description' | 'trips.createNewTrip.questionDefaultTip.hover.title' | 'trips.createNewTrip.questionDefaultTip.hover.description' | 'trips.createNewTrip.restaurantQuestion.title' | 'trips.createNewTrip.restaurantQuestion.lunchBrunch' | 'trips.createNewTrip.restaurantQuestion.dinner' | 'trips.toursAndTickets.title' | 'trips.toursAndTickets.destination.label' | 'trips.toursAndTickets.destination.placeholder' | 'trips.toursAndTickets.dates' | 'trips.toursAndTickets.adults.title' | 'trips.toursAndTickets.adults.label' | 'trips.toursAndTickets.children.title' | 'trips.toursAndTickets.children.label' | 'trips.toursAndTickets.cancel' | 'trips.toursAndTickets.submit' | 'trips.toursAndTickets.error.notAvailable' | 'trips.toursAndTickets.error.stillFetching' | 'trips.toursAndTickets.error.anErrorOccured' | 'trips.toursAndTickets.error.unexpectedResponse' | 'trips.loading.exploring' | 'trips.loading.customizing' | 'trips.loading.handSelecting' | 'trips.loading.researching' | 'trips.loading.mapping' | 'trips.addTrip' | 'trips.searchPlaceHolder' | 'user.title' | 'user.hi' | 'user.login' | 'user.register' | 'user.profile' | 'user.profile.email' | 'user.profile.changePassword.button' | 'user.profile.changePassword.success' | 'user.profile.changePassword.modal.forgotPassword' | 'user.profile.changePassword.modal.currentPassword.label' | 'user.profile.changePassword.modal.currentPassword.placeholder' | 'user.profile.changePassword.modal.currentPassword.error.currentPasswordIsEmpty' | 'user.profile.changePassword.modal.currentPassword.error.passwordFormat' | 'user.profile.changePassword.modal.currentPassword.error.passwordsNotEqual' | 'user.profile.changePassword.modal.newPassword.label' | 'user.profile.changePassword.modal.newPassword.placeholder' | 'user.profile.changePassword.modal.confirmPassword.label' | 'user.profile.changePassword.modal.confirmPassword.placeholder' | 'user.profile.changePassword.modal.submit' | 'user.profile.changePassword.modal.cancel' | 'user.profile.firstName.label' | 'user.profile.firstName.placeholder' | 'user.profile.lastName.label' | 'user.profile.lastName.placeholder' | 'user.profile.dateOfBirth' | 'user.profile.submit' | 'user.profile.cancel' | 'user.profile.success' | 'user.profile.notificationSettings' | 'user.profile.updateUserProfile' | 'user.deleteUser.warningHeader' | 'user.deleteUser.warningMessage' | 'user.deleteUser.cancel' | 'user.deleteUser.deleteMyAccount' | 'user.deleteUser.successHeader' | 'user.deleteUser.successMessage' | 'user.deleteUser.createNew' | 'user.deleteUser.deleteBtn' | 'user.myWallet.title' | 'user.myWallet.emptyMessage' | 'user.travelCompanions.title' | 'user.travelCompanions.companionTitle' | 'user.travelCompanions.companionName' | 'user.travelCompanions.companionAge' | 'user.travelCompanions.submit' | 'user.travelCompanions.companionList' | 'user.travelCompanions.editDelete' | 'user.travelCompanions.emptyMessage' | 'user.myFeedback.title' | 'user.myFeedback.warning' | 'user.myFeedback.feedbackSentOn' | 'user.myFeedback.replySentOn' | 'user.myFeedback.feedbackCount' | 'user.myFeedback.noFeedbacksYet' | 'user.myFeedback.reply' | 'user.myFeedback.replies' | 'user.myFeedback.createFeedback' | 'user.myFeedback.noFeedbackMessage' | 'user.myFeedback.yourFeedbacks' | 'user.myFeedback.unreadCount' | 'user.myFeedback.generalFeedback' | 'user.myFeedback.waiting' | 'user.myFeedback.noReply' | 'user.myFeedback.selectFeedback' | 'user.myFeedback.selectFeedbackInstruction' | 'user.myFeedback.showingSelectedFeedback' | 'user.myFeedback.unreadStatus' | 'user.myFeedback.generalFeedback' | 'user.myFeedback.you' | 'user.myFeedback.you' | 'user.myFeedback.supportTeam' | 'user.myFeedback.sending' | 'user.myFeedback.feedbackReceivedMessage' | 'user.myFeedback.noResponseYet' | 'user.myFeedback.writeReplyPlaceholder' | 'user.myFeedback.replyWillBeSent' | 'user.myFeedback.sending' | 'user.myFeedback.sendMessage' | 'user.myFeedback.errorSendingReply' | 'cityInfo.title' | 'cityInfo.additionalCityInformation' | 'cityInfo.wifiInformation.label' | 'cityInfo.wifiInformation.mobile' | 'cityInfo.wifiInformation.broadband' | 'cityInfo.emergencyNumbers.label' | 'cityInfo.emergencyNumbers.fire' | 'cityInfo.emergencyNumbers.police' | 'cityInfo.emergencyNumbers.ambulance' | 'cityInfo.emergencyNumbers.notes' | 'cityInfo.powerInformation.label' | 'cityInfo.powerInformation.plugs' | 'cityInfo.powerInformation.voltage' | 'cityInfo.powerInformation.frequency' | 'cityInfo.bestTimeToVisit.label' | 'cityInfo.bestTimeToVisit.notes' | 'cityInfo.bestTimeToVisit.offSeason' | 'cityInfo.bestTimeToVisit.peakSeason' | 'cityInfo.bestTimeToVisit.shoulderSeason' | 'cityInfo.bestTimeToVisit.months' | 'cityInfo.lifeQualityIndices.label' | 'cityInfo.lifeQualityIndices.safety' | 'cityInfo.lifeQualityIndices.healthCare' | 'cityInfo.lifeQualityIndices.propertyPriceToIncomeRatio' | 'cityInfo.lifeQualityIndices.trafficCommuteTime' | 'cityInfo.lifeQualityIndices.purchasingPower' | 'cityInfo.lifeQualityIndices.qualityOfLife' | 'cityInfo.lifeQualityIndices.climate' | 'cityInfo.lifeQualityIndices.pollution' | 'cityInfo.lifeQualityIndices.costOfLiving' | 'cityInfo.events.label' | 'cityInfo.events.startTime' | 'cityInfo.events.venue' | 'cityInfo.events.about' | 'cityInfo.events.getTickets' | 'cityInfo.events.buyTickets' | 'cityInfo.events.viewOnMaps' | 'cityInfo.clickForMoreInfo' | 'user.logout' | 'support.title' | 'support.termsOfUse.title' | 'support.feedback.title' | 'support.myFeedback.title' | 'support.feedback.modal.title' | 'support.feedback.modal.messageTitle' | 'support.feedback.modal.close' | 'support.feedback.modal.send' | 'support.privacyPolicy.title' | 'support.aboutTripian.title' | 'pageNotFound.title' | 'pageNotFound.description' | 'theme.dark' | 'theme.light' | 'notification.couponValidDateWarning.name' | 'notification.couponValidDateWarning.title' | 'notification.couponValidDateWarning.message' | 'notification.bookbarbadosFetch.name' | 'notification.bookbarbadosFetch.title' | 'notification.bookbarbadosFetch.message' | 'notification.changeCompanionWarning.title' | 'notification.changeCompanionWarning.message' | 'notification.offerOptIn.name' | 'notification.offerOptIn.title' | 'notification.offerOptIn.message' | 'notification.gygReservationSuccess.name' | 'notification.gygReservationSuccess.title' | 'notification.gygReservationSuccess.message' | 'notification.gygReservationError.name' | 'notification.gygReservationError.title' | 'notification.gygReservationError.message' | 'notification.gygFetchTourDataError.name' | 'notification.feedbackSuccess.message' | 'notification.feedbackError.message' | 'notification.replyError.message' | 'notification.gygFetchTourDataError.title' | 'notification.replySuccess.message' | 'notification.replyError.messag' | 'reservation.firstName' | 'reservation.lastName' | 'reservation.email' | 'reservation.mobileNumber' | 'reservation.note' | 'reservation.loadMore' | 'reservation.findATable' | 'reservation.reservationInfo' | 'reservation.restaurantName' | 'reservation.phone' | 'reservation.date' | 'reservation.covers' | 'reservation.name' | 'reservation.person' | 'reservation.people' | 'reservation.confirm' | 'welcome' | 'widgets' | 'auth.loginWithHash' | 'trips.updateTrip.header' | 'tripPlan.header' | 'tripCopy.header' | 'qrReader.header' | 'qrCode.header' | 'offerPayment.header' | 'placeInfo.header' | 'tourInfo.header' | 'useTripUrl.header' | 'auth.forgotPassword.header' | 'socialLoginCode.header' | 'sunday' | 'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday' | 'closed' | 'success' | 'error' | 'warning' | 'common.showMore' | 'common.showLess' | 'common.reviews' | 'trips.myTrips.itinerary.step.poi.showAllPhotos' | 'trips.myTrips.itinerary.slider.goToSlide' | 'trips.myTrips.itinerary.day' | 'trips.categories.all' | 'trips.filters.title' | 'trips.filters.providers' | 'trips.filters.clearAll' | 'open' | 'itinerary' | 'bookable.mobile' | 'bookable.desktop' | 'explore.mobile' | 'explore.desktop' | 'overview.desktop' | 'visa.hotel.mobile' | 'visa.hotel.desktop' | 'visa.auth.title' | 'visa.auth.description' | 'visa.auth.continueText' | 'visa.auth.cancelText' | 'visa.auth.invalidPayload' | 'visa.auth.invalidResponse' | 'visa.auth.apiError' | 'visa.auth.unknownError' | 'visa.auth.emptyContent' | 'visa.auth.validationResult' | 'visa.auth.ineligibleUser' | 'visa.auth.notEligible' | 'visa.auth.validationError' | 'visa.auth.systemError' | 'visa.auth.missingRedirectUrl' | 'visa.auth.invalidRedirectUrl' | 'visa.auth.userBlocked' | 'visa.auth.accountBlocked' | 'visa.auth.sessionExpired' | 'visa.auth.receivedMessage' | 'visa.auth.invalidMessageFormat' | 'visa.auth.invalidData' | 'visa.auth.formTitle' | 'visa.error.title' | 'visa.error.redirecting' | 'visa.error.goToLogin' | 'cancel' | 'continue' | 'update' | 'destination.placeholder.default' | 'destination.search.noResults' | 'destination.ai.buttonText' | 'destination.ai.modal.title' | 'destination.ai.modal.description' | 'destination.ai.modal.instruction' | 'destination.ai.quickSearch.beach' | 'destination.ai.quickSearch.history' | 'destination.ai.quickSearch.nature' | 'destination.ai.quickSearch.food' | 'destination.ai.quickSearch.culture' | 'destination.ai.searching.title' | 'destination.ai.searching.subtitle' | 'destination.ai.result.select' | 'destination.ai.result.reasonLabel' | 'destination.ai.result.matchLabel' | 'destination.ai.noResults.message' | 'destination.ai.noResults.suggestion' | 'destination.ai.modal.headerTitle' | 'destination.ai.modal.closOeButton' | 'destination.ai.modal.searchPlaceholder' | 'destination.ai.modal.searchButton' | 'destination.ai.modal.clearButton' | 'destination.ai.modal.pressEnter' | 'destination.ai.modal.closeButton' | 'poi.bookable.tickets' | 'poi.bookable.tours' | 'poi.bookable.covering' | 'book' | 'travelify.seeAllToursAndActivities' | 'travelify.openVacavia' | 'cloneTrip.header.login' | 'cloneTrip.header.register' | 'cloneTrip.error' | 'cloneTrip.description' | 'cloneTrip.login' | 'cloneTrip.register' | 'plan.removeStep.question' | 'plan.removeStep.submit' | 'plan.removeStep.cancel' | 'user' | 'favorites' | 'offers' | 'bookings' | 'category' | 'theatre' | 'entertainmentShows' | 'noTicketsAvailable' | 'dateAndTime' | 'place' | 'performers' | 'availableTicket' | 'checkAvailableTickets' | 'selectTickets' | 'minPrice' | 'maxPrice' | 'minQuantity' | 'type' | 'section' | 'row' | 'available' | 'tickets' | 'faceValue' | 'instantDelivery' | 'quantity' | 'total' | 'purchaseTickets' | 'switchToMobile';
|
|
2
2
|
export type LangCode = {
|
|
3
3
|
value: string;
|
|
4
4
|
label: string;
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["webpack://[name]/webpack/bootstrap","webpack://[name]/./src/index.ts","webpack://[name]/./src/api/v4/index.ts","webpack://[name]/./src/api/v4/enums/AMOUNT_TYPE.ts","webpack://[name]/./src/api/v4/enums/CAMPAIGN_STATUS.ts","webpack://[name]/./src/api/v4/enums/BOOKING_PRODUCT_INFO.ts","webpack://[name]/./src/api/v4/enums/BUSINESS_RESULT_ORIGIN.ts","webpack://[name]/./src/api/v4/enums/LOCATION_TYPE.ts","webpack://[name]/./src/api/v4/enums/NOTIFICATION_TYPE.ts","webpack://[name]/./src/api/v4/enums/OFFER_CURRENCY.ts","webpack://[name]/./src/api/v4/enums/OFFER_STATUS.ts","webpack://[name]/./src/api/v4/enums/OFFER_TYPE.ts","webpack://[name]/./src/api/v4/enums/POI_CATEGORY_GROUP.ts","webpack://[name]/./src/api/v4/enums/PRODUCT_TYPE_NAME.ts","webpack://[name]/./src/api/v4/enums/PROVIDER_ID.ts","webpack://[name]/./src/api/v4/enums/PROVIDER_NAME.ts","webpack://[name]/./src/api/v4/enums/REACTION.ts","webpack://[name]/./src/api/v4/enums/REACTION_COMMENT.ts","webpack://[name]/./src/api/v4/enums/RESPONSE_STATUS.ts","webpack://[name]/./src/api/v4/enums/PLAN_STATUS.ts","webpack://[name]/./src/api/v4/enums/QUESTIONS_CATEGORY.ts","webpack://[name]/./src/api/v4/enums/USER_TYPE.ts","webpack://[name]/./src/api/v4/enums/VERIFY_CHANNEL.ts","webpack://[name]/./src/api/v4/models/ConfigList.ts","webpack://[name]/./src/providers/index.ts","webpack://[name]/./src/providers/yelp/index.ts","webpack://[name]/./src/providers/gyg/index.ts","webpack://[name]/./src/providers/bb/index.ts","webpack://[name]/./src/providers/bb/ACTIVITY_THEMES.ts","webpack://[name]/./src/providers/viator/index.ts","webpack://[name]/./src/providers/rezdy/index.ts","webpack://[name]/./src/providers/videreo/index.ts","webpack://[name]/./src/providers/toristy/index.ts","webpack://[name]/./src/providers/victory/index.ts","webpack://[name]/./src/providers/kiwi/index.ts","webpack://[name]/./src/helper/index.ts","webpack://[name]/./src/helper/plural.ts"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","Model","AMOUNT_TYPE","CAMPAIGN_STATUS","BOOKING_PRODUCT_INFO","BUSINESS_RESULT_ORIGIN","LOCATION_TYPE","NOTIFICATION_TYPE","OFFER_CURRENCY","OFFER_STATUS","OFFER_TYPE","POI_CATEGORY_GROUP","PRODUCT_TYPE_NAME","PROVIDER_ID","PROVIDER_NAME","REACTION","REACTION_COMMENT","RESPONSE_STATUS","PLAN_STATUS","QUESTIONS_CATEGORY","USER_TYPE","VERIFY_CHANNEL","CONFIG_CONTENTS_PROVIDER_NAME","Yelp","Gyg","Bb","Viator","Rezdy","Videreo","Toristy","Victory","Kiwi","ACTIVITY_THEMES","categoryGroupsStatic","categories","id","isCustom","imgUrl","apiPlaceUrl","x","y","type","xy","substring","indexOf","cityImgUrl","imgUrlThumbnails","imageUrl","sizeMatch","match","width","Number","height","isNaN","ratio","newHeight","Math","round","newSize","replace","getCategoryGroups","categoriesData","map","categoryGroup","ids","category","group","getCategoryGroup","categoryId","poiCategoryGroups","some","hoursFormat","hour","daysArray","closed","search","raw","split","forEach","item","h","days","clock","a","trim","day","findIndex","push","concat","length","filter","every","includes","currentIndex","splice","compareStringForSort","b","nameA","toLowerCase","nameB","emailFormatValid","email","passwordFormatValid","password","toEngChars","str","unicodeToString","hourRange","minuteRange","timeRange","startTimeRange","all","_","endTimeRange","startHour","undefined","filteredEndHouts","getAll","hr","deepCopy","oldObject","JSON","parse","stringify","getYourGuideImageArrayFormat","imgUrls","formatId","img","getYourGuideImageFormat","companionTitleOptions","delay","ms","Promise","resolve","setTimeout","capitalizeFirstLetter","string","lowerCaseString","charAt","toUpperCase","slice","removeDuplicateValuesById","duplicateItems","itemIndex","allItems","removeDuplicateValues","compareFn","getAge","dateOfBirth","today","Date","birthDate","age","getFullYear","getMonth","getDate","tourAvailable","bookings","TOUR_PROVIDER_IDS","gygTourIds","bbTourIds","viatorTourIds","toristyTourIds","booking","providerId","products","product","productIdAsNumber","info","TICKET","toString","ticketAvailable","TICKET_PROVIDER_IDS","restaurantReservationAvailable","RESTAURANT_RESERVATION_PROVIDER_IDS","offerAvailable","offers","offer","hexToRgb","setTheme","theme","COLORS","themeParams","dark","light","document","documentElement","style","setProperty","primary","secondary","success","warning","danger","textPrimary","headerBg","headerTextColor","background","setLogo","darkLogo","lightLogo","arraysEqual","sortedA","sort","sortedB","formatDateWithTimezone","date","timezone","inputDate","getTime","Error","dateInTimeZone","Intl","DateTimeFormat","timeZone","year","month","minute","second","hour12","format","String","padStart","getHours","getMinutes","getSeconds","getProviderId","providerName","YELP","GYG","BOOK_BARBADOS","VIATOR","REZDY","TORISTY","VICTORY","console","warn","eventCategoryIcons","sports","encodeURIComponent","concerts","theatre","tennis","default","plural","txt","revert","array","irregular","move","foot","goose","sex","child","man","tooth","person","word","pattern","RegExp","test","reg","s$","sis$","pattern2"],"mappings":"2BACE,IAAIA,EAAmB,GAGvB,SAASC,EAAoBC,GAG5B,GAAGF,EAAiBE,GACnB,OAAOF,EAAiBE,GAAUC,QAGnC,IAAIC,EAASJ,EAAiBE,GAAY,CACzCG,EAAGH,EACHI,GAAG,EACHH,QAAS,IAUV,OANAI,EAAQL,GAAUM,KAAKJ,EAAOD,QAASC,EAAQA,EAAOD,QAASF,GAG/DG,EAAOE,GAAI,EAGJF,EAAOD,QA0Df,OArDAF,EAAoBQ,EAAIF,EAGxBN,EAAoBS,EAAIV,EAGxBC,EAAoBU,EAAI,SAASR,EAASS,EAAMC,GAC3CZ,EAAoBa,EAAEX,EAASS,IAClCG,OAAOC,eAAeb,EAASS,EAAM,CAAEK,YAAY,EAAMC,IAAKL,KAKhEZ,EAAoBkB,EAAI,SAAShB,GACX,oBAAXiB,QAA0BA,OAAOC,aAC1CN,OAAOC,eAAeb,EAASiB,OAAOC,YAAa,CAAEC,MAAO,WAE7DP,OAAOC,eAAeb,EAAS,aAAc,CAAEmB,OAAO,KAQvDrB,EAAoBsB,EAAI,SAASD,EAAOE,GAEvC,GADU,EAAPA,IAAUF,EAAQrB,EAAoBqB,IAC/B,EAAPE,EAAU,OAAOF,EACpB,GAAW,EAAPE,GAA8B,iBAAVF,GAAsBA,GAASA,EAAMG,WAAY,OAAOH,EAChF,IAAII,EAAKX,OAAOY,OAAO,MAGvB,GAFA1B,EAAoBkB,EAAEO,GACtBX,OAAOC,eAAeU,EAAI,UAAW,CAAET,YAAY,EAAMK,MAAOA,IACtD,EAAPE,GAA4B,iBAATF,EAAmB,IAAI,IAAIM,KAAON,EAAOrB,EAAoBU,EAAEe,EAAIE,EAAK,SAASA,GAAO,OAAON,EAAMM,IAAQC,KAAK,KAAMD,IAC9I,OAAOF,GAIRzB,EAAoB6B,EAAI,SAAS1B,GAChC,IAAIS,EAAST,GAAUA,EAAOqB,WAC7B,WAAwB,OAAOrB,EAAgB,SAC/C,WAA8B,OAAOA,GAEtC,OADAH,EAAoBU,EAAEE,EAAQ,IAAKA,GAC5BA,GAIRZ,EAAoBa,EAAI,SAASiB,EAAQC,GAAY,OAAOjB,OAAOkB,UAAUC,eAAe1B,KAAKuB,EAAQC,IAGzG/B,EAAoBkC,EAAI,GAIjBlC,EAAoBA,EAAoBmC,EAAI,G,ovBClFrD,cACA,sBACA,mBAEA,UAAeC,G,kgBCDf,UACA,UACA,UACA,UACA,UACA,UACA,UAEA,UACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WAKA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WAKA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YAKA,YACA,YACA,YACA,YACA,a,mGChIA,SAAYC,GACV,oBACA,wBAFF,CAAY,EAAAA,cAAA,EAAAA,YAAW,M,uGCAvB,SAAYC,GACV,kBACA,sBAFF,CAAY,EAAAA,kBAAA,EAAAA,gBAAe,M,4GCA3B,SAAYC,GACV,kBADF,CAAY,EAAAA,uBAAA,EAAAA,qBAAoB,M,8GCAhC,SAAYC,GACV,oBACA,kBAFF,CAAY,EAAAA,yBAAA,EAAAA,uBAAsB,M,qGCAlC,SAAYC,GACV,oBACA,cACA,oBACA,sBACA,kBACA,8BACA,kBACA,sBACA,kBACA,gBACA,wBACA,cACA,oBAbF,CAAY,EAAAA,gBAAA,EAAAA,cAAa,M,yGCAzB,SAAYC,GACV,oBACA,gBACA,oBAHF,CAAY,EAAAA,oBAAA,EAAAA,kBAAiB,M,sGCA7B,SAAYC,GACV,YACA,YACA,YAHF,CAAY,EAAAA,iBAAA,EAAAA,eAAc,M,oGCA1B,SAAYC,GACV,kBACA,sBACA,oBACA,oBAJF,CAAY,EAAAA,eAAA,EAAAA,aAAY,M,kGCAxB,SAAYC,GACV,0BACA,kBACA,sBACA,kCACA,oBALF,CAAY,EAAAA,aAAA,EAAAA,WAAU,M,0GCAtB,SAAYC,GACV,2BACA,2BACA,eACA,wBACA,sBACA,oBACA,kCAPF,CAAY,EAAAA,qBAAA,EAAAA,mBAAkB,M,yGCA9B,SAAYC,GACV,4BACA,kBACA,sBAHF,CAAY,EAAAA,oBAAA,EAAAA,kBAAiB,M,mGCA7B,SAAYC,GACV,uBACA,mBACA,+BACA,iBACA,+BACA,qCACA,yBACA,qBACA,mBACA,8BACA,wBACA,0BACA,0BAbF,CAAY,EAAAA,cAAA,EAAAA,YAAW,M,qGCAvB,SAAYC,GACV,kBACA,qBACA,oBACA,kBACA,gBACA,yBACA,+BACA,cACA,oBATF,CAAY,EAAAA,gBAAA,EAAAA,cAAa,M,gGCAzB,SAAYC,GACV,wBACA,4BACA,oBAHF,CAAY,EAAAA,WAAA,EAAAA,SAAQ,M,wGCApB,SAAYC,GACV,oDACA,mDAFF,CAAY,EAAAA,mBAAA,EAAAA,iBAAgB,M,uGCA5B,SAAYC,GACV,2BACA,mCACA,qCACA,+BACA,6BACA,uDANF,CAAY,EAAAA,kBAAA,EAAAA,gBAAe,M,mGCA3B,SAAYC,GACV,kCACA,yBACA,2BACA,yCACA,yCALF,CAAY,EAAAA,cAAA,EAAAA,YAAW,M,0GCAvB,SAAYC,GACV,cACA,oBACA,wBAHF,CAAY,EAAAA,qBAAA,EAAAA,mBAAkB,M,iGCA9B,SAAYC,GACV,sBACA,uBACA,6CACA,mCACA,iCACA,iCANF,CAAY,EAAAA,YAAA,EAAAA,UAAS,M,sGCArB,SAAYC,GACV,YACA,cAFF,CAAY,EAAAA,iBAAA,EAAAA,eAAc,M,o7CCG1B,SAAYC,GACV,8BAEA,YACA,wBACA,cACA,cANF,CAAY,EAAAA,gCAAA,EAAAA,8BAA6B,M,0kNCHzC,gBAUS,EAAAC,OATT,gBASe,EAAAC,MARf,gBAQoB,EAAAC,KAPpB,gBAOwB,EAAAC,SANxB,gBAMgC,EAAAC,QALhC,gBAKuC,EAAAC,UAJvC,gBAIgD,EAAAC,UAHhD,gBAGyD,EAAAC,UAFzD,gBAEkE,EAAAC,Q,kgBCVlE,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,wxCCTA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,0lHCvCA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,uGCbA,SAAYC,GACV,4BACA,0BACA,kCACA,8BACA,sBACA,mCACA,oBACA,4BACA,0BACA,oBACA,oCACA,8BACA,8BACA,sCAdF,CAAY,EAAAA,kBAAA,EAAAA,gBAAe,M,qgDCA3B,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,2xECtBA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,ysCCRA,YACA,YACA,a,+uBCFA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,qgDCZA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,6nECpBA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,sxECVA,cAMA,YAsCA,IAAMC,EAA2C,CAC/C,CACEzD,KAAM,cACN0D,WAAY,CACV,CACEC,GAAI,GACJ3D,KAAM,UACN4D,UAAU,GAEZ,CACED,GAAI,EACJ3D,KAAM,cACN4D,UAAU,GAEZ,CACED,GAAI,GACJ3D,KAAM,UACN4D,UAAU,GAEZ,CACED,GAAI,GACJ3D,KAAM,gBACN4D,UAAU,GAEZ,CACED,GAAI,GACJ3D,KAAM,UACN4D,UAAU,GAEZ,CACED,GAAI,GACJ3D,KAAM,eACN4D,UAAU,GAEZ,CACED,GAAI,GACJ3D,KAAM,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","file":"index.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","import * as Model from './api/v4';\nexport * as Providers from './providers';\nexport * as helper from './helper';\n\nexport default Model;","/**\n * Enum\n */\nexport * from './enums/AMOUNT_TYPE';\nexport * from './enums/CAMPAIGN_STATUS';\nexport * from './enums/BOOKING_PRODUCT_INFO';\nexport * from './enums/BUSINESS_RESULT_ORIGIN';\nexport * from './enums/LOCATION_TYPE';\nexport * from './enums/NOTIFICATION_TYPE';\nexport * from './enums/OFFER_CURRENCY';\n// export * from './enums/OFFER_RECEIVE_METHOD';\nexport * from './enums/OFFER_STATUS';\nexport * from './enums/OFFER_TYPE';\nexport * from './enums/POI_CATEGORY_GROUP';\nexport * from './enums/PRODUCT_TYPE_NAME';\nexport * from './enums/PROVIDER_ID';\nexport * from './enums/PROVIDER_NAME';\nexport * from './enums/REACTION';\nexport * from './enums/REACTION_COMMENT';\nexport * from './enums/RESPONSE_STATUS';\nexport * from './enums/PLAN_STATUS';\nexport * from './enums/QUESTIONS_CATEGORY';\nexport * from './enums/USER_TYPE';\nexport * from './enums/VERIFY_CHANNEL';\n\n/**\n * Models\n */\nexport * from './models/Accommodation';\nexport * from './models/Booking';\nexport * from './models/BookingProduct';\nexport * from './models/Business';\nexport * from './models/BusinessInfoCategory';\nexport * from './models/BusinessOfferReport';\nexport * from './models/BusinessReport';\nexport * from './models/BusinessSearch';\nexport * from './models/BusinessVerify';\nexport * from './models/Campaign';\nexport * from './models/CampaignReport';\nexport * from './models/CampaignCustomerReport';\nexport * from './models/CategoryGroupResult';\nexport * from './models/City';\nexport * from './models/CityEvent';\nexport * from './models/CityInfo';\nexport * from './models/Companion';\nexport * from './models/ConfigList';\nexport * from './models/Continent';\nexport * from './models/Coordinate';\nexport * from './models/Country';\nexport * from './models/Coupon';\nexport * from './models/CouponApplication';\nexport * from './models/CustomPoi';\nexport * from './models/Device';\nexport * from './models/Favorite';\nexport * from './models/Feedbacks';\nexport * from './models/Image';\nexport * from './models/ImageOwner';\nexport * from './models/Notification';\nexport * from './models/NotificationMetaData';\nexport * from './models/NotificationSettings';\nexport * from './models/NotificationUnseen';\nexport * from './models/Offer';\nexport * from './models/OfferCustomer';\nexport * from './models/OfferProductType';\nexport * from './models/Plan';\nexport * from './models/Poi';\nexport * from './models/PoiCategory';\nexport * from './models/PoiCategoryGroup';\nexport * from './models/PoiCategoryParent';\nexport * from './models/PoiCategoryResponse';\nexport * from './models/PoiReference';\nexport * from './models/PreRegister';\nexport * from './models/Question';\nexport * from './models/Recommendation';\nexport * from './models/Step';\nexport * from './models/SubAnswer';\nexport * from './models/SuggestedCity';\nexport * from './models/SuggestedCityMatch';\nexport * from './models/TasteItem';\nexport * from './models/TimeFrame';\nexport * from './models/Token';\nexport * from './models/TokenPayload';\nexport * from './models/TokenRefresh';\nexport * from './models/TopTen';\nexport * from './models/TourAndTickets';\nexport * from './models/TranslationList';\nexport * from './models/Trip';\nexport * from './models/TripProfile';\nexport * from './models/TripReference';\nexport * from './models/User';\nexport * from './models/UserReaction';\nexport * from './models/UserReservation';\nexport * from './models/UserResetPassword';\nexport * from './models/UserFeedback';\nexport * from './models/VoucherOffer';\n\n/**\n * Requests\n */\nexport * from './requests/BusinessPreRegisterReportRequest';\nexport * from './requests/BusinessReportRequest';\nexport * from './requests/CampaignCustomerReportRequest';\nexport * from './requests/CampaignReportRequest';\nexport * from './requests/CompanionRequest';\nexport * from './requests/FeedbackRequest';\nexport * from './requests/FeedbackReplyRequest';\nexport * from './requests/LoginRequest';\nexport * from './requests/OfferAddRequest';\nexport * from './requests/OfferRequest';\nexport * from './requests/PlanUpdateRequest';\nexport * from './requests/PoisRequest';\nexport * from './requests/PoisRequestCoordinate';\nexport * from './requests/PoisRequestMustTry';\nexport * from './requests/PoisRequestName';\nexport * from './requests/RegisterRequest';\nexport * from './requests/TokenRefreshRequest';\nexport * from './requests/UserReactionRequest';\nexport * from './requests/UserReservationRequest';\nexport * from './requests/UserUpdateRequest';\nexport * from './requests/VoucherOfferAddRequest';\n\n/**\n * Responses\n */\nexport * from './responses/DataPayload';\nexport * from './responses/DeleteUpdateResponse';\nexport * from './responses/ErrorResponse';\nexport * from './responses/Pagination';\nexport * from './responses/SuccessResponse';\n","export enum AMOUNT_TYPE {\n LIMITED = 'Limited',\n UNLIMITED = 'Unlimited',\n}\n","export enum CAMPAIGN_STATUS {\n ACTIVE = 'active',\n INACTIVE = 'inactive',\n}\n","export enum BOOKING_PRODUCT_INFO {\n TICKET = 'ticket',\n /* TOUR = \"tour\", */\n}\n","export enum BUSINESS_RESULT_ORIGIN {\n TRIPIAN = 'Tripian',\n GOOGLE = 'Google',\n}\n","export enum LOCATION_TYPE {\n CAPITAL = 'capital',\n CITY = 'city',\n COUNTRY = 'country',\n DISTRICT = 'district',\n ISLAND = 'island',\n MUNICIPALITY = 'municipality',\n PARISH = 'parish',\n PROVINCE = 'province',\n REGION = 'region',\n STATE = 'state',\n TERRITORY = 'territory',\n TOWN = 'town',\n VILLAGE = 'village',\n}\n","export enum NOTIFICATION_TYPE {\n SUCCESS = 'success',\n ERROR = 'error',\n WARNING = 'warning',\n}\n","export enum OFFER_CURRENCY {\n USD = 'USD',\n CAD = 'CAD',\n BBD = 'BBD',\n}\n","export enum OFFER_STATUS {\n ACTIVE = 'active',\n INACTIVE = 'inactive',\n ARCHIVE = 'archive',\n EXPIRED = 'expired',\n}\n","export enum OFFER_TYPE {\n PERCENTAGE = 'percentage',\n AMOUNT = 'amount',\n QUANTITY = 'quantity',\n SPEND_FOR_GIFT = 'spend_for_gift',\n VOUCHER = 'voucher',\n}\n","export enum POI_CATEGORY_GROUP {\n ATTRACTION = 'Attractions',\n RESTAURANT = 'Restaurants',\n CAFE = 'Cafes',\n NIGHTLIFE = 'Nightlife',\n SHOPPING = 'Shopping',\n UNKNOWN = 'Unknown',\n NOTCATEGORIZED = 'NOTCATEGORIZED',\n}\n","export enum PRODUCT_TYPE_NAME {\n EXPERIENCES = 'experiences',\n DINING = 'dining',\n SHOPPING = 'shopping',\n\n /* FOOD = 'food',\n DRINK = 'drink',\n RETAIL = 'retail', */\n}\n","export enum PROVIDER_ID {\n VIATOR = 1,\n YELP = 2,\n GUESTLOGIX = 3,\n GYG = 4,\n OPEN_TABLE = 5,\n BOOK_BARBADOS = 6,\n JUNIPER = 7,\n REZDY = 8,\n UBER = 9,\n TRAVELIFY = 10,\n GOCITY = 11,\n TORISTY = 12,\n VICTORY = 13,\n}\n\n/* \nClient Name Vacavia\nAPI Application ID 154\nAPI Private Key 82202011-0EC4-4DA4-9D7C-1A0457F85973\nAPI Endpoint Prefix https://api.travelify.io/\nSelection Redirect Url https://www.vacavia.co.uk/results#/ticketAndAttraction/searchSession= \n\n{\n id: 8,\n name: \"Travelify\",\n apiUrl: \"https://api.travelify.io/\",\n apiKey: \"100:4D1BEDF7-F67A-4299-B544-F35521277F59\",\n prod: false,\n clientId: \"https://traveldemo.agendas.group/results#/ticketAndAttraction/searchSession=\"\n},\n{\n id: 8,\n name: \"Travelify\",\n apiUrl: \"https://api.travelify.io/\",\n apiKey: \"154:82202011-0EC4-4DA4-9D7C-1A0457F85973\",\n prod: true,\n clientId: \"https://www.vacavia.co.uk/results#/ticketAndAttraction/searchSession=\"\n}\n*/\n","export enum PROVIDER_NAME {\n VIATOR = 'Viator',\n GYG = 'GetYourGuide',\n TORISTY = 'Toristy',\n GOCITY = 'GoCity',\n REZDY = 'Rezdy',\n OPEN_TABLE = 'OpenTable',\n BOOK_BARBADOS = 'BookBarbados',\n YELP = 'Yelp',\n VICTORY = 'Victory',\n}\n","export enum REACTION {\n THUMBS_UP = 'Thumbs Up',\n THUMBS_DOWN = 'Thumbs Down',\n NEUTRAL = 'Neutral',\n}\n","export enum REACTION_COMMENT {\n I_HAVE_BEEN_THERE_BEFORE = 'I`ve been there before',\n I_DONT_LIKE_THIS_PLACE = 'I don`t like this place',\n}\n","export enum RESPONSE_STATUS {\n SUCCESS = 200,\n BAD_REQUEST = 400,\n UNAUTHORIZED = 401,\n FORBIDDEN = 403,\n NOTFLICT = 409,\n INTERNAL_SERVER_ERROR = 500,\n}\n","export enum PLAN_STATUS {\n STEPS_EMPTY = -1,\n PENDING = 0,\n FINISHED = 1,\n WALKING_EXCEEDS = 2,\n NOT_FOUND_ATTRS = 3,\n}\n","export enum QUESTIONS_CATEGORY {\n TRIP = 'trip',\n PROFILE = 'profile',\n COMPANION = 'companion',\n}\n","export enum USER_TYPE {\n GUEST = -1,\n NORMAL = 0,\n NORMAL_FROM_GUEST = 1,\n COUPON_ADMIN = 2,\n SUPER_ADMIN = 3,\n ELIGIBILITY = 4,\n}\n","export enum VERIFY_CHANNEL {\n SMS = 'sms',\n CALL = 'call',\n}\n","import { OFFER_TYPE } from '../enums/OFFER_TYPE';\nimport { PROVIDER_ID } from '../enums/PROVIDER_ID';\n\nexport enum CONFIG_CONTENTS_PROVIDER_NAME {\n BOOKBARBADOS = 'bookbarbados',\n // GLX = 'glx',\n GYG = 'gyg',\n OPENTABLE = 'opentable',\n YELP = 'yelp',\n UBER = 'uber',\n}\n\nexport type ProviderObject = {\n id: PROVIDER_ID;\n name: string;\n apiUrl: string;\n apiKey: string;\n prod: boolean;\n clientId: string;\n affiliateParams?: Record<string, string>;\n apiSecret?: string;\n};\n\nexport type Theme = {\n dark: {\n primary: string;\n secondary: string;\n success: string;\n warning: string;\n info: string;\n danger: string;\n textPrimary: string;\n background: string;\n headerTextColor: string;\n headerBg: string;\n };\n light: {\n primary: string;\n secondary: string;\n success: string;\n warning: string;\n info: string;\n danger: string;\n textPrimary: string;\n background: string;\n headerTextColor: string;\n headerBg: string;\n };\n};\n\nexport type MenuLink = {\n name: string; // \"Flights\",\n url: string; // \"https://trial-dev.tripian.com/\",\n external_link: boolean; // true\n};\n\nexport type ConfigList = {\n apiKey: string;\n aiSupport: boolean;\n whiteLabels: {\n reverseProxyUrl: string;\n brandName: string;\n imagePaths: {\n logoPathDark: string;\n logoPathLight: string;\n formHeaderImgUrl?: string;\n formBgImgUrl?: string;\n appBackgroundImgUrl?: string;\n };\n googleAnalyticsUrl: {\n business: string;\n customer: string;\n };\n googleAnalyticsKey: {\n business: string;\n customer: string;\n };\n providers: {\n name: CONFIG_CONTENTS_PROVIDER_NAME;\n apikey: string;\n apiurl: string;\n prod: boolean;\n }[];\n cognito: {\n clientId: string;\n domain: string;\n region: string;\n identityProviders: string[];\n };\n theme?: Theme;\n // Sadece light => [“light”]\n // Sadece dark => [“dark”]\n // Default light => [“dark”, “light”]\n // Default dark => [“dark”,“light”]\n availableThemes: Array<'dark' | 'light'>;\n\n rootPath?: string;\n defaultDestinationId?: number;\n brandUrl?: string;\n tosUrl?: string;\n ppUrl?: string;\n landingPageUrl?: string;\n\n languages: string[];\n dealsPageUrl?: string;\n externalMenuLinks?: Record<string, MenuLink[]>;\n eligibilityType?: string;\n };\n baseFeatures: {\n showRegister: boolean;\n showLogin: boolean;\n showChangePassword: boolean;\n showTripModeQuestion: boolean;\n showOverview: boolean;\n showOffers: boolean;\n showStepCardThumbs: boolean;\n loginWithToken: boolean;\n loginWithHash: boolean;\n guestLogin: boolean;\n saveSession: boolean;\n showStepScoreDetail: boolean;\n showTravelGuide: boolean;\n showVoucher: boolean;\n showSaveTrip: boolean;\n showSideNav: boolean;\n showHome: boolean;\n showCreateTrip: boolean;\n showUpdateTrip: boolean;\n showUserProfile: boolean;\n sharedTrip: boolean;\n qrReader: 'business' | 'customer';\n widgetTheme1: boolean;\n widgetTheme2: boolean;\n widgetTheme3: boolean;\n showLandingPage: boolean;\n };\n sbt: {\n campaignDefaultCurrency: string;\n offerTypes: OFFER_TYPE[];\n };\n providers: {\n // showToursAndTickets: boolean;\n // showRestaurantReservations: boolean;\n // showBookARide: boolean;\n // showAccommodationPois: boolean;\n // showCarRentPois: boolean;\n // tourProviderSource: PROVIDER_ID;\n // tourProviderSourceProd: boolean;\n // ticketProviderSource: PROVIDER_ID;\n // ticketProviderSourceProd: boolean;\n // restaurantReservationProviderSource: PROVIDER_ID[];\n // restaurantReservationSourceProd: boolean;\n // accommodationPoiProvider: PROVIDER_ID;\n // TODO\n tourAndTicket: ProviderObject[];\n accommodation: ProviderObject[];\n restaurant: ProviderObject[];\n transportation: ProviderObject[];\n };\n\n /* cognito: {\n clientId: string;\n domain: string;\n region: string;\n identityProviders: string[];\n };\n contents: {\n brandName: string;\n googleAnalyticsKey: string;\n googleAnalyticsUrl: string;\n logoPath: string;\n theme: string;\n reverseProxyUrl: string;\n providers: {\n name: CONFIG_CONTENTS_PROVIDER_NAME;\n apikey: string;\n apiurl: string;\n prod: boolean;\n }[];\n }; */\n};\n","import * as Yelp from './yelp';\nimport * as Gyg from './gyg';\nimport * as Bb from './bb';\nimport * as Viator from './viator';\nimport * as Rezdy from './rezdy';\nimport * as Videreo from './videreo';\nimport * as Toristy from './toristy';\nimport * as Victory from './victory';\nimport * as Kiwi from './kiwi';\n\nexport { Yelp, Gyg, Bb, Viator, Rezdy, Videreo, Toristy, Victory, Kiwi };\n","export * from './Business';\nexport * from './Hold';\nexport * from './HoldRequest';\nexport * from './Openings';\nexport * from './OpeningsRequest';\nexport * from './OpeningTime';\nexport * from './Reservation';\nexport * from './ReservationInfo';\nexport * from './ReservationRequest';\nexport * from './ReservationStatusResponse';\n","export * from './CatalogGroup';\nexport * from './Category';\nexport * from './Categories';\nexport * from './MetaData';\nexport * from './PaymentConfiguration';\nexport * from './PaymentConfigurations';\nexport * from './Tour';\nexport * from './TourAvailability';\nexport * from './TourAvailabilities';\nexport * from './TourBookingInfo';\nexport * from './TourBookingInfos';\nexport * from './TourBooking';\nexport * from './TourBookingCart';\nexport * from './TourBookingCarts';\nexport * from './TourBookingCartRequest';\nexport * from './TourBookings';\nexport * from './TourBookingRequest';\nexport * from './TourCategories';\nexport * from './TourCoordinates';\nexport * from './TourData';\nexport * from './TourDataFormPersonsCategory';\nexport * from './TourDataOption';\nexport * from './TourDataOptionAvailability';\nexport * from './TourDateRange';\nexport * from './TourDurations';\nexport * from './TourErrorResponse';\nexport * from './TourLocations';\nexport * from './TourPictures';\nexport * from './TourPrice';\nexport * from './TourPriceBreakDown';\nexport * from './TourShoppingFormData';\nexport * from './TourOptionDetails';\nexport * from './TourOptionPricing';\nexport * from './TourOptionPricings';\nexport * from './TourOption';\nexport * from './TourOptions';\nexport * from './TourViewport';\nexport * from './TourReservationDetails';\nexport * from './Tours';\nexport * from './Error';\n","export * from './ACTIVITY_THEMES';\nexport * from './Activity';\nexport * from './ActivityInfo';\nexport * from './ActivityInfoImage';\nexport * from './ActivityInfoLocation';\nexport * from './ActivityPoint';\nexport * from './AuthorizationResponse';\nexport * from './CatalogGroup';\nexport * from './Offer';\nexport * from './OfferPoint';\nexport * from './Product';\nexport * from './SearchActivitiesResponse';\nexport * from './SearchAccommodationResponse';\nexport * from './SearchCarRentResponse';\n","export enum ACTIVITY_THEMES {\n ON_THE_LAND = 'On the Land',\n FAMILY_FUN = 'Family Fun',\n SOFT_ADVENTURE = 'Soft Adventure',\n ON_THE_WATER = 'On the Water',\n WELLNESS = 'Wellness',\n ART_AND_CULTURE = 'Arts & Culture',\n HISTORY = 'History',\n UNDER_WATER = 'Under Water',\n IN_THE_AIR = 'In the Air',\n ROMANCE = 'Romance',\n FOODIE_DELIGHTS = 'Foodie Delights',\n UNDER_GROUND = 'Under Ground',\n VOLUNTOURISM = 'Voluntourism',\n SHORE_EXCURSIONS = 'Shore Excursions',\n}\n","export * from './Duration';\nexport * from './Product';\nexport * from './ProductInfo';\nexport * from './CatalogGroup';\nexport * from './AvailabilitySchedule';\nexport * from './AvailabilityCheck';\nexport * from './TourData';\nexport * from './BookingQuestions';\nexport * from './Paymix';\nexport * from './LanguageGuide';\nexport * from './BookingCardHoldRequest';\nexport * from './BookingCardHold';\nexport * from './PaymentRequest';\nexport * from './Payment';\nexport * from './BookingConfirmRequest';\nexport * from './BookingConfirm';\nexport * from './BookingReservationDetails';\nexport * from './BookingCancel';\nexport * from './Error';\nexport * from './Location';\nexport * from './CancellationPolicy';\nexport * from './BookingRefund';\nexport * from './ExchangeRates';\n","export * from './BookingField';\nexport * from './LocationAddress';\nexport * from './Product';\nexport * from './ProductImage';\nexport * from './ProductResponse';\nexport * from './RequestStatus';\nexport * from './CatalogGroup';\nexport * from './ProductInfoResponse';\nexport * from './ProductVideo';\n","export * from './Address';\nexport * from './ResponseResult';\nexport * from './ApiResponse';\n","export * from './CancellationPolicy';\nexport * from './CatalogGroup';\nexport * from './Category';\nexport * from './Image';\nexport * from './Location';\nexport * from './Meta';\nexport * from './Price';\nexport * from './Product';\nexport * from './ProductDetails';\nexport * from './ProductDetailsResponse';\nexport * from './ServiceProvider';\nexport * from './ServiceResponse';\nexport * from './ServiceVariant';\n","export * from './Address';\nexport * from './CatalogGroup';\nexport * from './Category';\nexport * from './ClientsCreateRequest';\nexport * from './ClientsData';\nexport * from './Configuration';\nexport * from './Event';\nexport * from './EventDetail';\nexport * from './EventsResponse';\nexport * from './Meta';\nexport * from './OrderRequest';\nexport * from './OrdersResponse';\nexport * from './ParentCategory';\nexport * from './Performance';\nexport * from './Performer';\nexport * from './Requirements';\nexport * from './SeatingChart';\nexport * from './TicketGroup';\nexport * from './TicketResponse';\nexport * from './UpcomingEvents';\nexport * from './Venue';\n","export * from './Availability';\nexport * from './CancelReservation';\nexport * from './Child';\nexport * from './CreateReservation';\nexport * from './ImageURL';\nexport * from './PropertyDetail';\nexport * from './PropertyLive';\nexport * from './PropertySearch';\nexport * from './Rating';\nexport * from './ViewReservation';\nexport * from './ViewReservationByExternalId';\n","import Model from '..';\nimport { CategoryGroupResult, Theme } from '../api/v4';\nimport { HourFormat } from '../api/v4/models/HourFormat';\nimport { PoiCategory } from '../api/v4/models/PoiCategory';\nimport { PoiCategoryGroup } from '../api/v4/models/PoiCategoryGroup';\n\nexport * from './plural';\n\n// const allCategoriesStatic: PoiCategory[] = [\n// // important order for getCategoryGroups() result indexes!\n// { id: 1, name: 'Attractions', description: null, parent: null },\n// { id: 3, name: 'Restaurants', description: null, parent: null },\n// { id: 24, name: 'Cafes', description: null, parent: null },\n// { id: 4, name: 'Nightlife', description: null, parent: null },\n// { id: 34, name: 'Shopping', description: null, parent: null },\n// { id: 40, name: 'NOTCATEGORIZED', description: null, parent: null },\n// // important order for getCategoryGroups() result indexes!\n\n// { id: 36, name: 'Desserts', description: null, parent: { id: 24, name: 'Cafes', description: null } },\n// { id: 33, name: 'Bakeries', description: null, parent: { id: 24, name: 'Cafes', description: null } },\n// { id: 48, name: 'Wineries', description: null, parent: { id: 4, name: 'Nightlife', description: null } },\n// { id: 31, name: 'Bars', description: null, parent: { id: 4, name: 'Nightlife', description: null } },\n// { id: 28, name: 'Stadium', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 30, name: 'Museums', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 35, name: 'Breweries', description: null, parent: { id: 4, name: 'Nightlife', description: null } },\n// { id: 44, name: 'Breakfast', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 32, name: 'Art Galleries', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 41, name: 'Dinner', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 46, name: 'Breakfast & Dinner', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 26, name: 'Theater', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 45, name: 'Breakfast & Lunch', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 29, name: 'Civic Center', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 25, name: 'Religious Places', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 47, name: 'Breakfast & Lunch & Dinner', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 42, name: 'Lunch', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 43, name: 'Lunch & Dinner', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 49, name: 'Gminings', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 50, name: 'Shopping_50', description: null, parent: { id: 34, name: 'Shopping', description: null } },\n// { id: 51, name: 'Shopping_51', description: null, parent: { id: 34, name: 'Shopping', description: null } },\n// { id: 52, name: 'Shopping_52', description: null, parent: { id: 34, name: 'Shopping', description: null } },\n// { id: 53, name: 'Shopping_53', description: null, parent: { id: 34, name: 'Shopping', description: null } },\n// { id: 54, name: 'Shopping_54', description: null, parent: { id: 34, name: 'Shopping', description: null } },\n// ];\n\nconst categoryGroupsStatic: PoiCategoryGroup[] = [\n {\n name: 'Attractions',\n categories: [\n {\n id: 28,\n name: 'Stadium',\n isCustom: false,\n },\n {\n id: 1,\n name: 'Attractions',\n isCustom: false,\n },\n {\n id: 30,\n name: 'Museums',\n isCustom: false,\n },\n {\n id: 32,\n name: 'Art Galleries',\n isCustom: false,\n },\n {\n id: 26,\n name: 'Theater',\n isCustom: false,\n },\n {\n id: 29,\n name: 'Civic Center',\n isCustom: false,\n },\n {\n id: 25,\n name: 'Religious Places',\n isCustom: false,\n },\n ],\n },\n {\n name: 'Restaurants',\n categories: [\n {\n id: 3,\n name: 'Restaurants',\n isCustom: false,\n },\n ],\n },\n {\n name: 'Nightlife',\n categories: [\n {\n id: 48,\n name: 'Wineries',\n isCustom: false,\n },\n {\n id: 31,\n name: 'Bars',\n isCustom: false,\n },\n {\n id: 35,\n name: 'Breweries',\n isCustom: false,\n },\n {\n id: 4,\n name: 'Nightlife',\n isCustom: false,\n },\n ],\n },\n {\n name: 'Cafes',\n categories: [\n {\n id: 36,\n name: 'Desserts',\n isCustom: false,\n },\n {\n id: 33,\n name: 'Bakeries',\n isCustom: false,\n },\n {\n id: 24,\n name: 'Cafes',\n isCustom: false,\n },\n ],\n },\n {\n name: 'Shopping',\n categories: [\n {\n id: 50,\n name: 'Flea & Street Markets',\n isCustom: false,\n },\n {\n id: 54,\n name: 'Antique Shops & Art Galleries',\n isCustom: false,\n },\n {\n id: 53,\n name: 'Gift & Speciality Shops',\n isCustom: false,\n },\n {\n id: 52,\n name: 'Shopping Malls',\n isCustom: false,\n },\n {\n id: 51,\n name: 'Farmers Markets',\n isCustom: false,\n },\n {\n id: 34,\n name: 'Shopping',\n isCustom: false,\n },\n ],\n },\n];\n\nexport const imgUrl = (apiPlaceUrl: string, x: number = 64, y?: number, type = 'Place'): string => {\n if (!apiPlaceUrl) {\n return 'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxANDw8NDQ8PEA0NDQ0NDRAPDQ8QEBUOFREWFhUSFRYYHSggGBolGxUVITEhJSkrLjAuFx8zODYtNygvLisBCgoKBQUFDgUFDisZExkrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrK//AABEIAOEA4QMBIgACEQEDEQH/xAAbAAEAAgMBAQAAAAAAAAAAAAAAAQUDBAYCB//EAEMQAAICAQICBQgGCQMDBQAAAAABAgMEBRESIQYTMUFRFCIyYXGBkbEVQnKhwfAkM0NSYoKS0eEHIzRzdPEWJTVj0v/EABQBAQAAAAAAAAAAAAAAAAAAAAD/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwD7iAAIBIAgEgAAAAAAAAAAAAAAAAAAAAAAAAACABIIAEggASAAAAAAAAAAAAAAAADXtzaoenbXH1OcUzXlrWMv20fdu/kgLAFetbxn+2j71JfgZ6tQpn6Ntb9SnHf4AbII3JAAAAAAAAAgEkAAAAAAEgAAAAAAAAHi62NcXObUYx5tt7ID2aWfqlOP+sl53dFc5fDu95WWahfmNwxE4VJ7Suly+Hh8/Ybmn6JVT5zXWWdrnPnz8Uu4DUWo5eR/x6erg+yy3w8V+WelodlvPJybJeMYco/fy+4vQBVVdHsaP7Ny+1OT/wAGxHScdfsa/fBM3QBpvSsd/sK/6EjXt0DGl+z2+zKS/EtABRPo+6+eNkWVvuT5x+7b8Tz5Vm4/62uN8F2yr5S+5fgX4ArsDWab+UZcM/3J8pb+rxLEr9Q0inI5yjtP9+PKXv8AH3ld1+Rg8rt78fsU16cV6/8APxA6EGHEyoXRU65KUX9z8Gu5mYAAAAAAAEAAABIAAAAAAY7rY1xc5vaMU3JvwA8ZmXCiDsse0V8W/BeLKSjGs1CSuv3hjJ711J7cXrf9/gMWmWoW9famsattU1v63rf4/A6FLYDzVWoJRilGMVsklskj2AAAAAAAAAAAAAhxTWz5p8mmSAOfzdOniyeRh+j2209zXqX4d3d4FppuoQyYccOTXKUX2xfh/k3Cg1TDljT8sxl2fr612OPe/wA+0C/BgwsqN8I2QfmyXvT70/WZwAAAEEkAAABIIJAAAAc/qU3mXrEg9qq3x5El4r6v57/YWer5vk9MrPrbcMPtvs/v7jB0fwupqUpfrbf9yxvt59i/PiwLGqtQioxSUYpJJdyPYAAAAAAAAAAAAAAAAAAhrckAc7H9AyOHsxcl8vCE/wA/d7DojT1XCWRVKt9rW8H4TXZ+fWa3R7MdtXDP9ZS+rmn28ux/nwYFqAABAAAAASCCQAAAoNU/SMunH7YVLrbF3eOz+5fzF+ii6PLrbcnJf17OCH2Vz+XD8C9AAESkkt20ku1t7ICQRGSfNc14kQmpLdNNeKe4HoGDyyri6vra+s/c448Xw33M4AHlzSajut32Lfm/YRGyLbSabj2pNNr2+AHsHmdijtxNLd7Ldpc/AmUklu3sl2tgSCIyTW6aafY090Y78mFa3snCCffOSivvAyg8V2xmlKMlKL7HFpr4o8vJrXJzgmuTXHHtAyg8V2xl6Moy27dmmewBQSXk2en2V5cdn4dZ/wCdv6i/KXpVU+qjbH0qLIzT9T5fPh+AFySY6LFOMZrsnGMl7GtzIAIJIAAAAwGAJNfULOCm2f7tc5L2qL2Ngr9eltjXfY2+LSAxdGK+HFh/E5yf9TXySLU0tGW2NT/0oP4rc3QBzv8AqH/8Vnf9tL5o6IpOm2HZk6dmUUQc7raJRrgnFNy3XLdtL4sCq6HXywrHpF8m4qpZOmzl9fFaXFVv3yrb2+y0c/iZVkNHxMWibqnqGr5GE7IPaUK55Vzm4vue0Wvedd0i0aeRjUzo2hn4XBfiSfdbGK4q5fwyW8X7Sk0/ozkXaRVRZHybPozLc7HU3Gahd5ROcE3FvdOMtveBcvoLpnVdT5HUuW3Wpf7/ABfv9b6XF377njoBmW2Y1tF83bZg5mRhO2XOU41y82Un3vZpe4xrXdS4Or+iLPKdtuN5WP5Lxfv8W/Fw9+3DuWPRPRpYGN1dk1ZkW225OTYlspX2S3lt6lyS9gFZrC/980v/ALTUflA5/SrXi61lZXZTlalZpuR4Kboqsok/5uOP8yOq1PAunq2n5Ma26KMbOhbZvHaMpqHAmt93vs+xdxWS6O3X1a1VODrllZvlOFPePOcKanXYtny8+G3PbsAqf9RrXk5VUF+p027T5z8HlZGTCMV7q1J/zo6Pp1Y7o42mQfn6nkRqs27ViV+fe/6Vw/zFTboOXPTd50t6hl6ni5+XBSh5qWRB8O++zUK4pcn3ctzfs6OvUNQycjPqmsemFeNgJXSg5R9Ky3euSa3k9tn4AZehEvJnl6XPt0+9ujfteHbvOr27byj7it6J6Xj6nVZq2pQhkWX3ZHVq9KdVOPCbjGEIvlH0W2zc/wDTf0fn4mVp9U3VZ1mLnxd8ptVSSlC3eyW+0ZLsXj2GPBx8zSHdj14ks3T7LbbqOpsqjdUrHvKqULGlKO7ezT/wGfo3RplWXOWm5tO19e0sLHyaZ0uUXv1sYLdxlty5bI5TQ/ohT1D6Rxo23/S+pNSeFdd/t9c9lxRi1278vWdPpOl33Z9OdPCqwKMam+uFfFVK62ViS3kq/Nilt4s1tAuztPebW9Lybo3annZVc678RRddlrcXtKxPsW/vAveiUMDgsnplMaYOajbtj2UbzS3W6kk3yl2l8VejalfkOavwbsRQUXF22UTU9990urk9ttl2+JaADU1arjouj41Ta9qW6+Rtni5bxkvGMl9wGh0es48Wp+EXD+ltL7kWJTdE3vjJeFk18n+JcgAAAAABgMASV/SBb4t32U/hJMsDW1Kvjptiu2VU0vbwvYDxoz3x6f8ApQ+RuFX0as4sWv8Ah4o/CT/DYtAABT9LNVeFh33x52qPV48f3sib4a4/1NAXAOL6MK+EszR8zJunfGmu+jIdsna6ba+GTjLffzLFLb2oseg2o2X4fV5Mt8vCtsw8tybbdlb242327x2e/rA6PcHHdHdWlKvUdYyLJ+SO23ySDm+COLQnHjjHsTm038DU6H52XTk1Qz7LJ/S2I82iM5Nqq6M5Sljw37F1c4Pb+Fgd4Dl5ZVn09GjrJ9R9D9b1XG+r63ylx4+Hs4tuW5PQDKsux8mV1k7JR1LOri5zcmoRs2jFb9y8AOnBV9JtVWDiX5T5uut9XH962Xm1x98mkUPQu7Jxr7dNz7p3XOijOpssk5ScZRUboJvujYnsvCQHZA+f5M4XarqNWVqWRi1ULC6iEM/yeG8qE57JvZ89ny8Sy6FZVssjNpjk2ZmBS6Vi5NrjNuxxbsrViS6xLlzA64HL/wCm2XZfptNt9k7bHZkqU7JucmlfNLdvwSSNLphY5ajp+PPLvxce2nNlbKnJdG8oKLju+zt+YHag5XTdLx1dXKvVsy6cZcUapamrYz257OH1l6jqkAPFr2jJ+EX8j2auqWcFFsvCqe3t25AV/RJfo3tsm/ki5K3o5Xw4tX8SlL4ybX3bFkAAAAAAGAwBJDRIYFF0afVvIxn+ytbj9l8vwXxL0oMz9Hzq7eyGTHq5/a5L/wDP3l+AOM6T41mpahjYNdk6asOH0hddCEZbX8XDRFcScW1zls9+47MAcFrOmX6dfiapPLvy1TbHGyFZVSnHFufDKX+3FbpS4XzMXS+F+HlX+SQm/pzHhjJxi2q8yMo19Y9uxdVNv2wPoRGwHEdJtN3p0/QMbijXdwRunGO/Di0R4m2+zeUku3te5i6TdH8uimOdHOyMq3TrI5VVU6ceKai/9xLq4J84cS27zvCQOOx7Ou12q+Cl1VmgxlGTi0vOyXJJvx2fYVvQ/pHjYNeVTku2Fj1LOsSWLkTXBKx7PeMWj6FsSBwuu3fTWRg4mLZbDHjGepXXKlpqVcuCmO1kdt+Nt7NdyZj1/SsjAsxdVlmZGW8O+NdsZ00prFuahY11cU3tvF89+zfuO+AHzqzLwqNX1OefWpwtjgdRKWJO9PahcWzUXt2o3ui6VmpXX4FNlGmPEjCxSpnRVZl9Zup11yS7I8m0kduAPnPQHpPi4Wn1Y+TK2F0LMhyj5LkS5SunJc4xa7GjJ0pzcW3O0rKyIO3BljZspceLZYvOUeDir4W09/FH0IAcbpuraLG6vyaiuF8pqFUoaZbXJSn5vpdWuHt2337zsgABTdKbtqOBelbZGCX3/gviXJQZT8ozq6+2GNHrJ/a5P58P3gXONV1cIVr6kIx+C2MoAAAAAAAYDAEkEhgV2u4XX0yivTj59f2l3e9bonRM3yimMn6cfMs+0u/39pYHPZH6Dk9cv+PkPaxLsjPt3+b+IHQgiL3W65p81t4EgAAAAAAAAAAAAAAAAAABr5+UqK52y7IrkvGXcviV/RvFca5XWfrMiXWSffw93zb95rZT8vyFTH/j474rWuyUvD5r4nQJbckAAAAAAAAAYDAEkEhgDBl40boSrmt4yW3rXg16zOAKDS8uWLZ5HkPzf2Fj7HHuX57OwvzT1PT4ZMOCfJrnCS7YvxRWYOozxpLGzPZVb9Vr1v8AH4gX4IT3JAAAAAAAAAAAAAABS6zqEnLyTH53WcpNfUj38+57fAjU9Wk5eT4nn3Pk5LnGHjz8fkbWkaXHHi23xWz52Tfe/BeoDNpmBHGrVce3tlLxl4m2ABAAAAAAAADAAEkEgAAABgzMSF8HCyO8X2eKfin3MzgDneHIwPR3vxV3fXgvz7vYW2BqdWQt65Lfvi+Ul7jcKrO0Kq18cd6rO1Tr5c/FoC1BQJ52N2qOTWu9ent8/mZaukdW/DbGyqXepRbX3c/uAugalWp0T9G6v3zSfwZsRti+yUX7JID2Dw7IrtkvijBbqNMPSurX88d/gBtApr+kdEeUOOyXcoR/uYXk5uRyrrVEH9afpbe9fgBb5mbXQuK2aiu5d79i7ymlk5Gf5tKdOO+Tsl6Ul6v8fE2cTQK4vrLpSus73PnHf2d/vLdLbkgNXTtOrxo8Na5v0pP0n7f7G2AAAAEAAAAAAAAkAAAAAAAAAAAAAMdtMZ8pxjJeEop/MyACtt0PGn21RX2XKPyZry6M4/cpr2T/ALouiAKVdGcf/wCx+2f9kbFWg40f2Sf2pSl92+xZADHTjwr5QhGP2YpfIyAASCABIIAEggAAAAAAAAASAAAIJAAAAAAAAAAAACABIIAEggASCABIIAEkAAAAAAAAAASAABAAAAAAAAAAAAASAAAAAAAAAAAAAAACAAAAAAAAf//Z';\n }\n\n const xy = `${x}x${y || x}`;\n const cloudfrontUrl = `https://d2v9cz8rnpdl6f.cloudfront.net/${xy}`;\n const imageTypeAndUrl = apiPlaceUrl.substring(apiPlaceUrl.indexOf(`/${type}/`));\n return cloudfrontUrl + imageTypeAndUrl;\n};\n\nexport const cityImgUrl = (apiPlaceUrl: string, x: number = 64, y?: number): string => {\n const xy = `${x}x${y || x}`;\n const cloudfrontUrl = `https://d2v9cz8rnpdl6f.cloudfront.net/${xy}`;\n const placeUrl = apiPlaceUrl.substring(apiPlaceUrl.indexOf('/City/'));\n return cloudfrontUrl + placeUrl;\n};\n\nexport const imgUrlThumbnails = (imageUrl: string): string | undefined => {\n // Find the \"WxH\" format in the URL using regex\n const sizeMatch = imageUrl.match(/\\/(\\d+)x(\\d+)\\//);\n if (!sizeMatch) {\n return undefined;\n }\n\n const width = Number(sizeMatch[1]);\n const height = Number(sizeMatch[2]);\n\n if (isNaN(width) || isNaN(height) || width === 0) {\n return undefined;\n }\n\n // Resize width to 64 pixels and calculate proportional height\n const ratio = width / 64;\n const newHeight = Math.round(height / ratio);\n const newSize = `64x${newHeight}`;\n\n // Generate the new URL\n const newUrl = imageUrl.replace(sizeMatch[0], `/${newSize}/`);\n\n return newUrl;\n};\n\n// export const getCategoryGroups = (poiCategories?: PoiCategory[]): PoiCategoryGroup[] => {\n// const allCategories = poiCategories || allCategoriesStatic;\n\n// const mainCategories = allCategories.filter((category) => category.parent === null);\n\n// const subCategories = allCategories.filter((category) => category.parent !== null);\n\n// const categoryGroups: PoiCategoryGroup[] = mainCategories.map((mainCategory) => {\n// const result: PoiCategoryGroup = { ids: [], group: '' };\n\n// result.ids.push(mainCategory.id);\n\n// subCategories.filter((subCategory) => subCategory.parent && subCategory.parent.id === mainCategory.id).forEach((subCategory) => result.ids.push(subCategory.id));\n\n// result.group = mainCategory.name;\n\n// return result;\n// });\n\n// return categoryGroups;\n// };\n\n// export const getCategoryGroup = (categoryId: number, poiCategories?: PoiCategory[]): string => {\n// const allCategories = poiCategories || allCategoriesStatic;\n\n// const category = allCategories.find((category) => category.id === categoryId);\n\n// const parentCategory = category?.parent?.id ? allCategories.find((cat) => cat.id === category.parent!.id) : category;\n\n// if (!parentCategory) {\n// return 'UNKNOWN';\n// }\n\n// return parentCategory.name;\n// };\n// const poiCategoryIds = categoryGroup.categories.map((category: PoiCategory) => category.id);\n\nexport const getCategoryGroups = (categoriesData: PoiCategoryGroup[]): CategoryGroupResult[] => {\n return categoriesData.map((categoryGroup) => {\n const result: CategoryGroupResult = {\n ids: categoryGroup.categories.map((category: PoiCategory) => category.id),\n group: categoryGroup.name,\n };\n return result;\n });\n};\n\nexport const getCategoryGroup = (categoryId: number, poiCategoryGroups?: PoiCategoryGroup[]): string => {\n const categoryGroups = poiCategoryGroups || categoryGroupsStatic;\n\n for (const group of categoryGroups) {\n if (group.categories.some((category: PoiCategory) => category.id === categoryId)) {\n return group.name;\n }\n }\n\n return 'UNKNOWN';\n};\n\n// export const getCategoryGroup = (categoryId: number, poiCategories?: PoiCategory[]): string => {\n// const allCategories = poiCategories || allCategoriesStatic;\n\n// const category = allCategories.find((category) => category.id === categoryId);\n\n// const parentCategory = category?.parent?.id ? allCategories.find((cat) => cat.id === category.parent!.id) : category;\n\n// if (!parentCategory) {\n// return 'UNKNOWN';\n// }\n\n// return parentCategory.name;\n// };\n\n// export const getSubCategoryIds = (parentCategoryId: number, poiCategories?: PoiCategory[]): number[] => {\n// const allCategories = poiCategories || allCategoriesStatic;\n// const subCategories = allCategories.filter((category) => category.parent?.id === parentCategoryId);\n// return subCategories.map((subCategory) => subCategory.id).concat(parentCategoryId);\n// };\n\nexport const hoursFormat = (hour: string | null, daysArray: string[], closed: string) => {\n if (hour && hour.search(',') > -1) {\n const raw = hour.split('|');\n // To do model e ekle\n const hours: HourFormat[] = [];\n raw.forEach((item: string) => {\n const h = item.split(': ');\n const days = h[0].split(',');\n const clock = h[1].split(',').map((a) => a.trim());\n days.forEach((d) => {\n const day = d.replace(/ /g, '');\n const i = hours.findIndex((o) => o.day === day);\n if (i === -1) {\n hours.push({ day, clock });\n } else {\n hours[i].clock = hours[i].clock.concat(clock);\n }\n });\n });\n\n if (hours.length < 7) {\n const closeDays = daysArray.filter((day) => {\n return hours.every((h) => !h.day.includes(day));\n });\n\n closeDays.forEach((d) => {\n const currentIndex = daysArray.findIndex((day) => day === d);\n hours.splice(currentIndex, 0, { day: d, clock: [closed, ''] });\n });\n }\n return hours;\n }\n\n const formattedDays: HourFormat[] = daysArray.map((day) => {\n return {\n clock: [hour || ''],\n day,\n };\n });\n return formattedDays;\n};\n\nexport const compareStringForSort = (a: string, b: string): number => {\n const nameA = a.toLowerCase();\n const nameB = b.toLowerCase();\n if (nameA < nameB) return -1;\n if (nameA > nameB) return 1;\n return 0;\n};\n\nexport const emailFormatValid = (email: string): RegExpMatchArray | null => email.match(/^(([^<>()\\\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/);\n\nexport const passwordFormatValid = (password: string): RegExpMatchArray | null => password.match(/^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])([a-zA-Z0-9!-@#$^_:,. ]{8,})$/);\n\nexport const toEngChars = (str: string): string =>\n str\n .replace('Ğ', 'G')\n .replace('Ü', 'U')\n .replace('Ş', 'S')\n .replace('İ', 'I')\n .replace('Ö', 'O')\n .replace('Ç', 'C')\n .replace('ğ', 'g')\n .replace('ü', 'u')\n .replace('ş', 's')\n .replace('ı', 'i')\n .replace('ö', 'o')\n .replace('ç', 'c')\n .replace('á', 'a')\n .replace('é', 'e')\n .replace('í', 'i')\n .replace('ó', 'o')\n .replace('ú', 'u')\n .replace('ý', 'y')\n .replace('Á', 'A')\n .replace('É', 'E')\n .replace('Í', 'I')\n .replace('Ó', 'O')\n .replace('Ú', 'U')\n .replace('Ý', 'Y')\n .replace('à', 'a')\n .replace('è', 'e')\n .replace('ì', 'i')\n .replace('ò', 'o')\n .replace('ù', 'u')\n .replace('À', 'A')\n .replace('È', 'E')\n .replace('Ì', 'I')\n .replace('Ò', 'O')\n .replace('Ù', 'U')\n .replace('â', 'a')\n .replace('ê', 'e')\n .replace('î', 'i')\n .replace('ô', 'o')\n .replace('û', 'u')\n .replace('Â', 'A')\n .replace('Ê', 'E')\n .replace('Î', 'I')\n .replace('Ô', 'O')\n .replace('Û', 'U')\n .replace('ã', 'a')\n .replace('ñ', 'n')\n .replace('õ', 'o')\n .replace('Ã', 'A')\n .replace('Ñ', 'N')\n .replace('Õ', 'O')\n .replace('ä', 'a')\n .replace('ë', 'e')\n .replace('ï', 'i')\n .replace('ÿ', 'Y')\n .replace('Ä', 'A')\n .replace('Ë', 'E')\n .replace('Ï', 'I')\n .replace('Ÿ', 'Y');\n\nexport const unicodeToString = (str: string): string =>\n str\n .replace(/u00c7/g, 'Ç')\n .replace(/u00e7/g, 'ç')\n .replace(/u011f/g, 'ğ')\n .replace(/u0130/g, 'İ')\n .replace(/u0131/g, 'ı')\n .replace(/u00d6/g, 'Ö')\n .replace(/u00f6/g, 'ö')\n .replace(/u015e/g, 'Ş')\n .replace(/u015f/g, 'ş')\n .replace(/u00dc/g, 'Ü')\n .replace(/u00fc/g, 'ü');\n\nexport const hourRange = ['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23'];\nexport const minuteRange = ['00', '05', '10', '15', '20', '25', '30', '35', '40', '45', '50', '55'];\nexport const timeRange: Array<string> = [];\n\nhourRange.forEach((h) => {\n return minuteRange.forEach((m) => {\n return timeRange.push(`${h}:${m}`);\n });\n});\n\nexport const startTimeRange = (all: boolean = true) => {\n return all ? timeRange : timeRange.filter((_, i) => i != timeRange.length - 1);\n};\n\nexport const endTimeRange = (startHour?: string) => {\n if (startHour === undefined) return timeRange;\n\n const filteredEndHouts: string[] = [];\n let getAll: boolean = false;\n for (let i = 0; i < timeRange.length; i++) {\n const hr = timeRange[i];\n if (getAll) {\n filteredEndHouts.push(hr);\n } else {\n if (hr === startHour) getAll = true;\n }\n }\n\n return filteredEndHouts;\n};\n\nexport const deepCopy = <T>(oldObject: T): T => JSON.parse(JSON.stringify(oldObject)) as T;\n\nexport const getYourGuideImageArrayFormat = (imgUrls: Array<string>, formatId: string) => imgUrls.map((img) => img.replace('[format_id]', formatId));\n\nexport const getYourGuideImageFormat = (str: string, formatId: string): string => str.replace('[format_id]', formatId);\n\nexport const companionTitleOptions = [{ value: 'Family member' }, { value: 'Friend' }, { value: 'Work colleague' }];\n\nexport const delay = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms));\n\n/**\n * Capitalize first letter of string param\n * @param {string} any string\n * @returns {string} first letter is uppercase\n */\nexport const capitalizeFirstLetter = (string: string): string => {\n const lowerCaseString = string.toLowerCase(); // Tüm harfleri küçük yap\n return lowerCaseString.charAt(0).toUpperCase() + lowerCaseString.slice(1); // İlk harfi büyük yap ve geri kalanını ekle\n};\n\nexport const removeDuplicateValuesById = <T extends { id: string }>(duplicateItems: T[]) => {\n const uniqueItems = duplicateItems.filter((item, itemIndex, allItems) => {\n const firstItemIndex = allItems.findIndex((i) => {\n if (item && i && item.id && i.id) return i.id === item.id;\n // eslint-disable-next-line no-console\n // console.log('vallahi null falan geldi!', item, i);\n return false;\n });\n const isUniqueItem = firstItemIndex === itemIndex;\n return isUniqueItem;\n });\n return uniqueItems;\n};\n\nexport const removeDuplicateValues = <T>(duplicateItems: T[], compareFn: (t1: T, t2: T) => boolean) => {\n const uniqueItems = duplicateItems.filter((item, itemIndex, allItems) => {\n const firstItemIndex = allItems.findIndex((i) => compareFn(i, item));\n const isUniqueItem = firstItemIndex === itemIndex;\n return isUniqueItem;\n });\n return uniqueItems;\n};\n\nexport const getAge = (dateOfBirth: string): number => {\n var today = new Date();\n var birthDate = new Date(dateOfBirth);\n var age = today.getFullYear() - birthDate.getFullYear();\n var m = today.getMonth() - birthDate.getMonth();\n if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) {\n age--;\n }\n return age;\n};\n\n// export const tourAvailable = (bookings: Model.Booking[], TOUR_PROVIDER_IDS: Model.PROVIDER_ID[], gygTourIds: number[], bbTourIds: number[]): boolean => {\n// const tourProviderBooking = bookings.find((booking: Model.Booking) => TOUR_PROVIDER_IDS.includes(booking.providerId));\n// if (tourProviderBooking) {\n// return tourProviderBooking.products.some((product) => !product.info.includes(Model.BOOKING_PRODUCT_INFO.TICKET));\n// }\n// return false;\n// };\n\n// export const ticketAvailable = (bookings: Model.Booking[], TICKET_PROVIDER_IDS: Model.PROVIDER_ID[], gygTourIds: number[], bbTourIds: number[]): boolean => {\n// const ticketProviderBooking: Model.Booking | undefined = bookings.find((booking: Model.Booking) => TICKET_PROVIDER_IDS.includes(booking.providerId));\n// if (ticketProviderBooking) {\n// return ticketProviderBooking.products.some((product) => product.info.includes(Model.BOOKING_PRODUCT_INFO.TICKET));\n// }\n// return false;\n// };\n\nexport const tourAvailable = (bookings: Model.Booking[], TOUR_PROVIDER_IDS: Model.PROVIDER_ID[], gygTourIds: number[], bbTourIds: number[], viatorTourIds: string[], toristyTourIds: string[]): boolean => {\n return bookings.some(\n (booking) =>\n TOUR_PROVIDER_IDS.includes(booking.providerId) &&\n booking.products.some((product) => {\n const productIdAsNumber = Number(product.id);\n return (\n !product.info.includes(Model.BOOKING_PRODUCT_INFO.TICKET) &&\n (gygTourIds.includes(productIdAsNumber) || bbTourIds.includes(productIdAsNumber) || viatorTourIds.includes(product.id.toString()) || toristyTourIds.includes(product.id.toString()) || booking.providerId === 11 || booking.providerId === 8)\n );\n }),\n );\n};\n\nexport const ticketAvailable = (bookings: Model.Booking[], TICKET_PROVIDER_IDS: Model.PROVIDER_ID[], gygTourIds: number[], bbTourIds: number[], viatorTourIds: string[], toristyTourIds: string[]): boolean => {\n return bookings.some(\n (booking) =>\n TICKET_PROVIDER_IDS.includes(booking.providerId) &&\n booking.products.some((product) => {\n const productIdAsNumber = Number(product.id);\n return (\n product.info.includes(Model.BOOKING_PRODUCT_INFO.TICKET) &&\n (gygTourIds.includes(productIdAsNumber) || bbTourIds.includes(productIdAsNumber) || viatorTourIds.includes(product.id.toString()) || toristyTourIds.includes(product.id.toString()) || booking.providerId === 11 || booking.providerId === 8)\n );\n }),\n );\n};\n\nexport const restaurantReservationAvailable = (bookings: Model.Booking[], RESTAURANT_RESERVATION_PROVIDER_IDS: Model.PROVIDER_ID[]): boolean => {\n return bookings.some((booking: Model.Booking) => RESTAURANT_RESERVATION_PROVIDER_IDS.includes(booking.providerId));\n};\n\nexport const offerAvailable = (offers: Model.Offer[]): boolean => {\n return offers.some((offer) => offer);\n};\n\nexport const hexToRgb = (c: string): string => `${c.match(/\\w\\w/g)?.map((x) => +`0x${x}`)}`;\n\nexport const setTheme = (theme: string, COLORS: Theme) => {\n const themeParams = theme === 'dark' ? COLORS.dark : COLORS.light;\n\n document.documentElement.style.setProperty('--primary-color', themeParams.primary);\n document.documentElement.style.setProperty('--primary-color-rgb', hexToRgb(themeParams.primary));\n document.documentElement.style.setProperty('--secondary-color', themeParams.secondary);\n document.documentElement.style.setProperty('--secondary-color-rgb', hexToRgb(themeParams.secondary));\n document.documentElement.style.setProperty('--success-color', themeParams.success);\n document.documentElement.style.setProperty('--success-color-rgb', hexToRgb(themeParams.success));\n document.documentElement.style.setProperty('--warning-color', themeParams.warning);\n document.documentElement.style.setProperty('--warning-color-rgb', hexToRgb(themeParams.warning));\n document.documentElement.style.setProperty('--info-color', themeParams.info);\n document.documentElement.style.setProperty('--info-color-rgb', hexToRgb(themeParams.info));\n document.documentElement.style.setProperty('--danger-color', themeParams.danger);\n document.documentElement.style.setProperty('--danger-color-rgb', hexToRgb(themeParams.danger));\n document.documentElement.style.setProperty('--text-primary-color', themeParams.textPrimary);\n document.documentElement.style.setProperty('--text-primary-color-rgb', hexToRgb(themeParams.textPrimary));\n document.documentElement.style.setProperty('--header-color', themeParams.headerBg);\n document.documentElement.style.setProperty('--header-text-color', themeParams.headerTextColor);\n document.documentElement.style.setProperty('--background-color', themeParams.background);\n document.documentElement.style.setProperty('--background-color-rgb', hexToRgb(themeParams.background));\n};\n\nexport const setLogo = (darkLogo: string, lightLogo: string) => {\n document.documentElement.style.setProperty('--app-logo-dark', `url(${darkLogo})`);\n document.documentElement.style.setProperty('--app-logo-light', `url(${lightLogo})`);\n};\n\nexport const arraysEqual = (a: number[], b: number[]): boolean => {\n if (a.length !== b.length) return false;\n\n const sortedA = [...a].sort((x, y) => x - y);\n const sortedB = [...b].sort((x, y) => x - y);\n\n for (let i = 0; i < sortedA.length; i += 1) {\n if (sortedA[i] !== sortedB[i]) return false;\n }\n\n return true;\n};\n\nexport const formatDateWithTimezone = (date: string, timezone: string = 'UTC'): string => {\n // Parse the input date string to a Date object\n const inputDate = new Date(date);\n\n // Ensure the input date is valid\n if (isNaN(inputDate.getTime())) {\n throw new Error('Invalid date format');\n }\n\n // Format the date in the specified timezone\n const dateInTimeZone = new Date(\n new Intl.DateTimeFormat('en-US', {\n timeZone: timezone,\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n hour12: false,\n }).format(inputDate),\n );\n\n // Convert the date to the YYYY-MM-DD HH:mm:ss format\n const timezonedOptInDate = `${dateInTimeZone.getFullYear()}-${String(dateInTimeZone.getMonth() + 1).padStart(2, '0')}-${String(dateInTimeZone.getDate()).padStart(2, '0')} ${String(dateInTimeZone.getHours()).padStart(2, '0')}:${String(\n dateInTimeZone.getMinutes(),\n ).padStart(2, '0')}:${String(dateInTimeZone.getSeconds()).padStart(2, '0')}`;\n\n return timezonedOptInDate;\n};\n\nexport const getProviderId = (providerName: string): Model.PROVIDER_ID | undefined => {\n switch (providerName) {\n case Model.PROVIDER_NAME.YELP:\n return Model.PROVIDER_ID.YELP;\n case Model.PROVIDER_NAME.GYG:\n return Model.PROVIDER_ID.GYG;\n case Model.PROVIDER_NAME.BOOK_BARBADOS:\n return Model.PROVIDER_ID.BOOK_BARBADOS;\n case Model.PROVIDER_NAME.VIATOR:\n return Model.PROVIDER_ID.VIATOR;\n case Model.PROVIDER_NAME.REZDY:\n return Model.PROVIDER_ID.REZDY;\n case Model.PROVIDER_NAME.TORISTY:\n return Model.PROVIDER_ID.TORISTY;\n case Model.PROVIDER_NAME.VICTORY:\n return Model.PROVIDER_ID.VICTORY;\n default:\n // eslint-disable-next-line no-console\n console.warn(`Unknown provider name: ${providerName}`);\n }\n};\n\nexport const eventCategoryIcons: Record<string, string> = {\n sports: `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,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\"/><image width=\"192\" height=\"192\" id=\"img2\" href=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS10cm9waHkiPjxwYXRoIGQ9Ik02IDlINC41YTIuNSAyLjUgMCAwIDEgMC01SDYiLz48cGF0aCBkPSJNMTggOWgxLjVhMi41IDIuNSAwIDAgMCAwLTVIMTgiLz48cGF0aCBkPSJNNCAyMmgxNiIvPjxwYXRoIGQ9Ik0xMCAxNC42NlYxN2MwIC41NS0uNDcuOTgtLjk3IDEuMjFDNy44NSAxOC43NSA3IDIwLjI0IDcgMjIiLz48cGF0aCBkPSJNMTQgMTQuNjZWMTdjMCAuNTUuNDcuOTguOTcgMS4yMUMxNi4xNSAxOC43NSAxNyAyMC4yNCAxNyAyMiIvPjxwYXRoIGQ9Ik0xOCAySDZ2N2E2IDYgMCAwIDAgMTIgMFYyWiIvPjwvc3ZnPg==\"/></defs><style/><use href=\"#img1\" x=\"28\" y=\"1\"/><use href=\"#img2\" transform=\"matrix(.779,0,0,.779,53,24)\"/></svg>',\n )}`,\n concerts: `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAAD+CAMAAABIpbocAAAAAXNSR0IB2cksfwAAAppQTFRF6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFKWUw/UAAAAN50Uk5TAAsYJDE9SldjcHx4bF9TQzotIBQOO2CHrc//8cSgek8snevetotWE2Sm6s6OElWZ3PrDfgMab8L976FOB3XK9aVNAkvlhB8Pe+S8TJH00wUho24Z+10MjNlJXOewHSrF9gYKPlDiFRay8mLsEJyJUr2K4Cu62/4/7qpexmnRfdrdZdS4ASUR3zSQ6ccNaAT3jdZCCZP8grOWHkGveWe7zINEpwieny8wdr88cbSr7Th3zbX4MlE3lW1h8DMm15ikG8iIgUVAf8GF2HQnNljzIyg5rFrL4ymSHMAuc4+Gfo4X8gAAC9NJREFUeJzVnXt0FcUdx3cKTfEAiiQkxx4bXyHHhEcE4qOI6I0niadoEwUCQgyQgERiTGol18MjPggBFBBICBCeFSgvFQUbAgETMaeVWlpRw6FRWmtbXoW29EgrDZbeu/e5d/YxM7+Znd3PH9x7d2d3v19O7uO385vfDynCQDgXBF5NwDkTAqp1L6fypYCLcjZy8/l+XXHfWA67xm/n91yvzNFI30SE/kkx/nrU2XWV29U5GRnk+x8+R39YEkInU37DRQEPI3f6XHzFfPRNvqPb4SLARuLT0RfQc/RHqBV6DpiRLNRxw1moBJV0hA6ATgAxkovQMdDFtdyBfgE4mt1IThw6CriwHpmtWe+wHstqJB8dYb2kGenXvsV4JJuR0V/0/yXjBa24ZuiF91iOYzFSgD5guRQpI9E2hqMYjEyAf1ZakIU2Ux9DbaQItVBfhJqcneM2Uh5CaaT40rei3hxaEoetpzuAzshU0Ec9HXf3a6QZTmNkOtpDKQZEHmqgGE1hxJO+m1oMjB93ryceS2ykuOebTGJAeN69SDqU1MjNfRjCDQ6MWUE4kNBIxUXYb1N2Cq6Q/XkRGcnK2AESA2I8WkIyjMRIwuSfA8WAGJa0jmAUgZFuz24FiwFRuJ0gkLY24kWvcxADY9IZy18slkZmbeIiBciUNectRlgZmfPfLbzEgCjZaXE/z8JINcn7zBamNX1kut/cSP9LPLXAGPUn068yUyPDTvPVAuPJ02tM9poZecnsQAmUnjP5kjcxMvYWZ7zPI6SkbDDcZ2zE+z77/VxRPIXmGO0yNDK/gd8tf34Y/xg2MlKL6gRpgZHwicEOIyOVO0VJAfLM8/rbDYwsWi5OCozKk/qfpfpGKnaJ1ALjJzt0p7h0jVw/+HOxYkD0/Uxvq56RxV9T3VGynbF6f/d6RgqZbofbR96Ov+MbdYwsIYqRZXJ15rPYNtxI0ZBX7RADoqoS24QbWb7IDilAnn8mdgtmJLvDHikwynuVx2yJNVL0b3umDaBgn8ExRjL/KiJdSACFS69oN8Tovusv9mmBUTJP+1prpPbPzPPctpOvnT3RGqmvtVMKjD73aMJFjZFuK+bbKwbEnBnRrzRGVsX83TmcH0ZPPUUbWUg6qeIQqkujXkQbGXrGbikwhmdPj7yIMtL4ou1SgIyOuq8QZeTV1+yXAuTst+GnESPf7SdDCoyod0nEyNoXZEiBkdMrfBM1bCQ/1Wk3SEl4eWroWdiIm77UI6QfDD0LGVm818k3Tozp1Rl8EjKyfq4sKTBqioNPQkY2zpYlBUbhx8F5rKCR7onytMConRx4DBpZ/bI0JUD6HA88BozkpclPCmBlwST1IWDEw3dRiq0Ef3AFjLxuMOngBvJOqeG5amTzeeffXDRmiJowqhoZbJXo4WheKfT/qxrZOlOuFBiVVf5/VSO3Wq9TczKLJygBI9t+KlsKjKXjlYCRntfJlgLjtXFKwMgGw3QCd5CU/I5qJOsRN3/4+llWoBpx2+0snIuXVCO7KmQLgbJijGrkzdjJH9dR/5hq5EVnz6qTMPCAz0hxs2wZcNIO+YzsLpMtA05Dvs/I7f+SLQPO3bt9Rpyb0UTOqjyfkT2l1gOdTs4mnxFXZDpYEf8pUvZOtx7neBofRtP3yhbBg7WjUNNU62HOZ/lYdFOXbBE8GLMC9egrWwQPRteht2dYD3M+L01DTloiws4PjqAtVbJF8KC0Gg3/UrYIHlRWoVsuyxbBhVMo42+yNXDhabSvRLYGLpShgTpZzS5kHXJHeqwl65Db75cGiUPNxdajXMA3aP8U2Rq4cBm5e7YqzCkUlyBbAw+SP0Re+npDDmRTDmqZJFsEDzL2oYNFskXwYPODqG6BbBE8qClGyivLZKvgwJYspMymLcnlRG77ACmtE2Wr4MDY5UhpqJGtggNLHkdKYnfZKjhwaztSSvbJVgGnxx8UpLRNkC0Dzrb7/ZOh35ctA446Y6Xc+D/ZOsD84z9+I4fHy9YBpvFhv5F7/yhbB5SZe9/zG4n/nmwhUO5oCqQ5HXpCthIgO+4LGCmXUIGRKztHBIy4/bs9ueyJgJH5K2VLgbEqTwlmmU6zr2asCMb5l+upRlyexbHyUSVoxI0r9yJ41DKSqpGa03YXwOVJhdf/b2C1gqsnSbrUqaqAket6SpUCwpOmpi0HlyaVufdva9bT6kPQiIu/3Hfdqz4EjbQXSJQCwhMsfRtah+janNk3hgceQ0Zcm459Jhjfhozk3iCr6DWMhaF78OHV0y5NHOgKyQ4bKTpoMNTReMPviEiFgV+NliIFRqTuTsSIG2dF65eGO2BFVeFwYVTy1j3hp1FGeveWIAUEuhz5K4oykrXgUQliILx9V+R5dMmdUb+zXQqIjLioamCaak4uKx50JboBh8aIu9a/jTwXXeFTW/HMVdVqhmg+ZbVGPip3Xh1sI7J/pnkZUxXQPYmBs49oy1TEGKlr4tkYUCRR34UqsfUl3RIqTjwfk+eAFcp0SWb2nsyYDZiR3BQ33FCpxla44aVLjz5iixQQGb2xavA6NVifk9paiIhLeJ8uHSNtzU6vvxMoIKJFrypuSYezvxY3v6DTUFi3vO92vHa2g3gXDdHZql+n+A2s5LSDSDukt1XfSEGnnBZ1JNyn367NoHL0xxVOra1n0FrBsG2HU9tE1O83aBxkWMvbmRmCSZsyDPYYFyX/5CExWkDsH2S0x9jIiNU5QrRAGGDc09ekTHz84WwBWiA0DzbeZ1bv/riXd99yGAdKdb7RQ5gW7m8/5qSq5S0jL5jsNe9A4KR1S8MWpZvttmil4JwsleTFI0z3WxjJGuqU4KTY4nvNqrkFWuaMaiOH0iwGWHbpOPEjJ5QMnPBbqwZI1u1GFp6QP9/rrbTsoEfQN2XUANllv3s03W45hqQBjOzlvGs6CGrGEnWyeaDTeow4CleTFM4iMpI3UOY6rO5Et0LIegvVXl4L0gIhtY1oGGGTpL5PyrrXNeUzsrZBpN2ejk0+yy4GQPnVWWQDidtWfZrLqgVCUW/Sevbk/beSurFpgWAcomOQG6mJt78VkXGIjkHREa3OY3cQv30k+Via1m52B/FzL1AUIqbqUWdvEF+SSFMtlq7ZXvtz9k04tAyiWlZI2TXwsQ/pxrNjEaJj0LY/tKuumFWIjkFrJPMBe4L4G39NeQB1Q0p7gni9WUJz6Dtr2hHEt07UnwQxgaFF6MIBoqufeufRZ7yy9Dq9thfDQRSQhOgYTE1bq9exHEUKUYiOwdZ9VmgQ/zVTbWs2IyKD+KlsDZwY+wHXojrrQUyktrEdx9rYeH6D5b0/JkhDdAzmDs3eZBGTQMQhOgZ7q2kRk0BoBnPLOUDPbP4Fdmd/xf7zB2CEfxC/EXCnBmBEqTu3HnA0jkG6DBkQI8p3Hm+FHB4DVYiOATKidNbymwSiC9ExYEY4TgJ5tsEq/wCNKJ/fDzxBkJxZqbATQI1wCuILO6Ar1cBGMrd6oKfw8X5/6BnARpSEMvgkEH2IjgE3wmESiCFEx+BgBDwJNG0lh0WpPIwAJ4GKGnksI+JiBJTJuSaZeDLHDD5GIJmcbCE6Bicj7Jmc/iJfPOBkhHkSyCzfkgpeRpTj2SxBvGm+JRXcjDAF8eb5llTwM8IQxKMWuskc03NxOxN9JickRMfgaYQ2kxMSomPwNEI5CXQ4heu1eZ5MOTGPPIi3zrekgq8RiiCeIN+SCs5GiIN4z1yGyRwzeBshzOQEh+gY3I0QTQLBQ3QM/kZIJoEa8rlflr8RgkzO1Db+VxVgxDKIb61inMwxQ4QRiyCeS4iOIcSIaRDPJ0THEGNEOWkY91HkW1IhyIjxJBBFviUVgowYZnLGljPhhigjBkF88x7IZI4ZwozoZnLyC9ExxBnRyeTkGKJjCDSCZXLS5ltSIdJIzCQQdb4lFUKNaDM5NwhdIC/UiCaIx8v98L2U0LNHZXJyDtExBBsJZ3LyDtExRBsJZnIy5VtSIdyImsnJlm9JhXgjviCebEkkDBuM5A082iz+KjYYUXL323CR/wPjs2DZf3CoBgAAAABJRU5ErkJggg==\"/><image width=\"192\" height=\"192\" id=\"img2\" href=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1ndWl0YXIiPjxwYXRoIGQ9Im0xMS45IDEyLjEgNC41MTQtNC41MTQiLz48cGF0aCBkPSJNMjAuMSAyLjNhMSAxIDAgMCAwLTEuNCAwbC0xLjExNCAxLjExNEEyIDIgMCAwIDAgMTcgNC44Mjh2MS4zNDRhMiAyIDAgMCAxLS41ODYgMS40MTRBMiAyIDAgMCAxIDE3LjgyOCA3aDEuMzQ0YTIgMiAwIDAgMCAxLjQxNC0uNTg2TDIxLjcgNS4zYTEgMSAwIDAgMCAwLTEuNHoiLz48cGF0aCBkPSJtNiAxNiAyIDIiLz48cGF0aCBkPSJNOC4yIDkuOUM4LjcgOC44IDkuOCA4IDExIDhjMi44IDAgNSAyLjIgNSA1IDAgMS4yLS44IDIuMy0xLjkgMi44bC0uOS40QTIgMiAwIDAgMCAxMiAxOGE0IDQgMCAwIDEtNCA0Yy0zLjMgMC02LTIuNy02LTZhNCA0IDAgMCAxIDQtNCAyIDIgMCAwIDAgMS44LTEuMnoiLz48Y2lyY2xlIGN4PSIxMS41IiBjeT0iMTIuNSIgcj0iLjUiIGZpbGw9ImN1cnJlbnRDb2xvciIvPjwvc3ZnPg==\"/></defs><style/><use href=\"#img1\" x=\"28\" y=\"1\"/><use href=\"#img2\" transform=\"matrix(.797,0,0,.797,51,27)\"/></svg>',\n )}`,\n theatre: `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,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\"/><image width=\"168\" height=\"168\" id=\"img2\" href=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1kcmFtYSI+PHBhdGggZD0iTTEwIDExaC4wMSIvPjxwYXRoIGQ9Ik0xNCA2aC4wMSIvPjxwYXRoIGQ9Ik0xOCA2aC4wMSIvPjxwYXRoIGQ9Ik02LjUgMTMuMWguMDEiLz48cGF0aCBkPSJNMjIgNWMwIDktNCAxMi02IDEycy02LTMtNi0xMmMwLTIgMi0zIDYtM3M2IDEgNiAzIi8+PHBhdGggZD0iTTE3LjQgOS45Yy0uOC44LTIgLjgtMi44IDAiLz48cGF0aCBkPSJNMTAuMSA3LjFDOSA3LjIgNy43IDcuNyA2IDguNmMtMy41IDItNC43IDMuOS0zLjcgNS42IDQuNSA3LjggOS41IDguNCAxMS4yIDcuNC45LS41IDEuOS0yLjEgMS45LTQuNyIvPjxwYXRoIGQ9Ik05LjEgMTYuNWMuMy0xLjEgMS40LTEuNyAyLjQtMS40Ii8+PC9zdmc+\"/></defs><style/><use href=\"#img1\" x=\"28\" y=\"1\"/><use href=\"#img2\" transform=\"matrix(.949,0,0,.949,42,20)\"/></svg>',\n )}`,\n 'special-events': `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,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\"/><image width=\"168\" height=\"168\" id=\"img2\" href=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1nZW0iPjxwYXRoIGQ9Ik02IDNoMTJsNCA2LTEwIDEzTDIgOVoiLz48cGF0aCBkPSJNMTEgMyA4IDlsNCAxMyA0LTEzLTMtNiIvPjxwYXRoIGQ9Ik0yIDloMjAiLz48L3N2Zz4=\"/></defs><style/><use href=\"#img1\" x=\"28\" y=\"1\"/><use href=\"#img2\" transform=\"matrix(.863,0,0,.863,55,31)\"/></svg>',\n )}`,\n 'virtual-experience': `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,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\"/><image width=\"192\" height=\"192\" id=\"img2\" href=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1tb25pdG9yLXBsYXkiPjxwYXRoIGQ9Ik0xMCA3Ljc1YS43NS43NSAwIDAgMSAxLjE0Mi0uNjM4bDMuNjY0IDIuMjQ5YS43NS43NSAwIDAgMSAwIDEuMjc4bC0zLjY2NCAyLjI1YS43NS43NSAwIDAgMS0xLjE0Mi0uNjR6Ii8+PHBhdGggZD0iTTEyIDE3djQiLz48cGF0aCBkPSJNOCAyMWg4Ii8+PHJlY3QgeD0iMiIgeT0iMyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjE0IiByeD0iMiIvPjwvc3ZnPg==\"/></defs><style/><use href=\"#img1\" x=\"28\" y=\"1\"/><use href=\"#img2\" transform=\"matrix(.789,0,0,.789,52,31)\"/></svg>',\n )}`,\n tennis: `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,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\"/><image width=\"153\" height=\"162\" id=\"img2\" href=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iODAwcHgiIGhlaWdodD0iODAwcHgiIHZpZXdCb3g9IjAgLTAuNSAxNyAxNyIgdmVyc2lvbj0iMS4xIiBjbGFzcz0ic2ktZ2x5cGggc2ktZ2x5cGgtdGVubmlzLXJhY2tldC1iYWxsIj4KCjx0aXRsZT43MTk8L3RpdGxlPgoKPGRlZnM+Cgo8L2RlZnM+Cgo8ZyBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KCjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEuMDAwMDAwLCAwLjAwMDAwMCkiIGZpbGw9IiNmZmYiPgoKPGNpcmNsZSBjeD0iMTMuOTUzIiBjeT0iMTMuOTUzIiByPSIxLjk1MyIgY2xhc3M9InNpLWdseXBoLWZpbGwiPgoKPC9jaXJjbGU+Cgo8cGF0aCBkPSJNMTQuNzU0LDEuMjY1IEMxMi43NiwtMC43MzMgOS4wMzgsLTAuMjYgNi40NjIsMi4zMiBDNC44OTUsMy44ODQgNC4xMTEsNS44NzUgNC4xODIsNy42NDEgQzQuMDk1LDcuNzIgNC4wNDcsNy44MzkgNC4wNzYsNy45NjggQzQuNTM4LDEwLjA2NiAyLjY5OCwxMi4yMjQgMi42NzgsMTIuMjQ3IEMyLjY1NCwxMi4yNzUgMi42MzYsMTIuMzA5IDIuNjI0LDEyLjM0MyBMMC4yNDQsMTQuNzIzIEMtMC4wNDQsMTUuMDExIC0wLjA1NSwxNS40NjcgMC4yMiwxNS43NDMgTDAuMjQyLDE1Ljc2MyBDMC41MTQsMTYuMDM4IDAuOTcyLDE2LjAyOCAxLjI1OSwxNS43MzggTDMuNzE0LDEzLjI4NiBDMy44ODEsMTMuMTU5IDYuMjQ5LDExLjQxNSA3Ljk1NCwxMS45IEM4LjA2NywxMS45MzMgOC4xNzcsMTEuOTAzIDguMjYsMTEuODM4IEMxMC4wNTcsMTEuOTQ5IDEyLjEwMSwxMS4xNjEgMTMuNzAyLDkuNTU4IEMxNi4yNzgsNi45ODEgMTYuNzUsMy4yNiAxNC43NTQsMS4yNjUgTDE0Ljc1NCwxLjI2NSBaIE02LjIyNSw5Ljg0IEM1Ljk2OSw5LjU4NSA1Ljc3Myw5LjI5IDUuNjIxLDguOTcxIEw2Ljk3Niw3LjYxNSBMOC40MDUsOS4wNDUgTDcuMDM1LDEwLjQxNiBDNi43MzgsMTAuMjY3IDYuNDYzLDEwLjA3OSA2LjIyNSw5Ljg0IEw2LjIyNSw5Ljg0IFogTTcuNjg0LDYuOTA5IEw5LjA5OCw1LjQ5MyBMMTAuNTI4LDYuOTIzIEw5LjExMiw4LjMzNyBMNy42ODQsNi45MDkgTDcuNjg0LDYuOTA5IFogTTkuMTExLDQuMDk1IEw3LjY1MiwyLjYzNiBDOC4xOSwyLjE2MyA4Ljc2OSwxLjc4OSA5LjM2MSwxLjUxNSBMMTAuNTI3LDIuNjggTDkuMTExLDQuMDk1IEw5LjExMSw0LjA5NSBaIE0xMS4yMTksMy4zNzIgTDEyLjY0OSw0LjgwMiBMMTEuMjM0LDYuMjE2IEw5LjgwNSw0Ljc4OCBMMTEuMjE5LDMuMzcyIEwxMS4yMTksMy4zNzIgWiBNNi45NDUsMy4zNDEgTDguNDA1LDQuODAyIEw2Ljk5LDYuMjE2IEw1LjgyNSw1LjA1IEM2LjEsNC40NiA2LjQ3MywzLjg4IDYuOTQ1LDMuMzQxIEw2Ljk0NSwzLjM0MSBaIE0xMS4yMTksNy42MTUgTDEyLjcyMyw5LjExOCBDMTIuMTg1LDkuNTkxIDExLjYwNSw5Ljk2NCAxMS4wMTQsMTAuMjM5IEw5LjgwNSw5LjAzIEwxMS4yMTksNy42MTUgTDExLjIxOSw3LjYxNSBaIE0xMS45MjYsNi45MDkgTDEzLjM0MSw1LjQ5MyBMMTQuNTQ5LDYuNzAyIEMxNC4yNzYsNy4yOTQgMTMuOTAyLDcuODc0IDEzLjQyOSw4LjQxMSBMMTEuOTI2LDYuOTA5IEwxMS45MjYsNi45MDkgWiBNMTQuOTI2LDUuNjY3IEwxNC4wNDcsNC43ODggTDE1LjA1NSwzLjc3OSBDMTUuMTQzLDQuMzcyIDE1LjA5Niw1LjAxNyAxNC45MjYsNS42NjcgTDE0LjkyNiw1LjY2NyBaIE0xNC4xNSwxLjkxNCBDMTQuMzg4LDIuMTUzIDE0LjU3NiwyLjQyOCAxNC43MjQsMi43MjUgTDEzLjM1NCw0LjA5NSBMMTEuOTI1LDIuNjY2IEwxMy4yOCwxLjMxMiBDMTMuNiwxLjQ2MiAxMy44OTUsMS42NTkgMTQuMTUsMS45MTQgTDE0LjE1LDEuOTE0IFogTTEyLjIwNSwxLjAwMSBMMTEuMjMzLDEuOTc0IEwxMC4zOTcsMS4xMzggQzExLjAyLDAuOTc2IDExLjYzMywwLjkyOSAxMi4yMDUsMS4wMDEgTDEyLjIwNSwxLjAwMSBaIE01LjQ0OSw2LjA4NyBMNi4yODMsNi45MjMgTDUuMzEsNy44OTYgQzUuMjM5LDcuMzIzIDUuMjg1LDYuNzEgNS40NDksNi4wODcgTDUuNDQ5LDYuMDg3IFogTTMuODk4LDEyLjMxMiBDMy44NzUsMTIuMjc5IDMuODYyLDEyLjI0MSAzLjgzNCwxMi4yMTIgTDMuODEzLDEyLjE5MSBDMy43ODQsMTIuMTYyIDMuNzQ3LDEyLjE1IDMuNzE0LDEyLjEyNyBDNC4wNzcsMTEuNTg0IDQuNTQ5LDEwLjczNCA0Ljc2NSw5Ljc1MiBDNC45NDQsMTAuMDcxIDUuMTYzLDEwLjM2OSA1LjQzLDEwLjYzNSBDNS42OCwxMC44ODYgNS45NTYsMTEuMDk4IDYuMjU2LDExLjI3MiBDNS4zMjIsMTEuNDk4IDQuNDU3LDExLjk2MiAzLjg5OCwxMi4zMTIgTDMuODk4LDEyLjMxMiBaIE04LjA5LDEwLjc0NSBMOS4wOTgsOS43MzYgTDkuOTc3LDEwLjYxNSBDOS4zMjYsMTAuNzg2IDguNjgyLDEwLjgzMyA4LjA5LDEwLjc0NSBMOC4wOSwxMC43NDUgWiIgY2xhc3M9InNpLWdseXBoLWZpbGwiPgoKPC9wYXRoPgoKPC9nPgoKPC9nPgoKPC9zdmc+\"/></defs><style/><use href=\"#img1\" x=\"28\" y=\"1\"/><use href=\"#img2\" transform=\"matrix(.939,0,0,.939,56,19)\"/></svg>',\n )}`,\n default: `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,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\"/></defs><style>.a{fill:#e9314a}</style><path class=\"a\" d=\"m127.9 1.4c-54.9 0-99.4 44.5-99.4 99.4 0 24.5 8.9 46.9 23.6 64.2l75.8 89.3 75.7-89.3c14.7-17.3 23.7-39.7 23.7-64.2 0-54.9-44.5-99.4-99.4-99.4zm0 136.9c-22.6 0-40.9-18.3-40.9-40.9 0-22.6 18.3-40.9 40.9-40.9 22.5 0 40.8 18.3 40.8 40.9 0 22.6-18.3 40.9-40.8 40.9z\"/><use href=\"#img1\" x=\"28\" y=\"1\"/></svg>',\n )}`,\n};\n","/* eslint-disable */\nexport const plural = function(txt: string, revert = false) {\n var plural = {\n '(quiz)$': '$1zes',\n '^(ox)$': '$1en',\n '([m|l])ouse$': '$1ice',\n '(matr|vert|ind)ix|ex$': '$1ices',\n '(x|ch|ss|sh)$': '$1es',\n '([^aeiouy]|qu)y$': '$1ies',\n '(hive)$': '$1s',\n '(?:([^f])fe|([lr])f)$': '$1$2ves',\n '(shea|lea|loa|thie)f$': '$1ves',\n sis$: 'ses',\n '([ti])um$': '$1a',\n '(tomat|potat|ech|her|vet)o$': '$1oes',\n '(bu)s$': '$1ses',\n '(alias)$': '$1es',\n '(octop)us$': '$1i',\n '(ax|test)is$': '$1es',\n '(us)$': '$1es',\n '([^s]+)$': '$1s',\n };\n var singular = {\n '(quiz)zes$': '$1',\n '(matr)ices$': '$1ix',\n '(vert|ind)ices$': '$1ex',\n '^(ox)en$': '$1',\n '(alias)es$': '$1',\n '(octop|vir)i$': '$1us',\n '(cris|ax|test)es$': '$1is',\n '(shoe)s$': '$1',\n '(o)es$': '$1',\n '(bus)es$': '$1',\n '([m|l])ice$': '$1ouse',\n '(x|ch|ss|sh)es$': '$1',\n '(m)ovies$': '$1ovie',\n '(s)eries$': '$1eries',\n '([^aeiouy]|qu)ies$': '$1y',\n '([lr])ves$': '$1f',\n '(tive)s$': '$1',\n '(hive)s$': '$1',\n '(li|wi|kni)ves$': '$1fe',\n '(shea|loa|lea|thie)ves$': '$1f',\n '(^analy)ses$': '$1sis',\n '((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$': '$1$2sis',\n '([ti])a$': '$1um',\n '(n)ews$': '$1ews',\n '(h|bl)ouses$': '$1ouse',\n '(corpse)s$': '$1',\n '(us)es$': '$1',\n s$: '',\n };\n var irregular: Record<string, any> = {\n move: 'moves',\n foot: 'feet',\n goose: 'geese',\n sex: 'sexes',\n child: 'children',\n man: 'men',\n tooth: 'teeth',\n person: 'people',\n };\n var uncountable = ['sheep', 'fish', 'deer', 'moose', 'series', 'species', 'money', 'rice', 'information', 'equipment'];\n\n // save some time in the case that singular and plural are the same\n if (uncountable.indexOf(txt.toLowerCase()) >= 0) return txt;\n\n // check for irregular forms\n for (const word in irregular) {\n let pattern;\n let replace;\n\n if (revert) {\n pattern = new RegExp(irregular[word] + '$', 'i');\n replace = word;\n } else {\n pattern = new RegExp(word + '$', 'i');\n replace = irregular[word];\n }\n if (pattern.test(txt)) return txt.replace(pattern, replace);\n }\n\n let array: Record<string, any>;\n if (revert) array = singular;\n else array = plural;\n\n // check for matches using regular expressions\n for (const reg in array) {\n var pattern2 = new RegExp(reg, 'i');\n if (pattern2.test(txt)) return txt.replace(pattern2, array[reg]);\n }\n return txt;\n};\n"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"sources":["webpack://[name]/webpack/bootstrap","webpack://[name]/./src/index.ts","webpack://[name]/./src/api/v4/index.ts","webpack://[name]/./src/api/v4/enums/AMOUNT_TYPE.ts","webpack://[name]/./src/api/v4/enums/CAMPAIGN_STATUS.ts","webpack://[name]/./src/api/v4/enums/BOOKING_PRODUCT_INFO.ts","webpack://[name]/./src/api/v4/enums/BUSINESS_RESULT_ORIGIN.ts","webpack://[name]/./src/api/v4/enums/LOCATION_TYPE.ts","webpack://[name]/./src/api/v4/enums/NOTIFICATION_TYPE.ts","webpack://[name]/./src/api/v4/enums/OFFER_CURRENCY.ts","webpack://[name]/./src/api/v4/enums/OFFER_STATUS.ts","webpack://[name]/./src/api/v4/enums/OFFER_TYPE.ts","webpack://[name]/./src/api/v4/enums/POI_CATEGORY_GROUP.ts","webpack://[name]/./src/api/v4/enums/PRODUCT_TYPE_NAME.ts","webpack://[name]/./src/api/v4/enums/PROVIDER_ID.ts","webpack://[name]/./src/api/v4/enums/PROVIDER_NAME.ts","webpack://[name]/./src/api/v4/enums/REACTION.ts","webpack://[name]/./src/api/v4/enums/REACTION_COMMENT.ts","webpack://[name]/./src/api/v4/enums/RESPONSE_STATUS.ts","webpack://[name]/./src/api/v4/enums/PLAN_STATUS.ts","webpack://[name]/./src/api/v4/enums/QUESTIONS_CATEGORY.ts","webpack://[name]/./src/api/v4/enums/USER_TYPE.ts","webpack://[name]/./src/api/v4/enums/VERIFY_CHANNEL.ts","webpack://[name]/./src/api/v4/models/ConfigList.ts","webpack://[name]/./src/providers/index.ts","webpack://[name]/./src/providers/yelp/index.ts","webpack://[name]/./src/providers/gyg/index.ts","webpack://[name]/./src/providers/bb/index.ts","webpack://[name]/./src/providers/bb/ACTIVITY_THEMES.ts","webpack://[name]/./src/providers/viator/index.ts","webpack://[name]/./src/providers/rezdy/index.ts","webpack://[name]/./src/providers/videreo/index.ts","webpack://[name]/./src/providers/toristy/index.ts","webpack://[name]/./src/providers/victory/index.ts","webpack://[name]/./src/providers/kiwi/index.ts","webpack://[name]/./src/helper/index.ts","webpack://[name]/./src/helper/plural.ts"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","Model","AMOUNT_TYPE","CAMPAIGN_STATUS","BOOKING_PRODUCT_INFO","BUSINESS_RESULT_ORIGIN","LOCATION_TYPE","NOTIFICATION_TYPE","OFFER_CURRENCY","OFFER_STATUS","OFFER_TYPE","POI_CATEGORY_GROUP","PRODUCT_TYPE_NAME","PROVIDER_ID","PROVIDER_NAME","REACTION","REACTION_COMMENT","RESPONSE_STATUS","PLAN_STATUS","QUESTIONS_CATEGORY","USER_TYPE","VERIFY_CHANNEL","CONFIG_CONTENTS_PROVIDER_NAME","Yelp","Gyg","Bb","Viator","Rezdy","Videreo","Toristy","Victory","Kiwi","ACTIVITY_THEMES","categoryGroupsStatic","categories","id","isCustom","imgUrl","apiPlaceUrl","x","y","type","xy","substring","indexOf","cityImgUrl","imgUrlThumbnails","imageUrl","sizeMatch","match","width","Number","height","isNaN","ratio","newHeight","Math","round","newSize","replace","getCategoryGroups","categoriesData","map","categoryGroup","ids","category","group","getCategoryGroup","categoryId","poiCategoryGroups","some","hoursFormat","hour","daysArray","closed","search","raw","split","forEach","item","h","days","clock","a","trim","day","findIndex","push","concat","length","filter","every","includes","currentIndex","splice","compareStringForSort","b","nameA","toLowerCase","nameB","emailFormatValid","email","passwordFormatValid","password","toEngChars","str","unicodeToString","hourRange","minuteRange","timeRange","startTimeRange","all","_","endTimeRange","startHour","undefined","filteredEndHouts","getAll","hr","deepCopy","oldObject","JSON","parse","stringify","getYourGuideImageArrayFormat","imgUrls","formatId","img","getYourGuideImageFormat","companionTitleOptions","delay","ms","Promise","resolve","setTimeout","capitalizeFirstLetter","string","lowerCaseString","charAt","toUpperCase","slice","removeDuplicateValuesById","duplicateItems","itemIndex","allItems","removeDuplicateValues","compareFn","getAge","dateOfBirth","today","Date","birthDate","age","getFullYear","getMonth","getDate","tourAvailable","bookings","TOUR_PROVIDER_IDS","gygTourIds","bbTourIds","viatorTourIds","toristyTourIds","booking","providerId","products","product","productIdAsNumber","info","TICKET","toString","ticketAvailable","TICKET_PROVIDER_IDS","restaurantReservationAvailable","RESTAURANT_RESERVATION_PROVIDER_IDS","offerAvailable","offers","offer","hexToRgb","setTheme","theme","COLORS","themeParams","dark","light","document","documentElement","style","setProperty","primary","secondary","success","warning","danger","textPrimary","headerBg","headerTextColor","background","setLogo","darkLogo","lightLogo","arraysEqual","sortedA","sort","sortedB","formatDateWithTimezone","date","timezone","inputDate","getTime","Error","dateInTimeZone","Intl","DateTimeFormat","timeZone","year","month","minute","second","hour12","format","String","padStart","getHours","getMinutes","getSeconds","getProviderId","providerName","YELP","GYG","BOOK_BARBADOS","VIATOR","REZDY","TORISTY","VICTORY","console","warn","eventCategoryIcons","sports","encodeURIComponent","concerts","theatre","tennis","default","plural","txt","revert","array","irregular","move","foot","goose","sex","child","man","tooth","person","word","pattern","RegExp","test","reg","s$","sis$","pattern2"],"mappings":"2BACE,IAAIA,EAAmB,GAGvB,SAASC,EAAoBC,GAG5B,GAAGF,EAAiBE,GACnB,OAAOF,EAAiBE,GAAUC,QAGnC,IAAIC,EAASJ,EAAiBE,GAAY,CACzCG,EAAGH,EACHI,GAAG,EACHH,QAAS,IAUV,OANAI,EAAQL,GAAUM,KAAKJ,EAAOD,QAASC,EAAQA,EAAOD,QAASF,GAG/DG,EAAOE,GAAI,EAGJF,EAAOD,QA0Df,OArDAF,EAAoBQ,EAAIF,EAGxBN,EAAoBS,EAAIV,EAGxBC,EAAoBU,EAAI,SAASR,EAASS,EAAMC,GAC3CZ,EAAoBa,EAAEX,EAASS,IAClCG,OAAOC,eAAeb,EAASS,EAAM,CAAEK,YAAY,EAAMC,IAAKL,KAKhEZ,EAAoBkB,EAAI,SAAShB,GACX,oBAAXiB,QAA0BA,OAAOC,aAC1CN,OAAOC,eAAeb,EAASiB,OAAOC,YAAa,CAAEC,MAAO,WAE7DP,OAAOC,eAAeb,EAAS,aAAc,CAAEmB,OAAO,KAQvDrB,EAAoBsB,EAAI,SAASD,EAAOE,GAEvC,GADU,EAAPA,IAAUF,EAAQrB,EAAoBqB,IAC/B,EAAPE,EAAU,OAAOF,EACpB,GAAW,EAAPE,GAA8B,iBAAVF,GAAsBA,GAASA,EAAMG,WAAY,OAAOH,EAChF,IAAII,EAAKX,OAAOY,OAAO,MAGvB,GAFA1B,EAAoBkB,EAAEO,GACtBX,OAAOC,eAAeU,EAAI,UAAW,CAAET,YAAY,EAAMK,MAAOA,IACtD,EAAPE,GAA4B,iBAATF,EAAmB,IAAI,IAAIM,KAAON,EAAOrB,EAAoBU,EAAEe,EAAIE,EAAK,SAASA,GAAO,OAAON,EAAMM,IAAQC,KAAK,KAAMD,IAC9I,OAAOF,GAIRzB,EAAoB6B,EAAI,SAAS1B,GAChC,IAAIS,EAAST,GAAUA,EAAOqB,WAC7B,WAAwB,OAAOrB,EAAgB,SAC/C,WAA8B,OAAOA,GAEtC,OADAH,EAAoBU,EAAEE,EAAQ,IAAKA,GAC5BA,GAIRZ,EAAoBa,EAAI,SAASiB,EAAQC,GAAY,OAAOjB,OAAOkB,UAAUC,eAAe1B,KAAKuB,EAAQC,IAGzG/B,EAAoBkC,EAAI,GAIjBlC,EAAoBA,EAAoBmC,EAAI,G,ovBClFrD,cACA,sBACA,mBAEA,UAAeC,G,kgBCDf,UACA,UACA,UACA,UACA,UACA,UACA,UAEA,UACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WAKA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WAKA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YAKA,YACA,YACA,YACA,YACA,a,mGChIA,SAAYC,GACV,oBACA,wBAFF,CAAY,EAAAA,cAAA,EAAAA,YAAW,M,uGCAvB,SAAYC,GACV,kBACA,sBAFF,CAAY,EAAAA,kBAAA,EAAAA,gBAAe,M,4GCA3B,SAAYC,GACV,kBADF,CAAY,EAAAA,uBAAA,EAAAA,qBAAoB,M,8GCAhC,SAAYC,GACV,oBACA,kBAFF,CAAY,EAAAA,yBAAA,EAAAA,uBAAsB,M,qGCAlC,SAAYC,GACV,oBACA,cACA,oBACA,sBACA,kBACA,8BACA,kBACA,sBACA,kBACA,gBACA,wBACA,cACA,oBAbF,CAAY,EAAAA,gBAAA,EAAAA,cAAa,M,yGCAzB,SAAYC,GACV,oBACA,gBACA,oBAHF,CAAY,EAAAA,oBAAA,EAAAA,kBAAiB,M,sGCA7B,SAAYC,GACV,YACA,YACA,YAHF,CAAY,EAAAA,iBAAA,EAAAA,eAAc,M,oGCA1B,SAAYC,GACV,kBACA,sBACA,oBACA,oBAJF,CAAY,EAAAA,eAAA,EAAAA,aAAY,M,kGCAxB,SAAYC,GACV,0BACA,kBACA,sBACA,kCACA,oBALF,CAAY,EAAAA,aAAA,EAAAA,WAAU,M,0GCAtB,SAAYC,GACV,2BACA,2BACA,eACA,wBACA,sBACA,oBACA,kCAPF,CAAY,EAAAA,qBAAA,EAAAA,mBAAkB,M,yGCA9B,SAAYC,GACV,4BACA,kBACA,sBAHF,CAAY,EAAAA,oBAAA,EAAAA,kBAAiB,M,mGCA7B,SAAYC,GACV,uBACA,mBACA,+BACA,iBACA,+BACA,qCACA,yBACA,qBACA,mBACA,8BACA,wBACA,0BACA,0BAbF,CAAY,EAAAA,cAAA,EAAAA,YAAW,M,qGCAvB,SAAYC,GACV,kBACA,qBACA,oBACA,kBACA,gBACA,yBACA,+BACA,cACA,oBATF,CAAY,EAAAA,gBAAA,EAAAA,cAAa,M,gGCAzB,SAAYC,GACV,wBACA,4BACA,oBAHF,CAAY,EAAAA,WAAA,EAAAA,SAAQ,M,wGCApB,SAAYC,GACV,oDACA,mDAFF,CAAY,EAAAA,mBAAA,EAAAA,iBAAgB,M,uGCA5B,SAAYC,GACV,2BACA,mCACA,qCACA,+BACA,6BACA,uDANF,CAAY,EAAAA,kBAAA,EAAAA,gBAAe,M,mGCA3B,SAAYC,GACV,kCACA,yBACA,2BACA,yCACA,yCALF,CAAY,EAAAA,cAAA,EAAAA,YAAW,M,0GCAvB,SAAYC,GACV,cACA,oBACA,wBAHF,CAAY,EAAAA,qBAAA,EAAAA,mBAAkB,M,iGCA9B,SAAYC,GACV,sBACA,uBACA,6CACA,mCACA,iCACA,iCANF,CAAY,EAAAA,YAAA,EAAAA,UAAS,M,sGCArB,SAAYC,GACV,YACA,cAFF,CAAY,EAAAA,iBAAA,EAAAA,eAAc,M,o7CCG1B,SAAYC,GACV,8BAEA,YACA,wBACA,cACA,cANF,CAAY,EAAAA,gCAAA,EAAAA,8BAA6B,M,0kNCHzC,gBAUS,EAAAC,OATT,gBASe,EAAAC,MARf,gBAQoB,EAAAC,KAPpB,gBAOwB,EAAAC,SANxB,gBAMgC,EAAAC,QALhC,gBAKuC,EAAAC,UAJvC,gBAIgD,EAAAC,UAHhD,gBAGyD,EAAAC,UAFzD,gBAEkE,EAAAC,Q,kgBCVlE,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,wxCCTA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,0lHCvCA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,uGCbA,SAAYC,GACV,4BACA,0BACA,kCACA,8BACA,sBACA,mCACA,oBACA,4BACA,0BACA,oBACA,oCACA,8BACA,8BACA,sCAdF,CAAY,EAAAA,kBAAA,EAAAA,gBAAe,M,qgDCA3B,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,2xECtBA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,ysCCRA,YACA,YACA,a,+uBCFA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,qgDCZA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,6nECpBA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,a,sxECVA,cAMA,YAsCA,IAAMC,EAA2C,CAC/C,CACEzD,KAAM,cACN0D,WAAY,CACV,CACEC,GAAI,GACJ3D,KAAM,UACN4D,UAAU,GAEZ,CACED,GAAI,EACJ3D,KAAM,cACN4D,UAAU,GAEZ,CACED,GAAI,GACJ3D,KAAM,UACN4D,UAAU,GAEZ,CACED,GAAI,GACJ3D,KAAM,gBACN4D,UAAU,GAEZ,CACED,GAAI,GACJ3D,KAAM,UACN4D,UAAU,GAEZ,CACED,GAAI,GACJ3D,KAAM,eACN4D,UAAU,GAEZ,CACED,GAAI,GACJ3D,KAAM,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","file":"index.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","import * as Model from './api/v4';\nexport * as Providers from './providers';\nexport * as helper from './helper';\n\nexport default Model;","/**\n * Enum\n */\nexport * from './enums/AMOUNT_TYPE';\nexport * from './enums/CAMPAIGN_STATUS';\nexport * from './enums/BOOKING_PRODUCT_INFO';\nexport * from './enums/BUSINESS_RESULT_ORIGIN';\nexport * from './enums/LOCATION_TYPE';\nexport * from './enums/NOTIFICATION_TYPE';\nexport * from './enums/OFFER_CURRENCY';\n// export * from './enums/OFFER_RECEIVE_METHOD';\nexport * from './enums/OFFER_STATUS';\nexport * from './enums/OFFER_TYPE';\nexport * from './enums/POI_CATEGORY_GROUP';\nexport * from './enums/PRODUCT_TYPE_NAME';\nexport * from './enums/PROVIDER_ID';\nexport * from './enums/PROVIDER_NAME';\nexport * from './enums/REACTION';\nexport * from './enums/REACTION_COMMENT';\nexport * from './enums/RESPONSE_STATUS';\nexport * from './enums/PLAN_STATUS';\nexport * from './enums/QUESTIONS_CATEGORY';\nexport * from './enums/USER_TYPE';\nexport * from './enums/VERIFY_CHANNEL';\n\n/**\n * Models\n */\nexport * from './models/Accommodation';\nexport * from './models/Booking';\nexport * from './models/BookingProduct';\nexport * from './models/Business';\nexport * from './models/BusinessInfoCategory';\nexport * from './models/BusinessOfferReport';\nexport * from './models/BusinessReport';\nexport * from './models/BusinessSearch';\nexport * from './models/BusinessVerify';\nexport * from './models/Campaign';\nexport * from './models/CampaignReport';\nexport * from './models/CampaignCustomerReport';\nexport * from './models/CategoryGroupResult';\nexport * from './models/City';\nexport * from './models/CityEvent';\nexport * from './models/CityInfo';\nexport * from './models/Companion';\nexport * from './models/ConfigList';\nexport * from './models/Continent';\nexport * from './models/Coordinate';\nexport * from './models/Country';\nexport * from './models/Coupon';\nexport * from './models/CouponApplication';\nexport * from './models/CustomPoi';\nexport * from './models/Device';\nexport * from './models/Favorite';\nexport * from './models/Feedbacks';\nexport * from './models/Image';\nexport * from './models/ImageOwner';\nexport * from './models/Notification';\nexport * from './models/NotificationMetaData';\nexport * from './models/NotificationSettings';\nexport * from './models/NotificationUnseen';\nexport * from './models/Offer';\nexport * from './models/OfferCustomer';\nexport * from './models/OfferProductType';\nexport * from './models/Plan';\nexport * from './models/Poi';\nexport * from './models/PoiCategory';\nexport * from './models/PoiCategoryGroup';\nexport * from './models/PoiCategoryParent';\nexport * from './models/PoiCategoryResponse';\nexport * from './models/PoiReference';\nexport * from './models/PreRegister';\nexport * from './models/Question';\nexport * from './models/Recommendation';\nexport * from './models/Step';\nexport * from './models/SubAnswer';\nexport * from './models/SuggestedCity';\nexport * from './models/SuggestedCityMatch';\nexport * from './models/TasteItem';\nexport * from './models/TimeFrame';\nexport * from './models/Token';\nexport * from './models/TokenPayload';\nexport * from './models/TokenRefresh';\nexport * from './models/TopTen';\nexport * from './models/TourAndTickets';\nexport * from './models/TranslationList';\nexport * from './models/Trip';\nexport * from './models/TripProfile';\nexport * from './models/TripReference';\nexport * from './models/User';\nexport * from './models/UserReaction';\nexport * from './models/UserReservation';\nexport * from './models/UserResetPassword';\nexport * from './models/UserFeedback';\nexport * from './models/VoucherOffer';\n\n/**\n * Requests\n */\nexport * from './requests/BusinessPreRegisterReportRequest';\nexport * from './requests/BusinessReportRequest';\nexport * from './requests/CampaignCustomerReportRequest';\nexport * from './requests/CampaignReportRequest';\nexport * from './requests/CompanionRequest';\nexport * from './requests/FeedbackRequest';\nexport * from './requests/FeedbackReplyRequest';\nexport * from './requests/LoginRequest';\nexport * from './requests/OfferAddRequest';\nexport * from './requests/OfferRequest';\nexport * from './requests/PlanUpdateRequest';\nexport * from './requests/PoisRequest';\nexport * from './requests/PoisRequestCoordinate';\nexport * from './requests/PoisRequestMustTry';\nexport * from './requests/PoisRequestName';\nexport * from './requests/RegisterRequest';\nexport * from './requests/TokenRefreshRequest';\nexport * from './requests/UserReactionRequest';\nexport * from './requests/UserReservationRequest';\nexport * from './requests/UserUpdateRequest';\nexport * from './requests/VoucherOfferAddRequest';\n\n/**\n * Responses\n */\nexport * from './responses/DataPayload';\nexport * from './responses/DeleteUpdateResponse';\nexport * from './responses/ErrorResponse';\nexport * from './responses/Pagination';\nexport * from './responses/SuccessResponse';\n","export enum AMOUNT_TYPE {\n LIMITED = 'Limited',\n UNLIMITED = 'Unlimited',\n}\n","export enum CAMPAIGN_STATUS {\n ACTIVE = 'active',\n INACTIVE = 'inactive',\n}\n","export enum BOOKING_PRODUCT_INFO {\n TICKET = 'ticket',\n /* TOUR = \"tour\", */\n}\n","export enum BUSINESS_RESULT_ORIGIN {\n TRIPIAN = 'Tripian',\n GOOGLE = 'Google',\n}\n","export enum LOCATION_TYPE {\n CAPITAL = 'capital',\n CITY = 'city',\n COUNTRY = 'country',\n DISTRICT = 'district',\n ISLAND = 'island',\n MUNICIPALITY = 'municipality',\n PARISH = 'parish',\n PROVINCE = 'province',\n REGION = 'region',\n STATE = 'state',\n TERRITORY = 'territory',\n TOWN = 'town',\n VILLAGE = 'village',\n}\n","export enum NOTIFICATION_TYPE {\n SUCCESS = 'success',\n ERROR = 'error',\n WARNING = 'warning',\n}\n","export enum OFFER_CURRENCY {\n USD = 'USD',\n CAD = 'CAD',\n BBD = 'BBD',\n}\n","export enum OFFER_STATUS {\n ACTIVE = 'active',\n INACTIVE = 'inactive',\n ARCHIVE = 'archive',\n EXPIRED = 'expired',\n}\n","export enum OFFER_TYPE {\n PERCENTAGE = 'percentage',\n AMOUNT = 'amount',\n QUANTITY = 'quantity',\n SPEND_FOR_GIFT = 'spend_for_gift',\n VOUCHER = 'voucher',\n}\n","export enum POI_CATEGORY_GROUP {\n ATTRACTION = 'Attractions',\n RESTAURANT = 'Restaurants',\n CAFE = 'Cafes',\n NIGHTLIFE = 'Nightlife',\n SHOPPING = 'Shopping',\n UNKNOWN = 'Unknown',\n NOTCATEGORIZED = 'NOTCATEGORIZED',\n}\n","export enum PRODUCT_TYPE_NAME {\n EXPERIENCES = 'experiences',\n DINING = 'dining',\n SHOPPING = 'shopping',\n\n /* FOOD = 'food',\n DRINK = 'drink',\n RETAIL = 'retail', */\n}\n","export enum PROVIDER_ID {\n VIATOR = 1,\n YELP = 2,\n GUESTLOGIX = 3,\n GYG = 4,\n OPEN_TABLE = 5,\n BOOK_BARBADOS = 6,\n JUNIPER = 7,\n REZDY = 8,\n UBER = 9,\n TRAVELIFY = 10,\n GOCITY = 11,\n TORISTY = 12,\n VICTORY = 13,\n}\n\n/* \nClient Name Vacavia\nAPI Application ID 154\nAPI Private Key 82202011-0EC4-4DA4-9D7C-1A0457F85973\nAPI Endpoint Prefix https://api.travelify.io/\nSelection Redirect Url https://www.vacavia.co.uk/results#/ticketAndAttraction/searchSession= \n\n{\n id: 8,\n name: \"Travelify\",\n apiUrl: \"https://api.travelify.io/\",\n apiKey: \"100:4D1BEDF7-F67A-4299-B544-F35521277F59\",\n prod: false,\n clientId: \"https://traveldemo.agendas.group/results#/ticketAndAttraction/searchSession=\"\n},\n{\n id: 8,\n name: \"Travelify\",\n apiUrl: \"https://api.travelify.io/\",\n apiKey: \"154:82202011-0EC4-4DA4-9D7C-1A0457F85973\",\n prod: true,\n clientId: \"https://www.vacavia.co.uk/results#/ticketAndAttraction/searchSession=\"\n}\n*/\n","export enum PROVIDER_NAME {\n VIATOR = 'Viator',\n GYG = 'GetYourGuide',\n TORISTY = 'Toristy',\n GOCITY = 'GoCity',\n REZDY = 'Rezdy',\n OPEN_TABLE = 'OpenTable',\n BOOK_BARBADOS = 'BookBarbados',\n YELP = 'Yelp',\n VICTORY = 'Victory',\n}\n","export enum REACTION {\n THUMBS_UP = 'Thumbs Up',\n THUMBS_DOWN = 'Thumbs Down',\n NEUTRAL = 'Neutral',\n}\n","export enum REACTION_COMMENT {\n I_HAVE_BEEN_THERE_BEFORE = 'I`ve been there before',\n I_DONT_LIKE_THIS_PLACE = 'I don`t like this place',\n}\n","export enum RESPONSE_STATUS {\n SUCCESS = 200,\n BAD_REQUEST = 400,\n UNAUTHORIZED = 401,\n FORBIDDEN = 403,\n NOTFLICT = 409,\n INTERNAL_SERVER_ERROR = 500,\n}\n","export enum PLAN_STATUS {\n STEPS_EMPTY = -1,\n PENDING = 0,\n FINISHED = 1,\n WALKING_EXCEEDS = 2,\n NOT_FOUND_ATTRS = 3,\n}\n","export enum QUESTIONS_CATEGORY {\n TRIP = 'trip',\n PROFILE = 'profile',\n COMPANION = 'companion',\n}\n","export enum USER_TYPE {\n GUEST = -1,\n NORMAL = 0,\n NORMAL_FROM_GUEST = 1,\n COUPON_ADMIN = 2,\n SUPER_ADMIN = 3,\n ELIGIBILITY = 4,\n}\n","export enum VERIFY_CHANNEL {\n SMS = 'sms',\n CALL = 'call',\n}\n","import { OFFER_TYPE } from '../enums/OFFER_TYPE';\nimport { PROVIDER_ID } from '../enums/PROVIDER_ID';\n\nexport enum CONFIG_CONTENTS_PROVIDER_NAME {\n BOOKBARBADOS = 'bookbarbados',\n // GLX = 'glx',\n GYG = 'gyg',\n OPENTABLE = 'opentable',\n YELP = 'yelp',\n UBER = 'uber',\n}\n\nexport type ProviderObject = {\n id: PROVIDER_ID;\n name: string;\n apiUrl: string;\n apiKey: string;\n prod: boolean;\n clientId: string;\n affiliateParams?: Record<string, string>;\n apiSecret?: string;\n limit?: number;\n};\n\nexport type Theme = {\n dark: {\n primary: string;\n secondary: string;\n success: string;\n warning: string;\n info: string;\n danger: string;\n textPrimary: string;\n background: string;\n headerTextColor: string;\n headerBg: string;\n };\n light: {\n primary: string;\n secondary: string;\n success: string;\n warning: string;\n info: string;\n danger: string;\n textPrimary: string;\n background: string;\n headerTextColor: string;\n headerBg: string;\n };\n};\n\nexport type MenuLink = {\n name: string; // \"Flights\",\n url: string; // \"https://trial-dev.tripian.com/\",\n external_link: boolean; // true\n};\n\nexport type ConfigList = {\n apiKey: string;\n aiSupport: boolean;\n whiteLabels: {\n reverseProxyUrl: string;\n brandName: string;\n imagePaths: {\n logoPathDark: string;\n logoPathLight: string;\n formHeaderImgUrl?: string;\n formBgImgUrl?: string;\n appBackgroundImgUrl?: string;\n };\n googleAnalyticsUrl: {\n business: string;\n customer: string;\n };\n googleAnalyticsKey: {\n business: string;\n customer: string;\n };\n cookieConsentUrl: string;\n providers: {\n name: CONFIG_CONTENTS_PROVIDER_NAME;\n apikey: string;\n apiurl: string;\n prod: boolean;\n }[];\n cognito: {\n clientId: string;\n domain: string;\n region: string;\n identityProviders: string[];\n };\n theme?: Theme;\n // Sadece light => [“light”]\n // Sadece dark => [“dark”]\n // Default light => [“dark”, “light”]\n // Default dark => [“dark”,“light”]\n availableThemes: Array<'dark' | 'light'>;\n\n rootPath?: string;\n defaultDestinationId?: number;\n brandUrl?: string;\n tosUrl?: string;\n ppUrl?: string;\n landingPageUrl?: string;\n\n languages: string[];\n dealsPageUrl?: string;\n externalMenuLinks?: Record<string, MenuLink[]>;\n eligibilityType?: string;\n };\n baseFeatures: {\n showRegister: boolean;\n showLogin: boolean;\n showChangePassword: boolean;\n showTripModeQuestion: boolean;\n showOverview: boolean;\n showOffers: boolean;\n showStepCardThumbs: boolean;\n loginWithToken: boolean;\n loginWithHash: boolean;\n guestLogin: boolean;\n saveSession: boolean;\n showStepScoreDetail: boolean;\n showTravelGuide: boolean;\n showVoucher: boolean;\n showSaveTrip: boolean;\n showSideNav: boolean;\n showHome: boolean;\n showCreateTrip: boolean;\n showUpdateTrip: boolean;\n showUserProfile: boolean;\n sharedTrip: boolean;\n qrReader: 'business' | 'customer';\n widgetTheme1: boolean;\n widgetTheme2: boolean;\n widgetTheme3: boolean;\n showLandingPage: boolean;\n };\n sbt: {\n campaignDefaultCurrency: string;\n offerTypes: OFFER_TYPE[];\n };\n providers: {\n // showToursAndTickets: boolean;\n // showRestaurantReservations: boolean;\n // showBookARide: boolean;\n // showAccommodationPois: boolean;\n // showCarRentPois: boolean;\n // tourProviderSource: PROVIDER_ID;\n // tourProviderSourceProd: boolean;\n // ticketProviderSource: PROVIDER_ID;\n // ticketProviderSourceProd: boolean;\n // restaurantReservationProviderSource: PROVIDER_ID[];\n // restaurantReservationSourceProd: boolean;\n // accommodationPoiProvider: PROVIDER_ID;\n // TODO\n tourAndTicket: ProviderObject[];\n accommodation: ProviderObject[];\n restaurant: ProviderObject[];\n transportation: ProviderObject[];\n };\n\n /* cognito: {\n clientId: string;\n domain: string;\n region: string;\n identityProviders: string[];\n };\n contents: {\n brandName: string;\n googleAnalyticsKey: string;\n googleAnalyticsUrl: string;\n logoPath: string;\n theme: string;\n reverseProxyUrl: string;\n providers: {\n name: CONFIG_CONTENTS_PROVIDER_NAME;\n apikey: string;\n apiurl: string;\n prod: boolean;\n }[];\n }; */\n};\n","import * as Yelp from './yelp';\nimport * as Gyg from './gyg';\nimport * as Bb from './bb';\nimport * as Viator from './viator';\nimport * as Rezdy from './rezdy';\nimport * as Videreo from './videreo';\nimport * as Toristy from './toristy';\nimport * as Victory from './victory';\nimport * as Kiwi from './kiwi';\n\nexport { Yelp, Gyg, Bb, Viator, Rezdy, Videreo, Toristy, Victory, Kiwi };\n","export * from './Business';\nexport * from './Hold';\nexport * from './HoldRequest';\nexport * from './Openings';\nexport * from './OpeningsRequest';\nexport * from './OpeningTime';\nexport * from './Reservation';\nexport * from './ReservationInfo';\nexport * from './ReservationRequest';\nexport * from './ReservationStatusResponse';\n","export * from './CatalogGroup';\nexport * from './Category';\nexport * from './Categories';\nexport * from './MetaData';\nexport * from './PaymentConfiguration';\nexport * from './PaymentConfigurations';\nexport * from './Tour';\nexport * from './TourAvailability';\nexport * from './TourAvailabilities';\nexport * from './TourBookingInfo';\nexport * from './TourBookingInfos';\nexport * from './TourBooking';\nexport * from './TourBookingCart';\nexport * from './TourBookingCarts';\nexport * from './TourBookingCartRequest';\nexport * from './TourBookings';\nexport * from './TourBookingRequest';\nexport * from './TourCategories';\nexport * from './TourCoordinates';\nexport * from './TourData';\nexport * from './TourDataFormPersonsCategory';\nexport * from './TourDataOption';\nexport * from './TourDataOptionAvailability';\nexport * from './TourDateRange';\nexport * from './TourDurations';\nexport * from './TourErrorResponse';\nexport * from './TourLocations';\nexport * from './TourPictures';\nexport * from './TourPrice';\nexport * from './TourPriceBreakDown';\nexport * from './TourShoppingFormData';\nexport * from './TourOptionDetails';\nexport * from './TourOptionPricing';\nexport * from './TourOptionPricings';\nexport * from './TourOption';\nexport * from './TourOptions';\nexport * from './TourViewport';\nexport * from './TourReservationDetails';\nexport * from './Tours';\nexport * from './Error';\n","export * from './ACTIVITY_THEMES';\nexport * from './Activity';\nexport * from './ActivityInfo';\nexport * from './ActivityInfoImage';\nexport * from './ActivityInfoLocation';\nexport * from './ActivityPoint';\nexport * from './AuthorizationResponse';\nexport * from './CatalogGroup';\nexport * from './Offer';\nexport * from './OfferPoint';\nexport * from './Product';\nexport * from './SearchActivitiesResponse';\nexport * from './SearchAccommodationResponse';\nexport * from './SearchCarRentResponse';\n","export enum ACTIVITY_THEMES {\n ON_THE_LAND = 'On the Land',\n FAMILY_FUN = 'Family Fun',\n SOFT_ADVENTURE = 'Soft Adventure',\n ON_THE_WATER = 'On the Water',\n WELLNESS = 'Wellness',\n ART_AND_CULTURE = 'Arts & Culture',\n HISTORY = 'History',\n UNDER_WATER = 'Under Water',\n IN_THE_AIR = 'In the Air',\n ROMANCE = 'Romance',\n FOODIE_DELIGHTS = 'Foodie Delights',\n UNDER_GROUND = 'Under Ground',\n VOLUNTOURISM = 'Voluntourism',\n SHORE_EXCURSIONS = 'Shore Excursions',\n}\n","export * from './Duration';\nexport * from './Product';\nexport * from './ProductInfo';\nexport * from './CatalogGroup';\nexport * from './AvailabilitySchedule';\nexport * from './AvailabilityCheck';\nexport * from './TourData';\nexport * from './BookingQuestions';\nexport * from './Paymix';\nexport * from './LanguageGuide';\nexport * from './BookingCardHoldRequest';\nexport * from './BookingCardHold';\nexport * from './PaymentRequest';\nexport * from './Payment';\nexport * from './BookingConfirmRequest';\nexport * from './BookingConfirm';\nexport * from './BookingReservationDetails';\nexport * from './BookingCancel';\nexport * from './Error';\nexport * from './Location';\nexport * from './CancellationPolicy';\nexport * from './BookingRefund';\nexport * from './ExchangeRates';\n","export * from './BookingField';\nexport * from './LocationAddress';\nexport * from './Product';\nexport * from './ProductImage';\nexport * from './ProductResponse';\nexport * from './RequestStatus';\nexport * from './CatalogGroup';\nexport * from './ProductInfoResponse';\nexport * from './ProductVideo';\n","export * from './Address';\nexport * from './ResponseResult';\nexport * from './ApiResponse';\n","export * from './CancellationPolicy';\nexport * from './CatalogGroup';\nexport * from './Category';\nexport * from './Image';\nexport * from './Location';\nexport * from './Meta';\nexport * from './Price';\nexport * from './Product';\nexport * from './ProductDetails';\nexport * from './ProductDetailsResponse';\nexport * from './ServiceProvider';\nexport * from './ServiceResponse';\nexport * from './ServiceVariant';\n","export * from './Address';\nexport * from './CatalogGroup';\nexport * from './Category';\nexport * from './ClientsCreateRequest';\nexport * from './ClientsData';\nexport * from './Configuration';\nexport * from './Event';\nexport * from './EventDetail';\nexport * from './EventsResponse';\nexport * from './Meta';\nexport * from './OrderRequest';\nexport * from './OrdersResponse';\nexport * from './ParentCategory';\nexport * from './Performance';\nexport * from './Performer';\nexport * from './Requirements';\nexport * from './SeatingChart';\nexport * from './TicketGroup';\nexport * from './TicketResponse';\nexport * from './UpcomingEvents';\nexport * from './Venue';\n","export * from './Availability';\nexport * from './CancelReservation';\nexport * from './Child';\nexport * from './CreateReservation';\nexport * from './ImageURL';\nexport * from './PropertyDetail';\nexport * from './PropertyLive';\nexport * from './PropertySearch';\nexport * from './Rating';\nexport * from './ViewReservation';\nexport * from './ViewReservationByExternalId';\n","import Model from '..';\nimport { CategoryGroupResult, Theme } from '../api/v4';\nimport { HourFormat } from '../api/v4/models/HourFormat';\nimport { PoiCategory } from '../api/v4/models/PoiCategory';\nimport { PoiCategoryGroup } from '../api/v4/models/PoiCategoryGroup';\n\nexport * from './plural';\n\n// const allCategoriesStatic: PoiCategory[] = [\n// // important order for getCategoryGroups() result indexes!\n// { id: 1, name: 'Attractions', description: null, parent: null },\n// { id: 3, name: 'Restaurants', description: null, parent: null },\n// { id: 24, name: 'Cafes', description: null, parent: null },\n// { id: 4, name: 'Nightlife', description: null, parent: null },\n// { id: 34, name: 'Shopping', description: null, parent: null },\n// { id: 40, name: 'NOTCATEGORIZED', description: null, parent: null },\n// // important order for getCategoryGroups() result indexes!\n\n// { id: 36, name: 'Desserts', description: null, parent: { id: 24, name: 'Cafes', description: null } },\n// { id: 33, name: 'Bakeries', description: null, parent: { id: 24, name: 'Cafes', description: null } },\n// { id: 48, name: 'Wineries', description: null, parent: { id: 4, name: 'Nightlife', description: null } },\n// { id: 31, name: 'Bars', description: null, parent: { id: 4, name: 'Nightlife', description: null } },\n// { id: 28, name: 'Stadium', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 30, name: 'Museums', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 35, name: 'Breweries', description: null, parent: { id: 4, name: 'Nightlife', description: null } },\n// { id: 44, name: 'Breakfast', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 32, name: 'Art Galleries', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 41, name: 'Dinner', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 46, name: 'Breakfast & Dinner', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 26, name: 'Theater', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 45, name: 'Breakfast & Lunch', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 29, name: 'Civic Center', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 25, name: 'Religious Places', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 47, name: 'Breakfast & Lunch & Dinner', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 42, name: 'Lunch', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 43, name: 'Lunch & Dinner', description: null, parent: { id: 3, name: 'Restaurants', description: null } },\n// { id: 49, name: 'Gminings', description: null, parent: { id: 1, name: 'Attraction', description: null } },\n// { id: 50, name: 'Shopping_50', description: null, parent: { id: 34, name: 'Shopping', description: null } },\n// { id: 51, name: 'Shopping_51', description: null, parent: { id: 34, name: 'Shopping', description: null } },\n// { id: 52, name: 'Shopping_52', description: null, parent: { id: 34, name: 'Shopping', description: null } },\n// { id: 53, name: 'Shopping_53', description: null, parent: { id: 34, name: 'Shopping', description: null } },\n// { id: 54, name: 'Shopping_54', description: null, parent: { id: 34, name: 'Shopping', description: null } },\n// ];\n\nconst categoryGroupsStatic: PoiCategoryGroup[] = [\n {\n name: 'Attractions',\n categories: [\n {\n id: 28,\n name: 'Stadium',\n isCustom: false,\n },\n {\n id: 1,\n name: 'Attractions',\n isCustom: false,\n },\n {\n id: 30,\n name: 'Museums',\n isCustom: false,\n },\n {\n id: 32,\n name: 'Art Galleries',\n isCustom: false,\n },\n {\n id: 26,\n name: 'Theater',\n isCustom: false,\n },\n {\n id: 29,\n name: 'Civic Center',\n isCustom: false,\n },\n {\n id: 25,\n name: 'Religious Places',\n isCustom: false,\n },\n ],\n },\n {\n name: 'Restaurants',\n categories: [\n {\n id: 3,\n name: 'Restaurants',\n isCustom: false,\n },\n ],\n },\n {\n name: 'Nightlife',\n categories: [\n {\n id: 48,\n name: 'Wineries',\n isCustom: false,\n },\n {\n id: 31,\n name: 'Bars',\n isCustom: false,\n },\n {\n id: 35,\n name: 'Breweries',\n isCustom: false,\n },\n {\n id: 4,\n name: 'Nightlife',\n isCustom: false,\n },\n ],\n },\n {\n name: 'Cafes',\n categories: [\n {\n id: 36,\n name: 'Desserts',\n isCustom: false,\n },\n {\n id: 33,\n name: 'Bakeries',\n isCustom: false,\n },\n {\n id: 24,\n name: 'Cafes',\n isCustom: false,\n },\n ],\n },\n {\n name: 'Shopping',\n categories: [\n {\n id: 50,\n name: 'Flea & Street Markets',\n isCustom: false,\n },\n {\n id: 54,\n name: 'Antique Shops & Art Galleries',\n isCustom: false,\n },\n {\n id: 53,\n name: 'Gift & Speciality Shops',\n isCustom: false,\n },\n {\n id: 52,\n name: 'Shopping Malls',\n isCustom: false,\n },\n {\n id: 51,\n name: 'Farmers Markets',\n isCustom: false,\n },\n {\n id: 34,\n name: 'Shopping',\n isCustom: false,\n },\n ],\n },\n];\n\nexport const imgUrl = (apiPlaceUrl: string, x: number = 64, y?: number, type = 'Place'): string => {\n if (!apiPlaceUrl) {\n return 'data:image/jpeg;base64,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';\n }\n\n const xy = `${x}x${y || x}`;\n const cloudfrontUrl = `https://d2v9cz8rnpdl6f.cloudfront.net/${xy}`;\n const imageTypeAndUrl = apiPlaceUrl.substring(apiPlaceUrl.indexOf(`/${type}/`));\n return cloudfrontUrl + imageTypeAndUrl;\n};\n\nexport const cityImgUrl = (apiPlaceUrl: string, x: number = 64, y?: number): string => {\n const xy = `${x}x${y || x}`;\n const cloudfrontUrl = `https://d2v9cz8rnpdl6f.cloudfront.net/${xy}`;\n const placeUrl = apiPlaceUrl.substring(apiPlaceUrl.indexOf('/City/'));\n return cloudfrontUrl + placeUrl;\n};\n\nexport const imgUrlThumbnails = (imageUrl: string): string | undefined => {\n // Find the \"WxH\" format in the URL using regex\n const sizeMatch = imageUrl.match(/\\/(\\d+)x(\\d+)\\//);\n if (!sizeMatch) {\n return undefined;\n }\n\n const width = Number(sizeMatch[1]);\n const height = Number(sizeMatch[2]);\n\n if (isNaN(width) || isNaN(height) || width === 0) {\n return undefined;\n }\n\n // Resize width to 64 pixels and calculate proportional height\n const ratio = width / 64;\n const newHeight = Math.round(height / ratio);\n const newSize = `64x${newHeight}`;\n\n // Generate the new URL\n const newUrl = imageUrl.replace(sizeMatch[0], `/${newSize}/`);\n\n return newUrl;\n};\n\n// export const getCategoryGroups = (poiCategories?: PoiCategory[]): PoiCategoryGroup[] => {\n// const allCategories = poiCategories || allCategoriesStatic;\n\n// const mainCategories = allCategories.filter((category) => category.parent === null);\n\n// const subCategories = allCategories.filter((category) => category.parent !== null);\n\n// const categoryGroups: PoiCategoryGroup[] = mainCategories.map((mainCategory) => {\n// const result: PoiCategoryGroup = { ids: [], group: '' };\n\n// result.ids.push(mainCategory.id);\n\n// subCategories.filter((subCategory) => subCategory.parent && subCategory.parent.id === mainCategory.id).forEach((subCategory) => result.ids.push(subCategory.id));\n\n// result.group = mainCategory.name;\n\n// return result;\n// });\n\n// return categoryGroups;\n// };\n\n// export const getCategoryGroup = (categoryId: number, poiCategories?: PoiCategory[]): string => {\n// const allCategories = poiCategories || allCategoriesStatic;\n\n// const category = allCategories.find((category) => category.id === categoryId);\n\n// const parentCategory = category?.parent?.id ? allCategories.find((cat) => cat.id === category.parent!.id) : category;\n\n// if (!parentCategory) {\n// return 'UNKNOWN';\n// }\n\n// return parentCategory.name;\n// };\n// const poiCategoryIds = categoryGroup.categories.map((category: PoiCategory) => category.id);\n\nexport const getCategoryGroups = (categoriesData: PoiCategoryGroup[]): CategoryGroupResult[] => {\n return categoriesData.map((categoryGroup) => {\n const result: CategoryGroupResult = {\n ids: categoryGroup.categories.map((category: PoiCategory) => category.id),\n group: categoryGroup.name,\n };\n return result;\n });\n};\n\nexport const getCategoryGroup = (categoryId: number, poiCategoryGroups?: PoiCategoryGroup[]): string => {\n const categoryGroups = poiCategoryGroups || categoryGroupsStatic;\n\n for (const group of categoryGroups) {\n if (group.categories.some((category: PoiCategory) => category.id === categoryId)) {\n return group.name;\n }\n }\n\n return 'UNKNOWN';\n};\n\n// export const getCategoryGroup = (categoryId: number, poiCategories?: PoiCategory[]): string => {\n// const allCategories = poiCategories || allCategoriesStatic;\n\n// const category = allCategories.find((category) => category.id === categoryId);\n\n// const parentCategory = category?.parent?.id ? allCategories.find((cat) => cat.id === category.parent!.id) : category;\n\n// if (!parentCategory) {\n// return 'UNKNOWN';\n// }\n\n// return parentCategory.name;\n// };\n\n// export const getSubCategoryIds = (parentCategoryId: number, poiCategories?: PoiCategory[]): number[] => {\n// const allCategories = poiCategories || allCategoriesStatic;\n// const subCategories = allCategories.filter((category) => category.parent?.id === parentCategoryId);\n// return subCategories.map((subCategory) => subCategory.id).concat(parentCategoryId);\n// };\n\nexport const hoursFormat = (hour: string | null, daysArray: string[], closed: string) => {\n if (hour && hour.search(',') > -1) {\n const raw = hour.split('|');\n // To do model e ekle\n const hours: HourFormat[] = [];\n raw.forEach((item: string) => {\n const h = item.split(': ');\n const days = h[0].split(',');\n const clock = h[1].split(',').map((a) => a.trim());\n days.forEach((d) => {\n const day = d.replace(/ /g, '');\n const i = hours.findIndex((o) => o.day === day);\n if (i === -1) {\n hours.push({ day, clock });\n } else {\n hours[i].clock = hours[i].clock.concat(clock);\n }\n });\n });\n\n if (hours.length < 7) {\n const closeDays = daysArray.filter((day) => {\n return hours.every((h) => !h.day.includes(day));\n });\n\n closeDays.forEach((d) => {\n const currentIndex = daysArray.findIndex((day) => day === d);\n hours.splice(currentIndex, 0, { day: d, clock: [closed, ''] });\n });\n }\n return hours;\n }\n\n const formattedDays: HourFormat[] = daysArray.map((day) => {\n return {\n clock: [hour || ''],\n day,\n };\n });\n return formattedDays;\n};\n\nexport const compareStringForSort = (a: string, b: string): number => {\n const nameA = a.toLowerCase();\n const nameB = b.toLowerCase();\n if (nameA < nameB) return -1;\n if (nameA > nameB) return 1;\n return 0;\n};\n\nexport const emailFormatValid = (email: string): RegExpMatchArray | null => email.match(/^(([^<>()\\\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/);\n\nexport const passwordFormatValid = (password: string): RegExpMatchArray | null => password.match(/^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])([a-zA-Z0-9!-@#$^_:,. ]{8,})$/);\n\nexport const toEngChars = (str: string): string =>\n str\n .replace('Ğ', 'G')\n .replace('Ü', 'U')\n .replace('Ş', 'S')\n .replace('İ', 'I')\n .replace('Ö', 'O')\n .replace('Ç', 'C')\n .replace('ğ', 'g')\n .replace('ü', 'u')\n .replace('ş', 's')\n .replace('ı', 'i')\n .replace('ö', 'o')\n .replace('ç', 'c')\n .replace('á', 'a')\n .replace('é', 'e')\n .replace('í', 'i')\n .replace('ó', 'o')\n .replace('ú', 'u')\n .replace('ý', 'y')\n .replace('Á', 'A')\n .replace('É', 'E')\n .replace('Í', 'I')\n .replace('Ó', 'O')\n .replace('Ú', 'U')\n .replace('Ý', 'Y')\n .replace('à', 'a')\n .replace('è', 'e')\n .replace('ì', 'i')\n .replace('ò', 'o')\n .replace('ù', 'u')\n .replace('À', 'A')\n .replace('È', 'E')\n .replace('Ì', 'I')\n .replace('Ò', 'O')\n .replace('Ù', 'U')\n .replace('â', 'a')\n .replace('ê', 'e')\n .replace('î', 'i')\n .replace('ô', 'o')\n .replace('û', 'u')\n .replace('Â', 'A')\n .replace('Ê', 'E')\n .replace('Î', 'I')\n .replace('Ô', 'O')\n .replace('Û', 'U')\n .replace('ã', 'a')\n .replace('ñ', 'n')\n .replace('õ', 'o')\n .replace('Ã', 'A')\n .replace('Ñ', 'N')\n .replace('Õ', 'O')\n .replace('ä', 'a')\n .replace('ë', 'e')\n .replace('ï', 'i')\n .replace('ÿ', 'Y')\n .replace('Ä', 'A')\n .replace('Ë', 'E')\n .replace('Ï', 'I')\n .replace('Ÿ', 'Y');\n\nexport const unicodeToString = (str: string): string =>\n str\n .replace(/u00c7/g, 'Ç')\n .replace(/u00e7/g, 'ç')\n .replace(/u011f/g, 'ğ')\n .replace(/u0130/g, 'İ')\n .replace(/u0131/g, 'ı')\n .replace(/u00d6/g, 'Ö')\n .replace(/u00f6/g, 'ö')\n .replace(/u015e/g, 'Ş')\n .replace(/u015f/g, 'ş')\n .replace(/u00dc/g, 'Ü')\n .replace(/u00fc/g, 'ü');\n\nexport const hourRange = ['00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23'];\nexport const minuteRange = ['00', '05', '10', '15', '20', '25', '30', '35', '40', '45', '50', '55'];\nexport const timeRange: Array<string> = [];\n\nhourRange.forEach((h) => {\n return minuteRange.forEach((m) => {\n return timeRange.push(`${h}:${m}`);\n });\n});\n\nexport const startTimeRange = (all: boolean = true) => {\n return all ? timeRange : timeRange.filter((_, i) => i != timeRange.length - 1);\n};\n\nexport const endTimeRange = (startHour?: string) => {\n if (startHour === undefined) return timeRange;\n\n const filteredEndHouts: string[] = [];\n let getAll: boolean = false;\n for (let i = 0; i < timeRange.length; i++) {\n const hr = timeRange[i];\n if (getAll) {\n filteredEndHouts.push(hr);\n } else {\n if (hr === startHour) getAll = true;\n }\n }\n\n return filteredEndHouts;\n};\n\nexport const deepCopy = <T>(oldObject: T): T => JSON.parse(JSON.stringify(oldObject)) as T;\n\nexport const getYourGuideImageArrayFormat = (imgUrls: Array<string>, formatId: string) => imgUrls.map((img) => img.replace('[format_id]', formatId));\n\nexport const getYourGuideImageFormat = (str: string, formatId: string): string => str.replace('[format_id]', formatId);\n\nexport const companionTitleOptions = [{ value: 'Family member' }, { value: 'Friend' }, { value: 'Work colleague' }];\n\nexport const delay = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms));\n\n/**\n * Capitalize first letter of string param\n * @param {string} any string\n * @returns {string} first letter is uppercase\n */\nexport const capitalizeFirstLetter = (string: string): string => {\n const lowerCaseString = string.toLowerCase(); // Tüm harfleri küçük yap\n return lowerCaseString.charAt(0).toUpperCase() + lowerCaseString.slice(1); // İlk harfi büyük yap ve geri kalanını ekle\n};\n\nexport const removeDuplicateValuesById = <T extends { id: string }>(duplicateItems: T[]) => {\n const uniqueItems = duplicateItems.filter((item, itemIndex, allItems) => {\n const firstItemIndex = allItems.findIndex((i) => {\n if (item && i && item.id && i.id) return i.id === item.id;\n // eslint-disable-next-line no-console\n // console.log('vallahi null falan geldi!', item, i);\n return false;\n });\n const isUniqueItem = firstItemIndex === itemIndex;\n return isUniqueItem;\n });\n return uniqueItems;\n};\n\nexport const removeDuplicateValues = <T>(duplicateItems: T[], compareFn: (t1: T, t2: T) => boolean) => {\n const uniqueItems = duplicateItems.filter((item, itemIndex, allItems) => {\n const firstItemIndex = allItems.findIndex((i) => compareFn(i, item));\n const isUniqueItem = firstItemIndex === itemIndex;\n return isUniqueItem;\n });\n return uniqueItems;\n};\n\nexport const getAge = (dateOfBirth: string): number => {\n var today = new Date();\n var birthDate = new Date(dateOfBirth);\n var age = today.getFullYear() - birthDate.getFullYear();\n var m = today.getMonth() - birthDate.getMonth();\n if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) {\n age--;\n }\n return age;\n};\n\n// export const tourAvailable = (bookings: Model.Booking[], TOUR_PROVIDER_IDS: Model.PROVIDER_ID[], gygTourIds: number[], bbTourIds: number[]): boolean => {\n// const tourProviderBooking = bookings.find((booking: Model.Booking) => TOUR_PROVIDER_IDS.includes(booking.providerId));\n// if (tourProviderBooking) {\n// return tourProviderBooking.products.some((product) => !product.info.includes(Model.BOOKING_PRODUCT_INFO.TICKET));\n// }\n// return false;\n// };\n\n// export const ticketAvailable = (bookings: Model.Booking[], TICKET_PROVIDER_IDS: Model.PROVIDER_ID[], gygTourIds: number[], bbTourIds: number[]): boolean => {\n// const ticketProviderBooking: Model.Booking | undefined = bookings.find((booking: Model.Booking) => TICKET_PROVIDER_IDS.includes(booking.providerId));\n// if (ticketProviderBooking) {\n// return ticketProviderBooking.products.some((product) => product.info.includes(Model.BOOKING_PRODUCT_INFO.TICKET));\n// }\n// return false;\n// };\n\nexport const tourAvailable = (bookings: Model.Booking[], TOUR_PROVIDER_IDS: Model.PROVIDER_ID[], gygTourIds: number[], bbTourIds: number[], viatorTourIds: string[], toristyTourIds: string[]): boolean => {\n return bookings.some(\n (booking) =>\n TOUR_PROVIDER_IDS.includes(booking.providerId) &&\n booking.products.some((product) => {\n const productIdAsNumber = Number(product.id);\n return (\n !product.info.includes(Model.BOOKING_PRODUCT_INFO.TICKET) &&\n (gygTourIds.includes(productIdAsNumber) || bbTourIds.includes(productIdAsNumber) || viatorTourIds.includes(product.id.toString()) || toristyTourIds.includes(product.id.toString()) || booking.providerId === 11 || booking.providerId === 8)\n );\n }),\n );\n};\n\nexport const ticketAvailable = (bookings: Model.Booking[], TICKET_PROVIDER_IDS: Model.PROVIDER_ID[], gygTourIds: number[], bbTourIds: number[], viatorTourIds: string[], toristyTourIds: string[]): boolean => {\n return bookings.some(\n (booking) =>\n TICKET_PROVIDER_IDS.includes(booking.providerId) &&\n booking.products.some((product) => {\n const productIdAsNumber = Number(product.id);\n return (\n product.info.includes(Model.BOOKING_PRODUCT_INFO.TICKET) &&\n (gygTourIds.includes(productIdAsNumber) || bbTourIds.includes(productIdAsNumber) || viatorTourIds.includes(product.id.toString()) || toristyTourIds.includes(product.id.toString()) || booking.providerId === 11 || booking.providerId === 8)\n );\n }),\n );\n};\n\nexport const restaurantReservationAvailable = (bookings: Model.Booking[], RESTAURANT_RESERVATION_PROVIDER_IDS: Model.PROVIDER_ID[]): boolean => {\n return bookings.some((booking: Model.Booking) => RESTAURANT_RESERVATION_PROVIDER_IDS.includes(booking.providerId));\n};\n\nexport const offerAvailable = (offers: Model.Offer[]): boolean => {\n return offers.some((offer) => offer);\n};\n\nexport const hexToRgb = (c: string): string => `${c.match(/\\w\\w/g)?.map((x) => +`0x${x}`)}`;\n\nexport const setTheme = (theme: string, COLORS: Theme) => {\n const themeParams = theme === 'dark' ? COLORS.dark : COLORS.light;\n\n document.documentElement.style.setProperty('--primary-color', themeParams.primary);\n document.documentElement.style.setProperty('--primary-color-rgb', hexToRgb(themeParams.primary));\n document.documentElement.style.setProperty('--secondary-color', themeParams.secondary);\n document.documentElement.style.setProperty('--secondary-color-rgb', hexToRgb(themeParams.secondary));\n document.documentElement.style.setProperty('--success-color', themeParams.success);\n document.documentElement.style.setProperty('--success-color-rgb', hexToRgb(themeParams.success));\n document.documentElement.style.setProperty('--warning-color', themeParams.warning);\n document.documentElement.style.setProperty('--warning-color-rgb', hexToRgb(themeParams.warning));\n document.documentElement.style.setProperty('--info-color', themeParams.info);\n document.documentElement.style.setProperty('--info-color-rgb', hexToRgb(themeParams.info));\n document.documentElement.style.setProperty('--danger-color', themeParams.danger);\n document.documentElement.style.setProperty('--danger-color-rgb', hexToRgb(themeParams.danger));\n document.documentElement.style.setProperty('--text-primary-color', themeParams.textPrimary);\n document.documentElement.style.setProperty('--text-primary-color-rgb', hexToRgb(themeParams.textPrimary));\n document.documentElement.style.setProperty('--header-color', themeParams.headerBg);\n document.documentElement.style.setProperty('--header-text-color', themeParams.headerTextColor);\n document.documentElement.style.setProperty('--background-color', themeParams.background);\n document.documentElement.style.setProperty('--background-color-rgb', hexToRgb(themeParams.background));\n};\n\nexport const setLogo = (darkLogo: string, lightLogo: string) => {\n document.documentElement.style.setProperty('--app-logo-dark', `url(${darkLogo})`);\n document.documentElement.style.setProperty('--app-logo-light', `url(${lightLogo})`);\n};\n\nexport const arraysEqual = (a: number[], b: number[]): boolean => {\n if (a.length !== b.length) return false;\n\n const sortedA = [...a].sort((x, y) => x - y);\n const sortedB = [...b].sort((x, y) => x - y);\n\n for (let i = 0; i < sortedA.length; i += 1) {\n if (sortedA[i] !== sortedB[i]) return false;\n }\n\n return true;\n};\n\nexport const formatDateWithTimezone = (date: string, timezone: string = 'UTC'): string => {\n // Parse the input date string to a Date object\n const inputDate = new Date(date);\n\n // Ensure the input date is valid\n if (isNaN(inputDate.getTime())) {\n throw new Error('Invalid date format');\n }\n\n // Format the date in the specified timezone\n const dateInTimeZone = new Date(\n new Intl.DateTimeFormat('en-US', {\n timeZone: timezone,\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit',\n hour12: false,\n }).format(inputDate),\n );\n\n // Convert the date to the YYYY-MM-DD HH:mm:ss format\n const timezonedOptInDate = `${dateInTimeZone.getFullYear()}-${String(dateInTimeZone.getMonth() + 1).padStart(2, '0')}-${String(dateInTimeZone.getDate()).padStart(2, '0')} ${String(dateInTimeZone.getHours()).padStart(2, '0')}:${String(\n dateInTimeZone.getMinutes(),\n ).padStart(2, '0')}:${String(dateInTimeZone.getSeconds()).padStart(2, '0')}`;\n\n return timezonedOptInDate;\n};\n\nexport const getProviderId = (providerName: string): Model.PROVIDER_ID | undefined => {\n switch (providerName) {\n case Model.PROVIDER_NAME.YELP:\n return Model.PROVIDER_ID.YELP;\n case Model.PROVIDER_NAME.GYG:\n return Model.PROVIDER_ID.GYG;\n case Model.PROVIDER_NAME.BOOK_BARBADOS:\n return Model.PROVIDER_ID.BOOK_BARBADOS;\n case Model.PROVIDER_NAME.VIATOR:\n return Model.PROVIDER_ID.VIATOR;\n case Model.PROVIDER_NAME.REZDY:\n return Model.PROVIDER_ID.REZDY;\n case Model.PROVIDER_NAME.TORISTY:\n return Model.PROVIDER_ID.TORISTY;\n case Model.PROVIDER_NAME.VICTORY:\n return Model.PROVIDER_ID.VICTORY;\n default:\n // eslint-disable-next-line no-console\n console.warn(`Unknown provider name: ${providerName}`);\n }\n};\n\nexport const eventCategoryIcons: Record<string, string> = {\n sports: `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,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\"/><image width=\"192\" height=\"192\" id=\"img2\" href=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS10cm9waHkiPjxwYXRoIGQ9Ik02IDlINC41YTIuNSAyLjUgMCAwIDEgMC01SDYiLz48cGF0aCBkPSJNMTggOWgxLjVhMi41IDIuNSAwIDAgMCAwLTVIMTgiLz48cGF0aCBkPSJNNCAyMmgxNiIvPjxwYXRoIGQ9Ik0xMCAxNC42NlYxN2MwIC41NS0uNDcuOTgtLjk3IDEuMjFDNy44NSAxOC43NSA3IDIwLjI0IDcgMjIiLz48cGF0aCBkPSJNMTQgMTQuNjZWMTdjMCAuNTUuNDcuOTguOTcgMS4yMUMxNi4xNSAxOC43NSAxNyAyMC4yNCAxNyAyMiIvPjxwYXRoIGQ9Ik0xOCAySDZ2N2E2IDYgMCAwIDAgMTIgMFYyWiIvPjwvc3ZnPg==\"/></defs><style/><use href=\"#img1\" x=\"28\" y=\"1\"/><use href=\"#img2\" transform=\"matrix(.779,0,0,.779,53,24)\"/></svg>',\n )}`,\n concerts: `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,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\"/><image width=\"192\" height=\"192\" id=\"img2\" href=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1ndWl0YXIiPjxwYXRoIGQ9Im0xMS45IDEyLjEgNC41MTQtNC41MTQiLz48cGF0aCBkPSJNMjAuMSAyLjNhMSAxIDAgMCAwLTEuNCAwbC0xLjExNCAxLjExNEEyIDIgMCAwIDAgMTcgNC44Mjh2MS4zNDRhMiAyIDAgMCAxLS41ODYgMS40MTRBMiAyIDAgMCAxIDE3LjgyOCA3aDEuMzQ0YTIgMiAwIDAgMCAxLjQxNC0uNTg2TDIxLjcgNS4zYTEgMSAwIDAgMCAwLTEuNHoiLz48cGF0aCBkPSJtNiAxNiAyIDIiLz48cGF0aCBkPSJNOC4yIDkuOUM4LjcgOC44IDkuOCA4IDExIDhjMi44IDAgNSAyLjIgNSA1IDAgMS4yLS44IDIuMy0xLjkgMi44bC0uOS40QTIgMiAwIDAgMCAxMiAxOGE0IDQgMCAwIDEtNCA0Yy0zLjMgMC02LTIuNy02LTZhNCA0IDAgMCAxIDQtNCAyIDIgMCAwIDAgMS44LTEuMnoiLz48Y2lyY2xlIGN4PSIxMS41IiBjeT0iMTIuNSIgcj0iLjUiIGZpbGw9ImN1cnJlbnRDb2xvciIvPjwvc3ZnPg==\"/></defs><style/><use href=\"#img1\" x=\"28\" y=\"1\"/><use href=\"#img2\" transform=\"matrix(.797,0,0,.797,51,27)\"/></svg>',\n )}`,\n theatre: `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,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\"/><image width=\"168\" height=\"168\" id=\"img2\" href=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1kcmFtYSI+PHBhdGggZD0iTTEwIDExaC4wMSIvPjxwYXRoIGQ9Ik0xNCA2aC4wMSIvPjxwYXRoIGQ9Ik0xOCA2aC4wMSIvPjxwYXRoIGQ9Ik02LjUgMTMuMWguMDEiLz48cGF0aCBkPSJNMjIgNWMwIDktNCAxMi02IDEycy02LTMtNi0xMmMwLTIgMi0zIDYtM3M2IDEgNiAzIi8+PHBhdGggZD0iTTE3LjQgOS45Yy0uOC44LTIgLjgtMi44IDAiLz48cGF0aCBkPSJNMTAuMSA3LjFDOSA3LjIgNy43IDcuNyA2IDguNmMtMy41IDItNC43IDMuOS0zLjcgNS42IDQuNSA3LjggOS41IDguNCAxMS4yIDcuNC45LS41IDEuOS0yLjEgMS45LTQuNyIvPjxwYXRoIGQ9Ik05LjEgMTYuNWMuMy0xLjEgMS40LTEuNyAyLjQtMS40Ii8+PC9zdmc+\"/></defs><style/><use href=\"#img1\" x=\"28\" y=\"1\"/><use href=\"#img2\" transform=\"matrix(.949,0,0,.949,42,20)\"/></svg>',\n )}`,\n 'special-events': `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAAD+CAMAAABIpbocAAAAAXNSR0IB2cksfwAAAppQTFRF6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFK6TFKWUw/UAAAAN50Uk5TAAsYJDE9SldjcHx4bF9TQzotIBQOO2CHrc//8cSgek8snevetotWE2Sm6s6OElWZ3PrDfgMab8L976FOB3XK9aVNAkvlhB8Pe+S8TJH00wUho24Z+10MjNlJXOewHSrF9gYKPlDiFRay8mLsEJyJUr2K4Cu62/4/7qpexmnRfdrdZdS4ASUR3zSQ6ccNaAT3jdZCCZP8grOWHkGveWe7zINEpwieny8wdr88cbSr7Th3zbX4MlE3lW1h8DMm15ikG8iIgUVAf8GF2HQnNljzIyg5rFrL4ymSHMAuc4+Gfo4X8gAAC9NJREFUeJzVnXt0FcUdx3cKTfEAiiQkxx4bXyHHhEcE4qOI6I0niadoEwUCQgyQgERiTGol18MjPggBFBBICBCeFSgvFQUbAgETMaeVWlpRw6FRWmtbXoW29EgrDZbeu/e5d/YxM7+Znd3PH9x7d2d3v19O7uO385vfDynCQDgXBF5NwDkTAqp1L6fypYCLcjZy8/l+XXHfWA67xm/n91yvzNFI30SE/kkx/nrU2XWV29U5GRnk+x8+R39YEkInU37DRQEPI3f6XHzFfPRNvqPb4SLARuLT0RfQc/RHqBV6DpiRLNRxw1moBJV0hA6ATgAxkovQMdDFtdyBfgE4mt1IThw6CriwHpmtWe+wHstqJB8dYb2kGenXvsV4JJuR0V/0/yXjBa24ZuiF91iOYzFSgD5guRQpI9E2hqMYjEyAf1ZakIU2Ux9DbaQItVBfhJqcneM2Uh5CaaT40rei3hxaEoetpzuAzshU0Ec9HXf3a6QZTmNkOtpDKQZEHmqgGE1hxJO+m1oMjB93ryceS2ykuOebTGJAeN69SDqU1MjNfRjCDQ6MWUE4kNBIxUXYb1N2Cq6Q/XkRGcnK2AESA2I8WkIyjMRIwuSfA8WAGJa0jmAUgZFuz24FiwFRuJ0gkLY24kWvcxADY9IZy18slkZmbeIiBciUNectRlgZmfPfLbzEgCjZaXE/z8JINcn7zBamNX1kut/cSP9LPLXAGPUn068yUyPDTvPVAuPJ02tM9poZecnsQAmUnjP5kjcxMvYWZ7zPI6SkbDDcZ2zE+z77/VxRPIXmGO0yNDK/gd8tf34Y/xg2MlKL6gRpgZHwicEOIyOVO0VJAfLM8/rbDYwsWi5OCozKk/qfpfpGKnaJ1ALjJzt0p7h0jVw/+HOxYkD0/Uxvq56RxV9T3VGynbF6f/d6RgqZbofbR96Ov+MbdYwsIYqRZXJ15rPYNtxI0ZBX7RADoqoS24QbWb7IDilAnn8mdgtmJLvDHikwynuVx2yJNVL0b3umDaBgn8ExRjL/KiJdSACFS69oN8Tovusv9mmBUTJP+1prpPbPzPPctpOvnT3RGqmvtVMKjD73aMJFjZFuK+bbKwbEnBnRrzRGVsX83TmcH0ZPPUUbWUg6qeIQqkujXkQbGXrGbikwhmdPj7yIMtL4ou1SgIyOuq8QZeTV1+yXAuTst+GnESPf7SdDCoyod0nEyNoXZEiBkdMrfBM1bCQ/1Wk3SEl4eWroWdiIm77UI6QfDD0LGVm818k3Tozp1Rl8EjKyfq4sKTBqioNPQkY2zpYlBUbhx8F5rKCR7onytMConRx4DBpZ/bI0JUD6HA88BozkpclPCmBlwST1IWDEw3dRiq0Ef3AFjLxuMOngBvJOqeG5amTzeeffXDRmiJowqhoZbJXo4WheKfT/qxrZOlOuFBiVVf5/VSO3Wq9TczKLJygBI9t+KlsKjKXjlYCRntfJlgLjtXFKwMgGw3QCd5CU/I5qJOsRN3/4+llWoBpx2+0snIuXVCO7KmQLgbJijGrkzdjJH9dR/5hq5EVnz6qTMPCAz0hxs2wZcNIO+YzsLpMtA05Dvs/I7f+SLQPO3bt9Rpyb0UTOqjyfkT2l1gOdTs4mnxFXZDpYEf8pUvZOtx7neBofRtP3yhbBg7WjUNNU62HOZ/lYdFOXbBE8GLMC9egrWwQPRteht2dYD3M+L01DTloiws4PjqAtVbJF8KC0Gg3/UrYIHlRWoVsuyxbBhVMo42+yNXDhabSvRLYGLpShgTpZzS5kHXJHeqwl65Db75cGiUPNxdajXMA3aP8U2Rq4cBm5e7YqzCkUlyBbAw+SP0Re+npDDmRTDmqZJFsEDzL2oYNFskXwYPODqG6BbBE8qClGyivLZKvgwJYspMymLcnlRG77ACmtE2Wr4MDY5UhpqJGtggNLHkdKYnfZKjhwaztSSvbJVgGnxx8UpLRNkC0Dzrb7/ZOh35ctA446Y6Xc+D/ZOsD84z9+I4fHy9YBpvFhv5F7/yhbB5SZe9/zG4n/nmwhUO5oCqQ5HXpCthIgO+4LGCmXUIGRKztHBIy4/bs9ueyJgJH5K2VLgbEqTwlmmU6zr2asCMb5l+upRlyexbHyUSVoxI0r9yJ41DKSqpGa03YXwOVJhdf/b2C1gqsnSbrUqaqAket6SpUCwpOmpi0HlyaVufdva9bT6kPQiIu/3Hfdqz4EjbQXSJQCwhMsfRtah+janNk3hgceQ0Zcm459Jhjfhozk3iCr6DWMhaF78OHV0y5NHOgKyQ4bKTpoMNTReMPviEiFgV+NliIFRqTuTsSIG2dF65eGO2BFVeFwYVTy1j3hp1FGeveWIAUEuhz5K4oykrXgUQliILx9V+R5dMmdUb+zXQqIjLioamCaak4uKx50JboBh8aIu9a/jTwXXeFTW/HMVdVqhmg+ZbVGPip3Xh1sI7J/pnkZUxXQPYmBs49oy1TEGKlr4tkYUCRR34UqsfUl3RIqTjwfk+eAFcp0SWb2nsyYDZiR3BQ33FCpxla44aVLjz5iixQQGb2xavA6NVifk9paiIhLeJ8uHSNtzU6vvxMoIKJFrypuSYezvxY3v6DTUFi3vO92vHa2g3gXDdHZql+n+A2s5LSDSDukt1XfSEGnnBZ1JNyn367NoHL0xxVOra1n0FrBsG2HU9tE1O83aBxkWMvbmRmCSZsyDPYYFyX/5CExWkDsH2S0x9jIiNU5QrRAGGDc09ekTHz84WwBWiA0DzbeZ1bv/riXd99yGAdKdb7RQ5gW7m8/5qSq5S0jL5jsNe9A4KR1S8MWpZvttmil4JwsleTFI0z3WxjJGuqU4KTY4nvNqrkFWuaMaiOH0iwGWHbpOPEjJ5QMnPBbqwZI1u1GFp6QP9/rrbTsoEfQN2XUANllv3s03W45hqQBjOzlvGs6CGrGEnWyeaDTeow4CleTFM4iMpI3UOY6rO5Et0LIegvVXl4L0gIhtY1oGGGTpL5PyrrXNeUzsrZBpN2ejk0+yy4GQPnVWWQDidtWfZrLqgVCUW/Sevbk/beSurFpgWAcomOQG6mJt78VkXGIjkHREa3OY3cQv30k+Via1m52B/FzL1AUIqbqUWdvEF+SSFMtlq7ZXvtz9k04tAyiWlZI2TXwsQ/pxrNjEaJj0LY/tKuumFWIjkFrJPMBe4L4G39NeQB1Q0p7gni9WUJz6Dtr2hHEt07UnwQxgaFF6MIBoqufeufRZ7yy9Dq9thfDQRSQhOgYTE1bq9exHEUKUYiOwdZ9VmgQ/zVTbWs2IyKD+KlsDZwY+wHXojrrQUyktrEdx9rYeH6D5b0/JkhDdAzmDs3eZBGTQMQhOgZ7q2kRk0BoBnPLOUDPbP4Fdmd/xf7zB2CEfxC/EXCnBmBEqTu3HnA0jkG6DBkQI8p3Hm+FHB4DVYiOATKidNbymwSiC9ExYEY4TgJ5tsEq/wCNKJ/fDzxBkJxZqbATQI1wCuILO6Ar1cBGMrd6oKfw8X5/6BnARpSEMvgkEH2IjgE3wmESiCFEx+BgBDwJNG0lh0WpPIwAJ4GKGnksI+JiBJTJuSaZeDLHDD5GIJmcbCE6Bicj7Jmc/iJfPOBkhHkSyCzfkgpeRpTj2SxBvGm+JRXcjDAF8eb5llTwM8IQxKMWuskc03NxOxN9JickRMfgaYQ2kxMSomPwNEI5CXQ4heu1eZ5MOTGPPIi3zrekgq8RiiCeIN+SCs5GiIN4z1yGyRwzeBshzOQEh+gY3I0QTQLBQ3QM/kZIJoEa8rlflr8RgkzO1Db+VxVgxDKIb61inMwxQ4QRiyCeS4iOIcSIaRDPJ0THEGNEOWkY91HkW1IhyIjxJBBFviUVgowYZnLGljPhhigjBkF88x7IZI4ZwozoZnLyC9ExxBnRyeTkGKJjCDSCZXLS5ltSIdJIzCQQdb4lFUKNaDM5NwhdIC/UiCaIx8v98L2U0LNHZXJyDtExBBsJZ3LyDtExRBsJZnIy5VtSIdyImsnJlm9JhXgjviCebEkkDBuM5A082iz+KjYYUXL323CR/wPjs2DZf3CoBgAAAABJRU5ErkJggg==\"/><image width=\"168\" height=\"168\" id=\"img2\" href=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1nZW0iPjxwYXRoIGQ9Ik02IDNoMTJsNCA2LTEwIDEzTDIgOVoiLz48cGF0aCBkPSJNMTEgMyA4IDlsNCAxMyA0LTEzLTMtNiIvPjxwYXRoIGQ9Ik0yIDloMjAiLz48L3N2Zz4=\"/></defs><style/><use href=\"#img1\" x=\"28\" y=\"1\"/><use href=\"#img2\" transform=\"matrix(.863,0,0,.863,55,31)\"/></svg>',\n )}`,\n 'virtual-experience': `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,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\"/><image width=\"192\" height=\"192\" id=\"img2\" href=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmZmYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBjbGFzcz0ibHVjaWRlIGx1Y2lkZS1tb25pdG9yLXBsYXkiPjxwYXRoIGQ9Ik0xMCA3Ljc1YS43NS43NSAwIDAgMSAxLjE0Mi0uNjM4bDMuNjY0IDIuMjQ5YS43NS43NSAwIDAgMSAwIDEuMjc4bC0zLjY2NCAyLjI1YS43NS43NSAwIDAgMS0xLjE0Mi0uNjR6Ii8+PHBhdGggZD0iTTEyIDE3djQiLz48cGF0aCBkPSJNOCAyMWg4Ii8+PHJlY3QgeD0iMiIgeT0iMyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjE0IiByeD0iMiIvPjwvc3ZnPg==\"/></defs><style/><use href=\"#img1\" x=\"28\" y=\"1\"/><use href=\"#img2\" transform=\"matrix(.789,0,0,.789,52,31)\"/></svg>',\n )}`,\n tennis: `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,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\"/><image width=\"153\" height=\"162\" id=\"img2\" href=\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iODAwcHgiIGhlaWdodD0iODAwcHgiIHZpZXdCb3g9IjAgLTAuNSAxNyAxNyIgdmVyc2lvbj0iMS4xIiBjbGFzcz0ic2ktZ2x5cGggc2ktZ2x5cGgtdGVubmlzLXJhY2tldC1iYWxsIj4KCjx0aXRsZT43MTk8L3RpdGxlPgoKPGRlZnM+Cgo8L2RlZnM+Cgo8ZyBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KCjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEuMDAwMDAwLCAwLjAwMDAwMCkiIGZpbGw9IiNmZmYiPgoKPGNpcmNsZSBjeD0iMTMuOTUzIiBjeT0iMTMuOTUzIiByPSIxLjk1MyIgY2xhc3M9InNpLWdseXBoLWZpbGwiPgoKPC9jaXJjbGU+Cgo8cGF0aCBkPSJNMTQuNzU0LDEuMjY1IEMxMi43NiwtMC43MzMgOS4wMzgsLTAuMjYgNi40NjIsMi4zMiBDNC44OTUsMy44ODQgNC4xMTEsNS44NzUgNC4xODIsNy42NDEgQzQuMDk1LDcuNzIgNC4wNDcsNy44MzkgNC4wNzYsNy45NjggQzQuNTM4LDEwLjA2NiAyLjY5OCwxMi4yMjQgMi42NzgsMTIuMjQ3IEMyLjY1NCwxMi4yNzUgMi42MzYsMTIuMzA5IDIuNjI0LDEyLjM0MyBMMC4yNDQsMTQuNzIzIEMtMC4wNDQsMTUuMDExIC0wLjA1NSwxNS40NjcgMC4yMiwxNS43NDMgTDAuMjQyLDE1Ljc2MyBDMC41MTQsMTYuMDM4IDAuOTcyLDE2LjAyOCAxLjI1OSwxNS43MzggTDMuNzE0LDEzLjI4NiBDMy44ODEsMTMuMTU5IDYuMjQ5LDExLjQxNSA3Ljk1NCwxMS45IEM4LjA2NywxMS45MzMgOC4xNzcsMTEuOTAzIDguMjYsMTEuODM4IEMxMC4wNTcsMTEuOTQ5IDEyLjEwMSwxMS4xNjEgMTMuNzAyLDkuNTU4IEMxNi4yNzgsNi45ODEgMTYuNzUsMy4yNiAxNC43NTQsMS4yNjUgTDE0Ljc1NCwxLjI2NSBaIE02LjIyNSw5Ljg0IEM1Ljk2OSw5LjU4NSA1Ljc3Myw5LjI5IDUuNjIxLDguOTcxIEw2Ljk3Niw3LjYxNSBMOC40MDUsOS4wNDUgTDcuMDM1LDEwLjQxNiBDNi43MzgsMTAuMjY3IDYuNDYzLDEwLjA3OSA2LjIyNSw5Ljg0IEw2LjIyNSw5Ljg0IFogTTcuNjg0LDYuOTA5IEw5LjA5OCw1LjQ5MyBMMTAuNTI4LDYuOTIzIEw5LjExMiw4LjMzNyBMNy42ODQsNi45MDkgTDcuNjg0LDYuOTA5IFogTTkuMTExLDQuMDk1IEw3LjY1MiwyLjYzNiBDOC4xOSwyLjE2MyA4Ljc2OSwxLjc4OSA5LjM2MSwxLjUxNSBMMTAuNTI3LDIuNjggTDkuMTExLDQuMDk1IEw5LjExMSw0LjA5NSBaIE0xMS4yMTksMy4zNzIgTDEyLjY0OSw0LjgwMiBMMTEuMjM0LDYuMjE2IEw5LjgwNSw0Ljc4OCBMMTEuMjE5LDMuMzcyIEwxMS4yMTksMy4zNzIgWiBNNi45NDUsMy4zNDEgTDguNDA1LDQuODAyIEw2Ljk5LDYuMjE2IEw1LjgyNSw1LjA1IEM2LjEsNC40NiA2LjQ3MywzLjg4IDYuOTQ1LDMuMzQxIEw2Ljk0NSwzLjM0MSBaIE0xMS4yMTksNy42MTUgTDEyLjcyMyw5LjExOCBDMTIuMTg1LDkuNTkxIDExLjYwNSw5Ljk2NCAxMS4wMTQsMTAuMjM5IEw5LjgwNSw5LjAzIEwxMS4yMTksNy42MTUgTDExLjIxOSw3LjYxNSBaIE0xMS45MjYsNi45MDkgTDEzLjM0MSw1LjQ5MyBMMTQuNTQ5LDYuNzAyIEMxNC4yNzYsNy4yOTQgMTMuOTAyLDcuODc0IDEzLjQyOSw4LjQxMSBMMTEuOTI2LDYuOTA5IEwxMS45MjYsNi45MDkgWiBNMTQuOTI2LDUuNjY3IEwxNC4wNDcsNC43ODggTDE1LjA1NSwzLjc3OSBDMTUuMTQzLDQuMzcyIDE1LjA5Niw1LjAxNyAxNC45MjYsNS42NjcgTDE0LjkyNiw1LjY2NyBaIE0xNC4xNSwxLjkxNCBDMTQuMzg4LDIuMTUzIDE0LjU3NiwyLjQyOCAxNC43MjQsMi43MjUgTDEzLjM1NCw0LjA5NSBMMTEuOTI1LDIuNjY2IEwxMy4yOCwxLjMxMiBDMTMuNiwxLjQ2MiAxMy44OTUsMS42NTkgMTQuMTUsMS45MTQgTDE0LjE1LDEuOTE0IFogTTEyLjIwNSwxLjAwMSBMMTEuMjMzLDEuOTc0IEwxMC4zOTcsMS4xMzggQzExLjAyLDAuOTc2IDExLjYzMywwLjkyOSAxMi4yMDUsMS4wMDEgTDEyLjIwNSwxLjAwMSBaIE01LjQ0OSw2LjA4NyBMNi4yODMsNi45MjMgTDUuMzEsNy44OTYgQzUuMjM5LDcuMzIzIDUuMjg1LDYuNzEgNS40NDksNi4wODcgTDUuNDQ5LDYuMDg3IFogTTMuODk4LDEyLjMxMiBDMy44NzUsMTIuMjc5IDMuODYyLDEyLjI0MSAzLjgzNCwxMi4yMTIgTDMuODEzLDEyLjE5MSBDMy43ODQsMTIuMTYyIDMuNzQ3LDEyLjE1IDMuNzE0LDEyLjEyNyBDNC4wNzcsMTEuNTg0IDQuNTQ5LDEwLjczNCA0Ljc2NSw5Ljc1MiBDNC45NDQsMTAuMDcxIDUuMTYzLDEwLjM2OSA1LjQzLDEwLjYzNSBDNS42OCwxMC44ODYgNS45NTYsMTEuMDk4IDYuMjU2LDExLjI3MiBDNS4zMjIsMTEuNDk4IDQuNDU3LDExLjk2MiAzLjg5OCwxMi4zMTIgTDMuODk4LDEyLjMxMiBaIE04LjA5LDEwLjc0NSBMOS4wOTgsOS43MzYgTDkuOTc3LDEwLjYxNSBDOS4zMjYsMTAuNzg2IDguNjgyLDEwLjgzMyA4LjA5LDEwLjc0NSBMOC4wOSwxMC43NDUgWiIgY2xhc3M9InNpLWdseXBoLWZpbGwiPgoKPC9wYXRoPgoKPC9nPgoKPC9nPgoKPC9zdmc+\"/></defs><style/><use href=\"#img1\" x=\"28\" y=\"1\"/><use href=\"#img2\" transform=\"matrix(.939,0,0,.939,56,19)\"/></svg>',\n )}`,\n default: `data:image/svg+xml;charset=UTF-8,${encodeURIComponent(\n '<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" viewBox=\"0 0 256 256\" width=\"32\" height=\"32\"><defs><image width=\"200\" height=\"254\" id=\"img1\" href=\"data:image/png;base64,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\"/></defs><style>.a{fill:#e9314a}</style><path class=\"a\" d=\"m127.9 1.4c-54.9 0-99.4 44.5-99.4 99.4 0 24.5 8.9 46.9 23.6 64.2l75.8 89.3 75.7-89.3c14.7-17.3 23.7-39.7 23.7-64.2 0-54.9-44.5-99.4-99.4-99.4zm0 136.9c-22.6 0-40.9-18.3-40.9-40.9 0-22.6 18.3-40.9 40.9-40.9 22.5 0 40.8 18.3 40.8 40.9 0 22.6-18.3 40.9-40.8 40.9z\"/><use href=\"#img1\" x=\"28\" y=\"1\"/></svg>',\n )}`,\n};\n","/* eslint-disable */\nexport const plural = function(txt: string, revert = false) {\n var plural = {\n '(quiz)$': '$1zes',\n '^(ox)$': '$1en',\n '([m|l])ouse$': '$1ice',\n '(matr|vert|ind)ix|ex$': '$1ices',\n '(x|ch|ss|sh)$': '$1es',\n '([^aeiouy]|qu)y$': '$1ies',\n '(hive)$': '$1s',\n '(?:([^f])fe|([lr])f)$': '$1$2ves',\n '(shea|lea|loa|thie)f$': '$1ves',\n sis$: 'ses',\n '([ti])um$': '$1a',\n '(tomat|potat|ech|her|vet)o$': '$1oes',\n '(bu)s$': '$1ses',\n '(alias)$': '$1es',\n '(octop)us$': '$1i',\n '(ax|test)is$': '$1es',\n '(us)$': '$1es',\n '([^s]+)$': '$1s',\n };\n var singular = {\n '(quiz)zes$': '$1',\n '(matr)ices$': '$1ix',\n '(vert|ind)ices$': '$1ex',\n '^(ox)en$': '$1',\n '(alias)es$': '$1',\n '(octop|vir)i$': '$1us',\n '(cris|ax|test)es$': '$1is',\n '(shoe)s$': '$1',\n '(o)es$': '$1',\n '(bus)es$': '$1',\n '([m|l])ice$': '$1ouse',\n '(x|ch|ss|sh)es$': '$1',\n '(m)ovies$': '$1ovie',\n '(s)eries$': '$1eries',\n '([^aeiouy]|qu)ies$': '$1y',\n '([lr])ves$': '$1f',\n '(tive)s$': '$1',\n '(hive)s$': '$1',\n '(li|wi|kni)ves$': '$1fe',\n '(shea|loa|lea|thie)ves$': '$1f',\n '(^analy)ses$': '$1sis',\n '((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$': '$1$2sis',\n '([ti])a$': '$1um',\n '(n)ews$': '$1ews',\n '(h|bl)ouses$': '$1ouse',\n '(corpse)s$': '$1',\n '(us)es$': '$1',\n s$: '',\n };\n var irregular: Record<string, any> = {\n move: 'moves',\n foot: 'feet',\n goose: 'geese',\n sex: 'sexes',\n child: 'children',\n man: 'men',\n tooth: 'teeth',\n person: 'people',\n };\n var uncountable = ['sheep', 'fish', 'deer', 'moose', 'series', 'species', 'money', 'rice', 'information', 'equipment'];\n\n // save some time in the case that singular and plural are the same\n if (uncountable.indexOf(txt.toLowerCase()) >= 0) return txt;\n\n // check for irregular forms\n for (const word in irregular) {\n let pattern;\n let replace;\n\n if (revert) {\n pattern = new RegExp(irregular[word] + '$', 'i');\n replace = word;\n } else {\n pattern = new RegExp(word + '$', 'i');\n replace = irregular[word];\n }\n if (pattern.test(txt)) return txt.replace(pattern, replace);\n }\n\n let array: Record<string, any>;\n if (revert) array = singular;\n else array = plural;\n\n // check for matches using regular expressions\n for (const reg in array) {\n var pattern2 = new RegExp(reg, 'i');\n if (pattern2.test(txt)) return txt.replace(pattern2, array[reg]);\n }\n return txt;\n};\n"],"sourceRoot":""}
|