@qite/tide-booking-component 1.4.53 → 1.4.55
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 +612 -116
- package/build/build-esm/index.js +612 -116
- package/package.json +2 -2
- package/src/content/navbar/index.tsx +3 -2
- package/src/qsm/components/QSMContainer/qsm-container.tsx +32 -34
- package/src/search-results/components/hotel/hotel-accommodation-results.tsx +3 -1
- package/src/search-results/components/search-results-container/search-results-container.tsx +50 -45
- package/src/search-results/features/flights/flight-search-results-self-contained.tsx +1 -1
- package/src/shared/translations/ar-SA.json +3 -0
- package/src/shared/translations/da-DK.json +3 -0
- package/src/shared/translations/de-DE.json +3 -0
- package/src/shared/translations/en-GB.json +3 -0
- package/src/shared/translations/es-ES.json +3 -0
- package/src/shared/translations/fr-BE.json +3 -0
- package/src/shared/translations/fr-FR.json +3 -0
- package/src/shared/translations/is-IS.json +3 -0
- package/src/shared/translations/it-IT.json +3 -0
- package/src/shared/translations/ja-JP.json +3 -0
- package/src/shared/translations/nl-BE.json +3 -0
- package/src/shared/translations/nl-NL.json +3 -0
- package/src/shared/translations/no-NO.json +3 -0
- package/src/shared/translations/pl-PL.json +3 -0
- package/src/shared/translations/pt-PT.json +3 -0
- package/src/shared/translations/sv-SE.json +3 -0
package/build/build-cjs/index.js
CHANGED
|
@@ -497,6 +497,9 @@ var PRINT_OFFER_BUTTON$f = {
|
|
|
497
497
|
LABEL_CREATING: 'جارٍ إنشاء العرض…',
|
|
498
498
|
LABEL_PRINTING: 'جارٍ إنشاء ملف PDF…'
|
|
499
499
|
};
|
|
500
|
+
var NAVBAR$f = {
|
|
501
|
+
SEARCH: 'بحث'
|
|
502
|
+
};
|
|
500
503
|
var QSM$g = {
|
|
501
504
|
MULTIDESTINATION: 'وجهات متعددة',
|
|
502
505
|
PACKAGES: 'باقات',
|
|
@@ -591,6 +594,7 @@ var arJson = {
|
|
|
591
594
|
CONFIRMATION: CONFIRMATION$f,
|
|
592
595
|
ERROR: ERROR$f,
|
|
593
596
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$f,
|
|
597
|
+
NAVBAR: NAVBAR$f,
|
|
594
598
|
QSM: QSM$g,
|
|
595
599
|
SRP: SRP$f
|
|
596
600
|
};
|
|
@@ -848,6 +852,9 @@ var PRINT_OFFER_BUTTON$e = {
|
|
|
848
852
|
LABEL_CREATING: 'Genererer tilbud…',
|
|
849
853
|
LABEL_PRINTING: 'Genererer PDF…'
|
|
850
854
|
};
|
|
855
|
+
var NAVBAR$e = {
|
|
856
|
+
SEARCH: 'Søg'
|
|
857
|
+
};
|
|
851
858
|
var QSM$f = {
|
|
852
859
|
MULTIDESTINATION: 'Flere destinationer',
|
|
853
860
|
PACKAGES: 'Pakkerejser',
|
|
@@ -942,6 +949,7 @@ var daJson = {
|
|
|
942
949
|
CONFIRMATION: CONFIRMATION$e,
|
|
943
950
|
ERROR: ERROR$e,
|
|
944
951
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$e,
|
|
952
|
+
NAVBAR: NAVBAR$e,
|
|
945
953
|
QSM: QSM$f,
|
|
946
954
|
SRP: SRP$e
|
|
947
955
|
};
|
|
@@ -1200,6 +1208,9 @@ var PRINT_OFFER_BUTTON$d = {
|
|
|
1200
1208
|
LABEL_CREATING: 'Angebot wird erstellt…',
|
|
1201
1209
|
LABEL_PRINTING: 'PDF wird erstellt…'
|
|
1202
1210
|
};
|
|
1211
|
+
var NAVBAR$d = {
|
|
1212
|
+
SEARCH: 'Suche'
|
|
1213
|
+
};
|
|
1203
1214
|
var QSM$e = {
|
|
1204
1215
|
MULTIDESTINATION: 'Mehrere Reiseziele',
|
|
1205
1216
|
PACKAGES: 'Reisepakete',
|
|
@@ -1294,6 +1305,7 @@ var deJson = {
|
|
|
1294
1305
|
CONFIRMATION: CONFIRMATION$d,
|
|
1295
1306
|
ERROR: ERROR$d,
|
|
1296
1307
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$d,
|
|
1308
|
+
NAVBAR: NAVBAR$d,
|
|
1297
1309
|
QSM: QSM$e,
|
|
1298
1310
|
SRP: SRP$d
|
|
1299
1311
|
};
|
|
@@ -1555,6 +1567,9 @@ var PRINT_OFFER_BUTTON$c = {
|
|
|
1555
1567
|
LABEL_CREATING: 'Generating offer…',
|
|
1556
1568
|
LABEL_PRINTING: 'Generating PDF…'
|
|
1557
1569
|
};
|
|
1570
|
+
var NAVBAR$c = {
|
|
1571
|
+
SEARCH: 'SEARCH'
|
|
1572
|
+
};
|
|
1558
1573
|
var QSM$d = {
|
|
1559
1574
|
MULTIDESTINATION: 'Multidestination',
|
|
1560
1575
|
PACKAGES: 'Packages',
|
|
@@ -1649,6 +1664,7 @@ var enJson = {
|
|
|
1649
1664
|
CONFIRMATION: CONFIRMATION$c,
|
|
1650
1665
|
ERROR: ERROR$c,
|
|
1651
1666
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$c,
|
|
1667
|
+
NAVBAR: NAVBAR$c,
|
|
1652
1668
|
QSM: QSM$d,
|
|
1653
1669
|
SRP: SRP$c
|
|
1654
1670
|
};
|
|
@@ -1907,6 +1923,9 @@ var PRINT_OFFER_BUTTON$b = {
|
|
|
1907
1923
|
LABEL_CREATING: 'Generando presupuesto…',
|
|
1908
1924
|
LABEL_PRINTING: 'Generando PDF…'
|
|
1909
1925
|
};
|
|
1926
|
+
var NAVBAR$b = {
|
|
1927
|
+
SEARCH: 'Buscar'
|
|
1928
|
+
};
|
|
1910
1929
|
var QSM$c = {
|
|
1911
1930
|
MULTIDESTINATION: 'Multidestino',
|
|
1912
1931
|
PACKAGES: 'Paquetes',
|
|
@@ -2001,6 +2020,7 @@ var esJson = {
|
|
|
2001
2020
|
CONFIRMATION: CONFIRMATION$b,
|
|
2002
2021
|
ERROR: ERROR$b,
|
|
2003
2022
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$b,
|
|
2023
|
+
NAVBAR: NAVBAR$b,
|
|
2004
2024
|
QSM: QSM$c,
|
|
2005
2025
|
SRP: SRP$b
|
|
2006
2026
|
};
|
|
@@ -2263,6 +2283,9 @@ var PRINT_OFFER_BUTTON$a = {
|
|
|
2263
2283
|
LABEL_CREATING: 'Génération du devis…',
|
|
2264
2284
|
LABEL_PRINTING: 'Génération du PDF…'
|
|
2265
2285
|
};
|
|
2286
|
+
var NAVBAR$a = {
|
|
2287
|
+
SEARCH: 'Rechercher'
|
|
2288
|
+
};
|
|
2266
2289
|
var QSM$b = {
|
|
2267
2290
|
MULTIDESTINATION: 'Multi-destinations',
|
|
2268
2291
|
PACKAGES: 'Forfaits',
|
|
@@ -2357,6 +2380,7 @@ var frBeJson = {
|
|
|
2357
2380
|
CONFIRMATION: CONFIRMATION$a,
|
|
2358
2381
|
ERROR: ERROR$a,
|
|
2359
2382
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$a,
|
|
2383
|
+
NAVBAR: NAVBAR$a,
|
|
2360
2384
|
QSM: QSM$b,
|
|
2361
2385
|
SRP: SRP$a
|
|
2362
2386
|
};
|
|
@@ -2614,6 +2638,9 @@ var PRINT_OFFER_BUTTON$9 = {
|
|
|
2614
2638
|
LABEL_CREATING: 'Génération du devis…',
|
|
2615
2639
|
LABEL_PRINTING: 'Génération du PDF…'
|
|
2616
2640
|
};
|
|
2641
|
+
var NAVBAR$9 = {
|
|
2642
|
+
SEARCH: 'Rechercher'
|
|
2643
|
+
};
|
|
2617
2644
|
var QSM$a = {
|
|
2618
2645
|
MULTIDESTINATION: 'Multi-destinations',
|
|
2619
2646
|
PACKAGES: 'Forfaits',
|
|
@@ -2708,6 +2735,7 @@ var frFrJson = {
|
|
|
2708
2735
|
CONFIRMATION: CONFIRMATION$9,
|
|
2709
2736
|
ERROR: ERROR$9,
|
|
2710
2737
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$9,
|
|
2738
|
+
NAVBAR: NAVBAR$9,
|
|
2711
2739
|
QSM: QSM$a,
|
|
2712
2740
|
SRP: SRP$9
|
|
2713
2741
|
};
|
|
@@ -2965,6 +2993,9 @@ var PRINT_OFFER_BUTTON$8 = {
|
|
|
2965
2993
|
LABEL_CREATING: 'Búið til tilboð…',
|
|
2966
2994
|
LABEL_PRINTING: 'Búið til PDF…'
|
|
2967
2995
|
};
|
|
2996
|
+
var NAVBAR$8 = {
|
|
2997
|
+
SEARCH: 'Leita'
|
|
2998
|
+
};
|
|
2968
2999
|
var QSM$9 = {
|
|
2969
3000
|
MULTIDESTINATION: 'Margir áfangastaðir',
|
|
2970
3001
|
PACKAGES: 'Pakkar',
|
|
@@ -3059,6 +3090,7 @@ var isJson = {
|
|
|
3059
3090
|
CONFIRMATION: CONFIRMATION$8,
|
|
3060
3091
|
ERROR: ERROR$8,
|
|
3061
3092
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$8,
|
|
3093
|
+
NAVBAR: NAVBAR$8,
|
|
3062
3094
|
QSM: QSM$9,
|
|
3063
3095
|
SRP: SRP$8
|
|
3064
3096
|
};
|
|
@@ -3317,6 +3349,9 @@ var PRINT_OFFER_BUTTON$7 = {
|
|
|
3317
3349
|
LABEL_CREATING: 'Generazione del preventivo…',
|
|
3318
3350
|
LABEL_PRINTING: 'Generazione del PDF…'
|
|
3319
3351
|
};
|
|
3352
|
+
var NAVBAR$7 = {
|
|
3353
|
+
SEARCH: 'Cerca'
|
|
3354
|
+
};
|
|
3320
3355
|
var QSM$8 = {
|
|
3321
3356
|
MULTIDESTINATION: 'Multidestinazione',
|
|
3322
3357
|
PACKAGES: 'Pacchetti',
|
|
@@ -3411,6 +3446,7 @@ var itJson = {
|
|
|
3411
3446
|
CONFIRMATION: CONFIRMATION$7,
|
|
3412
3447
|
ERROR: ERROR$7,
|
|
3413
3448
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$7,
|
|
3449
|
+
NAVBAR: NAVBAR$7,
|
|
3414
3450
|
QSM: QSM$8,
|
|
3415
3451
|
SRP: SRP$7
|
|
3416
3452
|
};
|
|
@@ -3673,6 +3709,9 @@ var PRINT_OFFER_BUTTON$6 = {
|
|
|
3673
3709
|
LABEL_CREATING: 'Offerte genereren...',
|
|
3674
3710
|
LABEL_PRINTING: 'PDF genereren...'
|
|
3675
3711
|
};
|
|
3712
|
+
var NAVBAR$6 = {
|
|
3713
|
+
SEARCH: 'Zoeken'
|
|
3714
|
+
};
|
|
3676
3715
|
var QSM$7 = {
|
|
3677
3716
|
MULTIDESTINATION: 'Meerdere bestemmingen',
|
|
3678
3717
|
PACKAGES: 'Pakketten',
|
|
@@ -3767,6 +3806,7 @@ var nlBeJson = {
|
|
|
3767
3806
|
CONFIRMATION: CONFIRMATION$6,
|
|
3768
3807
|
ERROR: ERROR$6,
|
|
3769
3808
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$6,
|
|
3809
|
+
NAVBAR: NAVBAR$6,
|
|
3770
3810
|
QSM: QSM$7,
|
|
3771
3811
|
SRP: SRP$6
|
|
3772
3812
|
};
|
|
@@ -4025,6 +4065,9 @@ var PRINT_OFFER_BUTTON$5 = {
|
|
|
4025
4065
|
LABEL_CREATING: 'Offerte genereren…',
|
|
4026
4066
|
LABEL_PRINTING: 'PDF genereren…'
|
|
4027
4067
|
};
|
|
4068
|
+
var NAVBAR$5 = {
|
|
4069
|
+
SEARCH: 'Zoeken'
|
|
4070
|
+
};
|
|
4028
4071
|
var QSM$6 = {
|
|
4029
4072
|
MULTIDESTINATION: 'Meerdere bestemmingen',
|
|
4030
4073
|
PACKAGES: 'Pakketten',
|
|
@@ -4119,6 +4162,7 @@ var nlNlJson = {
|
|
|
4119
4162
|
CONFIRMATION: CONFIRMATION$5,
|
|
4120
4163
|
ERROR: ERROR$5,
|
|
4121
4164
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$5,
|
|
4165
|
+
NAVBAR: NAVBAR$5,
|
|
4122
4166
|
QSM: QSM$6,
|
|
4123
4167
|
SRP: SRP$5
|
|
4124
4168
|
};
|
|
@@ -4377,6 +4421,9 @@ var PRINT_OFFER_BUTTON$4 = {
|
|
|
4377
4421
|
LABEL_CREATING: 'Genererer tilbud…',
|
|
4378
4422
|
LABEL_PRINTING: 'Genererer PDF…'
|
|
4379
4423
|
};
|
|
4424
|
+
var NAVBAR$4 = {
|
|
4425
|
+
SEARCH: 'Søk'
|
|
4426
|
+
};
|
|
4380
4427
|
var QSM$5 = {
|
|
4381
4428
|
MULTIDESTINATION: 'Flere destinasjoner',
|
|
4382
4429
|
PACKAGES: 'Pakker',
|
|
@@ -4471,6 +4518,7 @@ var noJson = {
|
|
|
4471
4518
|
CONFIRMATION: CONFIRMATION$4,
|
|
4472
4519
|
ERROR: ERROR$4,
|
|
4473
4520
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$4,
|
|
4521
|
+
NAVBAR: NAVBAR$4,
|
|
4474
4522
|
QSM: QSM$5,
|
|
4475
4523
|
SRP: SRP$4
|
|
4476
4524
|
};
|
|
@@ -4729,6 +4777,9 @@ var PRINT_OFFER_BUTTON$3 = {
|
|
|
4729
4777
|
LABEL_CREATING: 'Generowanie oferty…',
|
|
4730
4778
|
LABEL_PRINTING: 'Generowanie PDF…'
|
|
4731
4779
|
};
|
|
4780
|
+
var NAVBAR$3 = {
|
|
4781
|
+
SEARCH: 'Szukaj'
|
|
4782
|
+
};
|
|
4732
4783
|
var QSM$4 = {
|
|
4733
4784
|
MULTIDESTINATION: 'Wiele kierunków',
|
|
4734
4785
|
PACKAGES: 'Pakiety',
|
|
@@ -4823,6 +4874,7 @@ var plJson = {
|
|
|
4823
4874
|
CONFIRMATION: CONFIRMATION$3,
|
|
4824
4875
|
ERROR: ERROR$3,
|
|
4825
4876
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$3,
|
|
4877
|
+
NAVBAR: NAVBAR$3,
|
|
4826
4878
|
QSM: QSM$4,
|
|
4827
4879
|
SRP: SRP$3
|
|
4828
4880
|
};
|
|
@@ -5081,6 +5133,9 @@ var PRINT_OFFER_BUTTON$2 = {
|
|
|
5081
5133
|
LABEL_CREATING: 'A gerar orçamento…',
|
|
5082
5134
|
LABEL_PRINTING: 'A gerar PDF…'
|
|
5083
5135
|
};
|
|
5136
|
+
var NAVBAR$2 = {
|
|
5137
|
+
SEARCH: 'Pesquisar'
|
|
5138
|
+
};
|
|
5084
5139
|
var QSM$3 = {
|
|
5085
5140
|
MULTIDESTINATION: 'Multidestino',
|
|
5086
5141
|
PACKAGES: 'Pacotes',
|
|
@@ -5175,6 +5230,7 @@ var ptJson = {
|
|
|
5175
5230
|
CONFIRMATION: CONFIRMATION$2,
|
|
5176
5231
|
ERROR: ERROR$2,
|
|
5177
5232
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$2,
|
|
5233
|
+
NAVBAR: NAVBAR$2,
|
|
5178
5234
|
QSM: QSM$3,
|
|
5179
5235
|
SRP: SRP$2
|
|
5180
5236
|
};
|
|
@@ -5433,6 +5489,9 @@ var PRINT_OFFER_BUTTON$1 = {
|
|
|
5433
5489
|
LABEL_CREATING: 'Skapar offert…',
|
|
5434
5490
|
LABEL_PRINTING: 'Skapar PDF…'
|
|
5435
5491
|
};
|
|
5492
|
+
var NAVBAR$1 = {
|
|
5493
|
+
SEARCH: 'Sök'
|
|
5494
|
+
};
|
|
5436
5495
|
var QSM$2 = {
|
|
5437
5496
|
MULTIDESTINATION: 'Flera destinationer',
|
|
5438
5497
|
PACKAGES: 'Paket',
|
|
@@ -5527,6 +5586,7 @@ var svJson = {
|
|
|
5527
5586
|
CONFIRMATION: CONFIRMATION$1,
|
|
5528
5587
|
ERROR: ERROR$1,
|
|
5529
5588
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON$1,
|
|
5589
|
+
NAVBAR: NAVBAR$1,
|
|
5530
5590
|
QSM: QSM$2,
|
|
5531
5591
|
SRP: SRP$1
|
|
5532
5592
|
};
|
|
@@ -5783,6 +5843,9 @@ var PRINT_OFFER_BUTTON = {
|
|
|
5783
5843
|
LABEL_CREATING: '見積もりを生成中…',
|
|
5784
5844
|
LABEL_PRINTING: 'PDFを生成中…'
|
|
5785
5845
|
};
|
|
5846
|
+
var NAVBAR = {
|
|
5847
|
+
SEARCH: '検索'
|
|
5848
|
+
};
|
|
5786
5849
|
var QSM$1 = {
|
|
5787
5850
|
MULTIDESTINATION: '複数都市',
|
|
5788
5851
|
PACKAGES: 'パッケージ',
|
|
@@ -5877,6 +5940,7 @@ var jaJson = {
|
|
|
5877
5940
|
CONFIRMATION: CONFIRMATION,
|
|
5878
5941
|
ERROR: ERROR,
|
|
5879
5942
|
PRINT_OFFER_BUTTON: PRINT_OFFER_BUTTON,
|
|
5943
|
+
NAVBAR: NAVBAR,
|
|
5880
5944
|
QSM: QSM$1,
|
|
5881
5945
|
SRP: SRP
|
|
5882
5946
|
};
|
|
@@ -28752,6 +28816,7 @@ var LanguageSwitcher = function (_a) {
|
|
|
28752
28816
|
};
|
|
28753
28817
|
|
|
28754
28818
|
var Navbar = function (_a) {
|
|
28819
|
+
var _b;
|
|
28755
28820
|
var currentPath = _a.currentPath,
|
|
28756
28821
|
logo = _a.logo,
|
|
28757
28822
|
topLinks = _a.topLinks,
|
|
@@ -28760,15 +28825,16 @@ var Navbar = function (_a) {
|
|
|
28760
28825
|
languages = _a.languages,
|
|
28761
28826
|
onLanguageChange = _a.onLanguageChange,
|
|
28762
28827
|
onSearch = _a.onSearch;
|
|
28763
|
-
var
|
|
28764
|
-
menuOpen =
|
|
28765
|
-
setMenuOpen =
|
|
28766
|
-
var
|
|
28767
|
-
query =
|
|
28768
|
-
setQuery =
|
|
28769
|
-
var
|
|
28770
|
-
activeMobileGroup =
|
|
28771
|
-
setActiveMobileGroup =
|
|
28828
|
+
var _c = React.useState(false),
|
|
28829
|
+
menuOpen = _c[0],
|
|
28830
|
+
setMenuOpen = _c[1];
|
|
28831
|
+
var _d = React.useState(''),
|
|
28832
|
+
query = _d[0],
|
|
28833
|
+
setQuery = _d[1];
|
|
28834
|
+
var _e = React.useState(),
|
|
28835
|
+
activeMobileGroup = _e[0],
|
|
28836
|
+
setActiveMobileGroup = _e[1];
|
|
28837
|
+
var translations = getTranslations((_b = language.code) !== null && _b !== void 0 ? _b : 'en-GB');
|
|
28772
28838
|
var normalizePath = function (path) {
|
|
28773
28839
|
return path.replace(/\/+$/, '');
|
|
28774
28840
|
};
|
|
@@ -29040,7 +29106,7 @@ var Navbar = function (_a) {
|
|
|
29040
29106
|
onChange: function (e) {
|
|
29041
29107
|
return setQuery(e.target.value);
|
|
29042
29108
|
},
|
|
29043
|
-
placeholder:
|
|
29109
|
+
placeholder: translations.NAVBAR.SEARCH,
|
|
29044
29110
|
autoComplete: 'off'
|
|
29045
29111
|
}),
|
|
29046
29112
|
React__default['default'].createElement(
|
|
@@ -32217,49 +32283,48 @@ var QSMContainer = function () {
|
|
|
32217
32283
|
React__default['default'].createElement(
|
|
32218
32284
|
'div',
|
|
32219
32285
|
{ className: 'qsm__filter' },
|
|
32220
|
-
qsmType === 'hotel' ||
|
|
32221
|
-
|
|
32286
|
+
(qsmType === 'hotel' || qsmType === 'hotel-flight') &&
|
|
32287
|
+
React__default['default'].createElement(
|
|
32288
|
+
'div',
|
|
32289
|
+
{ className: 'radiobutton-group qsm__filter__inputgroup' },
|
|
32222
32290
|
React__default['default'].createElement(
|
|
32223
32291
|
'div',
|
|
32224
|
-
{ className: 'radiobutton
|
|
32292
|
+
{ className: 'radiobutton' },
|
|
32225
32293
|
React__default['default'].createElement(
|
|
32226
|
-
'
|
|
32227
|
-
{ className: '
|
|
32228
|
-
React__default['default'].createElement(
|
|
32229
|
-
'
|
|
32230
|
-
|
|
32231
|
-
|
|
32232
|
-
|
|
32233
|
-
|
|
32234
|
-
|
|
32235
|
-
|
|
32236
|
-
|
|
32237
|
-
|
|
32238
|
-
|
|
32239
|
-
|
|
32240
|
-
|
|
32241
|
-
|
|
32242
|
-
|
|
32243
|
-
|
|
32294
|
+
'label',
|
|
32295
|
+
{ className: 'radiobutton__label' },
|
|
32296
|
+
React__default['default'].createElement('input', {
|
|
32297
|
+
type: 'radio',
|
|
32298
|
+
name: 'numberOfAccommodations',
|
|
32299
|
+
// onChange={handleMainBookerChange}
|
|
32300
|
+
// onBlur={formik.handleBlur}
|
|
32301
|
+
value: '',
|
|
32302
|
+
checked: true,
|
|
32303
|
+
readOnly: true,
|
|
32304
|
+
className: 'radiobutton__input'
|
|
32305
|
+
}),
|
|
32306
|
+
React__default['default'].createElement('span', null, translations.QSM.ONE_ACCOMMODATION)
|
|
32307
|
+
)
|
|
32308
|
+
),
|
|
32309
|
+
React__default['default'].createElement(
|
|
32310
|
+
'div',
|
|
32311
|
+
{ className: 'radiobutton' },
|
|
32244
32312
|
React__default['default'].createElement(
|
|
32245
|
-
'
|
|
32246
|
-
{ className: '
|
|
32247
|
-
React__default['default'].createElement(
|
|
32248
|
-
'
|
|
32249
|
-
|
|
32250
|
-
|
|
32251
|
-
|
|
32252
|
-
|
|
32253
|
-
|
|
32254
|
-
|
|
32255
|
-
|
|
32256
|
-
|
|
32257
|
-
disabled: true
|
|
32258
|
-
}),
|
|
32259
|
-
React__default['default'].createElement('span', null, translations.QSM.MULTIPLE_ACCOMMODATIONS)
|
|
32260
|
-
)
|
|
32313
|
+
'label',
|
|
32314
|
+
{ className: 'radiobutton__label' },
|
|
32315
|
+
React__default['default'].createElement('input', {
|
|
32316
|
+
type: 'radio',
|
|
32317
|
+
name: 'numberOfAccommodations',
|
|
32318
|
+
// onChange={handleMainBookerChange}
|
|
32319
|
+
// onBlur={formik.handleBlur}
|
|
32320
|
+
value: '',
|
|
32321
|
+
className: 'radiobutton__input',
|
|
32322
|
+
disabled: true
|
|
32323
|
+
}),
|
|
32324
|
+
React__default['default'].createElement('span', null, translations.QSM.MULTIPLE_ACCOMMODATIONS)
|
|
32261
32325
|
)
|
|
32262
|
-
)
|
|
32326
|
+
)
|
|
32327
|
+
),
|
|
32263
32328
|
qsmType === 'flight' &&
|
|
32264
32329
|
React__default['default'].createElement(
|
|
32265
32330
|
'div',
|
|
@@ -32500,9 +32565,9 @@ var setResults = ((_a = searchResultsSlice.actions), _a.setResults),
|
|
|
32500
32565
|
setBookingPackageDetails = _a.setBookingPackageDetails,
|
|
32501
32566
|
setEntry = _a.setEntry,
|
|
32502
32567
|
selectFlight = _a.selectFlight,
|
|
32503
|
-
setIsLoading = _a.setIsLoading
|
|
32504
|
-
_a.setFilters
|
|
32505
|
-
|
|
32568
|
+
setIsLoading = _a.setIsLoading,
|
|
32569
|
+
setFilters = _a.setFilters,
|
|
32570
|
+
resetFilters = _a.resetFilters,
|
|
32506
32571
|
setSortKey = _a.setSortKey,
|
|
32507
32572
|
setActiveTab = _a.setActiveTab;
|
|
32508
32573
|
_a.setCurrentPage;
|
|
@@ -37016,8 +37081,8 @@ var mapSearchResult = function (searchResult, cmsItem, languageCode, translation
|
|
|
37016
37081
|
? void 0
|
|
37017
37082
|
: _g.introductionTitle) || '',
|
|
37018
37083
|
location:
|
|
37019
|
-
searchResult.locationName
|
|
37020
|
-
? ''.concat(searchResult.locationName
|
|
37084
|
+
searchResult.locationName || searchResult.regionName
|
|
37085
|
+
? ''.concat(searchResult.locationName || searchResult.regionName).concat(searchResult.countryName && ', '.concat(searchResult.countryName))
|
|
37021
37086
|
: ((_h = cmsItem === null || cmsItem === void 0 ? void 0 : cmsItem.parentItem) === null || _h === void 0 ? void 0 : _h.name) || '',
|
|
37022
37087
|
price: formatPrice(searchResult.price, searchResult.currencyCode, languageCode),
|
|
37023
37088
|
ctaText: translations === null || translations === void 0 ? void 0 : translations.SRP.VIEW_DETAILS,
|
|
@@ -39848,6 +39913,433 @@ var FlightResultsContainer = function (_a) {
|
|
|
39848
39913
|
);
|
|
39849
39914
|
};
|
|
39850
39915
|
|
|
39916
|
+
var initialFilters = [
|
|
39917
|
+
{
|
|
39918
|
+
property: 'regime',
|
|
39919
|
+
label: 'Regime',
|
|
39920
|
+
type: 'checkbox',
|
|
39921
|
+
options: [
|
|
39922
|
+
{
|
|
39923
|
+
label: 'Room only',
|
|
39924
|
+
value: ['RO', 'LO', 'OB'],
|
|
39925
|
+
isChecked: false
|
|
39926
|
+
},
|
|
39927
|
+
{
|
|
39928
|
+
label: 'Bed & Beakfast',
|
|
39929
|
+
value: ['BB', 'KO'],
|
|
39930
|
+
isChecked: false
|
|
39931
|
+
},
|
|
39932
|
+
{
|
|
39933
|
+
label: 'Half board',
|
|
39934
|
+
value: ['HB'],
|
|
39935
|
+
isChecked: false
|
|
39936
|
+
},
|
|
39937
|
+
{
|
|
39938
|
+
label: 'Full board',
|
|
39939
|
+
value: ['FB'],
|
|
39940
|
+
isChecked: false
|
|
39941
|
+
}
|
|
39942
|
+
],
|
|
39943
|
+
isFrontendFilter: false
|
|
39944
|
+
},
|
|
39945
|
+
{
|
|
39946
|
+
property: 'price',
|
|
39947
|
+
label: 'Prijs',
|
|
39948
|
+
type: 'slider',
|
|
39949
|
+
isFrontendFilter: false,
|
|
39950
|
+
min: 2244,
|
|
39951
|
+
max: 6785
|
|
39952
|
+
},
|
|
39953
|
+
{
|
|
39954
|
+
property: 'rating',
|
|
39955
|
+
label: 'Rating',
|
|
39956
|
+
type: 'star-rating',
|
|
39957
|
+
isFrontendFilter: true
|
|
39958
|
+
},
|
|
39959
|
+
{
|
|
39960
|
+
property: 'theme',
|
|
39961
|
+
label: "Thema's",
|
|
39962
|
+
type: 'toggle',
|
|
39963
|
+
options: [
|
|
39964
|
+
{
|
|
39965
|
+
label: 'Adults',
|
|
39966
|
+
value: 1,
|
|
39967
|
+
isChecked: false
|
|
39968
|
+
},
|
|
39969
|
+
{
|
|
39970
|
+
label: 'Luxury',
|
|
39971
|
+
value: 2,
|
|
39972
|
+
isChecked: false
|
|
39973
|
+
},
|
|
39974
|
+
{
|
|
39975
|
+
label: 'Welness & Spa',
|
|
39976
|
+
value: 3,
|
|
39977
|
+
isChecked: false
|
|
39978
|
+
},
|
|
39979
|
+
{
|
|
39980
|
+
label: 'familie',
|
|
39981
|
+
value: 4,
|
|
39982
|
+
isChecked: false
|
|
39983
|
+
}
|
|
39984
|
+
],
|
|
39985
|
+
isFrontendFilter: false
|
|
39986
|
+
}
|
|
39987
|
+
];
|
|
39988
|
+
var Filters = function (_a) {
|
|
39989
|
+
var _b;
|
|
39990
|
+
var filters = _a.filters,
|
|
39991
|
+
isOpen = _a.isOpen,
|
|
39992
|
+
handleSetIsOpen = _a.handleSetIsOpen,
|
|
39993
|
+
handleApplyFilters = _a.handleApplyFilters,
|
|
39994
|
+
isLoading = _a.isLoading;
|
|
39995
|
+
var context = React.useContext(SearchResultsConfigurationContext);
|
|
39996
|
+
var translations = getTranslations((_b = context === null || context === void 0 ? void 0 : context.languageCode) !== null && _b !== void 0 ? _b : 'en-GB');
|
|
39997
|
+
var _c = React.useState({}),
|
|
39998
|
+
visibleFilters = _c[0],
|
|
39999
|
+
setVisibleFilters = _c[1];
|
|
40000
|
+
var _d = React.useState([]),
|
|
40001
|
+
pendingFilters = _d[0],
|
|
40002
|
+
setPendingFilters = _d[1];
|
|
40003
|
+
React.useEffect(
|
|
40004
|
+
function () {
|
|
40005
|
+
if (initialFilters.length > 0) {
|
|
40006
|
+
setPendingFilters(initialFilters);
|
|
40007
|
+
}
|
|
40008
|
+
},
|
|
40009
|
+
[initialFilters]
|
|
40010
|
+
);
|
|
40011
|
+
var dispatch = reactRedux.useDispatch();
|
|
40012
|
+
var toggleFilterVisibility = function (filterId) {
|
|
40013
|
+
setVisibleFilters(function (prev) {
|
|
40014
|
+
var _a;
|
|
40015
|
+
return __assign(__assign({}, prev), ((_a = {}), (_a[filterId] = !prev[filterId]), _a));
|
|
40016
|
+
});
|
|
40017
|
+
};
|
|
40018
|
+
var updatePendingFilter = function (updatedFilter) {
|
|
40019
|
+
setPendingFilters(function (prevFilters) {
|
|
40020
|
+
var index = prevFilters.findIndex(function (f) {
|
|
40021
|
+
return f.property === updatedFilter.property;
|
|
40022
|
+
});
|
|
40023
|
+
if (index !== -1) {
|
|
40024
|
+
var newFilters = __spreadArray([], prevFilters, true);
|
|
40025
|
+
newFilters[index] = updatedFilter;
|
|
40026
|
+
return newFilters;
|
|
40027
|
+
} else {
|
|
40028
|
+
return __spreadArray(__spreadArray([], prevFilters, true), [updatedFilter], false);
|
|
40029
|
+
}
|
|
40030
|
+
});
|
|
40031
|
+
};
|
|
40032
|
+
var handleCheckBoxFilter = function (filter, option) {
|
|
40033
|
+
setPendingFilters(function (prev) {
|
|
40034
|
+
var _a;
|
|
40035
|
+
var updated = prev.map(function (f) {
|
|
40036
|
+
var _a;
|
|
40037
|
+
if (f.property !== filter.property) {
|
|
40038
|
+
return f;
|
|
40039
|
+
}
|
|
40040
|
+
return __assign(__assign({}, f), {
|
|
40041
|
+
options:
|
|
40042
|
+
(_a = f.options) === null || _a === void 0
|
|
40043
|
+
? void 0
|
|
40044
|
+
: _a.map(function (opt) {
|
|
40045
|
+
return opt.value === option.value ? __assign(__assign({}, opt), { isChecked: !opt.isChecked }) : opt;
|
|
40046
|
+
})
|
|
40047
|
+
});
|
|
40048
|
+
});
|
|
40049
|
+
if (!(context === null || context === void 0 ? void 0 : context.useGlobalApplyFilterButton) && !filter.useApplyFilterButton) {
|
|
40050
|
+
dispatch(setFilters(updated));
|
|
40051
|
+
(_a = context === null || context === void 0 ? void 0 : context.onFilterChange) === null || _a === void 0 ? void 0 : _a.call(context, updated);
|
|
40052
|
+
}
|
|
40053
|
+
return updated;
|
|
40054
|
+
});
|
|
40055
|
+
};
|
|
40056
|
+
var handleSliderMinChange = function (filter, value) {
|
|
40057
|
+
var _a, _b;
|
|
40058
|
+
if (value < ((_b = (_a = filter.selectedMax) !== null && _a !== void 0 ? _a : filter.max) !== null && _b !== void 0 ? _b : 100)) {
|
|
40059
|
+
var updatedFilter = __assign(__assign({}, filter), { selectedMin: value });
|
|
40060
|
+
updatePendingFilter(updatedFilter);
|
|
40061
|
+
if (!(context === null || context === void 0 ? void 0 : context.useGlobalApplyFilterButton) && !filter.useApplyFilterButton) {
|
|
40062
|
+
applyFilters();
|
|
40063
|
+
}
|
|
40064
|
+
}
|
|
40065
|
+
};
|
|
40066
|
+
var handleSliderMaxChange = function (filter, value) {
|
|
40067
|
+
var _a, _b;
|
|
40068
|
+
if (value > ((_b = (_a = filter.selectedMin) !== null && _a !== void 0 ? _a : filter.min) !== null && _b !== void 0 ? _b : 0)) {
|
|
40069
|
+
var updatedFilter = __assign(__assign({}, filter), { selectedMax: value });
|
|
40070
|
+
updatePendingFilter(updatedFilter);
|
|
40071
|
+
if (!(context === null || context === void 0 ? void 0 : context.useGlobalApplyFilterButton) && !filter.useApplyFilterButton) {
|
|
40072
|
+
applyFilters();
|
|
40073
|
+
}
|
|
40074
|
+
}
|
|
40075
|
+
};
|
|
40076
|
+
var applyFilters = function () {
|
|
40077
|
+
var _a;
|
|
40078
|
+
dispatch(setFilters(pendingFilters));
|
|
40079
|
+
(_a = context === null || context === void 0 ? void 0 : context.onFilterChange) === null || _a === void 0 ? void 0 : _a.call(context, pendingFilters);
|
|
40080
|
+
handleApplyFilters();
|
|
40081
|
+
if (isOpen) {
|
|
40082
|
+
handleSetIsOpen();
|
|
40083
|
+
}
|
|
40084
|
+
};
|
|
40085
|
+
var handleFullReset = function () {
|
|
40086
|
+
if (!isLoading) {
|
|
40087
|
+
setPendingFilters(initialFilters);
|
|
40088
|
+
dispatch(resetFilters(initialFilters));
|
|
40089
|
+
}
|
|
40090
|
+
};
|
|
40091
|
+
var handleResetPendingChanges = function () {
|
|
40092
|
+
setPendingFilters(filters); // ← back to last applied
|
|
40093
|
+
};
|
|
40094
|
+
var hasPendingChanges = function () {
|
|
40095
|
+
return JSON.stringify(pendingFilters) !== JSON.stringify(filters);
|
|
40096
|
+
};
|
|
40097
|
+
if (!context || !context.showFilters) {
|
|
40098
|
+
return null;
|
|
40099
|
+
}
|
|
40100
|
+
return React__default['default'].createElement(
|
|
40101
|
+
React__default['default'].Fragment,
|
|
40102
|
+
null,
|
|
40103
|
+
React__default['default'].createElement(
|
|
40104
|
+
'div',
|
|
40105
|
+
{ className: 'search__filters--modal '.concat(isOpen ? 'is-open' : '') },
|
|
40106
|
+
React__default['default'].createElement('div', {
|
|
40107
|
+
className: 'search__filters--background',
|
|
40108
|
+
onClick: function () {
|
|
40109
|
+
return handleSetIsOpen();
|
|
40110
|
+
}
|
|
40111
|
+
}),
|
|
40112
|
+
React__default['default'].createElement(
|
|
40113
|
+
'button',
|
|
40114
|
+
{
|
|
40115
|
+
className: 'search__filters--close',
|
|
40116
|
+
onClick: function () {
|
|
40117
|
+
return handleSetIsOpen();
|
|
40118
|
+
}
|
|
40119
|
+
},
|
|
40120
|
+
React__default['default'].createElement(Icon$1, { name: 'ui-close', height: 24 })
|
|
40121
|
+
),
|
|
40122
|
+
React__default['default'].createElement(
|
|
40123
|
+
'div',
|
|
40124
|
+
{ className: 'search__filters' },
|
|
40125
|
+
React__default['default'].createElement(
|
|
40126
|
+
'div',
|
|
40127
|
+
{ className: 'search__filter-row search__filter__header' },
|
|
40128
|
+
React__default['default'].createElement(
|
|
40129
|
+
'div',
|
|
40130
|
+
{ className: 'search__filter-row-flex-title' },
|
|
40131
|
+
React__default['default'].createElement('p', { className: 'search__filter-small-title' }, translations.SRP.FILTERS)
|
|
40132
|
+
),
|
|
40133
|
+
!isLoading &&
|
|
40134
|
+
React__default['default'].createElement(
|
|
40135
|
+
'a',
|
|
40136
|
+
{
|
|
40137
|
+
className: 'search__filter-reset',
|
|
40138
|
+
onClick: function () {
|
|
40139
|
+
return handleFullReset();
|
|
40140
|
+
}
|
|
40141
|
+
},
|
|
40142
|
+
translations.SRP.RESET
|
|
40143
|
+
)
|
|
40144
|
+
),
|
|
40145
|
+
isLoading
|
|
40146
|
+
? React__default['default'].createElement(Spinner, null)
|
|
40147
|
+
: React__default['default'].createElement(
|
|
40148
|
+
React__default['default'].Fragment,
|
|
40149
|
+
null,
|
|
40150
|
+
React__default['default'].createElement(
|
|
40151
|
+
'div',
|
|
40152
|
+
{ className: 'search__filters__group-container' },
|
|
40153
|
+
pendingFilters.map(function (filter, index) {
|
|
40154
|
+
var _a, _b;
|
|
40155
|
+
var isVisible = (_a = visibleFilters[filter.property]) !== null && _a !== void 0 ? _a : true;
|
|
40156
|
+
return React__default['default'].createElement(
|
|
40157
|
+
'div',
|
|
40158
|
+
{ key: ''.concat(filter.property, '-').concat(index), className: 'search__filter-group' },
|
|
40159
|
+
React__default['default'].createElement(
|
|
40160
|
+
'div',
|
|
40161
|
+
{
|
|
40162
|
+
className: 'search__filter-row search__filter-row--underline',
|
|
40163
|
+
onClick: function () {
|
|
40164
|
+
return toggleFilterVisibility(filter.property);
|
|
40165
|
+
},
|
|
40166
|
+
role: 'button',
|
|
40167
|
+
tabIndex: 0
|
|
40168
|
+
},
|
|
40169
|
+
React__default['default'].createElement('h6', { className: 'search__filter-large-title' }, filter.label),
|
|
40170
|
+
React__default['default'].createElement(
|
|
40171
|
+
'svg',
|
|
40172
|
+
{
|
|
40173
|
+
id: 'search-chevron-up-icon',
|
|
40174
|
+
className: 'search__filter-chevron-icon '.concat(isVisible ? 'search__filter-chevron-icon--flipped' : '', ' '),
|
|
40175
|
+
viewBox: '0 0 10 6.063',
|
|
40176
|
+
width: 10,
|
|
40177
|
+
height: 6.063
|
|
40178
|
+
},
|
|
40179
|
+
React__default['default'].createElement('path', {
|
|
40180
|
+
id: 'Path_62',
|
|
40181
|
+
'data-name': 'Path 62',
|
|
40182
|
+
d: 'M245-617.937l-5-5L241.063-624,245-620.062,248.938-624,250-622.937Z',
|
|
40183
|
+
transform: 'translate(-240 624)',
|
|
40184
|
+
fill: '#707070'
|
|
40185
|
+
})
|
|
40186
|
+
)
|
|
40187
|
+
),
|
|
40188
|
+
isVisible &&
|
|
40189
|
+
filter.type === 'checkbox' &&
|
|
40190
|
+
React__default['default'].createElement(
|
|
40191
|
+
'div',
|
|
40192
|
+
{ className: 'search__filter-rows' },
|
|
40193
|
+
filter.options &&
|
|
40194
|
+
filter.options.map(function (option, optionIndex) {
|
|
40195
|
+
return React__default['default'].createElement(
|
|
40196
|
+
'div',
|
|
40197
|
+
{ className: 'search__filter-row search__filter-row--checkbox', key: ''.concat(option.label, '-').concat(optionIndex) },
|
|
40198
|
+
React__default['default'].createElement(
|
|
40199
|
+
'div',
|
|
40200
|
+
{ className: 'checkbox' },
|
|
40201
|
+
React__default['default'].createElement(
|
|
40202
|
+
'label',
|
|
40203
|
+
{ className: 'checkbox__label' },
|
|
40204
|
+
React__default['default'].createElement('input', {
|
|
40205
|
+
type: 'checkbox',
|
|
40206
|
+
className: 'checkbox__input checkbox__input--parent',
|
|
40207
|
+
checked: option.isChecked,
|
|
40208
|
+
onChange: function (e) {
|
|
40209
|
+
return handleCheckBoxFilter(filter, option);
|
|
40210
|
+
}
|
|
40211
|
+
}),
|
|
40212
|
+
React__default['default'].createElement('span', { className: 'radiobutton__label-text' }, option.label)
|
|
40213
|
+
)
|
|
40214
|
+
)
|
|
40215
|
+
);
|
|
40216
|
+
})
|
|
40217
|
+
),
|
|
40218
|
+
isVisible &&
|
|
40219
|
+
filter.type === 'toggle' &&
|
|
40220
|
+
React__default['default'].createElement(
|
|
40221
|
+
'div',
|
|
40222
|
+
{ className: 'search__filter-rows' },
|
|
40223
|
+
(_b = filter.options) === null || _b === void 0
|
|
40224
|
+
? void 0
|
|
40225
|
+
: _b.map(function (option, optionIndex) {
|
|
40226
|
+
return React__default['default'].createElement(
|
|
40227
|
+
'div',
|
|
40228
|
+
{ className: 'search__filter-row', key: ''.concat(option.label, '-').concat(optionIndex) },
|
|
40229
|
+
React__default['default'].createElement('span', { className: 'search__filter-toggle-label' }, option.label),
|
|
40230
|
+
React__default['default'].createElement('div', { className: 'checkbox' }),
|
|
40231
|
+
React__default['default'].createElement(
|
|
40232
|
+
'label',
|
|
40233
|
+
{ className: 'checkbox__label' },
|
|
40234
|
+
React__default['default'].createElement('input', {
|
|
40235
|
+
type: 'checkbox',
|
|
40236
|
+
className: 'checkbox__input',
|
|
40237
|
+
checked: option.isChecked,
|
|
40238
|
+
onChange: function () {
|
|
40239
|
+
return handleCheckBoxFilter(filter, option);
|
|
40240
|
+
}
|
|
40241
|
+
})
|
|
40242
|
+
)
|
|
40243
|
+
);
|
|
40244
|
+
})
|
|
40245
|
+
),
|
|
40246
|
+
isVisible &&
|
|
40247
|
+
filter &&
|
|
40248
|
+
filter.type === 'slider' &&
|
|
40249
|
+
(function () {
|
|
40250
|
+
var _a, _b, _c, _d;
|
|
40251
|
+
var min = (_a = filter.min) !== null && _a !== void 0 ? _a : 0;
|
|
40252
|
+
var max = (_b = filter.max) !== null && _b !== void 0 ? _b : 100;
|
|
40253
|
+
var selectedMin = (_c = filter.selectedMin) !== null && _c !== void 0 ? _c : min;
|
|
40254
|
+
var selectedMax = (_d = filter.selectedMax) !== null && _d !== void 0 ? _d : max;
|
|
40255
|
+
return React__default['default'].createElement(MultiRangeFilter, {
|
|
40256
|
+
min: min,
|
|
40257
|
+
max: max,
|
|
40258
|
+
selectedMin: selectedMin,
|
|
40259
|
+
selectedMax: selectedMax,
|
|
40260
|
+
valueFormatter: function (value) {
|
|
40261
|
+
return ''.concat(value);
|
|
40262
|
+
},
|
|
40263
|
+
onChange: function (newMin, newMax) {
|
|
40264
|
+
handleSliderMinChange(filter, newMin);
|
|
40265
|
+
handleSliderMaxChange(filter, newMax);
|
|
40266
|
+
}
|
|
40267
|
+
});
|
|
40268
|
+
})(),
|
|
40269
|
+
isVisible &&
|
|
40270
|
+
filter.property === 'rating' &&
|
|
40271
|
+
filter.type === 'star-rating' &&
|
|
40272
|
+
(function () {
|
|
40273
|
+
var _a;
|
|
40274
|
+
var selectedRating = (_a = filter.selectedRating) !== null && _a !== void 0 ? _a : 0;
|
|
40275
|
+
var handleRatingChange = function (rating) {
|
|
40276
|
+
var updatedFilter = __assign(__assign({}, filter), { selectedRating: rating });
|
|
40277
|
+
updatePendingFilter(updatedFilter);
|
|
40278
|
+
if (!(context === null || context === void 0 ? void 0 : context.useGlobalApplyFilterButton) && !filter.useApplyFilterButton) {
|
|
40279
|
+
applyFilters();
|
|
40280
|
+
}
|
|
40281
|
+
};
|
|
40282
|
+
return React__default['default'].createElement(
|
|
40283
|
+
'div',
|
|
40284
|
+
{ className: 'search__filter-row star-rating-filter' },
|
|
40285
|
+
[5, 4, 3, 2, 1].map(function (star) {
|
|
40286
|
+
return React__default['default'].createElement(
|
|
40287
|
+
'span',
|
|
40288
|
+
{
|
|
40289
|
+
key: star,
|
|
40290
|
+
className: 'star '.concat(star <= selectedRating ? 'filled' : ''),
|
|
40291
|
+
onClick: function () {
|
|
40292
|
+
return handleRatingChange(star);
|
|
40293
|
+
},
|
|
40294
|
+
role: 'button',
|
|
40295
|
+
tabIndex: 0,
|
|
40296
|
+
onKeyDown: function (e) {
|
|
40297
|
+
if (e.key === 'Enter' || e.key === ' ') handleRatingChange(star);
|
|
40298
|
+
}
|
|
40299
|
+
},
|
|
40300
|
+
'\u2605'
|
|
40301
|
+
);
|
|
40302
|
+
})
|
|
40303
|
+
);
|
|
40304
|
+
})()
|
|
40305
|
+
);
|
|
40306
|
+
}),
|
|
40307
|
+
context.useGlobalApplyFilterButton &&
|
|
40308
|
+
hasPendingChanges() &&
|
|
40309
|
+
React__default['default'].createElement(
|
|
40310
|
+
'div',
|
|
40311
|
+
{ className: 'search__filters__actions' },
|
|
40312
|
+
React__default['default'].createElement(
|
|
40313
|
+
'button',
|
|
40314
|
+
{
|
|
40315
|
+
className: 'cta--secondary ',
|
|
40316
|
+
onClick: function () {
|
|
40317
|
+
handleResetPendingChanges();
|
|
40318
|
+
handleSetIsOpen();
|
|
40319
|
+
},
|
|
40320
|
+
disabled: isLoading
|
|
40321
|
+
},
|
|
40322
|
+
translations.SRP.CANCEL
|
|
40323
|
+
),
|
|
40324
|
+
React__default['default'].createElement(
|
|
40325
|
+
'button',
|
|
40326
|
+
{
|
|
40327
|
+
className: 'cta',
|
|
40328
|
+
onClick: function () {
|
|
40329
|
+
return applyFilters();
|
|
40330
|
+
},
|
|
40331
|
+
disabled: isLoading
|
|
40332
|
+
},
|
|
40333
|
+
translations.SRP.APPLY
|
|
40334
|
+
)
|
|
40335
|
+
)
|
|
40336
|
+
)
|
|
40337
|
+
)
|
|
40338
|
+
)
|
|
40339
|
+
)
|
|
40340
|
+
);
|
|
40341
|
+
};
|
|
40342
|
+
|
|
39851
40343
|
var SearchResultsContainer = function () {
|
|
39852
40344
|
var _a;
|
|
39853
40345
|
var dispatch = reactRedux.useDispatch();
|
|
@@ -39866,8 +40358,8 @@ var SearchResultsContainer = function () {
|
|
|
39866
40358
|
flyInIsOpen = _b.flyInIsOpen;
|
|
39867
40359
|
var isMobile = useMediaQuery('(max-width: 1200px)');
|
|
39868
40360
|
var _c = React.useState(0),
|
|
39869
|
-
searchTrigger = _c[0]
|
|
39870
|
-
|
|
40361
|
+
searchTrigger = _c[0],
|
|
40362
|
+
setSearchTrigger = _c[1];
|
|
39871
40363
|
var _d = React.useState(false),
|
|
39872
40364
|
initialFiltersSet = _d[0],
|
|
39873
40365
|
setInitialFiltersSet = _d[1];
|
|
@@ -39881,10 +40373,11 @@ var SearchResultsContainer = function () {
|
|
|
39881
40373
|
itineraryOpen = _g[0],
|
|
39882
40374
|
setItineraryOpen = _g[1];
|
|
39883
40375
|
var panelRef = React.useRef(null);
|
|
39884
|
-
var
|
|
39885
|
-
{
|
|
39886
|
-
{
|
|
39887
|
-
{
|
|
40376
|
+
var sortByTypes = [
|
|
40377
|
+
{ direction: 'asc', label: 'price' },
|
|
40378
|
+
{ direction: 'desc', label: 'price' },
|
|
40379
|
+
{ direction: 'asc', label: 'departure' },
|
|
40380
|
+
{ direction: 'desc', label: 'departure' }
|
|
39888
40381
|
];
|
|
39889
40382
|
var handleFlyInToggle = function (isOpen) {
|
|
39890
40383
|
dispatch(setFlyInIsOpen(isOpen));
|
|
@@ -39972,7 +40465,7 @@ var SearchResultsContainer = function () {
|
|
|
39972
40465
|
return searchRequest;
|
|
39973
40466
|
};
|
|
39974
40467
|
var buildSearchFromQueryParams = function (params) {
|
|
39975
|
-
var _a
|
|
40468
|
+
var _a;
|
|
39976
40469
|
var from = getDateFromParams(params, 'fromDate');
|
|
39977
40470
|
var to = getDateFromParams(params, 'toDate');
|
|
39978
40471
|
var rooms = getRoomsFromParams(params, 'rooms');
|
|
@@ -39984,11 +40477,8 @@ var SearchResultsContainer = function () {
|
|
|
39984
40477
|
var tagId = getNumberFromParams(params, 'tagId');
|
|
39985
40478
|
// temp hardcoded params
|
|
39986
40479
|
if (!from || !to) {
|
|
39987
|
-
|
|
39988
|
-
|
|
39989
|
-
}
|
|
39990
|
-
if (!country && !region && !oord && !city) {
|
|
39991
|
-
region = 1;
|
|
40480
|
+
console.error('Missing fromDate or toDate in query params, using default values');
|
|
40481
|
+
return null;
|
|
39992
40482
|
}
|
|
39993
40483
|
if (typeof window !== 'undefined') {
|
|
39994
40484
|
window.scrollTo(0, 0);
|
|
@@ -40029,34 +40519,14 @@ var SearchResultsContainer = function () {
|
|
|
40029
40519
|
toDate: to,
|
|
40030
40520
|
earliestFromOffset: 0,
|
|
40031
40521
|
latestToOffset: 0,
|
|
40032
|
-
includeFlights: true,
|
|
40033
|
-
regimeCodes:
|
|
40034
|
-
|
|
40035
|
-
|
|
40036
|
-
|
|
40037
|
-
|
|
40038
|
-
|
|
40039
|
-
|
|
40040
|
-
? void 0
|
|
40041
|
-
: _c
|
|
40042
|
-
.filter(function (o) {
|
|
40043
|
-
return o.isChecked;
|
|
40044
|
-
})
|
|
40045
|
-
.flatMap(function (o) {
|
|
40046
|
-
return o.value.toString();
|
|
40047
|
-
})) || [],
|
|
40048
|
-
minPrice:
|
|
40049
|
-
(_d = filters.find(function (f) {
|
|
40050
|
-
return f.property === 'price';
|
|
40051
|
-
})) === null || _d === void 0
|
|
40052
|
-
? void 0
|
|
40053
|
-
: _d.selectedMin,
|
|
40054
|
-
maxPrice:
|
|
40055
|
-
(_e = filters.find(function (f) {
|
|
40056
|
-
return f.property === 'price';
|
|
40057
|
-
})) === null || _e === void 0
|
|
40058
|
-
? void 0
|
|
40059
|
-
: _e.selectedMax,
|
|
40522
|
+
includeFlights: context.type === 'hotel-flight' ? true : false,
|
|
40523
|
+
// regimeCodes:
|
|
40524
|
+
// filters
|
|
40525
|
+
// .find((f) => f.property === 'regime')
|
|
40526
|
+
// ?.options?.filter((o) => o.isChecked)
|
|
40527
|
+
// .flatMap((o) => o.value.toString()) || [],
|
|
40528
|
+
// minPrice: filters.find((f) => f.property === 'price')?.selectedMin,
|
|
40529
|
+
// maxPrice: filters.find((f) => f.property === 'price')?.selectedMax,
|
|
40060
40530
|
useExactDates: true,
|
|
40061
40531
|
onlyCachedResults: false,
|
|
40062
40532
|
includeAllAllotments: true,
|
|
@@ -40133,9 +40603,9 @@ var SearchResultsContainer = function () {
|
|
|
40133
40603
|
// seperate Search
|
|
40134
40604
|
React.useEffect(
|
|
40135
40605
|
function () {
|
|
40136
|
-
var
|
|
40606
|
+
var runHotelSearch = function () {
|
|
40137
40607
|
return __awaiter(void 0, void 0, void 0, function () {
|
|
40138
|
-
var config, params, entryId, entryLight, searchRequest, packageSearchResults, enrichedFilters, matching, err_1;
|
|
40608
|
+
var config, params, entryId, entryLight, searchRequest, rq, packageSearchResults, enrichedFilters, matching, err_1;
|
|
40139
40609
|
var _a;
|
|
40140
40610
|
return __generator(this, function (_b) {
|
|
40141
40611
|
switch (_b.label) {
|
|
@@ -40164,7 +40634,11 @@ var SearchResultsContainer = function () {
|
|
|
40164
40634
|
searchRequest = buildSearchFromEntry(entryLight);
|
|
40165
40635
|
return [3 /*break*/, 4];
|
|
40166
40636
|
case 3:
|
|
40167
|
-
|
|
40637
|
+
rq = buildSearchFromQueryParams(params);
|
|
40638
|
+
if (!rq) {
|
|
40639
|
+
throw new Error('Invalid search parameters');
|
|
40640
|
+
}
|
|
40641
|
+
searchRequest = rq;
|
|
40168
40642
|
_b.label = 4;
|
|
40169
40643
|
case 4:
|
|
40170
40644
|
return [4 /*yield*/, build.search(config, searchRequest)];
|
|
@@ -40204,8 +40678,11 @@ var SearchResultsContainer = function () {
|
|
|
40204
40678
|
});
|
|
40205
40679
|
};
|
|
40206
40680
|
if (!(context === null || context === void 0 ? void 0 : context.showMockup)) {
|
|
40207
|
-
if (
|
|
40208
|
-
|
|
40681
|
+
if (
|
|
40682
|
+
(context === null || context === void 0 ? void 0 : context.type) === 'hotel-flight' ||
|
|
40683
|
+
(context === null || context === void 0 ? void 0 : context.type) === 'hotel'
|
|
40684
|
+
) {
|
|
40685
|
+
runHotelSearch();
|
|
40209
40686
|
}
|
|
40210
40687
|
}
|
|
40211
40688
|
},
|
|
@@ -40254,7 +40731,7 @@ var SearchResultsContainer = function () {
|
|
|
40254
40731
|
productCode: selectedItem.code,
|
|
40255
40732
|
fromDate: selectedItem.fromDate,
|
|
40256
40733
|
toDate: selectedItem.toDate,
|
|
40257
|
-
includeFlights: true,
|
|
40734
|
+
includeFlights: context.type === 'hotel-flight' ? true : false,
|
|
40258
40735
|
includeHotels: true,
|
|
40259
40736
|
includePaxTypes: true,
|
|
40260
40737
|
checkExternalAvailability: true,
|
|
@@ -40334,17 +40811,33 @@ var SearchResultsContainer = function () {
|
|
|
40334
40811
|
}
|
|
40335
40812
|
})
|
|
40336
40813
|
),
|
|
40337
|
-
context.type === 'hotel-flight' &&
|
|
40814
|
+
(context.type === 'hotel-flight' || context.type === 'hotel' || context.type === 'roundTrip') &&
|
|
40338
40815
|
React__default['default'].createElement(
|
|
40339
40816
|
React__default['default'].Fragment,
|
|
40340
40817
|
null,
|
|
40341
|
-
|
|
40342
|
-
|
|
40343
|
-
|
|
40344
|
-
|
|
40345
|
-
|
|
40346
|
-
|
|
40347
|
-
|
|
40818
|
+
context.type != 'hotel-flight' &&
|
|
40819
|
+
context.showFilters &&
|
|
40820
|
+
React__default['default'].createElement(Filters, {
|
|
40821
|
+
filters: filters,
|
|
40822
|
+
isOpen: filtersOpen,
|
|
40823
|
+
handleSetIsOpen: function () {
|
|
40824
|
+
return setFiltersOpen(!filtersOpen);
|
|
40825
|
+
},
|
|
40826
|
+
handleApplyFilters: function () {
|
|
40827
|
+
return setSearchTrigger(function (prev) {
|
|
40828
|
+
return prev + 1;
|
|
40829
|
+
});
|
|
40830
|
+
},
|
|
40831
|
+
isLoading: isLoading
|
|
40832
|
+
}),
|
|
40833
|
+
context.type === 'hotel-flight' &&
|
|
40834
|
+
React__default['default'].createElement(Itinerary, {
|
|
40835
|
+
isOpen: itineraryOpen,
|
|
40836
|
+
handleSetIsOpen: function () {
|
|
40837
|
+
return setItineraryOpen(!itineraryOpen);
|
|
40838
|
+
},
|
|
40839
|
+
isLoading: isLoading
|
|
40840
|
+
}),
|
|
40348
40841
|
React__default['default'].createElement(
|
|
40349
40842
|
'div',
|
|
40350
40843
|
{ className: 'search__results' },
|
|
@@ -40355,7 +40848,8 @@ var SearchResultsContainer = function () {
|
|
|
40355
40848
|
React__default['default'].createElement(
|
|
40356
40849
|
'div',
|
|
40357
40850
|
{ className: 'search__results__actions' },
|
|
40358
|
-
context.
|
|
40851
|
+
context.type != 'hotel-flight' &&
|
|
40852
|
+
context.showFilters &&
|
|
40359
40853
|
React__default['default'].createElement(
|
|
40360
40854
|
'div',
|
|
40361
40855
|
{
|
|
@@ -40380,10 +40874,10 @@ var SearchResultsContainer = function () {
|
|
|
40380
40874
|
translations.SRP.SHOW_ITINERARY
|
|
40381
40875
|
)
|
|
40382
40876
|
),
|
|
40383
|
-
|
|
40384
|
-
|
|
40877
|
+
sortByTypes &&
|
|
40878
|
+
sortByTypes.length > 0 &&
|
|
40385
40879
|
React__default['default'].createElement(ItemPicker, {
|
|
40386
|
-
items:
|
|
40880
|
+
items: sortByTypes,
|
|
40387
40881
|
selection: sortKey || undefined,
|
|
40388
40882
|
label: translations.SRP.SORTBY,
|
|
40389
40883
|
placeholder: translations.SRP.SORTBY,
|
|
@@ -40407,13 +40901,13 @@ var SearchResultsContainer = function () {
|
|
|
40407
40901
|
)
|
|
40408
40902
|
),
|
|
40409
40903
|
!isMobile &&
|
|
40410
|
-
|
|
40411
|
-
|
|
40904
|
+
sortByTypes &&
|
|
40905
|
+
sortByTypes.length > 0 &&
|
|
40412
40906
|
React__default['default'].createElement(
|
|
40413
40907
|
'div',
|
|
40414
40908
|
{ className: 'search__result-row-filter' },
|
|
40415
40909
|
React__default['default'].createElement(ItemPicker, {
|
|
40416
|
-
items:
|
|
40910
|
+
items: sortByTypes,
|
|
40417
40911
|
selection: sortKey || undefined,
|
|
40418
40912
|
label: translations.SRP.SORTBY,
|
|
40419
40913
|
placeholder: translations.SRP.SORTBY,
|
|
@@ -40427,7 +40921,8 @@ var SearchResultsContainer = function () {
|
|
|
40427
40921
|
{ className: 'search__results__wrapper' },
|
|
40428
40922
|
context.showTabViews && React__default['default'].createElement(TabViews, null),
|
|
40429
40923
|
context.showRoundTripResults && context.showMockup && React__default['default'].createElement(RoundTripResults, null),
|
|
40430
|
-
context.
|
|
40924
|
+
context.type === 'hotel-flight' &&
|
|
40925
|
+
context.showFlightResults &&
|
|
40431
40926
|
(bookingPackageDetails === null || bookingPackageDetails === void 0 ? void 0 : bookingPackageDetails.outwardFlights) &&
|
|
40432
40927
|
React__default['default'].createElement(FlightResults, {
|
|
40433
40928
|
flights: bookingPackageDetails === null || bookingPackageDetails === void 0 ? void 0 : bookingPackageDetails.outwardFlights,
|
|
@@ -40435,7 +40930,8 @@ var SearchResultsContainer = function () {
|
|
|
40435
40930
|
}),
|
|
40436
40931
|
context.showHotelAccommodationResults &&
|
|
40437
40932
|
React__default['default'].createElement(HotelAccommodationResults, { isLoading: isLoading, context: context }),
|
|
40438
|
-
context.
|
|
40933
|
+
context.type === 'hotel-flight' &&
|
|
40934
|
+
context.showFlightResults &&
|
|
40439
40935
|
(bookingPackageDetails === null || bookingPackageDetails === void 0 ? void 0 : bookingPackageDetails.returnFlights) &&
|
|
40440
40936
|
React__default['default'].createElement(FlightResults, {
|
|
40441
40937
|
flights: bookingPackageDetails === null || bookingPackageDetails === void 0 ? void 0 : bookingPackageDetails.returnFlights,
|