@qite/tide-booking-component 1.4.102 → 1.4.103
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/build/build-cjs/index.js +241 -112
- package/build/build-cjs/src/search-results/components/flight/flight-selection/independent-flight-option.d.ts +3 -0
- package/build/build-cjs/src/shared/utils/localization-util.d.ts +2 -0
- package/build/build-esm/index.js +241 -112
- package/build/build-esm/src/search-results/components/flight/flight-selection/independent-flight-option.d.ts +3 -0
- package/build/build-esm/src/shared/utils/localization-util.d.ts +2 -0
- package/package.json +2 -2
- package/src/search-results/components/flight/flight-selection/independent-flight-option.tsx +31 -4
- package/src/search-results/components/hotel/hotel-accommodation-results.tsx +11 -12
- package/src/search-results/components/icon.tsx +1 -1
- package/src/search-results/components/search-results-container/search-results-container.tsx +94 -46
- package/src/shared/translations/ar-SA.json +2 -0
- package/src/shared/translations/da-DK.json +2 -0
- package/src/shared/translations/de-DE.json +2 -0
- package/src/shared/translations/en-GB.json +2 -0
- package/src/shared/translations/es-ES.json +2 -0
- package/src/shared/translations/fr-BE.json +2 -0
- package/src/shared/translations/fr-FR.json +2 -0
- package/src/shared/translations/is-IS.json +2 -0
- package/src/shared/translations/it-IT.json +2 -0
- package/src/shared/translations/ja-JP.json +2 -0
- package/src/shared/translations/nl-BE.json +2 -0
- package/src/shared/translations/nl-NL.json +2 -0
- package/src/shared/translations/no-NO.json +2 -0
- package/src/shared/translations/pl-PL.json +2 -0
- package/src/shared/translations/pt-PT.json +2 -0
- package/src/shared/translations/sv-SE.json +2 -0
- package/src/shared/utils/localization-util.ts +5 -2
- package/styles/components/_flight-option.scss +14 -1
- package/styles/components/_search.scss +5 -0
package/build/build-esm/index.js
CHANGED
|
@@ -611,6 +611,8 @@ var QSM$g = {
|
|
|
611
611
|
GROUP_TOUR: 'جولة جماعية'
|
|
612
612
|
};
|
|
613
613
|
var SRP$f = {
|
|
614
|
+
SHOW_MORE: 'عرض المزيد',
|
|
615
|
+
SHOW_LESS: 'عرض أقل',
|
|
614
616
|
NO_RESULTS: 'لم يتم العثور على نتائج.',
|
|
615
617
|
TOTAL_RESULTS_LABEL: 'تم العثور على باقات',
|
|
616
618
|
RESET: 'إعادة تعيين',
|
|
@@ -1015,6 +1017,8 @@ var QSM$f = {
|
|
|
1015
1017
|
GROUP_TOUR: 'Grupperejse'
|
|
1016
1018
|
};
|
|
1017
1019
|
var SRP$e = {
|
|
1020
|
+
SHOW_MORE: 'Vis flere',
|
|
1021
|
+
SHOW_LESS: 'Vis færre',
|
|
1018
1022
|
NO_RESULTS: 'Ingen resultater fundet.',
|
|
1019
1023
|
TOTAL_RESULTS_LABEL: 'Fundne pakker',
|
|
1020
1024
|
RESET: 'Nulstil',
|
|
@@ -1420,6 +1424,8 @@ var QSM$e = {
|
|
|
1420
1424
|
GROUP_TOUR: 'Gruppentour'
|
|
1421
1425
|
};
|
|
1422
1426
|
var SRP$d = {
|
|
1427
|
+
SHOW_MORE: 'Mehr anzeigen',
|
|
1428
|
+
SHOW_LESS: 'Weniger anzeigen',
|
|
1423
1429
|
NO_RESULTS: 'Keine Ergebnisse gefunden.',
|
|
1424
1430
|
TOTAL_RESULTS_LABEL: 'Gefundene Pakete',
|
|
1425
1431
|
RESET: 'Zurücksetzen',
|
|
@@ -1828,6 +1834,8 @@ var QSM$d = {
|
|
|
1828
1834
|
GROUP_TOUR: 'Group tour'
|
|
1829
1835
|
};
|
|
1830
1836
|
var SRP$c = {
|
|
1837
|
+
SHOW_MORE: 'Show more',
|
|
1838
|
+
SHOW_LESS: 'Show less',
|
|
1831
1839
|
NO_RESULTS: 'No results found.',
|
|
1832
1840
|
TOTAL_RESULTS_LABEL: 'Packages found',
|
|
1833
1841
|
RESET: 'Reset',
|
|
@@ -2233,6 +2241,8 @@ var QSM$c = {
|
|
|
2233
2241
|
GROUP_TOUR: 'Tour grupal'
|
|
2234
2242
|
};
|
|
2235
2243
|
var SRP$b = {
|
|
2244
|
+
SHOW_MORE: 'Mostrar más',
|
|
2245
|
+
SHOW_LESS: 'Mostrar menos',
|
|
2236
2246
|
NO_RESULTS: 'No se han encontrado resultados.',
|
|
2237
2247
|
TOTAL_RESULTS_LABEL: 'Paquetes encontrados',
|
|
2238
2248
|
RESET: 'Restablecer',
|
|
@@ -2642,6 +2652,8 @@ var QSM$b = {
|
|
|
2642
2652
|
GROUP_TOUR: 'Tour en groupe'
|
|
2643
2653
|
};
|
|
2644
2654
|
var SRP$a = {
|
|
2655
|
+
SHOW_MORE: 'Afficher plus',
|
|
2656
|
+
SHOW_LESS: 'Afficher moins',
|
|
2645
2657
|
NO_RESULTS: 'Aucun résultat trouvé.',
|
|
2646
2658
|
TOTAL_RESULTS_LABEL: 'Forfaits trouvés',
|
|
2647
2659
|
RESET: 'Réinitialiser',
|
|
@@ -3046,6 +3058,8 @@ var QSM$a = {
|
|
|
3046
3058
|
GROUP_TOUR: 'Tour en groupe'
|
|
3047
3059
|
};
|
|
3048
3060
|
var SRP$9 = {
|
|
3061
|
+
SHOW_MORE: 'Afficher plus',
|
|
3062
|
+
SHOW_LESS: 'Afficher moins',
|
|
3049
3063
|
NO_RESULTS: 'Aucun résultat trouvé.',
|
|
3050
3064
|
TOTAL_RESULTS_LABEL: 'Forfaits trouvés',
|
|
3051
3065
|
RESET: 'Réinitialiser',
|
|
@@ -3450,6 +3464,8 @@ var QSM$9 = {
|
|
|
3450
3464
|
GROUP_TOUR: 'Ferð í hóp'
|
|
3451
3465
|
};
|
|
3452
3466
|
var SRP$8 = {
|
|
3467
|
+
SHOW_MORE: 'Sýna meira',
|
|
3468
|
+
SHOW_LESS: 'Sýna minna',
|
|
3453
3469
|
NO_RESULTS: 'Engar niðurstöður fundust.',
|
|
3454
3470
|
TOTAL_RESULTS_LABEL: 'Fundnar pakkar',
|
|
3455
3471
|
RESET: 'Endurstilla',
|
|
@@ -3855,6 +3871,8 @@ var QSM$8 = {
|
|
|
3855
3871
|
GROUP_TOUR: 'Tour di gruppo'
|
|
3856
3872
|
};
|
|
3857
3873
|
var SRP$7 = {
|
|
3874
|
+
SHOW_MORE: 'Mostra di più',
|
|
3875
|
+
SHOW_LESS: 'Mostra di meno',
|
|
3858
3876
|
NO_RESULTS: 'Nessun risultato trovato.',
|
|
3859
3877
|
TOTAL_RESULTS_LABEL: 'Pacchetti trovati',
|
|
3860
3878
|
RESET: 'Reimposta',
|
|
@@ -4264,6 +4282,8 @@ var QSM$7 = {
|
|
|
4264
4282
|
GROUP_TOUR: 'Groepsreis'
|
|
4265
4283
|
};
|
|
4266
4284
|
var SRP$6 = {
|
|
4285
|
+
SHOW_MORE: 'Toon meer',
|
|
4286
|
+
SHOW_LESS: 'Toon minder',
|
|
4267
4287
|
NO_RESULTS: 'Geen resultaten gevonden.',
|
|
4268
4288
|
TOTAL_RESULTS_LABEL: 'Gevonden pakketten',
|
|
4269
4289
|
RESET: 'Resetten',
|
|
@@ -4669,6 +4689,8 @@ var QSM$6 = {
|
|
|
4669
4689
|
GROUP_TOUR: 'Groepsreis'
|
|
4670
4690
|
};
|
|
4671
4691
|
var SRP$5 = {
|
|
4692
|
+
SHOW_MORE: 'Toon meer',
|
|
4693
|
+
SHOW_LESS: 'Toon minder',
|
|
4672
4694
|
NO_RESULTS: 'Geen resultaten gevonden.',
|
|
4673
4695
|
TOTAL_RESULTS_LABEL: 'Gevonden pakketten',
|
|
4674
4696
|
RESET: 'Resetten',
|
|
@@ -5074,6 +5096,8 @@ var QSM$5 = {
|
|
|
5074
5096
|
GROUP_TOUR: 'Gruppetur'
|
|
5075
5097
|
};
|
|
5076
5098
|
var SRP$4 = {
|
|
5099
|
+
SHOW_MORE: 'Vis mer',
|
|
5100
|
+
SHOW_LESS: 'Vis mindre',
|
|
5077
5101
|
NO_RESULTS: 'Ingen resultater funnet.',
|
|
5078
5102
|
TOTAL_RESULTS_LABEL: 'Fant pakker',
|
|
5079
5103
|
RESET: 'Tilbakestill',
|
|
@@ -5479,6 +5503,8 @@ var QSM$4 = {
|
|
|
5479
5503
|
GROUP_TOUR: 'Tour w grupie'
|
|
5480
5504
|
};
|
|
5481
5505
|
var SRP$3 = {
|
|
5506
|
+
SHOW_MORE: 'Pokaż więcej',
|
|
5507
|
+
SHOW_LESS: 'Pokaż mniej',
|
|
5482
5508
|
NO_RESULTS: 'Nie znaleziono wyników.',
|
|
5483
5509
|
TOTAL_RESULTS_LABEL: 'Znalezione pakiety',
|
|
5484
5510
|
RESET: 'Resetuj',
|
|
@@ -5884,6 +5910,8 @@ var QSM$3 = {
|
|
|
5884
5910
|
GROUP_TOUR: 'Tour em grupo'
|
|
5885
5911
|
};
|
|
5886
5912
|
var SRP$2 = {
|
|
5913
|
+
SHOW_MORE: 'Mostrar mais',
|
|
5914
|
+
SHOW_LESS: 'Mostrar menos',
|
|
5887
5915
|
NO_RESULTS: 'Nenhum resultado encontrado.',
|
|
5888
5916
|
TOTAL_RESULTS_LABEL: 'Pacotes encontrados',
|
|
5889
5917
|
RESET: 'Redefinir',
|
|
@@ -6289,6 +6317,8 @@ var QSM$2 = {
|
|
|
6289
6317
|
GROUP_TOUR: 'Gruppresa'
|
|
6290
6318
|
};
|
|
6291
6319
|
var SRP$1 = {
|
|
6320
|
+
SHOW_MORE: 'Visa mer',
|
|
6321
|
+
SHOW_LESS: 'Visa mindre',
|
|
6292
6322
|
NO_RESULTS: 'Inga resultat hittades.',
|
|
6293
6323
|
TOTAL_RESULTS_LABEL: 'Hittade paket',
|
|
6294
6324
|
RESET: 'Återställ',
|
|
@@ -6692,6 +6722,8 @@ var QSM$1 = {
|
|
|
6692
6722
|
GROUP_TOUR: 'グループツアー'
|
|
6693
6723
|
};
|
|
6694
6724
|
var SRP = {
|
|
6725
|
+
SHOW_MORE: 'もっと見る',
|
|
6726
|
+
SHOW_LESS: '閉じる',
|
|
6695
6727
|
NO_RESULTS: '結果が見つかりませんでした。',
|
|
6696
6728
|
TOTAL_RESULTS_LABEL: '見つかったパッケージ',
|
|
6697
6729
|
RESET: 'リセット',
|
|
@@ -6898,8 +6930,8 @@ var timeFromDateTime = function (dateTime) {
|
|
|
6898
6930
|
return '';
|
|
6899
6931
|
}
|
|
6900
6932
|
var date = new Date(dateTime);
|
|
6901
|
-
var hours = date.
|
|
6902
|
-
var minutes = date.
|
|
6933
|
+
var hours = date.getUTCHours();
|
|
6934
|
+
var minutes = date.getUTCMinutes();
|
|
6903
6935
|
return ''
|
|
6904
6936
|
.concat(hours, ':')
|
|
6905
6937
|
.concat(minutes < 10 ? '0' : '')
|
|
@@ -34099,7 +34131,7 @@ var Icon$1 = function (_a) {
|
|
|
34099
34131
|
title && React__default.createElement('title', null, title),
|
|
34100
34132
|
React__default.createElement('path', {
|
|
34101
34133
|
d: 'M32 32c17.7 0 32 14.3 32 32l0 256 224 0 0-160c0-17.7 14.3-32 32-32l224 0c53 0 96 43 96 96l0 224c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-32-224 0-32 0L64 416l0 32c0 17.7-14.3 32-32 32s-32-14.3-32-32L0 64C0 46.3 14.3 32 32 32zm144 96a80 80 0 1 1 0 160 80 80 0 1 1 0-160z',
|
|
34102
|
-
fill: 'currentColor'
|
|
34134
|
+
fill: fill !== null && fill !== void 0 ? fill : 'currentColor'
|
|
34103
34135
|
})
|
|
34104
34136
|
);
|
|
34105
34137
|
case 'ui-utensils':
|
|
@@ -43524,16 +43556,6 @@ var HotelAccommodationResults = function (_a) {
|
|
|
43524
43556
|
: firstPackagingResult.fromDate;
|
|
43525
43557
|
var firstResultDay = firstResultDate ? format$1(parseISO(firstResultDate), 'd') : null;
|
|
43526
43558
|
var firstResultMonth = firstResultDate ? format$1(parseISO(firstResultDate), 'MMM') : null;
|
|
43527
|
-
if (isLoading) {
|
|
43528
|
-
return React__default.createElement(
|
|
43529
|
-
React__default.Fragment,
|
|
43530
|
-
null,
|
|
43531
|
-
(_c = context.customSpinner) !== null && _c !== void 0 ? _c : React__default.createElement(Spinner, null)
|
|
43532
|
-
);
|
|
43533
|
-
}
|
|
43534
|
-
if (mappedResults.length === 0) {
|
|
43535
|
-
return React__default.createElement('div', { className: 'no-results' }, translations.SRP.NO_RESULTS);
|
|
43536
|
-
}
|
|
43537
43559
|
return React__default.createElement(
|
|
43538
43560
|
React__default.Fragment,
|
|
43539
43561
|
null,
|
|
@@ -43543,8 +43565,14 @@ var HotelAccommodationResults = function (_a) {
|
|
|
43543
43565
|
React__default.createElement(
|
|
43544
43566
|
'div',
|
|
43545
43567
|
{ className: 'search__results__label__date' },
|
|
43546
|
-
|
|
43547
|
-
|
|
43568
|
+
firstResultDay && firstResultMonth
|
|
43569
|
+
? React__default.createElement(
|
|
43570
|
+
React__default.Fragment,
|
|
43571
|
+
null,
|
|
43572
|
+
React__default.createElement('p', { className: 'search__results__label__date-date' }, firstResultDay),
|
|
43573
|
+
React__default.createElement('p', null, firstResultMonth)
|
|
43574
|
+
)
|
|
43575
|
+
: React__default.createElement(Icon$1, { name: 'ui-bed', height: 16, fill: 'white' })
|
|
43548
43576
|
),
|
|
43549
43577
|
React__default.createElement(
|
|
43550
43578
|
'div',
|
|
@@ -43552,7 +43580,14 @@ var HotelAccommodationResults = function (_a) {
|
|
|
43552
43580
|
React__default.createElement('h3', null, translations.SRP.SELECT, ' ', React__default.createElement('strong', null, translations.SRP.ACCOMMODATION))
|
|
43553
43581
|
)
|
|
43554
43582
|
),
|
|
43555
|
-
|
|
43583
|
+
isLoading
|
|
43584
|
+
? React__default.createElement(
|
|
43585
|
+
React__default.Fragment,
|
|
43586
|
+
null,
|
|
43587
|
+
(_c = context.customSpinner) !== null && _c !== void 0 ? _c : React__default.createElement(Spinner, null)
|
|
43588
|
+
)
|
|
43589
|
+
: renderHotelResults(mappedResults, context, activeTab, translations),
|
|
43590
|
+
mappedResults.length === 0 && !isLoading && React__default.createElement('div', { className: 'no-results' }, translations.SRP.NO_RESULTS)
|
|
43556
43591
|
);
|
|
43557
43592
|
};
|
|
43558
43593
|
|
|
@@ -44414,24 +44449,28 @@ var PairedFlightSelection = function (_a) {
|
|
|
44414
44449
|
};
|
|
44415
44450
|
|
|
44416
44451
|
var IndependentFlightOption = function (_a) {
|
|
44417
|
-
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
44452
|
+
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
44418
44453
|
var item = _a.item,
|
|
44419
44454
|
onSelect = _a.onSelect,
|
|
44420
44455
|
guid = _a.guid,
|
|
44421
|
-
selectedGuid = _a.selectedGuid
|
|
44422
|
-
|
|
44456
|
+
selectedGuid = _a.selectedGuid,
|
|
44457
|
+
isOutward = _a.isOutward,
|
|
44458
|
+
showSelectedState = _a.showSelectedState,
|
|
44459
|
+
currentSelectedPrice = _a.currentSelectedPrice,
|
|
44460
|
+
price = _a.price;
|
|
44423
44461
|
var context = useContext(SearchResultsConfigurationContext);
|
|
44424
44462
|
var language = (_b = context === null || context === void 0 ? void 0 : context.languageCode) !== null && _b !== void 0 ? _b : 'en-GB';
|
|
44425
44463
|
var translations = getTranslations(language);
|
|
44426
|
-
var
|
|
44427
|
-
detailsOpen =
|
|
44428
|
-
setDetailsOpen =
|
|
44464
|
+
var _p = useState(false),
|
|
44465
|
+
detailsOpen = _p[0],
|
|
44466
|
+
setDetailsOpen = _p[1];
|
|
44467
|
+
var priceDifference = price && currentSelectedPrice ? price - currentSelectedPrice : null;
|
|
44429
44468
|
return React__default.createElement(
|
|
44430
44469
|
'div',
|
|
44431
44470
|
{ className: 'search__result-card', key: 'flight-'.concat(item.code) },
|
|
44432
44471
|
React__default.createElement(
|
|
44433
44472
|
'div',
|
|
44434
|
-
{ className: 'flight' },
|
|
44473
|
+
{ className: 'flight '.concat(showSelectedState && selectedGuid === guid ? 'flight--selected' : '') },
|
|
44435
44474
|
React__default.createElement(
|
|
44436
44475
|
'div',
|
|
44437
44476
|
{ className: 'flight__option' },
|
|
@@ -44451,6 +44490,33 @@ var IndependentFlightOption = function (_a) {
|
|
|
44451
44490
|
React__default.createElement(
|
|
44452
44491
|
'div',
|
|
44453
44492
|
{ className: 'flight__price' },
|
|
44493
|
+
price != null &&
|
|
44494
|
+
price > 0 &&
|
|
44495
|
+
(isOutward
|
|
44496
|
+
? React__default.createElement(
|
|
44497
|
+
'span',
|
|
44498
|
+
{ className: 'price' },
|
|
44499
|
+
translations.QSM.ROUNDTRIP + ' ' + translations.SRP.PRICE,
|
|
44500
|
+
'\u00A0',
|
|
44501
|
+
formatPrice$2(
|
|
44502
|
+
price,
|
|
44503
|
+
'EUR',
|
|
44504
|
+
(_c = context === null || context === void 0 ? void 0 : context.languageCode) !== null && _c !== void 0 ? _c : 'en-GB'
|
|
44505
|
+
)
|
|
44506
|
+
)
|
|
44507
|
+
: priceDifference != null &&
|
|
44508
|
+
Math.abs(priceDifference) > 0 &&
|
|
44509
|
+
React__default.createElement(
|
|
44510
|
+
'span',
|
|
44511
|
+
{ className: 'price' },
|
|
44512
|
+
priceDifference > 0 ? '+' : '-',
|
|
44513
|
+
'\u00A0',
|
|
44514
|
+
formatPrice$2(
|
|
44515
|
+
Math.abs(priceDifference),
|
|
44516
|
+
'EUR',
|
|
44517
|
+
(_d = context === null || context === void 0 ? void 0 : context.languageCode) !== null && _d !== void 0 ? _d : 'en-GB'
|
|
44518
|
+
)
|
|
44519
|
+
)),
|
|
44454
44520
|
React__default.createElement(
|
|
44455
44521
|
'button',
|
|
44456
44522
|
{
|
|
@@ -44479,13 +44545,13 @@ var IndependentFlightOption = function (_a) {
|
|
|
44479
44545
|
{ className: 'flight__logo__wrapper' },
|
|
44480
44546
|
React__default.createElement('img', {
|
|
44481
44547
|
src: 'https://media.tidesoftware.be/media/shared/Airlines/'.concat(
|
|
44482
|
-
(
|
|
44548
|
+
(_e = getDepartureSegment(item)) === null || _e === void 0 ? void 0 : _e.marketingAirlineCode,
|
|
44483
44549
|
'.png?height=256'
|
|
44484
44550
|
),
|
|
44485
44551
|
alt: '',
|
|
44486
44552
|
className: 'flight__logo'
|
|
44487
44553
|
}),
|
|
44488
|
-
React__default.createElement('span', null, (
|
|
44554
|
+
React__default.createElement('span', null, (_f = getDepartureSegment(item)) === null || _f === void 0 ? void 0 : _f.marketingAirlineName)
|
|
44489
44555
|
),
|
|
44490
44556
|
React__default.createElement(
|
|
44491
44557
|
'div',
|
|
@@ -44496,14 +44562,14 @@ var IndependentFlightOption = function (_a) {
|
|
|
44496
44562
|
React__default.createElement(
|
|
44497
44563
|
'strong',
|
|
44498
44564
|
null,
|
|
44499
|
-
timeFromDateTime((
|
|
44565
|
+
timeFromDateTime((_g = getDepartureSegment(item)) === null || _g === void 0 ? void 0 : _g.departureDateTime),
|
|
44500
44566
|
' ',
|
|
44501
|
-
(
|
|
44567
|
+
(_h = getDepartureSegment(item)) === null || _h === void 0 ? void 0 : _h.departureAirportCode
|
|
44502
44568
|
),
|
|
44503
44569
|
React__default.createElement(
|
|
44504
44570
|
'p',
|
|
44505
44571
|
null,
|
|
44506
|
-
longFormatDate((
|
|
44572
|
+
longFormatDate((_j = getDepartureSegment(item)) === null || _j === void 0 ? void 0 : _j.departureDateTime, language)
|
|
44507
44573
|
)
|
|
44508
44574
|
),
|
|
44509
44575
|
React__default.createElement(
|
|
@@ -44527,14 +44593,14 @@ var IndependentFlightOption = function (_a) {
|
|
|
44527
44593
|
React__default.createElement(
|
|
44528
44594
|
'strong',
|
|
44529
44595
|
null,
|
|
44530
|
-
timeFromDateTime((
|
|
44596
|
+
timeFromDateTime((_k = getArrivalSegment(item)) === null || _k === void 0 ? void 0 : _k.arrivalDateTime),
|
|
44531
44597
|
' ',
|
|
44532
|
-
(
|
|
44598
|
+
(_l = getArrivalSegment(item)) === null || _l === void 0 ? void 0 : _l.arrivalAirportCode
|
|
44533
44599
|
),
|
|
44534
44600
|
React__default.createElement(
|
|
44535
44601
|
'p',
|
|
44536
44602
|
null,
|
|
44537
|
-
longFormatDate((
|
|
44603
|
+
longFormatDate((_m = getArrivalSegment(item)) === null || _m === void 0 ? void 0 : _m.arrivalDateTime, language)
|
|
44538
44604
|
)
|
|
44539
44605
|
)
|
|
44540
44606
|
)
|
|
@@ -44559,9 +44625,9 @@ var IndependentFlightOption = function (_a) {
|
|
|
44559
44625
|
React__default.createElement(
|
|
44560
44626
|
'div',
|
|
44561
44627
|
{ className: 'flight__detail '.concat(detailsOpen ? 'flight__detail--active' : '') },
|
|
44562
|
-
(
|
|
44628
|
+
(_o = getFlightSegments(item)) === null || _o === void 0
|
|
44563
44629
|
? void 0
|
|
44564
|
-
:
|
|
44630
|
+
: _o.map(function (segment, index) {
|
|
44565
44631
|
return React__default.createElement(
|
|
44566
44632
|
React__default.Fragment,
|
|
44567
44633
|
{ key: 'outward-segment-'.concat(index, '-').concat(segment.flightNumber) },
|
|
@@ -46980,6 +47046,7 @@ var SearchResultsContainer = function () {
|
|
|
46980
47046
|
filteredPackagingAccoResults = _c.filteredPackagingAccoResults;
|
|
46981
47047
|
_c.bookingPackageDetails;
|
|
46982
47048
|
var isLoading = _c.isLoading,
|
|
47049
|
+
flightsLoading = _c.flightsLoading,
|
|
46983
47050
|
filters = _c.filters,
|
|
46984
47051
|
selectedSortType = _c.selectedSortType,
|
|
46985
47052
|
selectedSearchResult = _c.selectedSearchResult,
|
|
@@ -47017,6 +47084,9 @@ var SearchResultsContainer = function () {
|
|
|
47017
47084
|
selectedAccommodationSeed = _l[0],
|
|
47018
47085
|
setSelectedAccommodationSeed = _l[1];
|
|
47019
47086
|
var skipInitialPackagingAccoDetailsRef = useRef(false);
|
|
47087
|
+
var _m = useState(false),
|
|
47088
|
+
showAllOutwardFlights = _m[0],
|
|
47089
|
+
setShowAllOutwardFlights = _m[1];
|
|
47020
47090
|
var panelRef = useRef(null);
|
|
47021
47091
|
var sortByTypes = [
|
|
47022
47092
|
{ direction: 'asc', label: 'default' },
|
|
@@ -47524,6 +47594,7 @@ var SearchResultsContainer = function () {
|
|
|
47524
47594
|
case 0:
|
|
47525
47595
|
_a.trys.push([0, 2, , 3]);
|
|
47526
47596
|
if (!context) return [2 /*return*/, null];
|
|
47597
|
+
dispatch(setIsLoading(true));
|
|
47527
47598
|
config = {
|
|
47528
47599
|
host: context.tideConnection.host,
|
|
47529
47600
|
apiKey: context.tideConnection.apiKey
|
|
@@ -47531,12 +47602,13 @@ var SearchResultsContainer = function () {
|
|
|
47531
47602
|
return [4 /*yield*/, build.startTransaction(config)];
|
|
47532
47603
|
case 1:
|
|
47533
47604
|
transaction = _a.sent();
|
|
47534
|
-
console.log('Transaction started', transaction);
|
|
47535
47605
|
dispatch(setTransactionId(transaction.transactionId));
|
|
47606
|
+
dispatch(setIsLoading(false));
|
|
47536
47607
|
return [2 /*return*/, transaction.transactionId];
|
|
47537
47608
|
case 2:
|
|
47538
47609
|
err_2 = _a.sent();
|
|
47539
47610
|
console.error('Transaction failed', err_2);
|
|
47611
|
+
dispatch(setIsLoading(false));
|
|
47540
47612
|
return [2 /*return*/, null];
|
|
47541
47613
|
case 3:
|
|
47542
47614
|
return [2 /*return*/];
|
|
@@ -47614,7 +47686,7 @@ var SearchResultsContainer = function () {
|
|
|
47614
47686
|
};
|
|
47615
47687
|
var runFlightSearch = function (currentTransactionId, seed) {
|
|
47616
47688
|
return __awaiter(void 0, void 0, void 0, function () {
|
|
47617
|
-
var config, searchRequest, packageFlightSearchResults, err_4;
|
|
47689
|
+
var config, searchRequest, packageFlightSearchResults, firstResult, err_4;
|
|
47618
47690
|
return __generator(this, function (_a) {
|
|
47619
47691
|
switch (_a.label) {
|
|
47620
47692
|
case 0:
|
|
@@ -47631,6 +47703,11 @@ var SearchResultsContainer = function () {
|
|
|
47631
47703
|
case 1:
|
|
47632
47704
|
packageFlightSearchResults = _a.sent();
|
|
47633
47705
|
dispatch(setPackagingFlightResults(packageFlightSearchResults));
|
|
47706
|
+
firstResult = first(packageFlightSearchResults);
|
|
47707
|
+
if (firstResult) {
|
|
47708
|
+
setSelectedOutwardKey(getFlightKey(firstResult.outward.segments));
|
|
47709
|
+
setSelectedReturnKey(getFlightKey(firstResult.return.segments));
|
|
47710
|
+
}
|
|
47634
47711
|
dispatch(setFlightsLoading(false));
|
|
47635
47712
|
return [3 /*break*/, 3];
|
|
47636
47713
|
case 2:
|
|
@@ -47738,9 +47815,7 @@ var SearchResultsContainer = function () {
|
|
|
47738
47815
|
);
|
|
47739
47816
|
useEffect(
|
|
47740
47817
|
function () {
|
|
47741
|
-
console.log('packaging entry from context', context === null || context === void 0 ? void 0 : context.packagingEntry);
|
|
47742
47818
|
if (context === null || context === void 0 ? void 0 : context.packagingEntry) {
|
|
47743
|
-
console.log('original packaging entry from context', context.packagingEntry);
|
|
47744
47819
|
dispatch(setEditablePackagingEntry(structuredClone(context.packagingEntry)));
|
|
47745
47820
|
dispatch(setTransactionId(context.packagingEntry.transactionId));
|
|
47746
47821
|
}
|
|
@@ -47975,27 +48050,35 @@ var SearchResultsContainer = function () {
|
|
|
47975
48050
|
function () {
|
|
47976
48051
|
var fetchPriceDetails = function () {
|
|
47977
48052
|
return __awaiter(void 0, void 0, void 0, function () {
|
|
47978
|
-
var config, priceDetails, err_7;
|
|
47979
|
-
|
|
47980
|
-
|
|
48053
|
+
var config, request, priceDetails, err_7;
|
|
48054
|
+
var _a, _b;
|
|
48055
|
+
return __generator(this, function (_c) {
|
|
48056
|
+
switch (_c.label) {
|
|
47981
48057
|
case 0:
|
|
47982
48058
|
if (!context || !editablePackagingEntry || isEmpty(editablePackagingEntry.lines)) return [2 /*return*/];
|
|
47983
48059
|
setPricesAreLoading(true);
|
|
47984
|
-
|
|
48060
|
+
_c.label = 1;
|
|
47985
48061
|
case 1:
|
|
47986
|
-
|
|
48062
|
+
_c.trys.push([1, 3, , 4]);
|
|
47987
48063
|
config = {
|
|
47988
48064
|
host: context.tideConnection.host,
|
|
47989
48065
|
apiKey: context.tideConnection.apiKey
|
|
47990
48066
|
};
|
|
47991
|
-
|
|
48067
|
+
request = {
|
|
48068
|
+
language: (_a = context.languageCode) !== null && _a !== void 0 ? _a : 'en-GB',
|
|
48069
|
+
officeId: context.tideConnection.officeId,
|
|
48070
|
+
catalogueId: (_b = context.searchConfiguration.defaultCatalogueId) !== null && _b !== void 0 ? _b : 0,
|
|
48071
|
+
agentId: context.agentId,
|
|
48072
|
+
payload: editablePackagingEntry
|
|
48073
|
+
};
|
|
48074
|
+
return [4 /*yield*/, build.getPriceDetails(config, request)];
|
|
47992
48075
|
case 2:
|
|
47993
|
-
priceDetails =
|
|
48076
|
+
priceDetails = _c.sent();
|
|
47994
48077
|
dispatch(setPriceDetails(priceDetails));
|
|
47995
48078
|
setPricesAreLoading(false);
|
|
47996
48079
|
return [3 /*break*/, 4];
|
|
47997
48080
|
case 3:
|
|
47998
|
-
err_7 =
|
|
48081
|
+
err_7 = _c.sent();
|
|
47999
48082
|
console.error('Error fetching price details', err_7);
|
|
48000
48083
|
setPricesAreLoading(false);
|
|
48001
48084
|
return [3 /*break*/, 4];
|
|
@@ -48007,29 +48090,36 @@ var SearchResultsContainer = function () {
|
|
|
48007
48090
|
};
|
|
48008
48091
|
var fetchItinerary = function () {
|
|
48009
48092
|
return __awaiter(void 0, void 0, void 0, function () {
|
|
48010
|
-
var config, itinerary_1, err_8;
|
|
48011
|
-
|
|
48012
|
-
|
|
48093
|
+
var config, request, itinerary_1, err_8;
|
|
48094
|
+
var _a, _b;
|
|
48095
|
+
return __generator(this, function (_c) {
|
|
48096
|
+
switch (_c.label) {
|
|
48013
48097
|
case 0:
|
|
48014
|
-
|
|
48015
|
-
if (!context || !editablePackagingEntry || isEmpty(editablePackagingEntry.lines)) return [2 /*return*/];
|
|
48098
|
+
if (!context || !context.packagingEntry || !editablePackagingEntry || isEmpty(editablePackagingEntry.lines)) return [2 /*return*/];
|
|
48016
48099
|
setItineraryIsLoading(true);
|
|
48017
|
-
|
|
48100
|
+
_c.label = 1;
|
|
48018
48101
|
case 1:
|
|
48019
|
-
|
|
48102
|
+
_c.trys.push([1, 3, , 4]);
|
|
48020
48103
|
config = {
|
|
48021
48104
|
host: context.tideConnection.host,
|
|
48022
48105
|
apiKey: context.tideConnection.apiKey
|
|
48023
48106
|
};
|
|
48024
|
-
|
|
48107
|
+
request = {
|
|
48108
|
+
language: (_a = context.languageCode) !== null && _a !== void 0 ? _a : 'en-GB',
|
|
48109
|
+
officeId: context.tideConnection.officeId,
|
|
48110
|
+
catalogueId: (_b = context.searchConfiguration.defaultCatalogueId) !== null && _b !== void 0 ? _b : 0,
|
|
48111
|
+
agentId: context.agentId,
|
|
48112
|
+
payload: editablePackagingEntry
|
|
48113
|
+
};
|
|
48114
|
+
return [4 /*yield*/, build.getItinerary(config, request)];
|
|
48025
48115
|
case 2:
|
|
48026
|
-
itinerary_1 =
|
|
48116
|
+
itinerary_1 = _c.sent();
|
|
48027
48117
|
console.log('Fetched itinerary', itinerary_1);
|
|
48028
48118
|
dispatch(setItinerary(itinerary_1));
|
|
48029
48119
|
setItineraryIsLoading(false);
|
|
48030
48120
|
return [3 /*break*/, 4];
|
|
48031
48121
|
case 3:
|
|
48032
|
-
err_8 =
|
|
48122
|
+
err_8 = _c.sent();
|
|
48033
48123
|
console.error('Error fetching itinerary', err_8);
|
|
48034
48124
|
setItineraryIsLoading(false);
|
|
48035
48125
|
return [3 /*break*/, 4];
|
|
@@ -48045,12 +48135,12 @@ var SearchResultsContainer = function () {
|
|
|
48045
48135
|
[editablePackagingEntry]
|
|
48046
48136
|
);
|
|
48047
48137
|
// Flight selection
|
|
48048
|
-
var _m = useState(null),
|
|
48049
|
-
selectedOutwardKey = _m[0],
|
|
48050
|
-
setSelectedOutwardKey = _m[1];
|
|
48051
48138
|
var _o = useState(null),
|
|
48052
|
-
|
|
48053
|
-
|
|
48139
|
+
selectedOutwardKey = _o[0],
|
|
48140
|
+
setSelectedOutwardKey = _o[1];
|
|
48141
|
+
var _p = useState(null),
|
|
48142
|
+
selectedReturnKey = _p[0],
|
|
48143
|
+
setSelectedReturnKey = _p[1];
|
|
48054
48144
|
var uniqueOutwardFlights = React__default.useMemo(
|
|
48055
48145
|
function () {
|
|
48056
48146
|
var map = new Map();
|
|
@@ -48064,11 +48154,12 @@ var SearchResultsContainer = function () {
|
|
|
48064
48154
|
},
|
|
48065
48155
|
[packagingFlightResults]
|
|
48066
48156
|
);
|
|
48067
|
-
var
|
|
48068
|
-
uniqueReturnFlights =
|
|
48069
|
-
setUniqueReturnFlights =
|
|
48157
|
+
var _q = useState([]),
|
|
48158
|
+
uniqueReturnFlights = _q[0],
|
|
48159
|
+
setUniqueReturnFlights = _q[1];
|
|
48070
48160
|
useEffect(
|
|
48071
48161
|
function () {
|
|
48162
|
+
var _a;
|
|
48072
48163
|
if (!selectedOutwardKey) {
|
|
48073
48164
|
setUniqueReturnFlights([]);
|
|
48074
48165
|
setSelectedReturnKey(null);
|
|
@@ -48087,6 +48178,10 @@ var SearchResultsContainer = function () {
|
|
|
48087
48178
|
});
|
|
48088
48179
|
var returns = Array.from(returnMap.values());
|
|
48089
48180
|
setUniqueReturnFlights(returns);
|
|
48181
|
+
var firstReturnKey = returns.length > 0 ? getFlightKey((_a = first(returns)) === null || _a === void 0 ? void 0 : _a.return.segments) : null;
|
|
48182
|
+
if (firstReturnKey) {
|
|
48183
|
+
setSelectedReturnKey(firstReturnKey);
|
|
48184
|
+
}
|
|
48090
48185
|
},
|
|
48091
48186
|
[selectedOutwardKey, packagingFlightResults]
|
|
48092
48187
|
);
|
|
@@ -48155,7 +48250,6 @@ var SearchResultsContainer = function () {
|
|
|
48155
48250
|
: '',
|
|
48156
48251
|
language: (_d = context.languageCode) !== null && _d !== void 0 ? _d : 'en-GB'
|
|
48157
48252
|
});
|
|
48158
|
-
console.log('Built next packaging entry', nextEntry);
|
|
48159
48253
|
if (!nextEntry) return;
|
|
48160
48254
|
dispatch(setEditablePackagingEntry(nextEntry));
|
|
48161
48255
|
if (selectedCombinationFlight) {
|
|
@@ -48371,7 +48465,6 @@ var SearchResultsContainer = function () {
|
|
|
48371
48465
|
return r.code === selectedHotelCode;
|
|
48372
48466
|
})
|
|
48373
48467
|
: null;
|
|
48374
|
-
console.log('Selected hotel for packaging entry', selectedHotel);
|
|
48375
48468
|
// Update accommodation only when enough data exists
|
|
48376
48469
|
if (selectedHotel) {
|
|
48377
48470
|
var accommodationLines = buildAccommodationLinesFromSelection(selectedHotel, seed);
|
|
@@ -48383,8 +48476,6 @@ var SearchResultsContainer = function () {
|
|
|
48383
48476
|
// Update flights only when full selected combination exists
|
|
48384
48477
|
if (selectedFlight) {
|
|
48385
48478
|
var flightLines = buildFlightLinesFromSelection(selectedFlight);
|
|
48386
|
-
console.log('selectedFlight', selectedFlight);
|
|
48387
|
-
console.log('Built flight lines from selection', flightLines);
|
|
48388
48479
|
if (flightLines.length) {
|
|
48389
48480
|
nextLines = removeFlightLines(nextLines);
|
|
48390
48481
|
nextLines = __spreadArray(__spreadArray([], nextLines, true), flightLines, true);
|
|
@@ -48430,6 +48521,12 @@ var SearchResultsContainer = function () {
|
|
|
48430
48521
|
lines: []
|
|
48431
48522
|
};
|
|
48432
48523
|
};
|
|
48524
|
+
var visibleOutwardFlights = React__default.useMemo(
|
|
48525
|
+
function () {
|
|
48526
|
+
return showAllOutwardFlights ? uniqueOutwardFlights : uniqueOutwardFlights.slice(0, 3);
|
|
48527
|
+
},
|
|
48528
|
+
[showAllOutwardFlights, uniqueOutwardFlights]
|
|
48529
|
+
);
|
|
48433
48530
|
return React__default.createElement(
|
|
48434
48531
|
'div',
|
|
48435
48532
|
{ id: 'tide-booking', className: 'search__bg' },
|
|
@@ -48625,32 +48722,59 @@ var SearchResultsContainer = function () {
|
|
|
48625
48722
|
)
|
|
48626
48723
|
)
|
|
48627
48724
|
),
|
|
48628
|
-
|
|
48629
|
-
|
|
48630
|
-
|
|
48631
|
-
|
|
48632
|
-
|
|
48633
|
-
|
|
48634
|
-
|
|
48635
|
-
|
|
48636
|
-
|
|
48637
|
-
|
|
48638
|
-
|
|
48639
|
-
|
|
48640
|
-
|
|
48641
|
-
|
|
48642
|
-
|
|
48643
|
-
|
|
48644
|
-
|
|
48645
|
-
|
|
48646
|
-
|
|
48647
|
-
|
|
48648
|
-
|
|
48649
|
-
|
|
48650
|
-
|
|
48651
|
-
|
|
48652
|
-
|
|
48653
|
-
|
|
48725
|
+
flightsLoading
|
|
48726
|
+
? React__default.createElement(Spinner, null)
|
|
48727
|
+
: React__default.createElement(
|
|
48728
|
+
React__default.Fragment,
|
|
48729
|
+
null,
|
|
48730
|
+
React__default.createElement(
|
|
48731
|
+
'div',
|
|
48732
|
+
{ className: 'search__results__cards search__results__cards--extended' },
|
|
48733
|
+
selectedOutwardKey &&
|
|
48734
|
+
selectedOutward &&
|
|
48735
|
+
React__default.createElement(IndependentFlightOption, {
|
|
48736
|
+
key: 'flight-'.concat(selectedOutwardKey),
|
|
48737
|
+
item: selectedOutward.outward,
|
|
48738
|
+
guid: selectedOutward.outwardGuid,
|
|
48739
|
+
onSelect: function () {
|
|
48740
|
+
return setSelectedOutwardKey(null);
|
|
48741
|
+
},
|
|
48742
|
+
selectedGuid: selectedOutward.outwardGuid,
|
|
48743
|
+
isOutward: true,
|
|
48744
|
+
showSelectedState: true,
|
|
48745
|
+
price: selectedOutward.price
|
|
48746
|
+
}),
|
|
48747
|
+
visibleOutwardFlights.map(function (result) {
|
|
48748
|
+
return React__default.createElement(IndependentFlightOption, {
|
|
48749
|
+
key: 'flight-'.concat(result.outwardGuid),
|
|
48750
|
+
item: result.outward,
|
|
48751
|
+
onSelect: function () {
|
|
48752
|
+
return setSelectedOutwardKey(getFlightKey(result.outward.segments));
|
|
48753
|
+
},
|
|
48754
|
+
guid: result.outwardGuid,
|
|
48755
|
+
isOutward: true,
|
|
48756
|
+
price: result.price,
|
|
48757
|
+
currentSelectedPrice: selectedOutward === null || selectedOutward === void 0 ? void 0 : selectedOutward.price
|
|
48758
|
+
});
|
|
48759
|
+
})
|
|
48760
|
+
),
|
|
48761
|
+
uniqueOutwardFlights &&
|
|
48762
|
+
uniqueOutwardFlights.length > 3 &&
|
|
48763
|
+
React__default.createElement(
|
|
48764
|
+
'div',
|
|
48765
|
+
{ className: 'search__results__cards__actions' },
|
|
48766
|
+
React__default.createElement(
|
|
48767
|
+
'button',
|
|
48768
|
+
{
|
|
48769
|
+
className: 'cta cta--secondary',
|
|
48770
|
+
onClick: function () {
|
|
48771
|
+
return setShowAllOutwardFlights(!showAllOutwardFlights);
|
|
48772
|
+
}
|
|
48773
|
+
},
|
|
48774
|
+
showAllOutwardFlights ? translations.SRP.SHOW_LESS : translations.SRP.SHOW_MORE
|
|
48775
|
+
)
|
|
48776
|
+
)
|
|
48777
|
+
)
|
|
48654
48778
|
),
|
|
48655
48779
|
context.showHotelAccommodationResults &&
|
|
48656
48780
|
!context.packagingEntry &&
|
|
@@ -48686,25 +48810,30 @@ var SearchResultsContainer = function () {
|
|
|
48686
48810
|
React__default.createElement(
|
|
48687
48811
|
'div',
|
|
48688
48812
|
{ className: 'search__results__cards search__results__cards--extended' },
|
|
48689
|
-
selectedReturnKey &&
|
|
48690
|
-
|
|
48691
|
-
|
|
48692
|
-
|
|
48693
|
-
|
|
48694
|
-
|
|
48695
|
-
|
|
48696
|
-
|
|
48697
|
-
|
|
48698
|
-
|
|
48699
|
-
|
|
48700
|
-
|
|
48701
|
-
|
|
48702
|
-
|
|
48703
|
-
|
|
48704
|
-
|
|
48705
|
-
|
|
48706
|
-
|
|
48707
|
-
|
|
48813
|
+
selectedReturnKey &&
|
|
48814
|
+
selectedReturn &&
|
|
48815
|
+
React__default.createElement(IndependentFlightOption, {
|
|
48816
|
+
key: 'flight-'.concat(selectedReturnKey),
|
|
48817
|
+
item: selectedReturn.return,
|
|
48818
|
+
guid: selectedReturn.outwardGuid,
|
|
48819
|
+
selectedGuid: selectedReturn.outwardGuid,
|
|
48820
|
+
isOutward: false,
|
|
48821
|
+
showSelectedState: true,
|
|
48822
|
+
price: selectedReturn.price
|
|
48823
|
+
}),
|
|
48824
|
+
uniqueReturnFlights.map(function (result) {
|
|
48825
|
+
return React__default.createElement(IndependentFlightOption, {
|
|
48826
|
+
key: 'flight-'.concat(result.outwardGuid),
|
|
48827
|
+
item: result.return,
|
|
48828
|
+
onSelect: function () {
|
|
48829
|
+
return setSelectedReturnKey(getFlightKey(result.return.segments));
|
|
48830
|
+
},
|
|
48831
|
+
guid: result.outwardGuid,
|
|
48832
|
+
isOutward: false,
|
|
48833
|
+
currentSelectedPrice: selectedReturn === null || selectedReturn === void 0 ? void 0 : selectedReturn.price,
|
|
48834
|
+
price: result.price
|
|
48835
|
+
});
|
|
48836
|
+
})
|
|
48708
48837
|
)
|
|
48709
48838
|
),
|
|
48710
48839
|
context.searchConfiguration.qsmType === build.PortalQsmType.AccommodationAndFlight &&
|