@qite/tide-booking-component 1.0.22 → 1.0.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -8
- package/build/build-cjs/booking-wizard/utils/localization-util.d.ts +136 -0
- package/build/build-cjs/index.js +209 -25
- package/build/build-esm/booking-wizard/utils/localization-util.d.ts +136 -0
- package/build/build-esm/index.js +209 -25
- package/package.json +71 -71
- package/rollup.config.js +23 -23
- package/src/booking-wizard/components/icon.tsx +29 -29
- package/src/booking-wizard/components/labeled-input.tsx +64 -64
- package/src/booking-wizard/components/labeled-select.tsx +69 -69
- package/src/booking-wizard/components/message.tsx +34 -34
- package/src/booking-wizard/components/product-card.tsx +37 -37
- package/src/booking-wizard/components/rating.tsx +21 -21
- package/src/booking-wizard/components/step-indicator.tsx +42 -37
- package/src/booking-wizard/components/step-route.tsx +27 -27
- package/src/booking-wizard/features/booking/api.ts +44 -44
- package/src/booking-wizard/features/booking/booking-slice.ts +399 -399
- package/src/booking-wizard/features/booking/booking.tsx +302 -299
- package/src/booking-wizard/features/booking/selectors.ts +340 -340
- package/src/booking-wizard/features/confirmation/confirmation.tsx +83 -81
- package/src/booking-wizard/features/error/error.tsx +73 -71
- package/src/booking-wizard/features/price-details/price-details-api.ts +22 -22
- package/src/booking-wizard/features/price-details/price-details-slice.ts +149 -149
- package/src/booking-wizard/features/price-details/util.ts +135 -135
- package/src/booking-wizard/features/product-options/no-options.tsx +21 -18
- package/src/booking-wizard/features/product-options/none-option.tsx +120 -118
- package/src/booking-wizard/features/product-options/option-booking-group.tsx +210 -210
- package/src/booking-wizard/features/product-options/option-item.tsx +321 -321
- package/src/booking-wizard/features/product-options/option-pax-card.tsx +120 -117
- package/src/booking-wizard/features/product-options/option-pax-group.tsx +169 -169
- package/src/booking-wizard/features/product-options/option-room.tsx +316 -314
- package/src/booking-wizard/features/product-options/option-unit-group.tsx +192 -192
- package/src/booking-wizard/features/product-options/option-units-card.tsx +103 -100
- package/src/booking-wizard/features/product-options/options-form.tsx +350 -348
- package/src/booking-wizard/features/product-options/validate-form.ts +9 -9
- package/src/booking-wizard/features/sidebar/index.tsx +80 -80
- package/src/booking-wizard/features/sidebar/sidebar-flight.tsx +69 -66
- package/src/booking-wizard/features/sidebar/sidebar-util.ts +175 -168
- package/src/booking-wizard/features/sidebar/sidebar.tsx +345 -343
- package/src/booking-wizard/features/summary/summary-booking-option-pax.tsx +25 -25
- package/src/booking-wizard/features/summary/summary-booking-option-unit.tsx +25 -25
- package/src/booking-wizard/features/summary/summary-flight.tsx +39 -36
- package/src/booking-wizard/features/summary/summary-per-booking-option-group.tsx +57 -57
- package/src/booking-wizard/features/summary/summary-per-pax-option-group.tsx +51 -51
- package/src/booking-wizard/features/summary/summary-per-unit-option-group.tsx +54 -54
- package/src/booking-wizard/features/summary/summary-slice.ts +28 -28
- package/src/booking-wizard/features/summary/summary.tsx +603 -601
- package/src/booking-wizard/features/travelers-form/travelers-form-slice.ts +139 -139
- package/src/booking-wizard/features/travelers-form/travelers-form.tsx +731 -729
- package/src/booking-wizard/features/travelers-form/type-ahead-input.tsx +101 -101
- package/src/booking-wizard/features/travelers-form/validate-form.ts +166 -166
- package/src/booking-wizard/index.tsx +36 -36
- package/src/booking-wizard/settings-context.ts +54 -54
- package/src/booking-wizard/store.ts +29 -29
- package/src/booking-wizard/translations/fr-BE.json +136 -0
- package/src/booking-wizard/translations/{translations.json → nl-BE.json} +2 -1
- package/src/booking-wizard/types.ts +134 -134
- package/src/booking-wizard/utils/class-util.ts +9 -9
- package/src/booking-wizard/utils/localization-util.ts +20 -7
- package/src/booking-wizard/utils/query-string-util.ts +94 -94
- package/src/booking-wizard/utils/tide-api-utils.ts +20 -20
- package/src/index.ts +3 -3
- package/tsconfig.json +24 -24
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
# README
|
|
2
|
-
|
|
3
|
-
This is the unified Tide Booking Component.
|
|
4
|
-
|
|
5
|
-
## Remarks
|
|
6
|
-
|
|
7
|
-
Do not forget to sync React versions when you're doing local changes and when you try to test them in a local React project (check https://reactjs.org/warnings/invalid-hook-call-warning.html#duplicate-react).
|
|
8
|
-
If using the playground, after installing it's node modules execute the following command in the root folder `npm link ./playground/node_modules/react`
|
|
1
|
+
# README
|
|
2
|
+
|
|
3
|
+
This is the unified Tide Booking Component.
|
|
4
|
+
|
|
5
|
+
## Remarks
|
|
6
|
+
|
|
7
|
+
Do not forget to sync React versions when you're doing local changes and when you try to test them in a local React project (check https://reactjs.org/warnings/invalid-hook-call-warning.html#duplicate-react).
|
|
8
|
+
If using the playground, after installing it's node modules execute the following command in the root folder `npm link ./playground/node_modules/react`
|
|
@@ -1 +1,137 @@
|
|
|
1
1
|
export declare const formatPrice: (price: number) => string;
|
|
2
|
+
export declare const getTranslations: (language: string) => {
|
|
3
|
+
STEPS: {
|
|
4
|
+
PERSONAL_DETAILS: string;
|
|
5
|
+
TRAVEL_OPTIONS: string;
|
|
6
|
+
SUMMARY: string;
|
|
7
|
+
CONFIRMATION: string;
|
|
8
|
+
ERROR: string;
|
|
9
|
+
PREVIOUS: string;
|
|
10
|
+
NEXT: string;
|
|
11
|
+
SUBMIT: string;
|
|
12
|
+
COMPOSE: string;
|
|
13
|
+
};
|
|
14
|
+
MAIN: {
|
|
15
|
+
PREPARING_BOOKING: string;
|
|
16
|
+
PRODUCT_UNAVAILABLE: string;
|
|
17
|
+
};
|
|
18
|
+
SIDEBAR: {
|
|
19
|
+
OVERVIEW: string;
|
|
20
|
+
SLIDE_TOTAL_PRICE: string;
|
|
21
|
+
SLIDE_DEPOSIT: string;
|
|
22
|
+
TRAVEL_INFO: string;
|
|
23
|
+
TRAVELERS: string;
|
|
24
|
+
TRAVELERS_ADULTS: string;
|
|
25
|
+
TRAVELERS_ADULT: string;
|
|
26
|
+
TRAVELERS_CHILDREN: string;
|
|
27
|
+
TRAVELERS_CHILD: string;
|
|
28
|
+
DEPARTURE: string;
|
|
29
|
+
DEPARTURE_SINGLE: string;
|
|
30
|
+
ARRIVAL: string;
|
|
31
|
+
FLIGHT: string;
|
|
32
|
+
ACCOMMODATION: string;
|
|
33
|
+
BASE_PRICE: string;
|
|
34
|
+
OPTIONS: string;
|
|
35
|
+
INCLUDED_COSTS: string;
|
|
36
|
+
EXTRA_COSTS: string;
|
|
37
|
+
TOTAL_PRICE: string;
|
|
38
|
+
DEPOSIT: string;
|
|
39
|
+
DEPOSIT_TEXT1: string;
|
|
40
|
+
DEPOSIT_TEXT2: string;
|
|
41
|
+
DEPOSIT_TEXT3: string;
|
|
42
|
+
DEPOSIT_TEXT4: string;
|
|
43
|
+
DEPOSIT_TEXT5: string;
|
|
44
|
+
DEPOSIT_TEXT6: string;
|
|
45
|
+
LUGGAGE_INCLUDED: string;
|
|
46
|
+
DEPARTURE_FLIGHT: string;
|
|
47
|
+
ARRIVAL_FLIGHT: string;
|
|
48
|
+
FLIGHT_DEPARTURE: string;
|
|
49
|
+
FLIGHT_ARRIVAL: string;
|
|
50
|
+
ON_REQUEST: string;
|
|
51
|
+
CHANGES: string;
|
|
52
|
+
};
|
|
53
|
+
TRAVELERS_FORM: {
|
|
54
|
+
PERSONS: string;
|
|
55
|
+
TRAVELER: string;
|
|
56
|
+
ADULT: string;
|
|
57
|
+
ADULTS: string;
|
|
58
|
+
CHILD: string;
|
|
59
|
+
CHILDREN: string;
|
|
60
|
+
GENDER: string;
|
|
61
|
+
MALE: string;
|
|
62
|
+
FEMALE: string;
|
|
63
|
+
OTHER: string;
|
|
64
|
+
MAIN_BOOKER: string;
|
|
65
|
+
FIRST_NAME: string;
|
|
66
|
+
LAST_NAME: string;
|
|
67
|
+
BIRTHDATE: string;
|
|
68
|
+
STREET: string;
|
|
69
|
+
STREET_PLACEHOLDER: string;
|
|
70
|
+
HOUSE_NUMBER: string;
|
|
71
|
+
POST_BOX: string;
|
|
72
|
+
ZIPCODE: string;
|
|
73
|
+
CITY: string;
|
|
74
|
+
CITY_PLACEHOLDER: string;
|
|
75
|
+
COUNTRY: string;
|
|
76
|
+
SELECT_COUNTRY: string;
|
|
77
|
+
PHONE: string;
|
|
78
|
+
EMAIL: string;
|
|
79
|
+
REPEAT_EMAIL: string;
|
|
80
|
+
VALIDATION_MESSAGE: string;
|
|
81
|
+
};
|
|
82
|
+
OPTIONS_FORM: {
|
|
83
|
+
NO_OPTIONS_TITLE: string;
|
|
84
|
+
NO_OPTIONS_MESSAGE: string;
|
|
85
|
+
UNIT_TITLE: string;
|
|
86
|
+
PACKAGE: string;
|
|
87
|
+
DAY: string;
|
|
88
|
+
DAYS: string;
|
|
89
|
+
NIGHT: string;
|
|
90
|
+
NIGHTS: string;
|
|
91
|
+
PER_PAX_TITLE: string;
|
|
92
|
+
PER_BOOKING_TITLE: string;
|
|
93
|
+
PER_UNIT_TITLE: string;
|
|
94
|
+
NONE: string;
|
|
95
|
+
};
|
|
96
|
+
SUMMARY: {
|
|
97
|
+
PERSONAL_DETAILS: string;
|
|
98
|
+
TRAVELERS: string;
|
|
99
|
+
TRAVELER: string;
|
|
100
|
+
ADULTS: string;
|
|
101
|
+
ADULT: string;
|
|
102
|
+
CHILDREN: string;
|
|
103
|
+
CHILD: string;
|
|
104
|
+
MAIN_BOOKER: string;
|
|
105
|
+
NOTIFICATIONS_TITLE: string;
|
|
106
|
+
VALIDATE_TITLE: string;
|
|
107
|
+
VALIDATE_TEXT: string;
|
|
108
|
+
OPTIONS: string;
|
|
109
|
+
REMARKS: string;
|
|
110
|
+
VOUCHERS: string;
|
|
111
|
+
VOUCHER_VALIDATE: string;
|
|
112
|
+
ADD_VOUCHER: string;
|
|
113
|
+
VOUCHER_VALID: string;
|
|
114
|
+
VOUCHER_INVALID: string;
|
|
115
|
+
};
|
|
116
|
+
CONFIRMATION: {
|
|
117
|
+
TITLE_TEXT1: string;
|
|
118
|
+
TITLE_TEXT2: string;
|
|
119
|
+
MESSAGE_TEXT1: string;
|
|
120
|
+
MESSAGE_TEXT2: string;
|
|
121
|
+
MESSAGE_TEXT3: string;
|
|
122
|
+
MESSAGE_TEXT4: string;
|
|
123
|
+
QUESTIONS_TEXT1: string;
|
|
124
|
+
QUESTIONS_TEXT2: string;
|
|
125
|
+
QUESTIONS_TEXT3: string;
|
|
126
|
+
QUESTIONS_ALT: string;
|
|
127
|
+
};
|
|
128
|
+
ERROR: {
|
|
129
|
+
TRY_AGAIN: string;
|
|
130
|
+
MESSAGE_TEXT1: string;
|
|
131
|
+
MESSAGE_TEXT2: string;
|
|
132
|
+
ERROR_TEXT1: string;
|
|
133
|
+
ERROR_TEXT2: string;
|
|
134
|
+
ERROR_TEXT3: string;
|
|
135
|
+
ERROR_ALT: string;
|
|
136
|
+
};
|
|
137
|
+
};
|
package/build/build-cjs/index.js
CHANGED
|
@@ -7608,7 +7608,7 @@ var Message = function (_a) {
|
|
|
7608
7608
|
actionComponent && (React__default["default"].createElement("div", { className: "booking-message__actions" }, actionComponent))));
|
|
7609
7609
|
};
|
|
7610
7610
|
|
|
7611
|
-
var STEPS = {
|
|
7611
|
+
var STEPS$1 = {
|
|
7612
7612
|
PERSONAL_DETAILS: "Persoonlijke gegevens",
|
|
7613
7613
|
TRAVEL_OPTIONS: "Opties",
|
|
7614
7614
|
SUMMARY: "Overzicht",
|
|
@@ -7616,13 +7616,14 @@ var STEPS = {
|
|
|
7616
7616
|
ERROR: "Boeken mislukt",
|
|
7617
7617
|
PREVIOUS: "Vorige stap",
|
|
7618
7618
|
NEXT: "Volgende stap",
|
|
7619
|
-
SUBMIT: "Bevestig boeking"
|
|
7619
|
+
SUBMIT: "Bevestig boeking",
|
|
7620
|
+
COMPOSE: "Samenstellen"
|
|
7620
7621
|
};
|
|
7621
|
-
var MAIN = {
|
|
7622
|
+
var MAIN$1 = {
|
|
7622
7623
|
PREPARING_BOOKING: "Even geduld, we bereiden uw boeking voor",
|
|
7623
7624
|
PRODUCT_UNAVAILABLE: "Product niet beschikbaar"
|
|
7624
7625
|
};
|
|
7625
|
-
var SIDEBAR = {
|
|
7626
|
+
var SIDEBAR$1 = {
|
|
7626
7627
|
OVERVIEW: "Overzicht",
|
|
7627
7628
|
SLIDE_TOTAL_PRICE: "Totaalbedrag: ",
|
|
7628
7629
|
SLIDE_DEPOSIT: "Te betalen voorschot: ",
|
|
@@ -7657,7 +7658,7 @@ var SIDEBAR = {
|
|
|
7657
7658
|
ON_REQUEST: "Op aanvraag",
|
|
7658
7659
|
CHANGES: "overstappen"
|
|
7659
7660
|
};
|
|
7660
|
-
var TRAVELERS_FORM = {
|
|
7661
|
+
var TRAVELERS_FORM$1 = {
|
|
7661
7662
|
PERSONS: "Personen",
|
|
7662
7663
|
TRAVELER: "Reiziger",
|
|
7663
7664
|
ADULT: "volwassene",
|
|
@@ -7686,7 +7687,7 @@ var TRAVELERS_FORM = {
|
|
|
7686
7687
|
REPEAT_EMAIL: "Herhaal e-mail",
|
|
7687
7688
|
VALIDATION_MESSAGE: "Controleer onderstaande velden in het formulier en vul deze correct in."
|
|
7688
7689
|
};
|
|
7689
|
-
var OPTIONS_FORM = {
|
|
7690
|
+
var OPTIONS_FORM$1 = {
|
|
7690
7691
|
NO_OPTIONS_TITLE: "Geen opties",
|
|
7691
7692
|
NO_OPTIONS_MESSAGE: "Deze reis heeft geen bijkomende opties.",
|
|
7692
7693
|
UNIT_TITLE: "Gezelschap",
|
|
@@ -7700,7 +7701,7 @@ var OPTIONS_FORM = {
|
|
|
7700
7701
|
PER_UNIT_TITLE: "Per gezelschap samenstellen",
|
|
7701
7702
|
NONE: "Geen"
|
|
7702
7703
|
};
|
|
7703
|
-
var SUMMARY = {
|
|
7704
|
+
var SUMMARY$1 = {
|
|
7704
7705
|
PERSONAL_DETAILS: "Persoonlijke gegevens",
|
|
7705
7706
|
TRAVELERS: "reizigers",
|
|
7706
7707
|
TRAVELER: "reiziger",
|
|
@@ -7720,7 +7721,7 @@ var SUMMARY = {
|
|
|
7720
7721
|
VOUCHER_VALID: "Voucher is geldig",
|
|
7721
7722
|
VOUCHER_INVALID: "Voucher is niet geldig"
|
|
7722
7723
|
};
|
|
7723
|
-
var CONFIRMATION = {
|
|
7724
|
+
var CONFIRMATION$1 = {
|
|
7724
7725
|
TITLE_TEXT1: "Je boeking met nummer ",
|
|
7725
7726
|
TITLE_TEXT2: " is bevestigd",
|
|
7726
7727
|
MESSAGE_TEXT1: "Jouw droomreis komt nu heel dichtbij.",
|
|
@@ -7732,7 +7733,7 @@ var CONFIRMATION = {
|
|
|
7732
7733
|
QUESTIONS_TEXT3: ".",
|
|
7733
7734
|
QUESTIONS_ALT: "Contacteer ons"
|
|
7734
7735
|
};
|
|
7735
|
-
var ERROR = {
|
|
7736
|
+
var ERROR$1 = {
|
|
7736
7737
|
TRY_AGAIN: "Probeer opnieuw te boeken",
|
|
7737
7738
|
MESSAGE_TEXT1: "Tijdens het bevestigen van uw reis is er iets misgelopen.",
|
|
7738
7739
|
MESSAGE_TEXT2: "Klik hieronder om nog eens te proberen.",
|
|
@@ -7741,7 +7742,152 @@ var ERROR = {
|
|
|
7741
7742
|
ERROR_TEXT3: ".",
|
|
7742
7743
|
ERROR_ALT: "Contacteer ons"
|
|
7743
7744
|
};
|
|
7744
|
-
var
|
|
7745
|
+
var nl = {
|
|
7746
|
+
STEPS: STEPS$1,
|
|
7747
|
+
MAIN: MAIN$1,
|
|
7748
|
+
SIDEBAR: SIDEBAR$1,
|
|
7749
|
+
TRAVELERS_FORM: TRAVELERS_FORM$1,
|
|
7750
|
+
OPTIONS_FORM: OPTIONS_FORM$1,
|
|
7751
|
+
SUMMARY: SUMMARY$1,
|
|
7752
|
+
CONFIRMATION: CONFIRMATION$1,
|
|
7753
|
+
ERROR: ERROR$1
|
|
7754
|
+
};
|
|
7755
|
+
|
|
7756
|
+
var STEPS = {
|
|
7757
|
+
PERSONAL_DETAILS: "Détails personnels",
|
|
7758
|
+
TRAVEL_OPTIONS: "Options de voyage",
|
|
7759
|
+
SUMMARY: "Résumé",
|
|
7760
|
+
CONFIRMATION: "Confirmation",
|
|
7761
|
+
ERROR: "Erreur de réservation",
|
|
7762
|
+
PREVIOUS: "Étape précédente",
|
|
7763
|
+
NEXT: "Étape suivante",
|
|
7764
|
+
SUBMIT: "Confirmer la réservation",
|
|
7765
|
+
COMPOSE: "Voyageurs"
|
|
7766
|
+
};
|
|
7767
|
+
var MAIN = {
|
|
7768
|
+
PREPARING_BOOKING: "Veuillez patienter, nous préparons votre réservation",
|
|
7769
|
+
PRODUCT_UNAVAILABLE: "Produit non disponible"
|
|
7770
|
+
};
|
|
7771
|
+
var SIDEBAR = {
|
|
7772
|
+
OVERVIEW: "Aperçu",
|
|
7773
|
+
SLIDE_TOTAL_PRICE: "Montant total : ",
|
|
7774
|
+
SLIDE_DEPOSIT: "Dépôt à payer : ",
|
|
7775
|
+
TRAVEL_INFO: "Informations de voyage",
|
|
7776
|
+
TRAVELERS: "Voyageurs",
|
|
7777
|
+
TRAVELERS_ADULTS: "adultes",
|
|
7778
|
+
TRAVELERS_ADULT: "adulte",
|
|
7779
|
+
TRAVELERS_CHILDREN: "enfants",
|
|
7780
|
+
TRAVELERS_CHILD: "enfant",
|
|
7781
|
+
DEPARTURE: "Aller",
|
|
7782
|
+
DEPARTURE_SINGLE: "Date",
|
|
7783
|
+
ARRIVAL: "Retour",
|
|
7784
|
+
FLIGHT: "Vol",
|
|
7785
|
+
ACCOMMODATION: "Hébergement réservé",
|
|
7786
|
+
BASE_PRICE: "Prix de base",
|
|
7787
|
+
OPTIONS: "Options",
|
|
7788
|
+
INCLUDED_COSTS: "Coûts inclus",
|
|
7789
|
+
EXTRA_COSTS: "Frais supplémentaires",
|
|
7790
|
+
TOTAL_PRICE: "Prix total",
|
|
7791
|
+
DEPOSIT: "Dépôt à payer",
|
|
7792
|
+
DEPOSIT_TEXT1: "Les étapes à suivre pour le paiement du ",
|
|
7793
|
+
DEPOSIT_TEXT2: "solde restant",
|
|
7794
|
+
DEPOSIT_TEXT3: " de ",
|
|
7795
|
+
DEPOSIT_TEXT4: "seront décrites à l'étape 3 (\"Résumé\")",
|
|
7796
|
+
DEPOSIT_TEXT5: " du processus de réservation.",
|
|
7797
|
+
DEPOSIT_TEXT6: "Luggage Included: Inclus bagage",
|
|
7798
|
+
LUGGAGE_INCLUDED: "Bagages inclus",
|
|
7799
|
+
DEPARTURE_FLIGHT: "Vol aller",
|
|
7800
|
+
ARRIVAL_FLIGHT: "Vol retour",
|
|
7801
|
+
FLIGHT_DEPARTURE: "Départ",
|
|
7802
|
+
FLIGHT_ARRIVAL: "Arrivée",
|
|
7803
|
+
ON_REQUEST: "Sur demande",
|
|
7804
|
+
CHANGES: "changements"
|
|
7805
|
+
};
|
|
7806
|
+
var TRAVELERS_FORM = {
|
|
7807
|
+
PERSONS: "Personnes",
|
|
7808
|
+
TRAVELER: "Voyageur",
|
|
7809
|
+
ADULT: "adulte",
|
|
7810
|
+
ADULTS: "adultes",
|
|
7811
|
+
CHILD: "enfant",
|
|
7812
|
+
CHILDREN: "enfants",
|
|
7813
|
+
GENDER: "Civilité",
|
|
7814
|
+
MALE: "Monsieur",
|
|
7815
|
+
FEMALE: "Madame",
|
|
7816
|
+
OTHER: "Autre",
|
|
7817
|
+
MAIN_BOOKER: "Titulaire principal",
|
|
7818
|
+
FIRST_NAME: "Prénom",
|
|
7819
|
+
LAST_NAME: "Nom",
|
|
7820
|
+
BIRTHDATE: "Date de naissance",
|
|
7821
|
+
STREET: "Rue",
|
|
7822
|
+
STREET_PLACEHOLDER: "Votre rue",
|
|
7823
|
+
HOUSE_NUMBER: "Numéro de maison",
|
|
7824
|
+
POST_BOX: "Boîte postale",
|
|
7825
|
+
ZIPCODE: "Code postal",
|
|
7826
|
+
CITY: "Ville",
|
|
7827
|
+
CITY_PLACEHOLDER: "Ville",
|
|
7828
|
+
COUNTRY: "Pays",
|
|
7829
|
+
SELECT_COUNTRY: "Sélectionner le pays",
|
|
7830
|
+
PHONE: "Numéro de téléphone",
|
|
7831
|
+
EMAIL: "E-mail",
|
|
7832
|
+
REPEAT_EMAIL: "Répéter l'e-mail",
|
|
7833
|
+
VALIDATION_MESSAGE: "Veuillez vérifier les champs ci-dessous dans le formulaire et les remplir correctement."
|
|
7834
|
+
};
|
|
7835
|
+
var OPTIONS_FORM = {
|
|
7836
|
+
NO_OPTIONS_TITLE: "Aucune option",
|
|
7837
|
+
NO_OPTIONS_MESSAGE: "Ce voyage n'a pas d'options supplémentaires.",
|
|
7838
|
+
UNIT_TITLE: "Groupe",
|
|
7839
|
+
PACKAGE: "Forfait",
|
|
7840
|
+
DAY: "jour",
|
|
7841
|
+
DAYS: "jours",
|
|
7842
|
+
NIGHT: "nuit",
|
|
7843
|
+
NIGHTS: "nuits",
|
|
7844
|
+
PER_PAX_TITLE: "À composer par voyageur",
|
|
7845
|
+
PER_BOOKING_TITLE: "À composer par dossier",
|
|
7846
|
+
PER_UNIT_TITLE: "À composer par groupe",
|
|
7847
|
+
NONE: "Aucun"
|
|
7848
|
+
};
|
|
7849
|
+
var SUMMARY = {
|
|
7850
|
+
PERSONAL_DETAILS: "Détails personnels",
|
|
7851
|
+
TRAVELERS: "voyageurs",
|
|
7852
|
+
TRAVELER: "voyageur",
|
|
7853
|
+
ADULTS: "adultes",
|
|
7854
|
+
ADULT: "adulte",
|
|
7855
|
+
CHILDREN: "enfants",
|
|
7856
|
+
CHILD: "enfant",
|
|
7857
|
+
MAIN_BOOKER: "Titulaire principal",
|
|
7858
|
+
NOTIFICATIONS_TITLE: "Notifications",
|
|
7859
|
+
VALIDATE_TITLE: "Vérifiez vos informations",
|
|
7860
|
+
VALIDATE_TEXT: "Vous êtes sur le point de confirmer votre réservation. Veuillez vérifier que toutes les informations sont correctes. Elles sont définitives et ne peuvent plus être modifiées.",
|
|
7861
|
+
OPTIONS: "Options",
|
|
7862
|
+
REMARKS: "Remarques",
|
|
7863
|
+
VOUCHERS: "Bons",
|
|
7864
|
+
VOUCHER_VALIDATE: "Valider le bon",
|
|
7865
|
+
ADD_VOUCHER: "Ajouter un bon",
|
|
7866
|
+
VOUCHER_VALID: "Le bon est valide",
|
|
7867
|
+
VOUCHER_INVALID: "Le bon n'est pas valide"
|
|
7868
|
+
};
|
|
7869
|
+
var CONFIRMATION = {
|
|
7870
|
+
TITLE_TEXT1: "Votre réservation avec le numéro ",
|
|
7871
|
+
TITLE_TEXT2: " est confirmée",
|
|
7872
|
+
MESSAGE_TEXT1: "Votre voyage de rêve est maintenant à portée de main.",
|
|
7873
|
+
MESSAGE_TEXT2: "Nos spécialistes en voyages traiteront votre réservation et vous contacteront dans les ",
|
|
7874
|
+
MESSAGE_TEXT3: " 48 heures",
|
|
7875
|
+
MESSAGE_TEXT4: ".",
|
|
7876
|
+
QUESTIONS_TEXT1: "Vous avez des questions ? ",
|
|
7877
|
+
QUESTIONS_TEXT2: "Faites-le nous savoir",
|
|
7878
|
+
QUESTIONS_TEXT3: ".",
|
|
7879
|
+
QUESTIONS_ALT: "Contactez-nous"
|
|
7880
|
+
};
|
|
7881
|
+
var ERROR = {
|
|
7882
|
+
TRY_AGAIN: "Essayer de réserver à nouveau",
|
|
7883
|
+
MESSAGE_TEXT1: "Une erreur s'est produite lors de la confirmation de votre voyage.",
|
|
7884
|
+
MESSAGE_TEXT2: "Cliquez ci-dessous pour réessayer.",
|
|
7885
|
+
ERROR_TEXT1: "Problèmes persistants ? ",
|
|
7886
|
+
ERROR_TEXT2: "Faites-le nous savoir",
|
|
7887
|
+
ERROR_TEXT3: ".",
|
|
7888
|
+
ERROR_ALT: "Contactez-nous"
|
|
7889
|
+
};
|
|
7890
|
+
var fr = {
|
|
7745
7891
|
STEPS: STEPS,
|
|
7746
7892
|
MAIN: MAIN,
|
|
7747
7893
|
SIDEBAR: SIDEBAR,
|
|
@@ -7752,6 +7898,24 @@ var translations = {
|
|
|
7752
7898
|
ERROR: ERROR
|
|
7753
7899
|
};
|
|
7754
7900
|
|
|
7901
|
+
var formatPrice = function (price) {
|
|
7902
|
+
var priceFormat = Intl.NumberFormat("nl-BE", {
|
|
7903
|
+
style: "currency",
|
|
7904
|
+
currency: "EUR",
|
|
7905
|
+
});
|
|
7906
|
+
return priceFormat.format(price);
|
|
7907
|
+
};
|
|
7908
|
+
var getTranslations = function (language) {
|
|
7909
|
+
switch (language) {
|
|
7910
|
+
case "nl-BE":
|
|
7911
|
+
return nl;
|
|
7912
|
+
case "fr-BE":
|
|
7913
|
+
return fr;
|
|
7914
|
+
default:
|
|
7915
|
+
throw new Error("The language '".concat(language, "' is not yet supported."));
|
|
7916
|
+
}
|
|
7917
|
+
};
|
|
7918
|
+
|
|
7755
7919
|
var Confirmation = function () {
|
|
7756
7920
|
var settings = React.useContext(SettingsContext);
|
|
7757
7921
|
var bookingNumber = reactRedux.useSelector(selectBookingNumber);
|
|
@@ -7759,6 +7923,7 @@ var Confirmation = function () {
|
|
|
7759
7923
|
if (!bookingNumber) {
|
|
7760
7924
|
router.navigate("".concat(settings.basePath).concat(settings.error.pathSuffix, "?").concat(bookingQueryString));
|
|
7761
7925
|
}
|
|
7926
|
+
var translations = getTranslations(settings.language);
|
|
7762
7927
|
return (React__default["default"].createElement("div", { className: "form", id: "booking--step4" },
|
|
7763
7928
|
React__default["default"].createElement("div", { className: "form__region" },
|
|
7764
7929
|
React__default["default"].createElement("div", { className: "form__row" },
|
|
@@ -7792,6 +7957,7 @@ var Error$1 = function () {
|
|
|
7792
7957
|
dispatch(setIsRetry(true));
|
|
7793
7958
|
router.navigate(tryAgainUrl);
|
|
7794
7959
|
};
|
|
7960
|
+
var translations = getTranslations(settings.language);
|
|
7795
7961
|
return (React__default["default"].createElement("div", { className: "form" },
|
|
7796
7962
|
React__default["default"].createElement("div", { className: "form__region" },
|
|
7797
7963
|
React__default["default"].createElement("div", { className: "form__row" },
|
|
@@ -7808,12 +7974,16 @@ var Error$1 = function () {
|
|
|
7808
7974
|
};
|
|
7809
7975
|
|
|
7810
7976
|
var NoOptions = function () {
|
|
7977
|
+
var language = React.useContext(SettingsContext).language;
|
|
7978
|
+
var translations = getTranslations(language);
|
|
7811
7979
|
return (React__default["default"].createElement("div", { className: "form__group" },
|
|
7812
7980
|
React__default["default"].createElement(Message, { type: "success", title: translations.OPTIONS_FORM.NO_OPTIONS_TITLE },
|
|
7813
7981
|
React__default["default"].createElement("p", null, translations.OPTIONS_FORM.NO_OPTIONS_MESSAGE))));
|
|
7814
7982
|
};
|
|
7815
7983
|
|
|
7816
7984
|
var getTravelersText = function (adultIds, childIds) {
|
|
7985
|
+
var language = React.useContext(SettingsContext).language;
|
|
7986
|
+
var translations = getTranslations(language);
|
|
7817
7987
|
var travelersText = lodash.compact([
|
|
7818
7988
|
adultIds.length,
|
|
7819
7989
|
adultIds.length === 1 && " ".concat(translations.SIDEBAR.TRAVELERS_ADULT),
|
|
@@ -7842,6 +8012,8 @@ var getDatePeriodText = function (from, to, nightsOnly) {
|
|
|
7842
8012
|
if (!from || !to) {
|
|
7843
8013
|
return undefined;
|
|
7844
8014
|
}
|
|
8015
|
+
var language = React.useContext(SettingsContext).language;
|
|
8016
|
+
var translations = getTranslations(language);
|
|
7845
8017
|
try {
|
|
7846
8018
|
var fromDate = dateFns.parseISO(from);
|
|
7847
8019
|
var toDate = dateFns.parseISO(to);
|
|
@@ -7906,18 +8078,12 @@ var parseFlightLineDateTime = function (date, time) {
|
|
|
7906
8078
|
}
|
|
7907
8079
|
};
|
|
7908
8080
|
|
|
7909
|
-
var formatPrice = function (price) {
|
|
7910
|
-
var priceFormat = Intl.NumberFormat("nl-BE", {
|
|
7911
|
-
style: "currency",
|
|
7912
|
-
currency: "EUR",
|
|
7913
|
-
});
|
|
7914
|
-
return priceFormat.format(price);
|
|
7915
|
-
};
|
|
7916
|
-
|
|
7917
8081
|
var OptionRoom = function (_a) {
|
|
7918
8082
|
var _b, _c, _d, _e, _f;
|
|
7919
8083
|
var packageRoom = _a.packageRoom, pax = _a.pax, optionPax = _a.optionPax, onRoomChange = _a.onRoomChange;
|
|
7920
8084
|
var selectedOption = packageRoom === null || packageRoom === void 0 ? void 0 : packageRoom.options.find(function (x) { return x.isSelected; });
|
|
8085
|
+
var language = React.useContext(SettingsContext).language;
|
|
8086
|
+
var translations = getTranslations(language);
|
|
7921
8087
|
var daysAndNightsText = "";
|
|
7922
8088
|
var startDate = "";
|
|
7923
8089
|
var endDate = "";
|
|
@@ -8078,6 +8244,8 @@ var OptionRoom = function (_a) {
|
|
|
8078
8244
|
|
|
8079
8245
|
var NoneOption = function (_a) {
|
|
8080
8246
|
var group = _a.group, parentId = _a.parentId, handleNoneSelectionChanged = _a.handleNoneSelectionChanged;
|
|
8247
|
+
var language = React.useContext(SettingsContext).language;
|
|
8248
|
+
var translations = getTranslations(language);
|
|
8081
8249
|
var selectedOption = group.options.find(function (x) { return x.isSelected; });
|
|
8082
8250
|
var showNoneOption = group.options.some(function (x) { return x.requirementType === 2; });
|
|
8083
8251
|
var noneSelected = !selectedOption;
|
|
@@ -8334,6 +8502,8 @@ var OptionPaxGroup = function (_a) {
|
|
|
8334
8502
|
var OptionPaxCard = function (_a) {
|
|
8335
8503
|
var pax = _a.pax, requestRoomsPax = _a.requestRoomsPax, parentIndex = _a.parentIndex, onPaxChange = _a.onPaxChange;
|
|
8336
8504
|
var _b = React.useState(), toggleStates = _b[0], setToggleStates = _b[1];
|
|
8505
|
+
var language = React.useContext(SettingsContext).language;
|
|
8506
|
+
var translations = getTranslations(language);
|
|
8337
8507
|
React.useEffect(function () {
|
|
8338
8508
|
if (!toggleStates || toggleStates.length !== pax.length) {
|
|
8339
8509
|
setToggleStates(pax.map(function () { return true; }));
|
|
@@ -8455,6 +8625,8 @@ var OptionUnitGroup = function (_a) {
|
|
|
8455
8625
|
var OptionUnitsCard = function (_a) {
|
|
8456
8626
|
var units = _a.units, parentIndex = _a.parentIndex, onUnitsChange = _a.onUnitsChange;
|
|
8457
8627
|
var _b = React.useState(), toggleStates = _b[0], setToggleStates = _b[1];
|
|
8628
|
+
var language = React.useContext(SettingsContext).language;
|
|
8629
|
+
var translations = getTranslations(language);
|
|
8458
8630
|
React.useEffect(function () {
|
|
8459
8631
|
if (!toggleStates || toggleStates.length !== units.length) {
|
|
8460
8632
|
setToggleStates(units.map(function () { return true; }));
|
|
@@ -8576,7 +8748,8 @@ var OptionBookingGroup = function (_a) {
|
|
|
8576
8748
|
|
|
8577
8749
|
var OptionsForm = function () {
|
|
8578
8750
|
var _a;
|
|
8579
|
-
var _b = React.useContext(SettingsContext), basePath = _b.basePath, travellers = _b.travellers, loaderComponent = _b.loaderComponent;
|
|
8751
|
+
var _b = React.useContext(SettingsContext), basePath = _b.basePath, travellers = _b.travellers, loaderComponent = _b.loaderComponent, language = _b.language;
|
|
8752
|
+
var translations = getTranslations(language);
|
|
8580
8753
|
var dispatch = useAppDispatch();
|
|
8581
8754
|
var packageDetails = reactRedux.useSelector(selectPackageDetails);
|
|
8582
8755
|
var requestRooms = reactRedux.useSelector(selectRequestRooms);
|
|
@@ -8715,7 +8888,7 @@ var OptionsForm = function () {
|
|
|
8715
8888
|
React__default["default"].createElement("div", { className: "booking-card__header" },
|
|
8716
8889
|
React__default["default"].createElement("h2", { className: "booking-card__header-heading" }, translations.OPTIONS_FORM.PER_BOOKING_TITLE)),
|
|
8717
8890
|
React__default["default"].createElement("div", { className: "booking-card__body" },
|
|
8718
|
-
React__default["default"].createElement("div", { className: "
|
|
8891
|
+
React__default["default"].createElement("div", { className: "booking-card__group booking-card__group--active" }, groups.map(function (group, i) { return (React__default["default"].createElement(OptionBookingGroup, { key: "".concat(group.name, "_").concat(i), group: group, firstClassName: "booking-card__group-body", secondClassName: "booking-card__group-heading", parentId: "booking_".concat(group.name), onGroupChange: handleOnGroupChange })); })))))),
|
|
8719
8892
|
lodash.isEmpty(groups) && lodash.isEmpty(optionUnits) && lodash.isEmpty(optionPax) && (React__default["default"].createElement(NoOptions, null)))),
|
|
8720
8893
|
React__default["default"].createElement("div", { className: "booking__navigator" },
|
|
8721
8894
|
React__default["default"].createElement("button", { type: "submit", title: translations.STEPS.NEXT, disabled: isLoading, className: buildClassName(["cta", isLoading && "cta--disabled"]) }, translations.STEPS.NEXT)))));
|
|
@@ -8732,9 +8905,11 @@ var ProductCard = function (_a) {
|
|
|
8732
8905
|
|
|
8733
8906
|
var SidebarFlight = function (_a) {
|
|
8734
8907
|
var title = _a.title, flight = _a.flight;
|
|
8908
|
+
var language = React.useContext(SettingsContext).language;
|
|
8735
8909
|
var flightLines = parseFlightLines(flight.flightMetaData);
|
|
8736
8910
|
var firstFlight = lodash.first(flightLines);
|
|
8737
8911
|
var lastFlight = lodash.last(flightLines);
|
|
8912
|
+
var translations = getTranslations(language);
|
|
8738
8913
|
return (React__default["default"].createElement("div", { className: "pricing-summary__group" },
|
|
8739
8914
|
React__default["default"].createElement("h6", { className: "pricing-summary__title" }, title),
|
|
8740
8915
|
React__default["default"].createElement("div", { className: "pricing-summary__row" },
|
|
@@ -8772,7 +8947,9 @@ var SidebarFlight = function (_a) {
|
|
|
8772
8947
|
|
|
8773
8948
|
var Sidebar = function (_a) {
|
|
8774
8949
|
var productName = _a.productName, thumbnailUrl = _a.thumbnailUrl, isLoading = _a.isLoading, travelersText = _a.travelersText, startDateText = _a.startDateText, endDateText = _a.endDateText, departureFlight = _a.departureFlight, returnFlight = _a.returnFlight, basePrice = _a.basePrice, totalPrice = _a.totalPrice, includedCosts = _a.includedCosts, extraCosts = _a.extraCosts, deposit = _a.deposit, accommodations = _a.accommodations, isOnRequest = _a.isOnRequest, headerComponent = _a.headerComponent, footerComponent = _a.footerComponent, loaderComponent = _a.loaderComponent;
|
|
8950
|
+
var language = React.useContext(SettingsContext).language;
|
|
8775
8951
|
var _b = React.useState(false), active = _b[0], setActive = _b[1];
|
|
8952
|
+
var translations = getTranslations(language);
|
|
8776
8953
|
var canShowPriceBreakdownSection = Boolean(basePrice && basePrice > 0) ||
|
|
8777
8954
|
!lodash.isEmpty(includedCosts) ||
|
|
8778
8955
|
!lodash.isEmpty(extraCosts);
|
|
@@ -8913,12 +9090,14 @@ var SidebarContainer = function (_a) {
|
|
|
8913
9090
|
|
|
8914
9091
|
var StepIndicators = function (_a) {
|
|
8915
9092
|
var currentStep = _a.currentStep;
|
|
9093
|
+
var language = React.useContext(SettingsContext).language;
|
|
9094
|
+
var translations = getTranslations(language);
|
|
8916
9095
|
return (React__default["default"].createElement("div", { className: "step-indicators" },
|
|
8917
9096
|
React__default["default"].createElement("div", { className: "step-indicators__items" }, [
|
|
8918
|
-
|
|
8919
|
-
|
|
8920
|
-
|
|
8921
|
-
|
|
9097
|
+
translations.STEPS.COMPOSE,
|
|
9098
|
+
translations.STEPS.PERSONAL_DETAILS,
|
|
9099
|
+
translations.STEPS.SUMMARY,
|
|
9100
|
+
translations.STEPS.CONFIRMATION,
|
|
8922
9101
|
].map(function (stepName, index) { return (React__default["default"].createElement("div", { key: "".concat(index + 1, "-").concat(stepName), className: buildClassName([
|
|
8923
9102
|
"step-indicators__item",
|
|
8924
9103
|
currentStep === index + 1 && "step-indicators__item--active",
|
|
@@ -8944,6 +9123,8 @@ var StepRoute = function (_a) {
|
|
|
8944
9123
|
var SummaryFlight = function (_a) {
|
|
8945
9124
|
var _b;
|
|
8946
9125
|
var flight = _a.flight, header = _a.header;
|
|
9126
|
+
var language = React.useContext(SettingsContext).language;
|
|
9127
|
+
var translations = getTranslations(language);
|
|
8947
9128
|
return (React__default["default"].createElement("li", null,
|
|
8948
9129
|
React__default["default"].createElement("h6", null, header), (_b = parseFlightLines(flight.flightMetaData)) === null || _b === void 0 ? void 0 :
|
|
8949
9130
|
_b.map(function (flightLine) { return (React__default["default"].createElement("p", { key: flightLine.departureAirportIata },
|
|
@@ -9218,6 +9399,7 @@ var Summary = function () {
|
|
|
9218
9399
|
dispatch(setVoucherCodes((_b = (_a = bookRequest === null || bookRequest === void 0 ? void 0 : bookRequest.payload.voucherCodes) === null || _a === void 0 ? void 0 : _a.filter(function (x) { return x !== code; })) !== null && _b !== void 0 ? _b : []));
|
|
9219
9400
|
dispatch(fetchPriceDetails$1());
|
|
9220
9401
|
};
|
|
9402
|
+
var translations = getTranslations(settings.language);
|
|
9221
9403
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
9222
9404
|
isSubmitting && settings.loaderComponent,
|
|
9223
9405
|
!isSubmitting && (React__default["default"].createElement("form", { className: "form", name: "booking--step3", id: "booking--step3", onSubmit: handleSubmit },
|
|
@@ -9677,6 +9859,7 @@ var TravelersForm = function () {
|
|
|
9677
9859
|
var hasVisibleError = function (key) {
|
|
9678
9860
|
return lodash.get(formik$1.errors, key) && lodash.get(formik$1.touched, key);
|
|
9679
9861
|
};
|
|
9862
|
+
var translations = getTranslations(settings.language);
|
|
9680
9863
|
return (React__default["default"].createElement("form", { className: "form", name: "booking--step1", id: "booking--step1", noValidate: true, onSubmit: formik$1.handleSubmit, onReset: formik$1.handleReset },
|
|
9681
9864
|
React__default["default"].createElement("div", { className: "form__region" },
|
|
9682
9865
|
React__default["default"].createElement("div", { className: "form__region-header" },
|
|
@@ -9839,7 +10022,7 @@ var TravelersForm = function () {
|
|
|
9839
10022
|
|
|
9840
10023
|
var Booking = function (_a) {
|
|
9841
10024
|
var productCode = _a.productCode, productName = _a.productName, thumbnailUrl = _a.thumbnailUrl;
|
|
9842
|
-
var _b = React.useContext(SettingsContext), officeId = _b.officeId, bookingOptions = _b.bookingOptions, basePath = _b.basePath, options = _b.options, travellers = _b.travellers, summary = _b.summary, confirmation = _b.confirmation, error = _b.error, showSidebarDeposit = _b.showSidebarDeposit, includeFlights = _b.includeFlights, loaderComponent = _b.loaderComponent, skipPaymentWithAgent = _b.skipPaymentWithAgent, generatePaymentUrl = _b.generatePaymentUrl, tagIds = _b.tagIds, agentAdressId = _b.agentAdressId;
|
|
10025
|
+
var _b = React.useContext(SettingsContext), officeId = _b.officeId, bookingOptions = _b.bookingOptions, basePath = _b.basePath, options = _b.options, travellers = _b.travellers, summary = _b.summary, confirmation = _b.confirmation, error = _b.error, showSidebarDeposit = _b.showSidebarDeposit, includeFlights = _b.includeFlights, loaderComponent = _b.loaderComponent, skipPaymentWithAgent = _b.skipPaymentWithAgent, generatePaymentUrl = _b.generatePaymentUrl, tagIds = _b.tagIds, agentAdressId = _b.agentAdressId, language = _b.language;
|
|
9843
10026
|
var dispatch = useAppDispatch();
|
|
9844
10027
|
var location = router.useLocation();
|
|
9845
10028
|
var productAttributes = reactRedux.useSelector(selectProductAttributes);
|
|
@@ -9958,6 +10141,7 @@ var Booking = function (_a) {
|
|
|
9958
10141
|
bookingNumber,
|
|
9959
10142
|
packageDetails,
|
|
9960
10143
|
]);
|
|
10144
|
+
var translations = getTranslations(language);
|
|
9961
10145
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
9962
10146
|
((productAttributes && bookingAttributes && packageDetails) ||
|
|
9963
10147
|
bookingNumber) && (React__default["default"].createElement("div", { className: "booking" },
|