@qite/tide-booking-component 1.4.69 → 1.4.71

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.
Files changed (70) hide show
  1. package/build/build-cjs/index.js +1299 -1058
  2. package/build/build-cjs/src/qsm/store/qsm-slice.d.ts +4 -4
  3. package/build/build-cjs/src/qsm/types.d.ts +2 -14
  4. package/build/build-cjs/src/search-results/components/filters/filters.d.ts +1 -1
  5. package/build/build-cjs/src/search-results/components/filters/utility.d.ts +2 -2
  6. package/build/build-cjs/src/search-results/components/group-tour/group-tour-card.d.ts +8 -0
  7. package/build/build-cjs/src/search-results/components/group-tour/group-tour-results.d.ts +6 -0
  8. package/build/build-cjs/src/search-results/components/hotel/hotel-accommodation-results.d.ts +0 -2
  9. package/build/build-cjs/src/search-results/store/search-results-slice.d.ts +5 -8
  10. package/build/build-cjs/src/search-results/types.d.ts +7 -2
  11. package/build/build-cjs/src/search-results/utils/search-results-utils.d.ts +3 -0
  12. package/build/build-cjs/src/shared/components/flyin/accommodation-flyin.d.ts +8 -0
  13. package/build/build-cjs/src/shared/components/flyin/flights-flyin.d.ts +7 -0
  14. package/build/build-cjs/src/shared/components/{flyin.d.ts → flyin/flyin.d.ts} +3 -2
  15. package/build/build-cjs/src/shared/types.d.ts +12 -0
  16. package/build/build-cjs/src/shared/utils/localization-util.d.ts +5 -0
  17. package/build/build-esm/index.js +1285 -1053
  18. package/build/build-esm/src/qsm/store/qsm-slice.d.ts +4 -4
  19. package/build/build-esm/src/qsm/types.d.ts +2 -14
  20. package/build/build-esm/src/search-results/components/filters/filters.d.ts +1 -1
  21. package/build/build-esm/src/search-results/components/filters/utility.d.ts +2 -2
  22. package/build/build-esm/src/search-results/components/group-tour/group-tour-card.d.ts +8 -0
  23. package/build/build-esm/src/search-results/components/group-tour/group-tour-results.d.ts +6 -0
  24. package/build/build-esm/src/search-results/components/hotel/hotel-accommodation-results.d.ts +0 -2
  25. package/build/build-esm/src/search-results/store/search-results-slice.d.ts +5 -8
  26. package/build/build-esm/src/search-results/types.d.ts +7 -2
  27. package/build/build-esm/src/search-results/utils/search-results-utils.d.ts +3 -0
  28. package/build/build-esm/src/shared/components/flyin/accommodation-flyin.d.ts +8 -0
  29. package/build/build-esm/src/shared/components/flyin/flights-flyin.d.ts +7 -0
  30. package/build/build-esm/src/shared/components/{flyin.d.ts → flyin/flyin.d.ts} +3 -2
  31. package/build/build-esm/src/shared/types.d.ts +12 -0
  32. package/build/build-esm/src/shared/utils/localization-util.d.ts +5 -0
  33. package/package.json +2 -2
  34. package/src/qsm/components/QSMContainer/qsm-container.tsx +16 -3
  35. package/src/qsm/store/qsm-slice.ts +4 -4
  36. package/src/qsm/types.ts +2 -15
  37. package/src/search-results/components/filters/filters.tsx +136 -293
  38. package/src/search-results/components/filters/utility.tsx +61 -2
  39. package/src/search-results/components/group-tour/group-tour-card.tsx +100 -0
  40. package/src/search-results/components/group-tour/group-tour-results.tsx +40 -0
  41. package/src/search-results/components/hotel/hotel-accommodation-results.tsx +13 -16
  42. package/src/search-results/components/hotel/hotel-card.tsx +11 -8
  43. package/src/search-results/components/icon.tsx +18 -0
  44. package/src/search-results/components/search-results-container/search-results-container.tsx +62 -30
  45. package/src/search-results/store/search-results-slice.ts +13 -7
  46. package/src/search-results/types.ts +9 -2
  47. package/src/search-results/utils/search-results-utils.ts +42 -0
  48. package/src/shared/components/flyin/accommodation-flyin.tsx +40 -0
  49. package/src/shared/components/flyin/flights-flyin.tsx +499 -0
  50. package/src/shared/components/flyin/flyin.tsx +79 -0
  51. package/src/shared/translations/ar-SA.json +4 -2
  52. package/src/shared/translations/da-DK.json +4 -2
  53. package/src/shared/translations/de-DE.json +4 -2
  54. package/src/shared/translations/en-GB.json +4 -2
  55. package/src/shared/translations/es-ES.json +4 -2
  56. package/src/shared/translations/fr-BE.json +4 -2
  57. package/src/shared/translations/fr-FR.json +4 -2
  58. package/src/shared/translations/is-IS.json +4 -2
  59. package/src/shared/translations/it-IT.json +4 -2
  60. package/src/shared/translations/ja-JP.json +4 -2
  61. package/src/shared/translations/nl-BE.json +4 -2
  62. package/src/shared/translations/nl-NL.json +4 -2
  63. package/src/shared/translations/no-NO.json +4 -2
  64. package/src/shared/translations/pl-PL.json +4 -2
  65. package/src/shared/translations/pt-PT.json +4 -2
  66. package/src/shared/translations/sv-SE.json +4 -2
  67. package/src/shared/types.ts +13 -0
  68. package/src/shared/utils/localization-util.ts +16 -0
  69. package/styles/components/_flyin.scss +10 -0
  70. package/src/shared/components/flyin.tsx +0 -546
@@ -49,7 +49,8 @@
49
49
  "EVENING_DEPARTURE": "Noche (18:00 - 00:00)",
50
50
  "FLIGHTS_FOUND_1": "",
51
51
  "FLIGHTS_FOUND_2": "vuelos",
52
- "FLIGHTS_FOUND_3": "encontrados"
52
+ "FLIGHTS_FOUND_3": "encontrados",
53
+ "SELECT_YOUR_FARE": "Seleccione su tarifa"
53
54
  },
54
55
  "PRODUCT": {
55
56
  "STAY_INCLUDED": "Estancia incluida",
@@ -372,6 +373,7 @@
372
373
  "DEPARTURE_RANGE": "Franja de salida",
373
374
  "DEPARTURE_AIRPORTS": "Aeropuertos de salida",
374
375
  "ARRIVAL_AIRPORTS": "Aeropuertos de llegada",
375
- "PRICE": "Precio"
376
+ "PRICE": "Precio",
377
+ "TRAVEL_GROUP": "Grupo de viaje"
376
378
  }
377
379
  }
@@ -49,7 +49,8 @@
49
49
  "EVENING_DEPARTURE": "Soir (18:00 - 00:00)",
50
50
  "FLIGHTS_FOUND_1": "",
51
51
  "FLIGHTS_FOUND_2": "vols",
52
- "FLIGHTS_FOUND_3": "trouvés"
52
+ "FLIGHTS_FOUND_3": "trouvés",
53
+ "SELECT_YOUR_FARE": "Sélectionnez votre tarif"
53
54
  },
54
55
  "PRODUCT": {
55
56
  "STAY_INCLUDED": "Séjour inclus",
@@ -376,6 +377,7 @@
376
377
  "DEPARTURE_RANGE": "Plage de départ",
377
378
  "DEPARTURE_AIRPORTS": "Aéroports de départ",
378
379
  "ARRIVAL_AIRPORTS": "Aéroports d’arrivée",
379
- "PRICE": "Prix"
380
+ "PRICE": "Prix",
381
+ "TRAVEL_GROUP": "Groupe de voyageurs"
380
382
  }
381
383
  }
@@ -49,7 +49,8 @@
49
49
  "EVENING_DEPARTURE": "Soir (18:00 - 00:00)",
50
50
  "FLIGHTS_FOUND_1": "",
51
51
  "FLIGHTS_FOUND_2": "vols",
52
- "FLIGHTS_FOUND_3": "trouvés"
52
+ "FLIGHTS_FOUND_3": "trouvés",
53
+ "SELECT_YOUR_FARE": "Sélectionnez votre tarif"
53
54
  },
54
55
  "PRODUCT": {
55
56
  "STAY_INCLUDED": "Séjour inclus",
@@ -372,6 +373,7 @@
372
373
  "DEPARTURE_RANGE": "Plage de départ",
373
374
  "DEPARTURE_AIRPORTS": "Aéroports de départ",
374
375
  "ARRIVAL_AIRPORTS": "Aéroports d’arrivée",
375
- "PRICE": "Prix"
376
+ "PRICE": "Prix",
377
+ "TRAVEL_GROUP": "Groupe de voyageurs"
376
378
  }
377
379
  }
@@ -49,7 +49,8 @@
49
49
  "EVENING_DEPARTURE": "Kvöld (18:00 - 00:00)",
50
50
  "FLIGHTS_FOUND_1": "",
51
51
  "FLIGHTS_FOUND_2": "flug",
52
- "FLIGHTS_FOUND_3": "fundust"
52
+ "FLIGHTS_FOUND_3": "fundust",
53
+ "SELECT_YOUR_FARE": "Veldu flugverð"
53
54
  },
54
55
  "PRODUCT": {
55
56
  "STAY_INCLUDED": "Dvöl innifalin",
@@ -372,6 +373,7 @@
372
373
  "DEPARTURE_RANGE": "Brottfarartímabil",
373
374
  "DEPARTURE_AIRPORTS": "Brottfararflugvellir",
374
375
  "ARRIVAL_AIRPORTS": "Komuflugvellir",
375
- "PRICE": "Verð"
376
+ "PRICE": "Verð",
377
+ "TRAVEL_GROUP": "Ferðahópur"
376
378
  }
377
379
  }
@@ -49,7 +49,8 @@
49
49
  "EVENING_DEPARTURE": "Sera (18:00 - 00:00)",
50
50
  "FLIGHTS_FOUND_1": "",
51
51
  "FLIGHTS_FOUND_2": "voli",
52
- "FLIGHTS_FOUND_3": "trovati"
52
+ "FLIGHTS_FOUND_3": "trovati",
53
+ "SELECT_YOUR_FARE": "Seleziona la tua tariffa"
53
54
  },
54
55
  "PRODUCT": {
55
56
  "STAY_INCLUDED": "Soggiorno incluso",
@@ -372,6 +373,7 @@
372
373
  "DEPARTURE_RANGE": "Fascia di partenza",
373
374
  "DEPARTURE_AIRPORTS": "Aeroporti di partenza",
374
375
  "ARRIVAL_AIRPORTS": "Aeroporti di arrivo",
375
- "PRICE": "Prezzo"
376
+ "PRICE": "Prezzo",
377
+ "TRAVEL_GROUP": "Gruppo di viaggio"
376
378
  }
377
379
  }
@@ -49,7 +49,8 @@
49
49
  "EVENING_DEPARTURE": "夜 (18:00 - 00:00)",
50
50
  "FLIGHTS_FOUND_1": "",
51
51
  "FLIGHTS_FOUND_2": "件のフライトが",
52
- "FLIGHTS_FOUND_3": "見つかりました"
52
+ "FLIGHTS_FOUND_3": "見つかりました",
53
+ "SELECT_YOUR_FARE": "料金を選択してください"
53
54
  },
54
55
  "PRODUCT": {
55
56
  "STAY_INCLUDED": "宿泊込み",
@@ -372,6 +373,7 @@
372
373
  "DEPARTURE_RANGE": "出発時間帯",
373
374
  "DEPARTURE_AIRPORTS": "出発空港",
374
375
  "ARRIVAL_AIRPORTS": "到着空港",
375
- "PRICE": "価格"
376
+ "PRICE": "価格",
377
+ "TRAVEL_GROUP": "旅行グループ"
376
378
  }
377
379
  }
@@ -49,7 +49,8 @@
49
49
  "EVENING_DEPARTURE": "Avond (18:00 - 00:00)",
50
50
  "FLIGHTS_FOUND_1": "Er zijn",
51
51
  "FLIGHTS_FOUND_2": "vluchten",
52
- "FLIGHTS_FOUND_3": "gevonden"
52
+ "FLIGHTS_FOUND_3": "gevonden",
53
+ "SELECT_YOUR_FARE": "Selecteer uw tarief"
53
54
  },
54
55
  "PRODUCT": {
55
56
  "STAY_INCLUDED": "Inclusief verblijf",
@@ -376,6 +377,7 @@
376
377
  "DEPARTURE_RANGE": "Vertrektijdstip",
377
378
  "DEPARTURE_AIRPORTS": "Vertrekluchthavens",
378
379
  "ARRIVAL_AIRPORTS": "Aankomstluchthavens",
379
- "PRICE": "Prijs"
380
+ "PRICE": "Prijs",
381
+ "TRAVEL_GROUP": "Reisgezelschap"
380
382
  }
381
383
  }
@@ -49,7 +49,8 @@
49
49
  "EVENING_DEPARTURE": "Avond (18:00 - 00:00)",
50
50
  "FLIGHTS_FOUND_1": "",
51
51
  "FLIGHTS_FOUND_2": "vluchten",
52
- "FLIGHTS_FOUND_3": "gevonden"
52
+ "FLIGHTS_FOUND_3": "gevonden",
53
+ "SELECT_YOUR_FARE": "Selecteer uw tarief"
53
54
  },
54
55
  "PRODUCT": {
55
56
  "STAY_INCLUDED": "Verblijf inbegrepen",
@@ -372,6 +373,7 @@
372
373
  "DEPARTURE_RANGE": "Vertrektijdstip",
373
374
  "DEPARTURE_AIRPORTS": "Vertrekluchthavens",
374
375
  "ARRIVAL_AIRPORTS": "Aankomstluchthavens",
375
- "PRICE": "Prijs"
376
+ "PRICE": "Prijs",
377
+ "TRAVEL_GROUP": "Reisgezelschap"
376
378
  }
377
379
  }
@@ -49,7 +49,8 @@
49
49
  "EVENING_DEPARTURE": "Kveld (18:00 - 00:00)",
50
50
  "FLIGHTS_FOUND_1": "",
51
51
  "FLIGHTS_FOUND_2": "fly",
52
- "FLIGHTS_FOUND_3": "funnet"
52
+ "FLIGHTS_FOUND_3": "funnet",
53
+ "SELECT_YOUR_FARE": "Velg din pris:"
53
54
  },
54
55
  "PRODUCT": {
55
56
  "STAY_INCLUDED": "Opphold inkludert",
@@ -372,6 +373,7 @@
372
373
  "DEPARTURE_RANGE": "Avgangsperiode",
373
374
  "DEPARTURE_AIRPORTS": "Avgangsflyplasser",
374
375
  "ARRIVAL_AIRPORTS": "Ankomstflyplasser",
375
- "PRICE": "Pris"
376
+ "PRICE": "Pris",
377
+ "TRAVEL_GROUP": "Reisefølge"
376
378
  }
377
379
  }
@@ -49,7 +49,8 @@
49
49
  "EVENING_DEPARTURE": "Wieczór (18:00 - 00:00)",
50
50
  "FLIGHTS_FOUND_1": "",
51
51
  "FLIGHTS_FOUND_2": "lotów",
52
- "FLIGHTS_FOUND_3": "znaleziono"
52
+ "FLIGHTS_FOUND_3": "znaleziono",
53
+ "SELECT_YOUR_FARE": "Wybierz swój taryfę"
53
54
  },
54
55
  "PRODUCT": {
55
56
  "STAY_INCLUDED": "Pobyt wliczony w cenę",
@@ -372,6 +373,7 @@
372
373
  "DEPARTURE_RANGE": "Zakres wylotu",
373
374
  "DEPARTURE_AIRPORTS": "Lotniska wylotu",
374
375
  "ARRIVAL_AIRPORTS": "Lotniska przylotu",
375
- "PRICE": "Cena"
376
+ "PRICE": "Cena",
377
+ "TRAVEL_GROUP": "Grupa podróżnych"
376
378
  }
377
379
  }
@@ -49,7 +49,8 @@
49
49
  "EVENING_DEPARTURE": "Noite (18:00 - 00:00)",
50
50
  "FLIGHTS_FOUND_1": "",
51
51
  "FLIGHTS_FOUND_2": "voos",
52
- "FLIGHTS_FOUND_3": "encontrados"
52
+ "FLIGHTS_FOUND_3": "encontrados",
53
+ "SELECT_YOUR_FARE": "Selecione a sua tarifa:"
53
54
  },
54
55
  "PRODUCT": {
55
56
  "STAY_INCLUDED": "Estadia incluída",
@@ -372,6 +373,7 @@
372
373
  "DEPARTURE_RANGE": "Intervalo de partida",
373
374
  "DEPARTURE_AIRPORTS": "Aeroportos de partida",
374
375
  "ARRIVAL_AIRPORTS": "Aeroportos de chegada",
375
- "PRICE": "Preço"
376
+ "PRICE": "Preço",
377
+ "TRAVEL_GROUP": "Grupo de viajantes"
376
378
  }
377
379
  }
@@ -49,7 +49,8 @@
49
49
  "EVENING_DEPARTURE": "Kväll (18:00 – 00:00)",
50
50
  "FLIGHTS_FOUND_1": "",
51
51
  "FLIGHTS_FOUND_2": "flyg",
52
- "FLIGHTS_FOUND_3": "hittades"
52
+ "FLIGHTS_FOUND_3": "hittades",
53
+ "SELECT_YOUR_FARE": "Välj din pris:"
53
54
  },
54
55
  "PRODUCT": {
55
56
  "STAY_INCLUDED": "Boende ingår",
@@ -372,6 +373,7 @@
372
373
  "DEPARTURE_RANGE": "Avgångsintervall",
373
374
  "DEPARTURE_AIRPORTS": "Avgångsflygplatser",
374
375
  "ARRIVAL_AIRPORTS": "Ankomstflygplatser",
375
- "PRICE": "Pris"
376
+ "PRICE": "Pris",
377
+ "TRAVEL_GROUP": "Resesällskap"
376
378
  }
377
379
  }
@@ -1,5 +1,18 @@
1
1
  import { ReactNode } from 'react';
2
2
 
3
+ export type SRPType =
4
+ | 'multidestination'
5
+ | 'hotel'
6
+ | 'roundTrip'
7
+ | 'flight'
8
+ | 'hotel-flight'
9
+ | 'groupTour'
10
+ | 'package'
11
+ | 'ticket'
12
+ | 'car'
13
+ | 'transfers'
14
+ | 'cruises';
15
+
3
16
  export interface ApiSettingsState {
4
17
  apiUrl: string;
5
18
  apiKey: string;
@@ -239,3 +239,19 @@ export const rangeFromDateTimeInMinutes = (dateTime: Date | undefined): Departur
239
239
  return DepartureRange.Night;
240
240
  }
241
241
  };
242
+
243
+ export const calculateNights = (fromDate: Date, toDate: Date): number => {
244
+ const from = new Date(fromDate);
245
+ const to = new Date(toDate);
246
+
247
+ // Normalize to midnight to avoid time issues
248
+ from.setHours(0, 0, 0, 0);
249
+ to.setHours(0, 0, 0, 0);
250
+
251
+ const diffTime = to.getTime() - from.getTime();
252
+ return Math.round(diffTime / (1000 * 60 * 60 * 24));
253
+ };
254
+
255
+ export const calculateDays = (fromDate: Date, toDate: Date): number => {
256
+ return calculateNights(fromDate, toDate) + 1;
257
+ };
@@ -69,6 +69,16 @@
69
69
  padding-bottom: 0px;
70
70
  }
71
71
 
72
+ & + .flyin__content {
73
+ padding: 0 15px;
74
+ padding-bottom: 0px;
75
+
76
+ @include mixins.media-sm {
77
+ padding: 0 30px;
78
+ padding-bottom: 0px;
79
+ }
80
+ }
81
+
72
82
  &-title {
73
83
  margin: 0px;
74
84
  font-weight: 700;