@qite/tide-booking-component 1.2.3 → 1.2.4
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/booking-product/components/footer.d.ts +1 -0
- package/build/build-cjs/booking-product/components/rooms.d.ts +2 -0
- package/build/build-cjs/booking-wizard/features/booking/selectors.d.ts +1 -1
- package/build/build-cjs/booking-wizard/types.d.ts +0 -1
- package/build/build-cjs/index.js +275 -44
- package/build/build-cjs/shared/utils/localization-util.d.ts +3 -0
- package/build/build-esm/booking-product/components/footer.d.ts +1 -0
- package/build/build-esm/booking-product/components/rooms.d.ts +2 -0
- package/build/build-esm/booking-wizard/features/booking/selectors.d.ts +1 -1
- package/build/build-esm/booking-wizard/types.d.ts +0 -1
- package/build/build-esm/index.js +276 -45
- package/build/build-esm/shared/utils/localization-util.d.ts +3 -0
- package/package.json +1 -1
- package/rollup.config.js +23 -23
- package/src/booking-product/components/footer.tsx +7 -1
- package/src/booking-product/components/product.tsx +4 -0
- package/src/booking-product/components/rating.tsx +21 -21
- package/src/booking-product/components/rooms.tsx +5 -2
- package/src/booking-wizard/components/icon.tsx +250 -1
- package/src/booking-wizard/components/labeled-input.tsx +64 -64
- package/src/booking-wizard/components/labeled-select.tsx +69 -69
- package/src/booking-wizard/features/booking/selectors.ts +12 -2
- package/src/booking-wizard/features/flight-options/flight-filter.tsx +16 -3
- package/src/booking-wizard/features/flight-options/flight-option-flight.tsx +8 -6
- package/src/booking-wizard/features/flight-options/flight-option.tsx +1 -1
- package/src/booking-wizard/features/product-options/option-pax-card.tsx +93 -22
- package/src/booking-wizard/features/product-options/option-units-card.tsx +93 -21
- package/src/booking-wizard/features/sidebar/sidebar-flight.tsx +2 -2
- package/src/booking-wizard/features/summary/summary.tsx +3 -1
- package/src/shared/utils/class-util.ts +9 -9
- package/styles/booking-wizard-variables.scss +530 -0
- package/styles/booking-wizard.scss +23 -1
- package/styles/components/_booking.scss +1409 -0
- package/styles/components/_checkbox.scss +215 -0
- package/styles/components/_cta.scss +80 -14
- package/styles/components/_date-range-picker.scss +1 -0
- package/styles/components/_flight-option.scss +1389 -0
- package/styles/components/_form.scss +258 -0
- package/styles/components/_list.scss +82 -0
- package/styles/components/_mixins.scss +17 -5
- package/styles/components/_placeholders.scss +2 -2
- package/styles/components/_pricing-summary.scss +117 -0
- package/styles/components/_select-wrapper.scss +66 -0
- package/styles/components/_step-indicators.scss +160 -0
- package/styles/components/_table.scss +81 -0
- package/styles/components/_tree.scss +540 -0
- package/tsconfig.json +24 -24
|
@@ -2,6 +2,8 @@ import React from "react";
|
|
|
2
2
|
import { ProductRoom } from "../types";
|
|
3
3
|
interface RoomsProps {
|
|
4
4
|
rooms: ProductRoom[];
|
|
5
|
+
isDisabled: boolean;
|
|
6
|
+
setIsDisabled: (isOpen: boolean) => void;
|
|
5
7
|
onChange: (rooms: ProductRoom[]) => void;
|
|
6
8
|
}
|
|
7
9
|
declare const Rooms: React.FC<RoomsProps>;
|
|
@@ -47,7 +47,7 @@ export declare const selectIsUnavailable: (state: RootState) => boolean | undefi
|
|
|
47
47
|
export declare const selectRequestRooms: (state: RootState) => import("@qite/tide-client/build/types").BookingPackageRequestRoom[] | undefined;
|
|
48
48
|
export declare const selectOfficeId: (state: RootState) => number;
|
|
49
49
|
export declare const selectLanguageCode: (state: RootState) => string;
|
|
50
|
-
export declare const selectTranslations: (state: RootState) => any
|
|
50
|
+
export declare const selectTranslations: (state: RootState) => Record<string, any>;
|
|
51
51
|
export declare const selectBookingOptions: (state: RootState) => import("../../types").BookingOptions;
|
|
52
52
|
export declare const selectBookingType: (state: RootState) => string;
|
|
53
53
|
export declare const selectTagIds: (state: RootState) => number[] | undefined;
|
package/build/build-cjs/index.js
CHANGED
|
@@ -60,8 +60,8 @@ function __awaiter$1(thisArg, _arguments, P, generator) {
|
|
|
60
60
|
}
|
|
61
61
|
|
|
62
62
|
function __generator$1(thisArg, body) {
|
|
63
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g
|
|
64
|
-
return g
|
|
63
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
64
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
65
65
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
66
66
|
function step(op) {
|
|
67
67
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -824,6 +824,8 @@ var ServiceType = {
|
|
|
824
824
|
voucher: 26,
|
|
825
825
|
reduction: 27,
|
|
826
826
|
rocket: 28,
|
|
827
|
+
tent: 29,
|
|
828
|
+
camp: 30,
|
|
827
829
|
};
|
|
828
830
|
|
|
829
831
|
/******************************************************************************
|
|
@@ -7409,7 +7411,7 @@ var ENDPOINT_FEED = ENDPOINT + "/feed";
|
|
|
7409
7411
|
* api/web/file/feed
|
|
7410
7412
|
* fetch a xml from blob feed.
|
|
7411
7413
|
* @param config
|
|
7412
|
-
* @param
|
|
7414
|
+
* @param slug
|
|
7413
7415
|
* @param signal
|
|
7414
7416
|
* @returns OK if succeeded.
|
|
7415
7417
|
*/
|
|
@@ -7418,6 +7420,20 @@ var feedXml = function (config, request, signal) {
|
|
|
7418
7420
|
var apiKey = config.apiKey;
|
|
7419
7421
|
return get$1(url, apiKey, config.token, signal);
|
|
7420
7422
|
};
|
|
7423
|
+
/**
|
|
7424
|
+
* api/web/file/feed
|
|
7425
|
+
* fetch a xml from blob feed in subfolder.
|
|
7426
|
+
* @param config
|
|
7427
|
+
* @param slug
|
|
7428
|
+
* @param folder
|
|
7429
|
+
* @param signal
|
|
7430
|
+
* @returns OK if succeeded.
|
|
7431
|
+
*/
|
|
7432
|
+
var feedXmlFolder = function (config, slug, folder, signal) {
|
|
7433
|
+
var url = "" + config.host + ENDPOINT_FEED + "/" + slug + "/" + folder;
|
|
7434
|
+
var apiKey = config.apiKey;
|
|
7435
|
+
return get$1(url, apiKey, config.token, signal);
|
|
7436
|
+
};
|
|
7421
7437
|
|
|
7422
7438
|
build.AllotmentType = AllotmentType;
|
|
7423
7439
|
build.AvailabilitySearchType = AvailabilitySearchType;
|
|
@@ -7440,6 +7456,7 @@ build.createCrmContact = createCrmContact;
|
|
|
7440
7456
|
build.createParams = createParams;
|
|
7441
7457
|
var details_1 = build.details = details;
|
|
7442
7458
|
build.feedXml = feedXml;
|
|
7459
|
+
build.feedXmlFolder = feedXmlFolder;
|
|
7443
7460
|
build.forgotPassword = forgotPassword;
|
|
7444
7461
|
var generateBookingAccommodations_1 = build.generateBookingAccommodations = generateBookingAccommodations;
|
|
7445
7462
|
build.getAffiliates = getAffiliates;
|
|
@@ -9082,7 +9099,7 @@ var Loader = function (_a) {
|
|
|
9082
9099
|
};
|
|
9083
9100
|
|
|
9084
9101
|
var Footer = function (_a) {
|
|
9085
|
-
var priceText = _a.priceText, isLoading = _a.isLoading, isOffer = _a.isOffer, handleBookClick = _a.handleBookClick;
|
|
9102
|
+
var priceText = _a.priceText, isLoading = _a.isLoading, isOffer = _a.isOffer, roomsIsDisabled = _a.roomsIsDisabled, handleBookClick = _a.handleBookClick;
|
|
9086
9103
|
var _b = React.useContext(SettingsContext$1), language = _b.language, alternativeActionText = _b.alternativeActionText, alternativeAction = _b.alternativeAction;
|
|
9087
9104
|
var translations = getTranslations(language);
|
|
9088
9105
|
return (React__default["default"].createElement("div", { className: "booking-product__footer" }, isLoading
|
|
@@ -9091,7 +9108,10 @@ var Footer = function (_a) {
|
|
|
9091
9108
|
priceText && (React__default["default"].createElement("div", { className: "booking-product__footer-total" },
|
|
9092
9109
|
React__default["default"].createElement("div", { className: "booking-product__footer-label" }, translations.SHARED.TOTAL_PRICE),
|
|
9093
9110
|
React__default["default"].createElement("div", { className: "booking-product__footer-price" }, priceText))),
|
|
9094
|
-
React__default["default"].createElement("div", { className: "booking-product_footer-actions" }, priceText ? (React__default["default"].createElement("button", { type: "button", className:
|
|
9111
|
+
React__default["default"].createElement("div", { className: "booking-product_footer-actions" }, priceText ? (React__default["default"].createElement("button", { type: "button", className: buildClassName([
|
|
9112
|
+
"cta",
|
|
9113
|
+
!roomsIsDisabled && "cta--disabled"
|
|
9114
|
+
]), onClick: handleBookClick, disabled: !roomsIsDisabled }, isOffer ? translations.PRODUCT.TO_YOUR_OFFER : translations.PRODUCT.BOOK_NOW)) : ((alternativeActionText && alternativeAction)
|
|
9095
9115
|
? (React__default["default"].createElement("a", { href: "#offer-form", className: "cta", onClick: alternativeAction }, alternativeActionText))
|
|
9096
9116
|
: (React__default["default"].createElement(React__default["default"].Fragment, null, translations.PRODUCT.NOT_AVAILABLE))))))));
|
|
9097
9117
|
};
|
|
@@ -9166,10 +9186,9 @@ var AmountInput = function (_a) {
|
|
|
9166
9186
|
};
|
|
9167
9187
|
|
|
9168
9188
|
var Rooms = function (_a) {
|
|
9169
|
-
var rooms = _a.rooms, onChange = _a.onChange;
|
|
9170
|
-
var _b = React.useState(
|
|
9171
|
-
var _c = React.useState(
|
|
9172
|
-
var _d = React.useState(rooms), currentRooms = _d[0], setRoomState = _d[1];
|
|
9189
|
+
var rooms = _a.rooms, isDisabled = _a.isDisabled, setIsDisabled = _a.setIsDisabled, onChange = _a.onChange;
|
|
9190
|
+
var _b = React.useState(false), isTouched = _b[0], setIsTouched = _b[1];
|
|
9191
|
+
var _c = React.useState(rooms), currentRooms = _c[0], setRoomState = _c[1];
|
|
9173
9192
|
var language = React.useContext(SettingsContext$1).language;
|
|
9174
9193
|
var translations = getTranslations(language);
|
|
9175
9194
|
var handleCloseClick = function () {
|
|
@@ -9239,12 +9258,13 @@ var Product = function (_a) {
|
|
|
9239
9258
|
var translations = getTranslations(language);
|
|
9240
9259
|
var _e = React.useState(false), loaded = _e[0], setLoaded = _e[1];
|
|
9241
9260
|
var _f = React.useState(false), isLoading = _f[0], setIsLoading = _f[1];
|
|
9242
|
-
var _g = React.useState(),
|
|
9243
|
-
var _h = React.useState(
|
|
9244
|
-
var _j = React.useState(false),
|
|
9245
|
-
var _k = React.useState(
|
|
9246
|
-
var _l = React.useState(),
|
|
9247
|
-
var _m = React.useState(
|
|
9261
|
+
var _g = React.useState(true), roomsIsDisabled = _g[0], setRoomsIsDisabled = _g[1];
|
|
9262
|
+
var _h = React.useState(), price = _h[0], setPrice = _h[1];
|
|
9263
|
+
var _j = React.useState(false), hasFlight = _j[0], setHasFlight = _j[1];
|
|
9264
|
+
var _k = React.useState(false), hasTransfer = _k[0], setHasTransfer = _k[1];
|
|
9265
|
+
var _l = React.useState([{ adults: 2, children: 0, childAges: [] }]), rooms = _l[0], setRooms = _l[1];
|
|
9266
|
+
var _m = React.useState(), dateRange = _m[0], setDateRange = _m[1];
|
|
9267
|
+
var _o = React.useState(productName), packageProductName = _o[0], setPackageProductName = _o[1];
|
|
9248
9268
|
var fetchPackage = function (signal) { return __awaiter$1(void 0, void 0, void 0, function () {
|
|
9249
9269
|
var apiSettingsState, startDate, endDate, requestRooms, request, response, selectedOption, hasFlight_1, hasTranfer;
|
|
9250
9270
|
return __generator$1(this, function (_a) {
|
|
@@ -9404,9 +9424,9 @@ var Product = function (_a) {
|
|
|
9404
9424
|
return (React__default["default"].createElement("div", { className: "booking-product" },
|
|
9405
9425
|
React__default["default"].createElement(Header, { name: packageProductName, rating: rating, priceText: priceText, isLoading: isLoading, hasFlight: hasFlight, hasTransfer: hasTransfer }),
|
|
9406
9426
|
React__default["default"].createElement("div", { className: "booking-product__body" },
|
|
9407
|
-
React__default["default"].createElement(Rooms, { rooms: rooms, onChange: handleRoomChange }),
|
|
9427
|
+
React__default["default"].createElement(Rooms, { rooms: rooms, isDisabled: roomsIsDisabled, setIsDisabled: setRoomsIsDisabled, onChange: handleRoomChange }),
|
|
9408
9428
|
React__default["default"].createElement(Dates, { value: dateRange, duration: duration, onChange: handleDateChange })),
|
|
9409
|
-
React__default["default"].createElement(Footer, { priceText: priceText, isLoading: isLoading, isOffer: isOffer, handleBookClick: handleBookClick })));
|
|
9429
|
+
React__default["default"].createElement(Footer, { priceText: priceText, isLoading: isLoading, isOffer: isOffer, roomsIsDisabled: roomsIsDisabled, handleBookClick: handleBookClick })));
|
|
9410
9430
|
};
|
|
9411
9431
|
|
|
9412
9432
|
var BookingProduct = function (_a) {
|
|
@@ -9730,9 +9750,15 @@ var selectLanguageCode = function (state) {
|
|
|
9730
9750
|
return state.booking.languageCode;
|
|
9731
9751
|
};
|
|
9732
9752
|
var selectTranslations = function (state) {
|
|
9733
|
-
var _a;
|
|
9734
|
-
var
|
|
9735
|
-
|
|
9753
|
+
var _a, _b;
|
|
9754
|
+
var defaultStaticTranslations = getTranslations(state.booking.languageCode);
|
|
9755
|
+
var dynamicTranslations = (_b = (state.booking.translations && ((_a = state.booking.translations.find(function (x) { return x.language == state.booking.languageCode; })) === null || _a === void 0 ? void 0 : _a.value))) !== null && _b !== void 0 ? _b : {};
|
|
9756
|
+
var merged = {};
|
|
9757
|
+
for (var _i = 0, _c = Array.from(new Set(__spreadArray(__spreadArray([], Object.keys(defaultStaticTranslations), true), Object.keys(dynamicTranslations), true))); _i < _c.length; _i++) {
|
|
9758
|
+
var key = _c[_i];
|
|
9759
|
+
merged[key] = __assign(__assign({}, (defaultStaticTranslations[key] || {})), (dynamicTranslations[key] || {}));
|
|
9760
|
+
}
|
|
9761
|
+
return merged;
|
|
9736
9762
|
};
|
|
9737
9763
|
var selectBookingOptions = function (state) {
|
|
9738
9764
|
return state.booking.bookingOptions;
|
|
@@ -10570,25 +10596,146 @@ var Icon = function (_a) {
|
|
|
10570
10596
|
}
|
|
10571
10597
|
switch (name) {
|
|
10572
10598
|
case "ui-chevron":
|
|
10599
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10600
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10601
|
+
.join(" "), width: width, height: height, viewBox: "0 0 320 512" },
|
|
10602
|
+
React__default["default"].createElement(HTMLComment, { text: "!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc." }),
|
|
10603
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10604
|
+
React__default["default"].createElement("path", { d: "M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z" })));
|
|
10573
10605
|
case "ui-error":
|
|
10606
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10607
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10608
|
+
.join(" "), width: width, height: height, viewBox: "0 0 512 512" },
|
|
10609
|
+
React__default["default"].createElement(HTMLComment, { text: "!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc." }),
|
|
10610
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10611
|
+
React__default["default"].createElement("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24l0 112c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-112c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z" })));
|
|
10574
10612
|
case "ui-tel":
|
|
10613
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10614
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10615
|
+
.join(" "), width: width, height: height, viewBox: "0 0 512 512" },
|
|
10616
|
+
React__default["default"].createElement(HTMLComment, { text: "!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc." }),
|
|
10617
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10618
|
+
React__default["default"].createElement("path", { d: "M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 167c13.7-11.2 18.4-30 11.6-46.3l-40-96z" })));
|
|
10575
10619
|
case "ui-mail":
|
|
10620
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10621
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10622
|
+
.join(" "), width: width, height: height, viewBox: "0 0 512 512" },
|
|
10623
|
+
React__default["default"].createElement(HTMLComment, { text: "!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc." }),
|
|
10624
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10625
|
+
React__default["default"].createElement("path", { d: "M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48L48 64zM0 176L0 384c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-208L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z" })));
|
|
10576
10626
|
case "ui-home":
|
|
10577
10627
|
case "ui-filter":
|
|
10628
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10629
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10630
|
+
.join(" "), width: width, height: height, viewBox: "0 0 10.701 9.698" },
|
|
10631
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10632
|
+
React__default["default"].createElement("g", { id: "filter-solid", transform: "translate(-2.667 -5.333)" },
|
|
10633
|
+
React__default["default"].createElement("path", { id: "Path_54", "data-name": "Path 54", d: "M9.355,15.031V10.517l3.836-3.846a.605.605,0,0,0,.177-.435V5.668a.334.334,0,0,0-.334-.334H3a.334.334,0,0,0-.334.334v.558a.6.6,0,0,0,.177.425L6.68,10.544v3.411Z", transform: "translate(0 0)", fill: "#12aad8" }),
|
|
10634
|
+
React__default["default"].createElement("path", { id: "Path_55", "data-name": "Path 55", d: "M13.194,5.333H2.827a.174.174,0,0,0-.161.174v.575A.445.445,0,0,0,2.8,6.4L6.81,10.413v3.344l2.425,1.207V10.406l4.013-4.013a.451.451,0,0,0,.12-.3V5.507a.174.174,0,0,0-.174-.174Z" }))));
|
|
10578
10635
|
case "ui-close":
|
|
10636
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10637
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10638
|
+
.join(" "), width: width, height: height, viewBox: "0 0 384 512" },
|
|
10639
|
+
React__default["default"].createElement(HTMLComment, { text: "!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc." }),
|
|
10640
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10641
|
+
React__default["default"].createElement("path", { d: "M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z" })));
|
|
10579
10642
|
case "ui-ticket":
|
|
10643
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10644
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10645
|
+
.join(" "), width: width, height: height, viewBox: "0 0 20 20" },
|
|
10646
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10647
|
+
React__default["default"].createElement("g", { id: "ticket", transform: "translate(0.439 1.629)" },
|
|
10648
|
+
React__default["default"].createElement("path", { id: "Path_14", "data-name": "Path 14", d: "M12.125,5.335l3.751,3.751L9.086,15.875,5.335,12.125Zm-2.5,11.62L16.955,9.62a.745.745,0,0,0,0-1.068l-4.3-4.3a.774.774,0,0,0-1.068,0L4.255,11.59a.745.745,0,0,0,0,1.068l4.3,4.3a.774.774,0,0,0,1.068,0ZM20.172,9.395,9.406,20.172a1.533,1.533,0,0,1-2.148,0l-1.5-1.5a2.293,2.293,0,0,0,0-3.228,2.2,2.2,0,0,0-1.614-.665,2.2,2.2,0,0,0-1.614.665l-1.484-1.5a1.533,1.533,0,0,1,0-2.148L11.816,1.05a1.533,1.533,0,0,1,2.148,0l1.484,1.484a2.2,2.2,0,0,0-.665,1.614,2.2,2.2,0,0,0,.665,1.614,2.293,2.293,0,0,0,3.228,0l1.5,1.484a1.533,1.533,0,0,1,0,2.148Z", transform: "translate(-1.05 -2.24)" }))));
|
|
10580
10649
|
case "ui-payback":
|
|
10650
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10651
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10652
|
+
.join(" "), width: width, height: height, viewBox: "0 0 20 20.154" },
|
|
10653
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10654
|
+
React__default["default"].createElement("g", { id: "layer1", transform: "translate(-205.148 -293.014)" },
|
|
10655
|
+
React__default["default"].createElement("path", { id: "path453469", d: "M223.472,306.895a1.674,1.674,0,0,0-1.188.487l-1.971,1.972a1.67,1.67,0,0,0-.978-.726l-4.652-1.247a2.766,2.766,0,0,0-2.182.331l-2.9,1.832-.235-.408a1.089,1.089,0,0,0-1.471-.394l-2.209,1.274a1.089,1.089,0,0,0-.394,1.471l3.291,5.7a1.088,1.088,0,0,0,1.47.4l2.209-1.276a1.09,1.09,0,0,0,.395-1.471l-.043-.076,1.258-.85,4.63.911a1.742,1.742,0,0,0,1.653-.514c1.493-1.527,2.988-3.048,4.505-4.544l0,0a1.675,1.675,0,0,0-1.189-2.863Zm0,1.332a.336.336,0,0,1,.238.1.323.323,0,0,1,0,.476c-1.525,1.5-3.024,3.031-4.518,4.559a1.847,1.847,0,0,1-.433.134l-4.9-.963a.672.672,0,0,0-.507.1l-1.411.954-1.667-2.886,2.947-1.858a1.411,1.411,0,0,1,1.118-.171l4.652,1.247a.336.336,0,1,1-.175.65l-2.92-.782a.672.672,0,0,0-.348,1.3l2.92.782a1.693,1.693,0,0,0,1.741-.572.672.672,0,0,0,.177-.118l2.85-2.852A.336.336,0,0,1,223.472,308.226Zm-15.14,1.812.325.564a.615.615,0,0,0,.253.438l2.445,4.235-1.745,1.008-3.024-5.237Z", transform: "translate(0 -4.554)", "fill-rule": "evenodd" }),
|
|
10656
|
+
React__default["default"].createElement("path", { id: "path453459", d: "M223.672,301.014a.672.672,0,1,0,0,1.344h1.344a.672.672,0,1,0,0-1.344Z", transform: "translate(-5.857 -2.625)", "fill-rule": "evenodd" }),
|
|
10657
|
+
React__default["default"].createElement("path", { id: "path453437", d: "M223.672,297.014a.672.672,0,0,0,0,1.344h1.344a.672.672,0,0,0,0-1.344Z", transform: "translate(-5.857 -1.312)", "fill-rule": "evenodd" }),
|
|
10658
|
+
React__default["default"].createElement("path", { id: "rect18334", d: "M222.7,293.014a4.7,4.7,0,1,0,4.7,4.7A4.714,4.714,0,0,0,222.7,293.014Zm0,1.344a3.359,3.359,0,1,1-3.359,3.359A3.349,3.349,0,0,1,222.7,294.357Z", transform: "translate(-4.217)", "fill-rule": "evenodd" }))));
|
|
10581
10659
|
case "ui-backpack":
|
|
10660
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10661
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10662
|
+
.join(" "), width: width, height: height, viewBox: "0 0 14.499 16.11" },
|
|
10663
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10664
|
+
React__default["default"].createElement("path", { id: "Path_2", "data-name": "Path 2", d: "M22.444,28.805A.805.805,0,0,0,21.639,28H16.806a.806.806,0,0,0-.806.806v1.611h6.444ZM16,32.027h6.444v2.417H16Z", transform: "translate(-11.972 -18.334)" }),
|
|
10665
|
+
React__default["default"].createElement("path", { id: "Path_3", "data-name": "Path 3", d: "M20.5,12.055a4.837,4.837,0,0,0-4.028-4.761V6.417A2.419,2.419,0,0,0,14.055,4H12.444a2.419,2.419,0,0,0-2.417,2.417v.878A4.837,4.837,0,0,0,6,12.055V18.5A1.613,1.613,0,0,0,7.611,20.11h.806V14.472a2.419,2.419,0,0,1,2.417-2.417h4.833a2.419,2.419,0,0,1,2.417,2.417V20.11h.806A1.613,1.613,0,0,0,20.5,18.5ZM11.639,6.417a.806.806,0,0,1,.806-.806h1.611a.805.805,0,0,1,.805.806v.806H11.639Z", transform: "translate(-6 -4)" })));
|
|
10582
10666
|
case "ui-suitcase":
|
|
10667
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10668
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10669
|
+
.join(" "), width: width, height: height, viewBox: "0 0 15.992 13.708" },
|
|
10670
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10671
|
+
React__default["default"].createElement("path", { id: "Path_21", "data-name": "Path 21", d: "M5.712,2.285h4.569V1.142H5.712Zm-3.141,0V13.708H2a1.924,1.924,0,0,1-1.41-.589A1.924,1.924,0,0,1,0,11.709V4.284a1.924,1.924,0,0,1,.589-1.41A1.924,1.924,0,0,1,2,2.285Zm10,0V13.708H3.427V2.285H4.569V.857A.826.826,0,0,1,4.819.25.826.826,0,0,1,5.426,0h5.14a.826.826,0,0,1,.607.25.826.826,0,0,1,.25.607V2.285Zm3.427,2v7.425a2.011,2.011,0,0,1-2,2h-.571V2.285h.571a1.924,1.924,0,0,1,1.41.589A1.924,1.924,0,0,1,15.992,4.284Z", transform: "translate(0 0)" })));
|
|
10583
10672
|
case "ui-business-lounge":
|
|
10673
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10674
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10675
|
+
.join(" "), width: width, height: height, viewBox: "0 0 20 19.999" },
|
|
10676
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10677
|
+
React__default["default"].createElement("g", { id: "waiting-room-svgrepo-com", transform: "translate(0 -0.008)" },
|
|
10678
|
+
React__default["default"].createElement("g", { id: "Group_46", "data-name": "Group 46", transform: "translate(0 0.008)" },
|
|
10679
|
+
React__default["default"].createElement("g", { id: "Group_45", "data-name": "Group 45", transform: "translate(0)" },
|
|
10680
|
+
React__default["default"].createElement("path", { id: "Path_33", "data-name": "Path 33", d: "M65.683,110.007a1.667,1.667,0,1,0-1.667-1.667A1.666,1.666,0,0,0,65.683,110.007Z", transform: "translate(-61.515 -102.507)" }),
|
|
10681
|
+
React__default["default"].createElement("path", { id: "Path_34", "data-name": "Path 34", d: "M6.25,242.2H2.418L.824,235.025a.417.417,0,1,0-.814.181l1.657,7.455v2.454a.417.417,0,1,0,.833,0v-2.083H5v2.083a.417.417,0,1,0,.833,0v-2.083h.417a.417.417,0,0,0,0-.833Z", transform: "translate(0 -225.532)" }),
|
|
10682
|
+
React__default["default"].createElement("path", { id: "Path_35", "data-name": "Path 35", d: "M281.933.008a4.583,4.583,0,1,0,4.583,4.583A4.588,4.588,0,0,0,281.933.008Zm1.667,5h-1.667a.417.417,0,0,1-.417-.417v-2.5a.417.417,0,0,1,.833,0V4.175h1.25a.417.417,0,1,1,0,.833Z", transform: "translate(-266.516 -0.008)" }),
|
|
10683
|
+
React__default["default"].createElement("path", { id: "Path_36", "data-name": "Path 36", d: "M70.265,218.341H67.348v-3.333a1.667,1.667,0,0,0-3.333,0v4.583a1.251,1.251,0,0,0,1.25,1.25h3.75v2.917a1.25,1.25,0,1,0,2.5,0v-4.167A1.251,1.251,0,0,0,70.265,218.341Z", transform: "translate(-61.514 -205.008)" }))))));
|
|
10584
10684
|
case "ui-shopping-bag":
|
|
10685
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10686
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10687
|
+
.join(" "), width: width, height: height, viewBox: "0 0 13.299 14.65" },
|
|
10688
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10689
|
+
React__default["default"].createElement("path", { id: "Path_22", "data-name": "Path 22", d: "M9.135.6A3.523,3.523,0,0,0,5.612,4.123V5.691A2.455,2.455,0,0,0,5,5.869,2.967,2.967,0,0,0,3.842,6.8,6.951,6.951,0,0,0,3,9.393c-.452,2.056-.678,3.083-.392,3.885A2.967,2.967,0,0,0,3.835,14.8c.721.451,1.774.451,3.878.451h2.843c2.1,0,3.157,0,3.878-.451a2.967,2.967,0,0,0,1.223-1.521c.285-.8.059-1.829-.392-3.885a6.951,6.951,0,0,0-.837-2.59,2.967,2.967,0,0,0-1.162-.934,2.456,2.456,0,0,0-.608-.178V4.123A3.523,3.523,0,0,0,9.135.6Zm2.411,5.012V4.123a2.411,2.411,0,0,0-4.821,0V5.612c.287,0,.613,0,.989,0h2.843C10.933,5.607,11.259,5.607,11.546,5.612ZM6.168,8.574a.742.742,0,1,0-.742-.742A.742.742,0,0,0,6.168,8.574Zm6.676-.742A.742.742,0,1,1,12.1,7.09.742.742,0,0,1,12.844,7.832Z", transform: "translate(-2.486 -0.6)", "fill-rule": "evenodd" })));
|
|
10585
10690
|
case "ui-priority":
|
|
10691
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10692
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10693
|
+
.join(" "), width: width, height: height, viewBox: "0 0 20 17.533" },
|
|
10694
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10695
|
+
React__default["default"].createElement("g", { id: "list-high-priority", transform: "translate(-1.5 -2.552)" },
|
|
10696
|
+
React__default["default"].createElement("path", { id: "Path_24", "data-name": "Path 24", d: "M24,39H34v1.333H24Z", transform: "translate(-12.5 -20.249)" }),
|
|
10697
|
+
React__default["default"].createElement("path", { id: "Path_25", "data-name": "Path 25", d: "M24,29H34v1.333H24Z", transform: "translate(-12.5 -14.694)" }),
|
|
10698
|
+
React__default["default"].createElement("path", { id: "Path_26", "data-name": "Path 26", d: "M24,19H34v1.333H24Z", transform: "translate(-12.5 -9.138)" }),
|
|
10699
|
+
React__default["default"].createElement("path", { id: "Path_27", "data-name": "Path 27", d: "M30.75,9h7v1.333h-7Z", transform: "translate(-16.25 -3.583)" }),
|
|
10700
|
+
React__default["default"].createElement("path", { id: "Path_28", "data-name": "Path 28", d: "M13.417,6.043,7.8,2.551V5.418H7.551a5.544,5.544,0,0,0-4.326,2.2A8.164,8.164,0,0,0,1.5,12.751a8.164,8.164,0,0,0,1.725,5.133,5.544,5.544,0,0,0,4.326,2.2H9.833V18.751H7.551c-2.6,0-4.718-2.692-4.718-6s2.117-6,4.718-6H7.8V9.635ZM9.133,4.95l1.783,1.109L9.133,7.2Z" }))));
|
|
10586
10701
|
case "ui-tooltip":
|
|
10587
|
-
|
|
10702
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10703
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10704
|
+
.join(" "), width: width, height: height, viewBox: "0 0 512 512" },
|
|
10705
|
+
React__default["default"].createElement(HTMLComment, { text: "!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc." }),
|
|
10706
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10707
|
+
React__default["default"].createElement("path", { d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336l24 0 0-64-24 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l48 0c13.3 0 24 10.7 24 24l0 88 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-80 0c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z" })));
|
|
10588
10708
|
case "ui-qsm-location":
|
|
10709
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10710
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10711
|
+
.join(" "), width: width, height: height, viewBox: "0 0 384 512" },
|
|
10712
|
+
React__default["default"].createElement(HTMLComment, { text: "!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc." }),
|
|
10713
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10714
|
+
React__default["default"].createElement("path", { d: "M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z" })));
|
|
10589
10715
|
case "ui-plane-depart":
|
|
10716
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10717
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10718
|
+
.join(" "), width: width, height: height, viewBox: "0 0 640 512" },
|
|
10719
|
+
React__default["default"].createElement(HTMLComment, { text: "!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc." }),
|
|
10720
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10721
|
+
React__default["default"].createElement("path", { d: "M381 114.9L186.1 41.8c-16.7-6.2-35.2-5.3-51.1 2.7L89.1 67.4C78 73 77.2 88.5 87.6 95.2l146.9 94.5L136 240 77.8 214.1c-8.7-3.9-18.8-3.7-27.3 .6L18.3 230.8c-9.3 4.7-11.8 16.8-5 24.7l73.1 85.3c6.1 7.1 15 11.2 24.3 11.2l137.7 0c5 0 9.9-1.2 14.3-3.4L535.6 212.2c46.5-23.3 82.5-63.3 100.8-112C645.9 75 627.2 48 600.2 48l-57.4 0c-20.2 0-40.2 4.8-58.2 14L381 114.9zM0 480c0 17.7 14.3 32 32 32l576 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 448c-17.7 0-32 14.3-32 32z" })));
|
|
10590
10722
|
case "ui-plane-arrive":
|
|
10723
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10724
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10725
|
+
.join(" "), width: width, height: height, viewBox: "0 0 640 512" },
|
|
10726
|
+
React__default["default"].createElement(HTMLComment, { text: "!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc." }),
|
|
10727
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10728
|
+
React__default["default"].createElement("path", { d: "M.3 166.9L0 68C0 57.7 9.5 50.1 19.5 52.3l35.6 7.9c10.6 2.3 19.2 9.9 23 20L96 128l127.3 37.6L181.8 20.4C178.9 10.2 186.6 0 197.2 0l40.1 0c11.6 0 22.2 6.2 27.9 16.3l109 193.8 107.2 31.7c15.9 4.7 30.8 12.5 43.7 22.8l34.4 27.6c24 19.2 18.1 57.3-10.7 68.2c-41.2 15.6-86.2 18.1-128.8 7L121.7 289.8c-11.1-2.9-21.2-8.7-29.3-16.9L9.5 189.4c-5.9-6-9.3-14.1-9.3-22.5zM32 448l576 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 512c-17.7 0-32-14.3-32-32s14.3-32 32-32zm96-80a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm128-16a32 32 0 1 1 0 64 32 32 0 1 1 0-64z" })));
|
|
10591
10729
|
case "ui-clock":
|
|
10730
|
+
return (React__default["default"].createElement("svg", { className: ["icon", "icon--".concat(name), className]
|
|
10731
|
+
.filter(function (className) { return !lodash.isEmpty(className); })
|
|
10732
|
+
.join(" "), width: width, height: height, viewBox: "0 0 19 19" },
|
|
10733
|
+
title && React__default["default"].createElement("title", null, title),
|
|
10734
|
+
React__default["default"].createElement("g", { id: "Group_56", "data-name": "Group 56", transform: "translate(-390 -665)" },
|
|
10735
|
+
React__default["default"].createElement("circle", { id: "Ellipse_5", "data-name": "Ellipse 5", cx: "9.5", cy: "9.5", r: "9.5", transform: "translate(390 665)", fill: "#fff" }),
|
|
10736
|
+
React__default["default"].createElement("g", { id: "time", transform: "translate(391.211 666.211)" },
|
|
10737
|
+
React__default["default"].createElement("path", { id: "Path_11", "data-name": "Path 11", d: "M8.289,13.578a5.289,5.289,0,1,1,5.289-5.289A5.289,5.289,0,0,1,8.289,13.578Zm0-9.823a4.534,4.534,0,1,0,4.534,4.534A4.534,4.534,0,0,0,8.289,3.756Z", transform: "translate(0 0)" }),
|
|
10738
|
+
React__default["default"].createElement("path", { id: "Path_12", "data-name": "Path 12", d: "M24.612,16.167,22.5,14.055V10.5h.756v3.241l1.889,1.893Z", transform: "translate(-14.589 -5.611)" })))));
|
|
10592
10739
|
default:
|
|
10593
10740
|
return null;
|
|
10594
10741
|
}
|
|
@@ -11087,6 +11234,18 @@ var FlightFilter = function (_a) {
|
|
|
11087
11234
|
var filterOptions = _a.filterOptions, resultCount = _a.resultCount, applyFilter = _a.applyFilter;
|
|
11088
11235
|
var translations = reactRedux.useSelector(selectTranslations);
|
|
11089
11236
|
var _b = React.useState(false), filtersVisible = _b[0], setFiltersVisible = _b[1];
|
|
11237
|
+
var filterRef = React.useRef(null);
|
|
11238
|
+
React.useEffect(function () {
|
|
11239
|
+
function handleClickOutside(event) {
|
|
11240
|
+
if (filterRef.current && !filterRef.current.contains(event.target)) {
|
|
11241
|
+
setFiltersVisible(false);
|
|
11242
|
+
}
|
|
11243
|
+
}
|
|
11244
|
+
document.addEventListener("mousedown", handleClickOutside);
|
|
11245
|
+
return function () {
|
|
11246
|
+
document.removeEventListener("mousedown", handleClickOutside);
|
|
11247
|
+
};
|
|
11248
|
+
}, []);
|
|
11090
11249
|
var updateAirportFilter = function (code) {
|
|
11091
11250
|
var updatedFilterOptions = __assign(__assign({}, filterOptions), { airports: filterOptions.airports.map(function (x) {
|
|
11092
11251
|
if (x.value !== code)
|
|
@@ -11145,10 +11304,10 @@ var FlightFilter = function (_a) {
|
|
|
11145
11304
|
};
|
|
11146
11305
|
return (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
11147
11306
|
React__default["default"].createElement("button", { type: "button", className: "cta cta--filter", onClick: function () { return setFiltersVisible(!filtersVisible); } },
|
|
11148
|
-
React__default["default"].createElement(Icon, { name: "filter", width: 11, height: 10 }),
|
|
11307
|
+
React__default["default"].createElement(Icon, { name: "ui-filter", width: 11, height: 10 }),
|
|
11149
11308
|
React__default["default"].createElement("span", null, translations.FLIGHTS_FORM.FILTER_OPTIONS),
|
|
11150
11309
|
filtersVisible),
|
|
11151
|
-
React__default["default"].createElement("div", { className: buildClassName(["flight__filter", filtersVisible && "flight__filter--active"]) },
|
|
11310
|
+
React__default["default"].createElement("div", { ref: filterRef, className: buildClassName(["flight__filter", filtersVisible && "flight__filter--active"]) },
|
|
11152
11311
|
React__default["default"].createElement("div", { className: "flight__filter__header" },
|
|
11153
11312
|
React__default["default"].createElement("div", { className: "flight__filter__header__title" },
|
|
11154
11313
|
React__default["default"].createElement("h3", null, translations.FLIGHTS_FORM.FILTER_OPTIONS),
|
|
@@ -11377,18 +11536,16 @@ var FlightOptionFlight = function (_a) {
|
|
|
11377
11536
|
details.isNextDay && (React__default["default"].createElement("span", { className: "flight__info__times__days" }, translations.FLIGHTS_FORM.PLUS_ONE_DAY))))),
|
|
11378
11537
|
React__default["default"].createElement("div", { className: "flight__detail__btn__wrapper" },
|
|
11379
11538
|
React__default["default"].createElement("div", { className: buildClassName(["flight__detail__btn", isDetailVisible && "flight__detail__btn--active"]), onClick: function () { return setIsDetailVisible(!isDetailVisible); } },
|
|
11380
|
-
React__default["default"].createElement(Icon, { name: "chevron", className: "flight__detail__btn__arrow", width: 16, height: 16 })))),
|
|
11539
|
+
React__default["default"].createElement(Icon, { name: "ui-chevron", className: "flight__detail__btn__arrow", width: 16, height: 16 })))),
|
|
11381
11540
|
React__default["default"].createElement("div", { className: buildClassName(["flight__detail", isDetailVisible && "flight__detail--active"]) }, details.flightLines.map(function (flightLine, flightLineIndex) { return (React__default["default"].createElement(React__default["default"].Fragment, { key: flightLineIndex },
|
|
11382
11541
|
React__default["default"].createElement("div", { className: "flight__info" },
|
|
11383
11542
|
React__default["default"].createElement("div", { className: "flight__info__times__wrapper" },
|
|
11384
11543
|
React__default["default"].createElement("div", { className: "flight__info__times" },
|
|
11385
|
-
React__default["default"].createElement("
|
|
11386
|
-
|
|
11387
|
-
" ",
|
|
11388
|
-
flightLine.departureAirport),
|
|
11544
|
+
React__default["default"].createElement("p", null, flightLine.departureTime),
|
|
11545
|
+
React__default["default"].createElement("strong", null, flightLine.departureAirport),
|
|
11389
11546
|
React__default["default"].createElement("p", null, getDateText(flightLine.departureDate))),
|
|
11390
11547
|
React__default["default"].createElement("div", null,
|
|
11391
|
-
React__default["default"].createElement(Icon, { name: "plane-depart", width: 30, height: 20 }))),
|
|
11548
|
+
React__default["default"].createElement(Icon, { name: "ui-plane-depart", width: 30, height: 20 }))),
|
|
11392
11549
|
React__default["default"].createElement("div", { className: "flight__info__duration" },
|
|
11393
11550
|
React__default["default"].createElement("p", null, flightLine.travelDuration),
|
|
11394
11551
|
React__default["default"].createElement("div", { className: "flight__info__duration__stops" }),
|
|
@@ -11396,18 +11553,16 @@ var FlightOptionFlight = function (_a) {
|
|
|
11396
11553
|
React__default["default"].createElement("strong", null, flightLine.number)),
|
|
11397
11554
|
React__default["default"].createElement("div", { className: "flight__info__times__wrapper flight__info__times__wrapper--arrival" },
|
|
11398
11555
|
React__default["default"].createElement("div", null,
|
|
11399
|
-
React__default["default"].createElement(Icon, { name: "plane-
|
|
11556
|
+
React__default["default"].createElement(Icon, { name: "ui-plane-arrive", width: 30, height: 20 })),
|
|
11400
11557
|
React__default["default"].createElement("div", { className: "flight__info__times flight__info__times--arrival" },
|
|
11401
|
-
React__default["default"].createElement("
|
|
11402
|
-
|
|
11403
|
-
" ",
|
|
11404
|
-
flightLine.arrivalAirport),
|
|
11558
|
+
React__default["default"].createElement("p", null, flightLine.arrivalTime),
|
|
11559
|
+
React__default["default"].createElement("strong", null, flightLine.arrivalAirport),
|
|
11405
11560
|
React__default["default"].createElement("p", null, getDateText(flightLine.arrivalDate))))),
|
|
11406
11561
|
flightLine.waitDuration && (React__default["default"].createElement("div", { className: "flight__info" },
|
|
11407
11562
|
React__default["default"].createElement("div", { className: "flight__info__times" }),
|
|
11408
11563
|
React__default["default"].createElement("div", { className: "flight__info__duration flight__info__duration--waittime" },
|
|
11409
11564
|
React__default["default"].createElement("div", { className: "flight__info__duration__stops flight__info__duration__stops--stoptime" },
|
|
11410
|
-
React__default["default"].createElement(Icon, { name: "clock", width:
|
|
11565
|
+
React__default["default"].createElement(Icon, { name: "ui-clock", width: 24, height: 24 })),
|
|
11411
11566
|
React__default["default"].createElement("div", { className: "flight__info__duration__stoptime" },
|
|
11412
11567
|
React__default["default"].createElement("span", null, translations.FLIGHTS_FORM.STOP_TIME),
|
|
11413
11568
|
React__default["default"].createElement("strong", null, flightLine.waitDuration))),
|
|
@@ -11439,7 +11594,7 @@ var FlightOption = function (_a) {
|
|
|
11439
11594
|
priceDifference > 0 && "price--increase",
|
|
11440
11595
|
priceDifference < 0 && "price--decrease"
|
|
11441
11596
|
]) }, getPriceDifferenceText(priceDifference))),
|
|
11442
|
-
React__default["default"].createElement("button", { type: "button", className: "cta ".concat(isSelected ? 'cta--selected' : 'cta--
|
|
11597
|
+
React__default["default"].createElement("button", { type: "button", className: "cta ".concat(isSelected ? 'cta--selected' : 'cta--select'), onClick: handleButtonClick }, isSelected ? translations.SHARED.SELECTED : translations.SHARED.SELECT)))),
|
|
11443
11598
|
React__default["default"].createElement(FlightOptionFlight, { details: item.outward, isOptionsVisible: outwardVisible }),
|
|
11444
11599
|
React__default["default"].createElement(FlightOptionFlight, { details: item.return, isOptionsVisible: returnVisible })))));
|
|
11445
11600
|
};
|
|
@@ -12042,6 +12197,8 @@ var OptionPaxCard = function (_a) {
|
|
|
12042
12197
|
var pax = _a.pax, requestRoomsPax = _a.requestRoomsPax, parentIndex = _a.parentIndex, onPaxChange = _a.onPaxChange;
|
|
12043
12198
|
var _b = React.useState(), toggleStates = _b[0], setToggleStates = _b[1];
|
|
12044
12199
|
var translations = reactRedux.useSelector(selectTranslations);
|
|
12200
|
+
var departureFlight = reactRedux.useSelector(selectDepartureFlight);
|
|
12201
|
+
var returnFlight = reactRedux.useSelector(selectReturnFlight);
|
|
12045
12202
|
React.useEffect(function () {
|
|
12046
12203
|
if (!toggleStates || toggleStates.length !== pax.length) {
|
|
12047
12204
|
setToggleStates(pax.map(function () { return true; }));
|
|
@@ -12066,6 +12223,36 @@ var OptionPaxCard = function (_a) {
|
|
|
12066
12223
|
if (onPaxChange)
|
|
12067
12224
|
onPaxChange(updatedPax, parentIndex);
|
|
12068
12225
|
};
|
|
12226
|
+
var getAirlineGroups = function (p) {
|
|
12227
|
+
return p.airlineGroups
|
|
12228
|
+
.filter(function (x) { var _a, _b; return x.flightIds.includes((_a = departureFlight === null || departureFlight === void 0 ? void 0 : departureFlight.entryLineGuid) !== null && _a !== void 0 ? _a : "") || x.flightIds.includes((_b = returnFlight === null || returnFlight === void 0 ? void 0 : returnFlight.entryLineGuid) !== null && _b !== void 0 ? _b : ""); });
|
|
12229
|
+
};
|
|
12230
|
+
var handleOnAirlineGroupChange = function (group, paxId) {
|
|
12231
|
+
var updatedPax = pax.map(function (p) {
|
|
12232
|
+
return p.id !== paxId
|
|
12233
|
+
? p
|
|
12234
|
+
: __assign(__assign({}, p), { airlineGroups: p.airlineGroups.map(function (g) {
|
|
12235
|
+
return g.label === group.label ? group : g;
|
|
12236
|
+
}) });
|
|
12237
|
+
});
|
|
12238
|
+
if (onPaxChange)
|
|
12239
|
+
onPaxChange(updatedPax, parentIndex);
|
|
12240
|
+
};
|
|
12241
|
+
var getAirportGroups = function (p) {
|
|
12242
|
+
return p.airportGroups
|
|
12243
|
+
.filter(function (x) { var _a, _b; return x.flightIds.includes((_a = departureFlight === null || departureFlight === void 0 ? void 0 : departureFlight.entryLineGuid) !== null && _a !== void 0 ? _a : "") || x.flightIds.includes((_b = returnFlight === null || returnFlight === void 0 ? void 0 : returnFlight.entryLineGuid) !== null && _b !== void 0 ? _b : ""); });
|
|
12244
|
+
};
|
|
12245
|
+
var handleOnAirportGroupChange = function (group, paxId) {
|
|
12246
|
+
var updatedPax = pax.map(function (p) {
|
|
12247
|
+
return p.id !== paxId
|
|
12248
|
+
? p
|
|
12249
|
+
: __assign(__assign({}, p), { airportGroups: p.airportGroups.map(function (g) {
|
|
12250
|
+
return g.label === group.label ? group : g;
|
|
12251
|
+
}) });
|
|
12252
|
+
});
|
|
12253
|
+
if (onPaxChange)
|
|
12254
|
+
onPaxChange(updatedPax, parentIndex);
|
|
12255
|
+
};
|
|
12069
12256
|
return (React__default["default"].createElement(React__default["default"].Fragment, null, pax.map(function (p, i) {
|
|
12070
12257
|
var _a, _b;
|
|
12071
12258
|
return (React__default["default"].createElement("div", { key: i, className: buildClassName([
|
|
@@ -12081,11 +12268,16 @@ var OptionPaxCard = function (_a) {
|
|
|
12081
12268
|
React__default["default"].createElement("button", { type: "button", className: "booking-card__toggle", onClick: function () {
|
|
12082
12269
|
setToggleStates(toggleStates === null || toggleStates === void 0 ? void 0 : toggleStates.map(function (s, si) { return (si == i ? !s : s); }));
|
|
12083
12270
|
} }))),
|
|
12084
|
-
toggleStates &&
|
|
12085
|
-
toggleStates[i] &&
|
|
12271
|
+
toggleStates && toggleStates[i] && (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
12086
12272
|
p.groups.map(function (pg) {
|
|
12087
12273
|
return pg && (React__default["default"].createElement(OptionPaxGroup, { key: pg.name, paxId: p.id, group: pg, firstClassName: "booking-card__group-body", secondClassName: "booking-card__group-heading", parentId: "".concat(p.id, "_").concat(pg.name), onGroupChange: onGroupChange }));
|
|
12088
|
-
})
|
|
12274
|
+
}),
|
|
12275
|
+
getAirlineGroups(p).map(function (group, i) { return (React__default["default"].createElement(OptionBookingAirlineGroup, { key: "".concat(group.label, "_").concat(i), airGroup: group, onGroupChange: function (updatedGroup) {
|
|
12276
|
+
handleOnAirlineGroupChange(updatedGroup, p.id);
|
|
12277
|
+
} })); }),
|
|
12278
|
+
getAirportGroups(p).map(function (group, i) { return (React__default["default"].createElement(OptionBookingAirlineGroup, { key: "".concat(group.label, "_").concat(i), airGroup: group, onGroupChange: function (updatedGroup) {
|
|
12279
|
+
handleOnAirportGroupChange(updatedGroup, p.id);
|
|
12280
|
+
} })); })))));
|
|
12089
12281
|
})));
|
|
12090
12282
|
};
|
|
12091
12283
|
|
|
@@ -12164,6 +12356,8 @@ var OptionUnitsCard = function (_a) {
|
|
|
12164
12356
|
var units = _a.units, parentIndex = _a.parentIndex, onUnitsChange = _a.onUnitsChange;
|
|
12165
12357
|
var _b = React.useState(), toggleStates = _b[0], setToggleStates = _b[1];
|
|
12166
12358
|
var translations = reactRedux.useSelector(selectTranslations);
|
|
12359
|
+
var departureFlight = reactRedux.useSelector(selectDepartureFlight);
|
|
12360
|
+
var returnFlight = reactRedux.useSelector(selectReturnFlight);
|
|
12167
12361
|
React.useEffect(function () {
|
|
12168
12362
|
if (!toggleStates || toggleStates.length !== units.length) {
|
|
12169
12363
|
setToggleStates(units.map(function () { return true; }));
|
|
@@ -12183,6 +12377,36 @@ var OptionUnitsCard = function (_a) {
|
|
|
12183
12377
|
if (onUnitsChange)
|
|
12184
12378
|
onUnitsChange(updatedUnits, parentIndex);
|
|
12185
12379
|
};
|
|
12380
|
+
var getAirlineGroups = function (p) {
|
|
12381
|
+
return p.airlineGroups
|
|
12382
|
+
.filter(function (x) { var _a, _b; return x.flightIds.includes((_a = departureFlight === null || departureFlight === void 0 ? void 0 : departureFlight.entryLineGuid) !== null && _a !== void 0 ? _a : "") || x.flightIds.includes((_b = returnFlight === null || returnFlight === void 0 ? void 0 : returnFlight.entryLineGuid) !== null && _b !== void 0 ? _b : ""); });
|
|
12383
|
+
};
|
|
12384
|
+
var handleOnAirlineGroupChange = function (group, unitIndex) {
|
|
12385
|
+
var updatedPax = units.map(function (u) {
|
|
12386
|
+
return u.index !== unitIndex
|
|
12387
|
+
? u
|
|
12388
|
+
: __assign(__assign({}, u), { airlineGroups: u.airlineGroups.map(function (g) {
|
|
12389
|
+
return g.label === group.label ? group : g;
|
|
12390
|
+
}) });
|
|
12391
|
+
});
|
|
12392
|
+
if (onUnitsChange)
|
|
12393
|
+
onUnitsChange(updatedPax, parentIndex);
|
|
12394
|
+
};
|
|
12395
|
+
var getAirportGroups = function (p) {
|
|
12396
|
+
return p.airportGroups
|
|
12397
|
+
.filter(function (x) { var _a, _b; return x.flightIds.includes((_a = departureFlight === null || departureFlight === void 0 ? void 0 : departureFlight.entryLineGuid) !== null && _a !== void 0 ? _a : "") || x.flightIds.includes((_b = returnFlight === null || returnFlight === void 0 ? void 0 : returnFlight.entryLineGuid) !== null && _b !== void 0 ? _b : ""); });
|
|
12398
|
+
};
|
|
12399
|
+
var handleOnAirportGroupChange = function (group, unitIndex) {
|
|
12400
|
+
var updatedPax = units.map(function (u) {
|
|
12401
|
+
return u.index !== unitIndex
|
|
12402
|
+
? u
|
|
12403
|
+
: __assign(__assign({}, u), { airportGroups: u.airportGroups.map(function (g) {
|
|
12404
|
+
return g.label === group.label ? group : g;
|
|
12405
|
+
}) });
|
|
12406
|
+
});
|
|
12407
|
+
if (onUnitsChange)
|
|
12408
|
+
onUnitsChange(updatedPax, parentIndex);
|
|
12409
|
+
};
|
|
12186
12410
|
return (React__default["default"].createElement(React__default["default"].Fragment, null, units.map(function (u, i) { return (React__default["default"].createElement("div", { className: buildClassName([
|
|
12187
12411
|
"booking-card__group",
|
|
12188
12412
|
toggleStates && toggleStates[i] && "booking-card__group--active",
|
|
@@ -12198,10 +12422,16 @@ var OptionUnitsCard = function (_a) {
|
|
|
12198
12422
|
setToggleStates(toggleStates === null || toggleStates === void 0 ? void 0 : toggleStates.map(function (s, si) { return (si == i ? !s : s); }));
|
|
12199
12423
|
} }))),
|
|
12200
12424
|
toggleStates &&
|
|
12201
|
-
toggleStates[i] &&
|
|
12425
|
+
toggleStates[i] && (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
12202
12426
|
u.groups.map(function (ug) {
|
|
12203
12427
|
return ug && (React__default["default"].createElement(OptionUnitGroup, { key: ug.name, unitIndex: u.index, group: ug, firstClassName: "booking-card__group-body", secondClassName: "booking-card__group-heading", parentId: "".concat(u.index, "_").concat(ug.name), onGroupChange: onGroupChange }));
|
|
12204
|
-
})
|
|
12428
|
+
}),
|
|
12429
|
+
getAirlineGroups(u).map(function (group, i) { return (React__default["default"].createElement(OptionBookingAirlineGroup, { key: "".concat(group.label, "_").concat(i), airGroup: group, onGroupChange: function (updatedGroup) {
|
|
12430
|
+
handleOnAirlineGroupChange(updatedGroup, u.index);
|
|
12431
|
+
} })); }),
|
|
12432
|
+
getAirportGroups(u).map(function (group, i) { return (React__default["default"].createElement(OptionBookingAirlineGroup, { key: "".concat(group.label, "_").concat(i), airGroup: group, onGroupChange: function (updatedGroup) {
|
|
12433
|
+
handleOnAirportGroupChange(updatedGroup, u.index);
|
|
12434
|
+
} })); }))))); })));
|
|
12205
12435
|
};
|
|
12206
12436
|
|
|
12207
12437
|
var OptionBookingGroup = function (_a) {
|
|
@@ -12825,7 +13055,7 @@ var SidebarFlight = function (_a) {
|
|
|
12825
13055
|
React__default["default"].createElement("h6", { className: "pricing-summary__title" }, title),
|
|
12826
13056
|
React__default["default"].createElement("div", { className: "pricing-summary__row" },
|
|
12827
13057
|
React__default["default"].createElement("div", { className: "pricing-summary__property" }, translations.SIDEBAR.FLIGHT_DEPARTURE),
|
|
12828
|
-
React__default["default"].createElement("div", { className: "pricing-summary__value" }, firstFlight === null || firstFlight === void 0 ? void 0 :
|
|
13058
|
+
React__default["default"].createElement("div", { className: "pricing-summary__value pricing-summary__value--flight" }, firstFlight === null || firstFlight === void 0 ? void 0 :
|
|
12829
13059
|
firstFlight.departureAirportDescription,
|
|
12830
13060
|
" (", firstFlight === null || firstFlight === void 0 ? void 0 :
|
|
12831
13061
|
firstFlight.departureAirportIata,
|
|
@@ -12836,7 +13066,7 @@ var SidebarFlight = function (_a) {
|
|
|
12836
13066
|
firstFlight.departureTime)),
|
|
12837
13067
|
React__default["default"].createElement("div", { className: "pricing-summary__row" },
|
|
12838
13068
|
React__default["default"].createElement("div", { className: "pricing-summary__property" }, translations.SIDEBAR.FLIGHT_ARRIVAL),
|
|
12839
|
-
React__default["default"].createElement("div", { className: "pricing-summary__value" }, lastFlight === null || lastFlight === void 0 ? void 0 :
|
|
13069
|
+
React__default["default"].createElement("div", { className: "pricing-summary__value pricing-summary__value--flight" }, lastFlight === null || lastFlight === void 0 ? void 0 :
|
|
12840
13070
|
lastFlight.arrivalAirportDescription,
|
|
12841
13071
|
" (", lastFlight === null || lastFlight === void 0 ? void 0 :
|
|
12842
13072
|
lastFlight.arrivalAirportIata,
|
|
@@ -13154,6 +13384,7 @@ var Summary = function () {
|
|
|
13154
13384
|
var packageDetails = reactRedux.useSelector(selectPackageDetails);
|
|
13155
13385
|
var activeOption = reactRedux.useSelector(selectActiveOption);
|
|
13156
13386
|
var apiSettings = reactRedux.useSelector(selectApiSettings);
|
|
13387
|
+
var languageCode = reactRedux.useSelector(selectLanguageCode);
|
|
13157
13388
|
if (!travelerFormValues) {
|
|
13158
13389
|
if (settings.skipRouter) {
|
|
13159
13390
|
dispatch(setCurrentStep(TRAVELERS_FORM_STEP));
|
|
@@ -13199,7 +13430,7 @@ var Summary = function () {
|
|
|
13199
13430
|
_a.label = 1;
|
|
13200
13431
|
case 1:
|
|
13201
13432
|
_a.trys.push([1, 3, 4, 5]);
|
|
13202
|
-
return [4 /*yield*/, book_1(tideClientConfig, bookRequest)];
|
|
13433
|
+
return [4 /*yield*/, book_1(tideClientConfig, bookRequest, undefined, languageCode)];
|
|
13203
13434
|
case 2:
|
|
13204
13435
|
bookingResponse = _a.sent();
|
|
13205
13436
|
// Booking successfull
|
|
@@ -49,6 +49,9 @@ export declare const getTranslations: (language: string) => {
|
|
|
49
49
|
MORNING_DEPARTURE: string;
|
|
50
50
|
AFTERNOON_DEPARTURE: string;
|
|
51
51
|
EVENING_DEPARTURE: string;
|
|
52
|
+
FLIGHTS_FOUND_1: string;
|
|
53
|
+
FLIGHTS_FOUND_2: string;
|
|
54
|
+
FLIGHTS_FOUND_3: string;
|
|
52
55
|
};
|
|
53
56
|
PRODUCT: {
|
|
54
57
|
STAY_INCLUDED: string;
|