@qite/tide-booking-component
Version:
React Booking wizard & Booking product component for Tide
441 lines (440 loc) • 12.4 kB
TypeScript
export declare const languages: string[];
export declare const defaultLanguage = 'nl-BE';
export declare const formatPrice: (price: number, currencyCode: string, locale?: string) => string;
import { DateStruct } from '@qite/tide-client';
import { DepartureRange } from '../types';
import { SortByType } from '../../search-results/types';
export declare const getTranslations: (language: string) => {
STEPS: {
PERSONAL_DETAILS: string;
EXTRA_OPTIONS: string;
SUMMARY: string;
CONFIRMATION: string;
ERROR: string;
PREVIOUS: string;
NEXT: string;
SUBMIT_BOOKING: string;
SUBMIT_OFFER: string;
SUBMIT_OPTION: string;
COMPOSE: string;
ROOM_OPTIONS: string;
FLIGHT_OPTIONS: string;
};
INPUT: {
INCREASE: string;
DECREASE: string;
};
FLIGHTS_FORM: {
OUTWARD_FLIGHTS: string;
OUTWARD_FLIGHT: string;
RETURN_FLIGHTS: string;
RETURN_FLIGHT: string;
DIRECT_FLIGHT: string;
STOP: string;
STOPS: string;
FLIGHT_STOPS: string;
DIFFERENT_OPTION_WARNING: string;
FILTER_OPTIONS: string;
AIRLINES: string;
AIRPORTS: string;
NUMBER_OF_STOPS: string;
FLIGHT_OUTWARD: string;
DEPARTURE_TIME: string;
TRAVEL_DURATION: string;
CHANGE_TIME: string;
FLIGHT_RETURN: string;
NO_FLIGHTS_FOUND: string;
STARTING: string;
LOWEST_PRICE: string;
CHOOSE_YOUR_CLASS: string;
PLUS_ONE_DAY: string;
STOP_TIME: string;
NIGHT_DEPARTURE: string;
MORNING_DEPARTURE: string;
AFTERNOON_DEPARTURE: string;
EVENING_DEPARTURE: string;
FLIGHTS_FOUND_1: string;
FLIGHTS_FOUND_2: string;
FLIGHTS_FOUND_3: string;
SELECT_YOUR_FARE: string;
};
PRODUCT: {
STAY_INCLUDED: string;
FLIGHT_INCLUDED: string;
TRANSFER_INCLUDED: string;
LOADING_PRICE: string;
PER_PERSON: string;
PER_NIGHT: string;
PER_PERSON_PER_NIGHT: string;
BOOK_NOW: string;
TO_YOUR_OFFER: string;
NOT_AVAILABLE: string;
NUMBER_OF_ROOMS: string;
AGE_BY_DEPARTURE_DATE: string;
YEAR: string;
APPLY: string;
EDIT: string;
DEPARTURE: string;
DEPARTURE_DATE: string;
RETURN: string;
RETURN_DATE: string;
WHO_YOU_TRAVELING_WITH: string;
TRAVEL_PERIOD: string;
CLOSE: string;
NIGHTS: string;
DAYS: string;
};
MAIN: {
PREPARING_BOOKING: string;
PREPARING_OFFER: string;
PREPARING_DOSSIER: string;
PRODUCT_UNAVAILABLE: string;
};
SHARED: {
ROOM: string;
ROOMS: string;
TOTAL_PRICE: string;
ADULTS: string;
CHILDREN: string;
SELECT: string;
SELECTED: string;
};
SIDEBAR: {
OVERVIEW: string;
SLIDE_TOTAL_PRICE: string;
SLIDE_DEPOSIT: string;
TRAVEL_INFO: string;
TRAVELERS: string;
TRAVELERS_ADULTS: string;
TRAVELERS_ADULT: string;
TRAVELERS_CHILDREN: string;
TRAVELERS_CHILD: string;
TRAVELERS_INFANTS: string;
TRAVELERS_INFANT: string;
DEPARTURE: string;
DEPARTURE_SINGLE: string;
ARRIVAL: string;
FLIGHT: string;
ACCOMMODATION: string;
BASE_PRICE: string;
OPTIONS: string;
INCLUDED_COSTS: string;
EXTRA_COSTS: string;
DEPOSIT: string;
DEPOSIT_TEXT1: string;
DEPOSIT_TEXT2: string;
DEPOSIT_TEXT3: string;
DEPOSIT_TEXT4: string;
DEPOSIT_TEXT5: string;
DEPOSIT_TEXT6: string;
LUGGAGE_INCLUDED: string;
DEPARTURE_FLIGHT: string;
ARRIVAL_FLIGHT: string;
FLIGHT_DEPARTURE: string;
FLIGHT_ARRIVAL: string;
ON_REQUEST: string;
CHANGES: string;
COMMISSION: string;
};
TRAVELERS_FORM: {
AGE: string;
TRAVELER: string;
ADULT: string;
ADULTS: string;
CHILD: string;
CHILDREN: string;
GENDER: string;
GENDER_ID: string;
MALE: string;
MALE_GENDER: string;
FEMALE: string;
FEMALE_GENDER: string;
OTHER: string;
MAIN_BOOKER: string;
FIRST_NAME: string;
LAST_NAME: string;
BIRTHDATE: string;
STREET: string;
STREET_PLACEHOLDER: string;
HOUSE_NUMBER: string;
POST_BOX: string;
ZIPCODE: string;
CITY: string;
CITY_PLACEHOLDER: string;
COUNTRY: string;
SELECT_COUNTRY: string;
PHONE: string;
EMAIL: string;
REPEAT_EMAIL: string;
VALIDATION_MESSAGE: string;
BOOK_WITH_AGENT: string;
CHOOSE_OFFICE: string;
PERSON: string;
COUNTRIES: {
BELGIUM: string;
NETHERLANDS: string;
FRANCE: string;
DENMARK: string;
ITALY: string;
};
CHOOSE_AGENT_PLACEHOLDER: string;
VALIDATION: {
TRAVELER_X_FIELD: string;
SINGLE_ROOM_TRAVELER_X_FIELD: string;
TRAVELER_X_IS_NO_ADULT: string;
SINGLE_ROOM_TRAVELER_X_IS_NO_ADULT: string;
TRAVELER_X_IS_NO_CHILD: string;
SINGLE_ROOM_TRAVELER_X_IS_NO_CHILD: string;
NO_MAIN_BOOKER_SELECTED: string;
MAIN_BOOKER_FIELD: string;
MAIN_BOOKER_EMAIL_IS_INVALID: string;
MAIN_BOOKER_EMAIL_DOES_NOT_MATCH: string;
AGENT_IS_REQUIRED: string;
};
};
OPTIONS_FORM: {
NO_OPTIONS_TITLE: string;
NO_OPTIONS_MESSAGE: string;
UNIT_TITLE: string;
PACKAGE: string;
DAY: string;
DAYS: string;
NIGHT: string;
NIGHTS: string;
PER_PAX_TITLE: string;
PER_BOOKING_TITLE: string;
PER_UNIT_TITLE: string;
NONE: string;
};
ROOM_OPTIONS_FORM: {
TRAVELER_GROUP: string;
ALTERNATIVES_TRAVELER_GROUP: string;
SHOW_ALTERNATIVES: string;
};
SUMMARY: {
PERSONAL_DETAILS: string;
TRAVELERS: string;
TRAVELER: string;
ADULTS: string;
ADULT: string;
CHILDREN: string;
CHILD: string;
MAIN_BOOKER: string;
NOTIFICATIONS_TITLE: string;
VALIDATE_TITLE: string;
VALIDATE_TEXT_BOOKING: string;
VALIDATE_TEXT_OFFER: string;
VALIDATE_TEXT_OPTION: string;
OPTIONS: string;
REMARKS: string;
VOUCHERS: string;
VOUCHER_VALIDATE: string;
ADD_VOUCHER: string;
VOUCHER_VALID: string;
VOUCHER_INVALID: string;
REDIRECT: string;
PROCESS_BOOKING: string;
};
CONFIRMATION: {
TITLE_TEXT_OFFER: string;
TITLE_TEXT_BOOKING: string;
TITLE_TEXT_OPTION: string;
MESSAGE_TEXT1: string;
MESSAGE_TEXT2_OFFER: string;
MESSAGE_TEXT2_BOOKING: string;
MESSAGE_TEXT2_OPTION: string;
QUESTIONS_TEXT1: string;
QUESTIONS_TEXT2: string;
QUESTIONS_TEXT3: string;
QUESTIONS_ALT: string;
MAIL_SUBJECT: string;
};
ERROR: {
TRY_AGAIN: string;
MESSAGE_TEXT1: string;
MESSAGE_TEXT2: string;
ERROR_TEXT1: string;
ERROR_TEXT2: string;
ERROR_TEXT3: string;
ERROR_ALT: string;
};
PRINT_OFFER_BUTTON: {
LABEL_IDLE: string;
LABEL_CREATING: string;
LABEL_PRINTING: string;
};
NAVBAR: {
SEARCH: string;
};
LOGIN: {
LOGIN_INTO: string;
EMAIL: string;
ENTER_YOUR_EMAIL: string;
EMAIL_REQUIRED: string;
EMAIL_INVALID: string;
ENTER_VALID_EMAIL: string;
PASSWORD: string;
ENTER_YOUR_PASSWORD: string;
RESET_PASSWORD_LABEL: string;
RESET_REPEAT_PASSWORD_LABEL: string;
PASSWORD_REQUIRED: string;
INVALID_CREDENTIALS: string;
LOGIN: string;
LOGOUT: string;
FORGOT_PASSWORD: string;
LOGGING_IN: string;
WELCOME_X: string;
FORGOT_PASSWORD_EMAIL_SUBMIT_LABEL: string;
RESET_REQUESTED: string;
BACK_TO_HOMEPAGE: string;
BACK_TO_LOGIN: string;
RESET_PASSWORD_TITLE: string;
PASSWORD_COMPLEXITY: string;
REPEAT_PASSWORD_REQUIRED: string;
PASSWORDS_DO_NOT_MATCH: string;
RESET_PASSWORD_SUBMIT_LABEL: string;
RESET_PASSWORD_SUCCESSFUL_MESSAGE: string;
RESET_PASSWORD_INVALID_TOKEN_TITLE: string;
RESET_PASSWORD_INVALID_TOKEN_DESCRIPTION: string;
RECEIVED_REQUEST: string;
ACCOUNT_ACTIVATED_LOGIN: string;
};
QSM: {
DEPARTURE: string;
CHOOSE_DEPARTURE: string;
DESTINATION: string;
CHOOSE_DESTINATION: string;
ONEWAY: string;
ROUNDTRIP: string;
OPENJAW: string;
MULTIDESTINATION: string;
PACKAGES: string;
TRANSPORT_HOTEL: string;
ACCOMMODATION: string;
TRANSPORTS: string;
TICKET_ONLY: string;
RENT_A_CAR: string;
TRANSFERS: string;
CRUISES: string;
ONE_ACCOMMODATION: string;
MULTIPLE_ACCOMMODATIONS: string;
TRAVEL_CLASS_LABEL: string;
TRAVEL_CLASS_PLACEHOLDER: string;
TRAVEL_TYPE_LABEL: string;
TRAVEL_TYPE_PLACEHOLDER: string;
NATIONALITY_LABEL: string;
NATIONALITY_PLACEHOLDER: string;
TRAVELERS_LABEL: string;
ADD_ROOM: string;
REMOVE_ROOM: string;
MAX_TRAVELERS_REACHED: string;
ADULTS: string;
CHILDREN: string;
BABIES: string;
CHOOSE_DATES: string;
DEPARTURE_DATE: string;
RETURN_DATE: string;
CONFIRM: string;
TRAVELERS: string;
GROUP_TOUR: string;
ALL_TRAVELERS: string;
};
SRP: {
SHOW_MORE: string;
SHOW_LESS: string;
NO_RESULTS: string;
TOTAL_RESULTS_LABEL: string;
RESET: string;
LUGGAGEINCLUDED: string;
CANCEL: string;
APPLY: string;
LOADING: string;
SEARCHRESULTCTA: string;
SORTBY: string;
PRICE_ASC: string;
PRICE_DESC: string;
DEPARTURE_ASC: string;
FILTERS: string;
SHOW_ITINERARY: string;
VIEW_BOOKING: string;
ITINERARY_TITLE: string;
DOSSIER_NUMBER: string;
PACKAGE_PRICE_PER_PERSON: string;
TOTAL: string;
DAY_BY_DAY: string;
START: string;
END: string;
EXTENDED: string;
COMPACT: string;
LIST: string;
SELECT: string;
DEPARTURE: string;
RETURN: string;
DIRECT: string;
STOPS: string;
STOP: string;
STOP_TIME: string;
ACCOMMODATION: string;
VIEW_DETAILS: string;
NIGHTS: string;
MORNING_RANGE: string;
AFTERNOON_RANGE: string;
EVENING_RANGE: string;
NIGHT_RANGE: string;
DEPARTURE_RANGE: string;
DEPARTURE_AIRPORTS: string;
ARRIVAL_AIRPORTS: string;
PRICE: string;
DEPARTURE_TIME_ASC: string;
DEPARTURE_TIME_DESC: string;
DURATION_ASC: string;
DURATION_DESC: string;
TRAVEL_GROUP: string;
EXCURSION: string;
LOADING_EXCURSIONS: string;
LOADING_FLIGHTS: string;
LOADING_ACCOMMODATIONS: string;
LOADING_ITINERARY: string;
LOADING_OPTIONS: string;
};
ITINERARY: {
DAY: string;
NO_ITEMS: string;
};
};
export declare const locales: {
'ar-SA': import('date-fns').Locale;
'da-DK': import('date-fns').Locale;
'de-DE': import('date-fns').Locale;
'en-GB': import('date-fns').Locale;
'es-ES': import('date-fns').Locale;
'fr-BE': import('date-fns').Locale;
'fr-FR': import('date-fns').Locale;
'is-IS': import('date-fns').Locale;
'it-IT': import('date-fns').Locale;
'nl-BE': import('date-fns').Locale;
'nl-NL': import('date-fns').Locale;
'no-NO': import('date-fns').Locale;
'pl-PL': import('date-fns').Locale;
'pt-PT': import('date-fns').Locale;
'sv-SE': import('date-fns').Locale;
'ja-JP': import('date-fns').Locale;
};
export declare function getLocale(code: string): import('date-fns').Locale;
export declare const getPriceDifferenceText: (price: number, currencyCode: string) => string;
export declare function format(text: string, args: any[]): string;
export declare const formatTime: (date: Date) => string;
export declare const formatDate: (date: Date) => string;
export declare const dateToDateStruct: (date: Date | undefined) => DateStruct;
export declare const timeFromDateTime: (dateTime: Date | undefined) => string;
export declare const longFormatDate: (dateTime: Date | undefined, language: string) => string;
export declare const durationTicksInHoursString: (durationInTicks: number) => string;
export declare const durationInTicksInMinutes: (durationInTicks: number) => number;
export declare const minutesToHoursString: (totalMinutes: number) => string;
export declare const rangeFromDateTimeInMinutes: (dateTime: Date | undefined) => DepartureRange;
export declare const calculateNights: (fromDate: Date, toDate: Date) => number;
export declare const calculateDays: (fromDate: Date, toDate: Date) => number;
export declare const getSortingName: (translations: any, sortByType: SortByType) => string;
export declare const findSortByType: (sortByTypes: SortByType[], sortKey: string, direction: string) => SortByType;
export declare const getDatesBetween: (fromDate: string, toDate: string) => Date[];
export declare const getDateOnlyTime: (date?: string | Date | null) => number;