@mirai/core 0.4.13 → 0.4.14
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/Core.constants.js +1 -2
- package/build/Core.constants.js.map +1 -1
- package/build/components/BannerLoyalty/BannerLoyalty.js +27 -8
- package/build/components/BannerLoyalty/BannerLoyalty.js.map +1 -1
- package/build/components/BannerLoyalty/BannerLoyalty.l10n.js +1 -1
- package/build/components/BannerLoyalty/BannerLoyalty.l10n.js.map +1 -1
- package/build/components/BannerLoyalty/BannerLoyalty.module.css +13 -0
- package/build/components/Chat/Chat.constants.js +4 -1
- package/build/components/Chat/Chat.constants.js.map +1 -1
- package/build/components/Chat/Chat.js +4 -5
- package/build/components/Chat/Chat.js.map +1 -1
- package/build/components/Chat/Chat.theme.module.css +1 -1
- package/build/components/Chat/__tests__/__snapshots__/Chat.constants.test.js.snap +3 -0
- package/build/components/Chat/components/Message/Message.constants.js +4 -7
- package/build/components/Chat/components/Message/Message.constants.js.map +1 -1
- package/build/components/Finder/Finder.js +6 -11
- package/build/components/Finder/Finder.js.map +1 -1
- package/build/components/Finder/components/Calendar/Calendar.js +1 -1
- package/build/components/Finder/components/Calendar/Calendar.js.map +1 -1
- package/build/components/Rates/Rates.Content.js +3 -1
- package/build/components/Rates/Rates.Content.js.map +1 -1
- package/build/components/Rates/Rates.Footer.js +3 -3
- package/build/components/Rates/Rates.Footer.js.map +1 -1
- package/build/components/Rates/Rates.Unavailability.js +10 -10
- package/build/components/Rates/Rates.Unavailability.js.map +1 -1
- package/build/components/Rates/Rates.constants.js +3 -2
- package/build/components/Rates/Rates.constants.js.map +1 -1
- package/build/components/Rates/Rates.js +38 -42
- package/build/components/Rates/Rates.js.map +1 -1
- package/build/components/Rates/Rates.l10n.js +0 -3
- package/build/components/Rates/Rates.l10n.js.map +1 -1
- package/build/components/Rates/Rates.module.css +1 -1
- package/build/components/Rates/__tests__/__snapshots__/Rates.Content.test.js.snap +18 -3
- package/build/components/Rates/__tests__/__snapshots__/Rates.Unavailability.test.js.snap +0 -10
- package/build/components/Rates/__tests__/__snapshots__/Rates.test.js.snap +22 -3
- package/build/components/Rates/components/Filters/Filters.js +2 -2
- package/build/components/Rates/components/Filters/Filters.js.map +1 -1
- package/build/components/Rates/components/Item/Item.Preview.js +23 -2
- package/build/components/Rates/components/Item/Item.Preview.js.map +1 -1
- package/build/components/Rates/components/Item/Item.Rates.js +12 -1
- package/build/components/Rates/components/Item/Item.Rates.js.map +1 -1
- package/build/components/Rates/components/Item/Item.js +3 -2
- package/build/components/Rates/components/Item/Item.js.map +1 -1
- package/build/components/Rates/components/Item/Item.l10n.js +3 -0
- package/build/components/Rates/components/Item/Item.l10n.js.map +1 -1
- package/build/components/Rates/components/Item/components/{RateDetails/RateDetails.Countdown.js → Countdown/Countdown.js} +5 -3
- package/build/components/Rates/components/Item/components/Countdown/Countdown.js.map +1 -0
- package/build/components/Rates/components/Item/components/Countdown/Countdown.module.css +8 -0
- package/build/components/Rates/components/Item/components/Countdown/__tests__/__snapshots__/Countdown.test.js.snap +3 -0
- package/build/components/Rates/components/{ClubRate → Item/components/Countdown}/index.js +4 -4
- package/build/components/Rates/components/Item/components/Countdown/index.js.map +1 -0
- package/build/components/Rates/components/Item/components/RateDetails/RateDetails.js +3 -3
- package/build/components/Rates/components/Item/components/RateDetails/RateDetails.js.map +1 -1
- package/build/components/Rates/components/Item/components/Slider/Slider.js +50 -16
- package/build/components/Rates/components/Item/components/Slider/Slider.js.map +1 -1
- package/build/components/Rates/components/Item/components/Slider/Slider.l10n.js +3 -0
- package/build/components/Rates/components/Item/components/Slider/Slider.l10n.js.map +1 -1
- package/build/components/Rates/components/Item/components/index.js +11 -0
- package/build/components/Rates/components/Item/components/index.js.map +1 -1
- package/build/components/Rates/components/ModalClubRate/ModalClubRate.js +128 -0
- package/build/components/Rates/components/ModalClubRate/ModalClubRate.js.map +1 -0
- package/build/components/Rates/components/{ClubRate/ClubRate.l10n.js → ModalClubRate/ModalClubRate.l10n.js} +12 -3
- package/build/components/Rates/components/ModalClubRate/ModalClubRate.l10n.js.map +1 -0
- package/build/components/Rates/components/{ClubRate/ClubRate.module.css → ModalClubRate/ModalClubRate.module.css} +9 -16
- package/build/components/Rates/components/ModalClubRate/__tests__/__snapshots__/ModalClubRate.test.js.snap +257 -0
- package/build/components/Rates/components/ModalClubRate/helpers/getDiscount.js +45 -0
- package/build/components/Rates/components/ModalClubRate/helpers/getDiscount.js.map +1 -0
- package/build/components/Rates/components/ModalClubRate/helpers/index.js +17 -0
- package/build/components/Rates/components/ModalClubRate/helpers/index.js.map +1 -0
- package/build/components/Rates/components/ModalClubRate/index.js +17 -0
- package/build/components/Rates/components/ModalClubRate/index.js.map +1 -0
- package/build/components/Rates/components/index.js +11 -11
- package/build/components/Rates/components/index.js.map +1 -1
- package/build/components/Rates/helpers/{getMetaBoard.js → getBoard.js} +8 -8
- package/build/components/Rates/helpers/getBoard.js.map +1 -0
- package/build/components/Rates/helpers/index.js +11 -11
- package/build/components/Rates/helpers/index.js.map +1 -1
- package/build/components/Session/Session.Account.js +5 -3
- package/build/components/Session/Session.Account.js.map +1 -1
- package/build/components/Session/Session.Login.Modal.js +18 -8
- package/build/components/Session/Session.Login.Modal.js.map +1 -1
- package/build/components/Session/Session.Login.js +1 -0
- package/build/components/Session/Session.Login.js.map +1 -1
- package/build/components/Session/Session.js +2 -4
- package/build/components/Session/Session.js.map +1 -1
- package/build/components/Session/Session.l10n.js +4 -1
- package/build/components/Session/Session.l10n.js.map +1 -1
- package/build/components/Session/__tests__/__snapshots__/Session.test.js.snap +117 -1072
- package/build/components/__shared__/BookingSummary/BookingSummary.js +2 -0
- package/build/components/__shared__/BookingSummary/BookingSummary.js.map +1 -1
- package/build/components/helpers/ICON.js +3 -1
- package/build/components/helpers/ICON.js.map +1 -1
- package/build/contexts/PerformanceManager/PerformanceManager.constants.js +66 -2
- package/build/contexts/PerformanceManager/PerformanceManager.constants.js.map +1 -1
- package/build/contexts/PerformanceManager/PerformanceManager.js +27 -21
- package/build/contexts/PerformanceManager/PerformanceManager.js.map +1 -1
- package/build/contexts/PerformanceManager/helpers/getConsentMode.js +9 -5
- package/build/contexts/PerformanceManager/helpers/getConsentMode.js.map +1 -1
- package/build/contexts/PerformanceManager/providers/analytics/bookingResponse.js +0 -4
- package/build/contexts/PerformanceManager/providers/analytics/bookingResponse.js.map +1 -1
- package/build/contexts/PerformanceManager/providers/analytics/checkoutResponse.js +16 -5
- package/build/contexts/PerformanceManager/providers/analytics/checkoutResponse.js.map +1 -1
- package/build/contexts/PerformanceManager/providers/analytics/ratesResponse.js +23 -6
- package/build/contexts/PerformanceManager/providers/analytics/ratesResponse.js.map +1 -1
- package/build/contexts/PerformanceManager/providers/bing/bookingResponse.js +1 -1
- package/build/contexts/PerformanceManager/providers/bing/bookingResponse.js.map +1 -1
- package/build/contexts/PerformanceManager/providers/gtm/bookingResponse.js +10 -1
- package/build/contexts/PerformanceManager/providers/gtm/bookingResponse.js.map +1 -1
- package/build/contexts/PerformanceManager/providers/gtm/checkoutResponse.js +6 -0
- package/build/contexts/PerformanceManager/providers/gtm/checkoutResponse.js.map +1 -1
- package/build/contexts/PerformanceManager/providers/gtm/duetto/bookingResponse.js +41 -0
- package/build/contexts/PerformanceManager/providers/gtm/duetto/bookingResponse.js.map +1 -0
- package/build/contexts/PerformanceManager/providers/gtm/duetto/index.js +28 -0
- package/build/contexts/PerformanceManager/providers/gtm/duetto/index.js.map +1 -0
- package/build/contexts/PerformanceManager/providers/gtm/duetto/ratesResponse.js +70 -0
- package/build/contexts/PerformanceManager/providers/gtm/duetto/ratesResponse.js.map +1 -0
- package/build/contexts/PerformanceManager/providers/gtm/finderReady.js +10 -26
- package/build/contexts/PerformanceManager/providers/gtm/finderReady.js.map +1 -1
- package/build/contexts/PerformanceManager/providers/gtm/helpers/getInitEvent.js +33 -0
- package/build/contexts/PerformanceManager/providers/gtm/helpers/getInitEvent.js.map +1 -0
- package/build/contexts/PerformanceManager/providers/gtm/helpers/index.js +11 -0
- package/build/contexts/PerformanceManager/providers/gtm/helpers/index.js.map +1 -1
- package/build/contexts/PerformanceManager/providers/gtm/ratesResponse.js +24 -3
- package/build/contexts/PerformanceManager/providers/gtm/ratesResponse.js.map +1 -1
- package/build/helpers/consolidateStore.js +8 -2
- package/build/helpers/consolidateStore.js.map +1 -1
- package/build/helpers/getPerformance.js +4 -0
- package/build/helpers/getPerformance.js.map +1 -1
- package/package.json +1 -1
- package/public/index.html +1 -1
- package/build/components/Chat/services/Lisa/action.js +0 -28
- package/build/components/Chat/services/Lisa/action.js.map +0 -1
- package/build/components/Chat/services/Lisa/index.js +0 -17
- package/build/components/Chat/services/Lisa/index.js.map +0 -1
- package/build/components/Chat/services/Lisa/message.js +0 -26
- package/build/components/Chat/services/Lisa/message.js.map +0 -1
- package/build/components/Chat/services/Lisa/status.js +0 -13
- package/build/components/Chat/services/Lisa/status.js.map +0 -1
- package/build/components/Chat/services/Lisa/welcome.js +0 -25
- package/build/components/Chat/services/Lisa/welcome.js.map +0 -1
- package/build/components/Rates/components/ClubRate/ClubRate.js +0 -100
- package/build/components/Rates/components/ClubRate/ClubRate.js.map +0 -1
- package/build/components/Rates/components/ClubRate/ClubRate.l10n.js.map +0 -1
- package/build/components/Rates/components/ClubRate/__tests__/__snapshots__/ClubRate.test.js.snap +0 -38
- package/build/components/Rates/components/ClubRate/index.js.map +0 -1
- package/build/components/Rates/components/Item/components/RateDetails/RateDetails.Countdown.js.map +0 -1
- package/build/components/Rates/components/Item/components/RateDetails/__tests__/__snapshots__/RateDetails.Countdown.test.js.snap +0 -3
- package/build/components/Rates/helpers/getMetaBoard.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["
|
|
1
|
+
{"version":3,"file":"index.js","names":["_getInitEvent","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_parseRate"],"sources":["../../../../../../src/contexts/PerformanceManager/providers/gtm/helpers/index.js"],"sourcesContent":["export * from './getInitEvent';\nexport * from './parseRate';\n"],"mappings":";;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,aAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,aAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,aAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,UAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,UAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,UAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,UAAA,CAAAL,GAAA;IAAA;EAAA;AAAA"}
|
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.ratesResponse = void 0;
|
|
7
7
|
var _locale = require("@mirai/locale");
|
|
8
|
+
var _duetto = require("./duetto");
|
|
8
9
|
var _helpers = require("./helpers");
|
|
9
10
|
var _helpers2 = require("../../../../components/helpers");
|
|
10
11
|
var _Core = require("../../../../Core.constants");
|
|
@@ -36,10 +37,13 @@ const ratesResponse = function () {
|
|
|
36
37
|
} = {},
|
|
37
38
|
hotel: {
|
|
38
39
|
accommodationType,
|
|
39
|
-
variants = {}
|
|
40
|
+
variants = {},
|
|
41
|
+
...hotel
|
|
40
42
|
} = {},
|
|
43
|
+
id,
|
|
41
44
|
language,
|
|
42
|
-
session
|
|
45
|
+
session,
|
|
46
|
+
type
|
|
43
47
|
} = {}
|
|
44
48
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
45
49
|
// ! -- TODO: Try to get all data from store -------------------------------------------------------------------------
|
|
@@ -81,6 +85,7 @@ const ratesResponse = function () {
|
|
|
81
85
|
const {
|
|
82
86
|
days: nights
|
|
83
87
|
} = (0, _locale.dateDiff)(...calendar);
|
|
88
|
+
const step = hotels && searchCategory ? 'CHAINRESULT' : 'BOOKINGSTEP1';
|
|
84
89
|
const common = {
|
|
85
90
|
...(!rates && (hotelInfoBAR === null || hotelInfoBAR === void 0 ? void 0 : hotelInfoBAR.length) === 0 ? {
|
|
86
91
|
availability: 'no'
|
|
@@ -109,7 +114,7 @@ const ratesResponse = function () {
|
|
|
109
114
|
...(!rates && hotelInfoBAR ? {
|
|
110
115
|
searchCategory
|
|
111
116
|
} : undefined),
|
|
112
|
-
step
|
|
117
|
+
step,
|
|
113
118
|
userCountry: country,
|
|
114
119
|
userLogged: !!session
|
|
115
120
|
};
|
|
@@ -193,10 +198,26 @@ const ratesResponse = function () {
|
|
|
193
198
|
}).join(','),
|
|
194
199
|
lowestRate: (0, _legacy.formatPrice)(hotelInfoBAR[0].bestAvailableRate.totalPrice.internalWithTaxes / nights, hotelInfoBAR[0].currency)
|
|
195
200
|
} : common;
|
|
201
|
+
(0, _helpers4.dataLayerPush)((0, _helpers.getInitEvent)({
|
|
202
|
+
mobile,
|
|
203
|
+
hotel: {
|
|
204
|
+
accommodationType,
|
|
205
|
+
variants,
|
|
206
|
+
...hotel
|
|
207
|
+
},
|
|
208
|
+
id,
|
|
209
|
+
step,
|
|
210
|
+
type
|
|
211
|
+
}));
|
|
196
212
|
(0, _helpers4.dataLayerPush)({
|
|
197
213
|
event: rates || (hotelInfoBAR === null || hotelInfoBAR === void 0 ? void 0 : hotelInfoBAR.length) > 0 ? 'mirai.Availability' : 'mirai.noAvailability',
|
|
198
214
|
'mirai.data': dataLayer
|
|
199
215
|
});
|
|
216
|
+
(0, _duetto.ratesResponse)({
|
|
217
|
+
...common,
|
|
218
|
+
hotelCurrency,
|
|
219
|
+
rates
|
|
220
|
+
});
|
|
200
221
|
return dataLayer;
|
|
201
222
|
};
|
|
202
223
|
exports.ratesResponse = ratesResponse;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ratesResponse.js","names":["_locale","require","_helpers","_helpers2","_Core","_helpers3","_helpers4","_helpers5","_legacy","ACCOMMODATION_TYPE_NAME","Object","keys","ACCOMMODATION_TYPE","ratesResponse","_variants$hotelId","device","mobile","response","hotels","infantAge","tracking","store","currency","finder","calendar","occupation","place","title","searchCategory","promocode","hotel","accommodationType","variants","language","session","arguments","length","undefined","idchain","idoffers","idtokenprovider","hotelId","roomTypeId","fetchUrlParams","location","search","country","hotelInfo","hotelCurrency","propertyName","propertyType","hotelInfoBAR","localTaxesIncluded","rates","taxesIncluded","userCurrency","value","userCurrencyValue","adults","children","getOccupationTotals","minRate","maxRate","getRatesPriceRange","days","nights","dateDiff","common","availability","chainId","checkin","dateFormat","format","checkout","coupon","home","document","hostname","idOffer","parseInt","idRoom","lodgingDenomination","multiroom","numAdults","numChildren","numRooms","step","userCountry","userLogged","dataLayer","code","exchangeRate","highestRate","parseRate","lowestRate","ratesByRoom","values","map","id","name","occupationOptions","occupations","numFirstRangeChildren","numSecondRangeChildren","boardOptions","boards","totalBasePrice","totalLocalTaxes","totalPriceWithTaxes","localTaxes","formatPrice","netPrice","taxes","hotelIds","idTokenProvider","join","hotelNames","hotelName","bestAvailableRate","totalPrice","internalWithTaxes","dataLayerPush","event","exports"],"sources":["../../../../../src/contexts/PerformanceManager/providers/gtm/ratesResponse.js"],"sourcesContent":["import { dateDiff, dateFormat } from '@mirai/locale';\n\nimport { parseRate } from './helpers';\nimport { getOccupationTotals } from '../../../../components/helpers';\nimport { ACCOMMODATION_TYPE } from '../../../../Core.constants';\nimport { fetchUrlParams } from '../../../../helpers';\nimport { dataLayerPush } from '../../helpers';\nimport { getRatesPriceRange } from '../helpers';\nimport { formatPrice } from '../helpers/legacy';\n\nconst ACCOMMODATION_TYPE_NAME = Object.keys(ACCOMMODATION_TYPE);\n\nexport const ratesResponse = ({\n device: { mobile } = {},\n response: { hotels, infantAge, tracking = {} } = {},\n store: {\n currency,\n finder: { calendar = [], occupation = [], place: { title: searchCategory } = {}, promocode = '' } = {},\n hotel: { accommodationType, variants = {} } = {},\n language,\n session,\n } = {},\n} = {}) => {\n // ! -- TODO: Try to get all data from store -------------------------------------------------------------------------\n const {\n idchain,\n idoffers,\n idtokenprovider: hotelId, // ? TODO: Could we take it from store?\n roomTypeId,\n } = fetchUrlParams(location.search);\n\n // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------\n const {\n country,\n hotelInfo: { currency: hotelCurrency = {}, propertyName, propertyType } = {},\n hotelInfoBAR,\n localTaxesIncluded,\n rates,\n taxesIncluded,\n userCurrency: { value: userCurrencyValue } = {},\n } = tracking;\n\n const { adults = 0, children = 0 } = getOccupationTotals({ infantAge, occupation });\n const { minRate, maxRate } = getRatesPriceRange(rates, hotelCurrency);\n const { days: nights } = dateDiff(...calendar);\n\n const common = {\n ...(!rates && hotelInfoBAR?.length === 0 ? { availability: 'no' } : undefined),\n chainId: idchain,\n checkin: dateFormat(calendar[0], { format: 'DD/MM/YYYY' }),\n checkout: dateFormat(calendar[1], { format: 'DD/MM/YYYY' }),\n coupon: promocode,\n device: mobile ? 'MOBILE' : 'DESKTOP_TABLET',\n home: document.location.hostname,\n hotelId,\n idOffer: idoffers ? parseInt(idoffers) : undefined,\n idRoom: roomTypeId ? parseInt(roomTypeId) : undefined,\n language,\n lodgingDenomination: ACCOMMODATION_TYPE_NAME[variants[hotelId]?.accommodationType || accommodationType],\n multiroom: occupation.length > 1,\n numAdults: adults,\n numChildren: children,\n numRooms: occupation.length,\n propertyName,\n propertyType,\n ...(!rates && hotelInfoBAR ? { searchCategory } : undefined),\n step: hotels && searchCategory ? 'CHAINRESULT' : 'BOOKINGSTEP1',\n userCountry: country,\n userLogged: !!session,\n };\n\n const dataLayer = rates\n ? {\n ...common,\n currency: hotelCurrency.code,\n exchangeRate: userCurrencyValue && hotelCurrency.value && userCurrencyValue / hotelCurrency.value,\n highestRate: parseRate(maxRate, hotelCurrency, nights),\n localTaxesIncluded,\n lowestRate: parseRate(minRate, hotelCurrency, nights),\n nights,\n ratesByRoom: Object.values(rates).map(({ id, name, occupationOptions = {} } = {}) => ({\n id,\n name,\n occupations: Object.values(occupationOptions).map(\n ({ numAdults = 0, numFirstRangeChildren = 0, numSecondRangeChildren = 0, id, rates = {} } = {}) => ({\n adults: numAdults,\n children: numFirstRangeChildren + numSecondRangeChildren,\n id,\n rates: Object.values(rates).map(({ boardOptions = {}, id, name } = {}) => ({\n boards: Object.values(boardOptions).map(\n ({ id, name, totalBasePrice, totalLocalTaxes = 0, totalPriceWithTaxes } = {}) => ({\n id,\n localTaxes: formatPrice(totalLocalTaxes, hotelCurrency),\n name,\n netPrice: formatPrice(totalBasePrice, hotelCurrency),\n taxes: formatPrice(totalPriceWithTaxes - totalBasePrice, hotelCurrency),\n }),\n ),\n id,\n name,\n })),\n }),\n ),\n })),\n taxesIncluded,\n userCurrency: currency,\n }\n : hotelInfoBAR?.length > 0\n ? {\n ...common,\n availability: 'yes',\n exchangeRate:\n userCurrencyValue && hotelInfoBAR[0].currency.value && userCurrencyValue / hotelInfoBAR[0].currency.value,\n hotelIds: hotelInfoBAR.map(({ idTokenProvider } = {}) => idTokenProvider).join(','),\n hotelNames: hotelInfoBAR.map(({ hotelName } = {}) => hotelName).join(','),\n lowestRate: formatPrice(\n hotelInfoBAR[0].bestAvailableRate.totalPrice.internalWithTaxes / nights,\n hotelInfoBAR[0].currency,\n ),\n }\n : common;\n\n dataLayerPush({\n event: rates || hotelInfoBAR?.length > 0 ? 'mirai.Availability' : 'mirai.noAvailability',\n 'mirai.data': dataLayer,\n });\n\n return dataLayer;\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ratesResponse.js","names":["_locale","require","_duetto","_helpers","_helpers2","_Core","_helpers3","_helpers4","_helpers5","_legacy","ACCOMMODATION_TYPE_NAME","Object","keys","ACCOMMODATION_TYPE","ratesResponse","_variants$hotelId","device","mobile","response","hotels","infantAge","tracking","store","currency","finder","calendar","occupation","place","title","searchCategory","promocode","hotel","accommodationType","variants","id","language","session","type","arguments","length","undefined","idchain","idoffers","idtokenprovider","hotelId","roomTypeId","fetchUrlParams","location","search","country","hotelInfo","hotelCurrency","propertyName","propertyType","hotelInfoBAR","localTaxesIncluded","rates","taxesIncluded","userCurrency","value","userCurrencyValue","adults","children","getOccupationTotals","minRate","maxRate","getRatesPriceRange","days","nights","dateDiff","step","common","availability","chainId","checkin","dateFormat","format","checkout","coupon","home","document","hostname","idOffer","parseInt","idRoom","lodgingDenomination","multiroom","numAdults","numChildren","numRooms","userCountry","userLogged","dataLayer","code","exchangeRate","highestRate","parseRate","lowestRate","ratesByRoom","values","map","name","occupationOptions","occupations","numFirstRangeChildren","numSecondRangeChildren","boardOptions","boards","totalBasePrice","totalLocalTaxes","totalPriceWithTaxes","localTaxes","formatPrice","netPrice","taxes","hotelIds","idTokenProvider","join","hotelNames","hotelName","bestAvailableRate","totalPrice","internalWithTaxes","dataLayerPush","getInitEvent","event","duettoRatesResponse","exports"],"sources":["../../../../../src/contexts/PerformanceManager/providers/gtm/ratesResponse.js"],"sourcesContent":["import { dateDiff, dateFormat } from '@mirai/locale';\n\nimport { ratesResponse as duettoRatesResponse } from './duetto';\nimport { getInitEvent, parseRate } from './helpers';\nimport { getOccupationTotals } from '../../../../components/helpers';\nimport { ACCOMMODATION_TYPE } from '../../../../Core.constants';\nimport { fetchUrlParams } from '../../../../helpers';\nimport { dataLayerPush } from '../../helpers';\nimport { getRatesPriceRange } from '../helpers';\nimport { formatPrice } from '../helpers/legacy';\n\nconst ACCOMMODATION_TYPE_NAME = Object.keys(ACCOMMODATION_TYPE);\n\nexport const ratesResponse = ({\n device: { mobile } = {},\n response: { hotels, infantAge, tracking = {} } = {},\n store: {\n currency,\n finder: { calendar = [], occupation = [], place: { title: searchCategory } = {}, promocode = '' } = {},\n hotel: { accommodationType, variants = {}, ...hotel } = {},\n id,\n language,\n session,\n type,\n } = {},\n} = {}) => {\n // ! -- TODO: Try to get all data from store -------------------------------------------------------------------------\n const {\n idchain,\n idoffers,\n idtokenprovider: hotelId, // ? TODO: Could we take it from store?\n roomTypeId,\n } = fetchUrlParams(location.search);\n\n // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------\n const {\n country,\n hotelInfo: { currency: hotelCurrency = {}, propertyName, propertyType } = {},\n hotelInfoBAR,\n localTaxesIncluded,\n rates,\n taxesIncluded,\n userCurrency: { value: userCurrencyValue } = {},\n } = tracking;\n\n const { adults = 0, children = 0 } = getOccupationTotals({ infantAge, occupation });\n const { minRate, maxRate } = getRatesPriceRange(rates, hotelCurrency);\n const { days: nights } = dateDiff(...calendar);\n\n const step = hotels && searchCategory ? 'CHAINRESULT' : 'BOOKINGSTEP1';\n const common = {\n ...(!rates && hotelInfoBAR?.length === 0 ? { availability: 'no' } : undefined),\n chainId: idchain,\n checkin: dateFormat(calendar[0], { format: 'DD/MM/YYYY' }),\n checkout: dateFormat(calendar[1], { format: 'DD/MM/YYYY' }),\n coupon: promocode,\n device: mobile ? 'MOBILE' : 'DESKTOP_TABLET',\n home: document.location.hostname,\n hotelId,\n idOffer: idoffers ? parseInt(idoffers) : undefined,\n idRoom: roomTypeId ? parseInt(roomTypeId) : undefined,\n language,\n lodgingDenomination: ACCOMMODATION_TYPE_NAME[variants[hotelId]?.accommodationType || accommodationType],\n multiroom: occupation.length > 1,\n numAdults: adults,\n numChildren: children,\n numRooms: occupation.length,\n propertyName,\n propertyType,\n ...(!rates && hotelInfoBAR ? { searchCategory } : undefined),\n step,\n userCountry: country,\n userLogged: !!session,\n };\n\n const dataLayer = rates\n ? {\n ...common,\n currency: hotelCurrency.code,\n exchangeRate: userCurrencyValue && hotelCurrency.value && userCurrencyValue / hotelCurrency.value,\n highestRate: parseRate(maxRate, hotelCurrency, nights),\n localTaxesIncluded,\n lowestRate: parseRate(minRate, hotelCurrency, nights),\n nights,\n ratesByRoom: Object.values(rates).map(({ id, name, occupationOptions = {} } = {}) => ({\n id,\n name,\n occupations: Object.values(occupationOptions).map(\n ({ numAdults = 0, numFirstRangeChildren = 0, numSecondRangeChildren = 0, id, rates = {} } = {}) => ({\n adults: numAdults,\n children: numFirstRangeChildren + numSecondRangeChildren,\n id,\n rates: Object.values(rates).map(({ boardOptions = {}, id, name } = {}) => ({\n boards: Object.values(boardOptions).map(\n ({ id, name, totalBasePrice, totalLocalTaxes = 0, totalPriceWithTaxes } = {}) => ({\n id,\n localTaxes: formatPrice(totalLocalTaxes, hotelCurrency),\n name,\n netPrice: formatPrice(totalBasePrice, hotelCurrency),\n taxes: formatPrice(totalPriceWithTaxes - totalBasePrice, hotelCurrency),\n }),\n ),\n id,\n name,\n })),\n }),\n ),\n })),\n taxesIncluded,\n userCurrency: currency,\n }\n : hotelInfoBAR?.length > 0\n ? {\n ...common,\n availability: 'yes',\n exchangeRate:\n userCurrencyValue && hotelInfoBAR[0].currency.value && userCurrencyValue / hotelInfoBAR[0].currency.value,\n hotelIds: hotelInfoBAR.map(({ idTokenProvider } = {}) => idTokenProvider).join(','),\n hotelNames: hotelInfoBAR.map(({ hotelName } = {}) => hotelName).join(','),\n lowestRate: formatPrice(\n hotelInfoBAR[0].bestAvailableRate.totalPrice.internalWithTaxes / nights,\n hotelInfoBAR[0].currency,\n ),\n }\n : common;\n\n dataLayerPush(getInitEvent({ mobile, hotel: { accommodationType, variants, ...hotel }, id, step, type }));\n dataLayerPush({\n event: rates || hotelInfoBAR?.length > 0 ? 'mirai.Availability' : 'mirai.noAvailability',\n 'mirai.data': dataLayer,\n });\n duettoRatesResponse({ ...common, hotelCurrency, rates });\n\n return dataLayer;\n};\n"],"mappings":"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"}
|
|
@@ -76,6 +76,12 @@ const consolidateStore = async function () {
|
|
|
76
76
|
// -- club -----------------------------------------------------------------------------------------------------------
|
|
77
77
|
let club;
|
|
78
78
|
if (config.club) {
|
|
79
|
+
const {
|
|
80
|
+
club: {
|
|
81
|
+
active
|
|
82
|
+
} = {}
|
|
83
|
+
} = config.club;
|
|
84
|
+
if (active !== true) return;
|
|
79
85
|
let {
|
|
80
86
|
accomodation: {
|
|
81
87
|
club: {
|
|
@@ -87,7 +93,6 @@ const consolidateStore = async function () {
|
|
|
87
93
|
},
|
|
88
94
|
club: {
|
|
89
95
|
club: {
|
|
90
|
-
active,
|
|
91
96
|
authentication,
|
|
92
97
|
idClub: id,
|
|
93
98
|
name
|
|
@@ -312,7 +317,8 @@ const consolidateStore = async function () {
|
|
|
312
317
|
lisa: undefined,
|
|
313
318
|
// ! TODO: Rename to chat
|
|
314
319
|
rates: {
|
|
315
|
-
|
|
320
|
+
cart: urlParams.cart ? urlParams.cart.split(',') : urlParams.rates ? (0, _getMetaRates.getMetaRates)(urlParams.rates) : undefined,
|
|
321
|
+
meta: !!urlParams.rates
|
|
316
322
|
},
|
|
317
323
|
signup: undefined
|
|
318
324
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consolidateStore.js","names":["_dataSources","require","_locale","_fetchCurrency","_getAccommodationType","_getLocale","_getMetaRates","_getPerformance","_getTags","_prepareRoom","_toOccupation","_Core","_process","_process$env","IS_JEST","process","env","JEST_WORKER_ID","consolidateStore","_config$accomodation","_config$accomodation2","_config$accomodation3","_config$accomodation4","_config$accomodation5","_config$accomodation6","_tags","_promo","_config$languages","components","config","cookies","instance","el","hotel","hotelId","id","type","session","urlParams","arguments","length","undefined","miraiId","isRates","some","component","maxDays","maxNights","rangeMaxDays","nightsForDeal","rangeMinDays","prices","showPrices","pricesWithTaxes","pricesLegend","accomodation","calendar","TAXES","includes","TAX_DEFAULT","to","dateFormat","dateCalc","Date","format","CALENDAR_FORMAT","language","country","locale","getLocale","currency","TYPE","HOTEL","fetchCurrency","DEFAULT_CURRENCY","club","banner","discount","discountEnabled","rates","variants","active","authentication","idClub","name","conditionsUrl","conditions","privacyPolicyUrl","privacy","applyClubDiscount","idtokenprovider","idHotel","CHAIN","variantDiscount","variantRates","find","toString","url","filter","map","enabled","accommodationType","getAccommodationType","lodgingDenomination","features","home","window","location","origin","warningAvailability","minRoomsEngineNotification","hotels","Object","entries","_ref","key","occupation","dataSource","ADULT","min","age","CHILD","fulfill","maxRooms","rooms","maxOccupation","commissionCode","hsri","TYPE_COMMISSION","chainSelector","tags","placeHolder","trees","options","getTags","placeholder","storageFinder","Storage","adapter","LocalAdapter","get","concat","FINDER_STORAGE_KEY","chainSelectorValue","checkin","clientCode","nights","parties","parseDate","UTC","checkout","parseInt","promo","showPromoNav","configPromo","promoText","place","value","Number","finder","dateDiff","days","toOccupation","places","prepareRoom","promocode","code","host","document","protocol","isDevelopment","NODE_ENV","IS_PLAYWRIGHT","forwarder","SERVICE_BOOKING","booking","signup","SERVICE_USER","profile","locales","languages","COUNTRIES","reduce","_ref2","props","performance","getPerformance","deals","lisa","meta","getMetaRates","exports"],"sources":["../../src/helpers/consolidateStore.js"],"sourcesContent":["import { LocalAdapter, Storage } from '@mirai/data-sources';\nimport { COUNTRIES, dateCalc, dateDiff, dateFormat, DEFAULT_CURRENCY, parseDate, UTC } from '@mirai/locale';\n\nimport { fetchCurrency } from './fetchCurrency';\nimport { getAccommodationType } from './getAccommodationType';\nimport { getLocale } from './getLocale';\nimport { getMetaRates } from './getMetaRates';\nimport { getPerformance } from './getPerformance';\nimport { getTags } from './getTags';\nimport { prepareRoom } from './prepareRoom';\nimport { toOccupation } from './toOccupation';\nimport { CALENDAR_FORMAT, FINDER_STORAGE_KEY, TAX_DEFAULT, TAXES, TYPE, TYPE_COMMISSION } from '../Core.constants';\n\nconst IS_JEST = !!process?.env?.JEST_WORKER_ID;\n\n/* eslint-disable no-unused-vars */\nexport const consolidateStore = async ({\n components = [],\n config = {},\n cookies = {},\n instance: { el, hotel: hotelId, id, type, ...instance } = {},\n session,\n urlParams = {},\n} = {}) => {\n const { miraiId } = urlParams;\n const isRates = components.some(({ component } = {}) => component === 'rates');\n\n // -- calendar -------------------------------------------------------------------------------------------------------\n const {\n maxDays = 365,\n maxNights: rangeMaxDays = 31,\n nightsForDeal: rangeMinDays,\n prices: showPrices = false,\n pricesWithTaxes: pricesLegend,\n } = config.accomodation?.calendar || {};\n const calendar = {\n rangeMaxDays,\n rangeMinDays,\n pricesLegend: TAXES.includes(pricesLegend) ? pricesLegend : showPrices ? TAX_DEFAULT : undefined,\n showPrices,\n to: !IS_JEST ? dateFormat(dateCalc(new Date(), maxDays, 'days'), { format: CALENDAR_FORMAT }) : undefined,\n };\n\n // -- language, country & locale -------------------------------------------------------------------------------------\n const { language, country, locale } = getLocale(instance, urlParams);\n\n // -- currency -------------------------------------------------------------------------------------------------------\n const currency =\n urlParams.currency ||\n instance.currency ||\n (type === TYPE.HOTEL && !IS_JEST ? await fetchCurrency(id) : DEFAULT_CURRENCY);\n\n // -- club -----------------------------------------------------------------------------------------------------------\n let club;\n if (config.club) {\n let {\n accomodation: { club: { banner, discount: discountEnabled = false, rates = false } = {}, variants = [] },\n club: {\n club: { active, authentication, idClub: id, name },\n conditionsUrl: conditions,\n privacyPolicyUrl: privacy,\n },\n } = config;\n\n let { applyClubDiscount, idtokenprovider: idHotel = '' } = urlParams;\n let discount = applyClubDiscount ? applyClubDiscount === 'true' : undefined;\n\n if (discount === undefined) {\n discount = rates;\n if (type === TYPE.CHAIN) {\n let { discount: variantDiscount, rates: variantRates } =\n variants.find(({ id = '' } = {}) => id.toString() === idHotel.toString()) || {};\n discountEnabled = variantDiscount || discountEnabled;\n discount = variantRates || rates;\n }\n }\n\n club = {\n active,\n authentication,\n banner,\n discount: active && discountEnabled ? discount : undefined,\n id,\n name,\n url: { conditions, privacy },\n variants: variants\n .filter(({ club } = {}) => club)\n .map(({ club: { discount: enabled, rates: active } = {}, id } = {}) => ({ active, enabled, id })),\n };\n }\n\n // -- hotel ----------------------------------------------------------------------------------------------------------\n const hotel = {\n accommodationType: getAccommodationType(config.lodgingDenomination, hotelId),\n features: config.accomodation?.features || {},\n id: type === TYPE.CHAIN ? urlParams.idtokenprovider || urlParams.idHotel || hotelId : id,\n url: urlParams.home || window.location.origin,\n warningAvailability: config.minRoomsEngineNotification,\n };\n\n if (type === TYPE.CHAIN) {\n const { hotels = {} } = config;\n hotel.variants = {};\n\n Object.entries(hotels).map(([key, { lodgingDenomination: accommodationType }]) => {\n hotel.variants[key] = { accommodationType };\n });\n }\n\n // -- occupation -----------------------------------------------------------------------------------------------------\n const occupation = {\n dataSource: config.accomodation?.occupation || [\n { type: TYPE.ADULT, min: 1, age: [18] },\n { type: TYPE.CHILD, age: [0, 17], fulfill: true },\n ],\n maxRooms: config.accomodation?.rooms?.maxOccupation,\n variants: config.accomodation?.variants || [],\n };\n\n // -- origin ---------------------------------------------------------------------------------------------------------\n const origin = {\n commissionCode: urlParams.hsri || TYPE_COMMISSION[type],\n };\n\n // -- tags -----------------------------------------------------------------------------------------------------------\n const { chainSelector } = config;\n let tags;\n if (type === TYPE.CHAIN && chainSelector) {\n const { placeHolder = {}, trees = [] } = chainSelector;\n tags = { options: getTags(trees, language), placeholder: placeHolder[language] };\n }\n\n // -- finder ---------------------------------------------------------------------------------------------------------\n const storageFinder = !isRates ? new Storage({ adapter: LocalAdapter }).get(`${FINDER_STORAGE_KEY}:${id}`) || {} : {};\n\n let { chainSelectorValue, checkin, clientCode, nights = isRates ? 1 : 0, parties } = urlParams;\n checkin = checkin ? parseDate(checkin) : isRates ? UTC(new Date()) : undefined;\n let checkout;\n\n if (checkin) checkout = dateCalc(checkin, parseInt(nights), 'days');\n\n let promo;\n if (config.showPromoNav) {\n const { accomodation: { promo: configPromo = {} } = {}, promoText: placeholder = {} } = config;\n promo = { ...configPromo, placeholder };\n }\n\n let place;\n if (chainSelectorValue && tags) {\n place = tags.options.find(({ value } = {}) => value === Number(chainSelectorValue));\n\n const { id: [id] = [] } = place || {};\n const { accommodationType } = hotel.variants[id] || {};\n if (accommodationType) hotel.accommodationType = accommodationType;\n }\n\n let finder = {\n place: place || storageFinder.place,\n calendar: checkin\n ? [checkin, checkout]\n : storageFinder.calendar && dateDiff(new Date(), new Date(storageFinder.calendar[0])).days > -1\n ? [new Date(storageFinder.calendar[0]), new Date(storageFinder.calendar[1])]\n : [],\n occupation: parties\n ? toOccupation({ chainSelectorValue, occupation, parties, places: tags?.options })\n : isRates\n ? [prepareRoom(occupation.dataSource)]\n : storageFinder.occupation || undefined,\n promocode: clientCode || promo?.code || storageFinder.promocode,\n };\n\n // -- forwarder ------------------------------------------------------------------------------------------------------\n const host = `${document.location.protocol}//${document.location.host}`;\n const isDevelopment = process.env.NODE_ENV === 'development' || window.IS_PLAYWRIGHT;\n const forwarder = {\n rates: miraiId ? `${host}/step1-rates` : `${process.env.SERVICE_BOOKING}/miraiFrontDispatcher.htm`,\n checkout: miraiId ? `${host}/step2-checkout` : `${process.env.SERVICE_BOOKING}/forwarder_client_form.htm`,\n booking: miraiId ? `${host}/step3-booking` : `${process.env.SERVICE_BOOKING}/forwarder_manage_reservation.htm`,\n signup:\n miraiId || isDevelopment\n ? `${host}/signup`\n : `${process.env.SERVICE_USER}/club/v1/forwarder/registration_process`,\n profile:\n miraiId || isDevelopment ? `${host}/profile` : `${process.env.SERVICE_USER}/club/v1/forwarder/members_area`,\n };\n\n return {\n config,\n cookies,\n urlParams,\n ...instance,\n id,\n type,\n\n // region\n currency,\n language,\n country,\n locale,\n locales: config.languages\n ?.map((language) => (language === 'no' ? 'nb' : language))\n .map((language) => `${language}-${COUNTRIES[language]}`),\n\n // entities,\n calendar,\n club,\n components: components.reduce((value, { component, ...props }) => {\n value[component] = props;\n return value;\n }, {}),\n forwarder,\n hotel,\n occupation,\n origin,\n performance: getPerformance(config, hotel.id),\n promo,\n session,\n tags,\n // -- components\n deals: undefined,\n finder,\n lisa: undefined, // ! TODO: Rename to chat\n rates: {\n meta: urlParams.rates ? getMetaRates(urlParams.rates) : undefined,\n },\n signup: undefined,\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"consolidateStore.js","names":["_dataSources","require","_locale","_fetchCurrency","_getAccommodationType","_getLocale","_getMetaRates","_getPerformance","_getTags","_prepareRoom","_toOccupation","_Core","_process","_process$env","IS_JEST","process","env","JEST_WORKER_ID","consolidateStore","_config$accomodation","_config$accomodation2","_config$accomodation3","_config$accomodation4","_config$accomodation5","_config$accomodation6","_tags","_promo","_config$languages","components","config","cookies","instance","el","hotel","hotelId","id","type","session","urlParams","arguments","length","undefined","miraiId","isRates","some","component","maxDays","maxNights","rangeMaxDays","nightsForDeal","rangeMinDays","prices","showPrices","pricesWithTaxes","pricesLegend","accomodation","calendar","TAXES","includes","TAX_DEFAULT","to","dateFormat","dateCalc","Date","format","CALENDAR_FORMAT","language","country","locale","getLocale","currency","TYPE","HOTEL","fetchCurrency","DEFAULT_CURRENCY","club","active","banner","discount","discountEnabled","rates","variants","authentication","idClub","name","conditionsUrl","conditions","privacyPolicyUrl","privacy","applyClubDiscount","idtokenprovider","idHotel","CHAIN","variantDiscount","variantRates","find","toString","url","filter","map","enabled","accommodationType","getAccommodationType","lodgingDenomination","features","home","window","location","origin","warningAvailability","minRoomsEngineNotification","hotels","Object","entries","_ref","key","occupation","dataSource","ADULT","min","age","CHILD","fulfill","maxRooms","rooms","maxOccupation","commissionCode","hsri","TYPE_COMMISSION","chainSelector","tags","placeHolder","trees","options","getTags","placeholder","storageFinder","Storage","adapter","LocalAdapter","get","concat","FINDER_STORAGE_KEY","chainSelectorValue","checkin","clientCode","nights","parties","parseDate","UTC","checkout","parseInt","promo","showPromoNav","configPromo","promoText","place","value","Number","finder","dateDiff","days","toOccupation","places","prepareRoom","promocode","code","host","document","protocol","isDevelopment","NODE_ENV","IS_PLAYWRIGHT","forwarder","SERVICE_BOOKING","booking","signup","SERVICE_USER","profile","locales","languages","COUNTRIES","reduce","_ref2","props","performance","getPerformance","deals","lisa","cart","split","getMetaRates","meta","exports"],"sources":["../../src/helpers/consolidateStore.js"],"sourcesContent":["import { LocalAdapter, Storage } from '@mirai/data-sources';\nimport { COUNTRIES, dateCalc, dateDiff, dateFormat, DEFAULT_CURRENCY, parseDate, UTC } from '@mirai/locale';\n\nimport { fetchCurrency } from './fetchCurrency';\nimport { getAccommodationType } from './getAccommodationType';\nimport { getLocale } from './getLocale';\nimport { getMetaRates } from './getMetaRates';\nimport { getPerformance } from './getPerformance';\nimport { getTags } from './getTags';\nimport { prepareRoom } from './prepareRoom';\nimport { toOccupation } from './toOccupation';\nimport { CALENDAR_FORMAT, FINDER_STORAGE_KEY, TAX_DEFAULT, TAXES, TYPE, TYPE_COMMISSION } from '../Core.constants';\n\nconst IS_JEST = !!process?.env?.JEST_WORKER_ID;\n\n/* eslint-disable no-unused-vars */\nexport const consolidateStore = async ({\n components = [],\n config = {},\n cookies = {},\n instance: { el, hotel: hotelId, id, type, ...instance } = {},\n session,\n urlParams = {},\n} = {}) => {\n const { miraiId } = urlParams;\n const isRates = components.some(({ component } = {}) => component === 'rates');\n\n // -- calendar -------------------------------------------------------------------------------------------------------\n const {\n maxDays = 365,\n maxNights: rangeMaxDays = 31,\n nightsForDeal: rangeMinDays,\n prices: showPrices = false,\n pricesWithTaxes: pricesLegend,\n } = config.accomodation?.calendar || {};\n const calendar = {\n rangeMaxDays,\n rangeMinDays,\n pricesLegend: TAXES.includes(pricesLegend) ? pricesLegend : showPrices ? TAX_DEFAULT : undefined,\n showPrices,\n to: !IS_JEST ? dateFormat(dateCalc(new Date(), maxDays, 'days'), { format: CALENDAR_FORMAT }) : undefined,\n };\n\n // -- language, country & locale -------------------------------------------------------------------------------------\n const { language, country, locale } = getLocale(instance, urlParams);\n\n // -- currency -------------------------------------------------------------------------------------------------------\n const currency =\n urlParams.currency ||\n instance.currency ||\n (type === TYPE.HOTEL && !IS_JEST ? await fetchCurrency(id) : DEFAULT_CURRENCY);\n\n // -- club -----------------------------------------------------------------------------------------------------------\n let club;\n if (config.club) {\n const { club: { active } = {} } = config.club;\n if (active !== true) return;\n\n let {\n accomodation: { club: { banner, discount: discountEnabled = false, rates = false } = {}, variants = [] },\n club: {\n club: { authentication, idClub: id, name },\n conditionsUrl: conditions,\n privacyPolicyUrl: privacy,\n },\n } = config;\n\n let { applyClubDiscount, idtokenprovider: idHotel = '' } = urlParams;\n let discount = applyClubDiscount ? applyClubDiscount === 'true' : undefined;\n\n if (discount === undefined) {\n discount = rates;\n if (type === TYPE.CHAIN) {\n let { discount: variantDiscount, rates: variantRates } =\n variants.find(({ id = '' } = {}) => id.toString() === idHotel.toString()) || {};\n discountEnabled = variantDiscount || discountEnabled;\n discount = variantRates || rates;\n }\n }\n\n club = {\n active,\n authentication,\n banner,\n discount: active && discountEnabled ? discount : undefined,\n id,\n name,\n url: { conditions, privacy },\n variants: variants\n .filter(({ club } = {}) => club)\n .map(({ club: { discount: enabled, rates: active } = {}, id } = {}) => ({ active, enabled, id })),\n };\n }\n\n // -- hotel ----------------------------------------------------------------------------------------------------------\n const hotel = {\n accommodationType: getAccommodationType(config.lodgingDenomination, hotelId),\n features: config.accomodation?.features || {},\n id: type === TYPE.CHAIN ? urlParams.idtokenprovider || urlParams.idHotel || hotelId : id,\n url: urlParams.home || window.location.origin,\n warningAvailability: config.minRoomsEngineNotification,\n };\n\n if (type === TYPE.CHAIN) {\n const { hotels = {} } = config;\n hotel.variants = {};\n\n Object.entries(hotels).map(([key, { lodgingDenomination: accommodationType }]) => {\n hotel.variants[key] = { accommodationType };\n });\n }\n\n // -- occupation -----------------------------------------------------------------------------------------------------\n const occupation = {\n dataSource: config.accomodation?.occupation || [\n { type: TYPE.ADULT, min: 1, age: [18] },\n { type: TYPE.CHILD, age: [0, 17], fulfill: true },\n ],\n maxRooms: config.accomodation?.rooms?.maxOccupation,\n variants: config.accomodation?.variants || [],\n };\n\n // -- origin ---------------------------------------------------------------------------------------------------------\n const origin = {\n commissionCode: urlParams.hsri || TYPE_COMMISSION[type],\n };\n\n // -- tags -----------------------------------------------------------------------------------------------------------\n const { chainSelector } = config;\n let tags;\n if (type === TYPE.CHAIN && chainSelector) {\n const { placeHolder = {}, trees = [] } = chainSelector;\n tags = { options: getTags(trees, language), placeholder: placeHolder[language] };\n }\n\n // -- finder ---------------------------------------------------------------------------------------------------------\n const storageFinder = !isRates ? new Storage({ adapter: LocalAdapter }).get(`${FINDER_STORAGE_KEY}:${id}`) || {} : {};\n\n let { chainSelectorValue, checkin, clientCode, nights = isRates ? 1 : 0, parties } = urlParams;\n checkin = checkin ? parseDate(checkin) : isRates ? UTC(new Date()) : undefined;\n let checkout;\n\n if (checkin) checkout = dateCalc(checkin, parseInt(nights), 'days');\n\n let promo;\n if (config.showPromoNav) {\n const { accomodation: { promo: configPromo = {} } = {}, promoText: placeholder = {} } = config;\n promo = { ...configPromo, placeholder };\n }\n\n let place;\n if (chainSelectorValue && tags) {\n place = tags.options.find(({ value } = {}) => value === Number(chainSelectorValue));\n\n const { id: [id] = [] } = place || {};\n const { accommodationType } = hotel.variants[id] || {};\n if (accommodationType) hotel.accommodationType = accommodationType;\n }\n\n let finder = {\n place: place || storageFinder.place,\n calendar: checkin\n ? [checkin, checkout]\n : storageFinder.calendar && dateDiff(new Date(), new Date(storageFinder.calendar[0])).days > -1\n ? [new Date(storageFinder.calendar[0]), new Date(storageFinder.calendar[1])]\n : [],\n occupation: parties\n ? toOccupation({ chainSelectorValue, occupation, parties, places: tags?.options })\n : isRates\n ? [prepareRoom(occupation.dataSource)]\n : storageFinder.occupation || undefined,\n promocode: clientCode || promo?.code || storageFinder.promocode,\n };\n\n // -- forwarder ------------------------------------------------------------------------------------------------------\n const host = `${document.location.protocol}//${document.location.host}`;\n const isDevelopment = process.env.NODE_ENV === 'development' || window.IS_PLAYWRIGHT;\n const forwarder = {\n rates: miraiId ? `${host}/step1-rates` : `${process.env.SERVICE_BOOKING}/miraiFrontDispatcher.htm`,\n checkout: miraiId ? `${host}/step2-checkout` : `${process.env.SERVICE_BOOKING}/forwarder_client_form.htm`,\n booking: miraiId ? `${host}/step3-booking` : `${process.env.SERVICE_BOOKING}/forwarder_manage_reservation.htm`,\n signup:\n miraiId || isDevelopment\n ? `${host}/signup`\n : `${process.env.SERVICE_USER}/club/v1/forwarder/registration_process`,\n profile:\n miraiId || isDevelopment ? `${host}/profile` : `${process.env.SERVICE_USER}/club/v1/forwarder/members_area`,\n };\n\n return {\n config,\n cookies,\n urlParams,\n ...instance,\n id,\n type,\n\n // region\n currency,\n language,\n country,\n locale,\n locales: config.languages\n ?.map((language) => (language === 'no' ? 'nb' : language))\n .map((language) => `${language}-${COUNTRIES[language]}`),\n\n // entities,\n calendar,\n club,\n components: components.reduce((value, { component, ...props }) => {\n value[component] = props;\n return value;\n }, {}),\n forwarder,\n hotel,\n occupation,\n origin,\n performance: getPerformance(config, hotel.id),\n promo,\n session,\n tags,\n // -- components\n deals: undefined,\n finder,\n lisa: undefined, // ! TODO: Rename to chat\n rates: {\n cart: urlParams.cart ? urlParams.cart.split(',') : urlParams.rates ? getMetaRates(urlParams.rates) : undefined,\n meta: !!urlParams.rates,\n },\n signup: undefined,\n };\n};\n"],"mappings":"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"}
|
|
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.getPerformance = void 0;
|
|
7
|
+
var _helpers = require("../components/helpers");
|
|
7
8
|
var _Core = require("../Core.constants");
|
|
9
|
+
const MONALISA_ID = '100379008';
|
|
8
10
|
const getPerformance = function () {
|
|
9
11
|
let {
|
|
10
12
|
tracking: {
|
|
@@ -14,6 +16,8 @@ const getPerformance = function () {
|
|
|
14
16
|
} = {}
|
|
15
17
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
16
18
|
let hotelId = arguments.length > 1 ? arguments[1] : undefined;
|
|
19
|
+
if (!_helpers.IS_JEST && process.env.NODE_ENV !== 'production' && hotelId !== MONALISA_ID) return;
|
|
20
|
+
|
|
17
21
|
// ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------
|
|
18
22
|
let tracking = others;
|
|
19
23
|
if (trackingChain && trackingHotels) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPerformance.js","names":["
|
|
1
|
+
{"version":3,"file":"getPerformance.js","names":["_helpers","require","_Core","MONALISA_ID","getPerformance","tracking","trackingChain","trackingHotels","others","arguments","length","undefined","hotelId","IS_JEST","process","env","NODE_ENV","hotelTracking","find","idTokenProvider","id","parseInt","Object","keys","forEach","key","filter","TRACKING","map","type","instances","_ref","configuration","exports"],"sources":["../../src/helpers/getPerformance.js"],"sourcesContent":["import { IS_JEST } from '../components/helpers';\nimport { TRACKING } from '../Core.constants';\n\nconst MONALISA_ID = '100379008';\n\nexport const getPerformance = ({ tracking: { trackingChain, trackingHotels, ...others } = {} } = {}, hotelId) => {\n if (!IS_JEST && process.env.NODE_ENV !== 'production' && hotelId !== MONALISA_ID) return;\n\n // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------\n let tracking = others;\n\n if (trackingChain && trackingHotels) {\n tracking = { ...trackingChain };\n const hotelTracking = hotelId && trackingHotels.find(({ idTokenProvider: id } = {}) => id === parseInt(hotelId));\n\n hotelTracking &&\n Object.keys(tracking).forEach((key) => {\n tracking[key] = [...tracking[key], ...hotelTracking[key]];\n });\n }\n\n // ! -- TODO: Choose which one will load gtag\n return Object.keys(tracking).length > 0\n ? Object.keys(tracking)\n .filter((key) => !!TRACKING[key] && tracking[key].length > 0)\n .map((key) => ({\n type: TRACKING[key],\n instances: tracking[key].map(({ configuration = {}, id }) => ({\n ...(configuration !== null ? configuration : {}),\n id,\n })),\n }))\n : undefined;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAEA,MAAME,WAAW,GAAG,WAAW;AAExB,MAAMC,cAAc,GAAG,SAAAA,CAAA,EAAmF;EAAA,IAAlF;IAAEC,QAAQ,EAAE;MAAEC,aAAa;MAAEC,cAAc;MAAE,GAAGC;IAAO,CAAC,GAAG,CAAC;EAAE,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAAA,IAAEG,OAAO,GAAAH,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAAE,SAAA;EAC1G,IAAI,CAACE,gBAAO,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,IAAIJ,OAAO,KAAKT,WAAW,EAAE;;EAElF;EACA,IAAIE,QAAQ,GAAGG,MAAM;EAErB,IAAIF,aAAa,IAAIC,cAAc,EAAE;IACnCF,QAAQ,GAAG;MAAE,GAAGC;IAAc,CAAC;IAC/B,MAAMW,aAAa,GAAGL,OAAO,IAAIL,cAAc,CAACW,IAAI,CAAC;MAAA,IAAC;QAAEC,eAAe,EAAEC;MAAG,CAAC,GAAAX,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;MAAA,OAAKW,EAAE,KAAKC,QAAQ,CAACT,OAAO,CAAC;IAAA,EAAC;IAEhHK,aAAa,IACXK,MAAM,CAACC,IAAI,CAAClB,QAAQ,CAAC,CAACmB,OAAO,CAAEC,GAAG,IAAK;MACrCpB,QAAQ,CAACoB,GAAG,CAAC,GAAG,CAAC,GAAGpB,QAAQ,CAACoB,GAAG,CAAC,EAAE,GAAGR,aAAa,CAACQ,GAAG,CAAC,CAAC;IAC3D,CAAC,CAAC;EACN;;EAEA;EACA,OAAOH,MAAM,CAACC,IAAI,CAAClB,QAAQ,CAAC,CAACK,MAAM,GAAG,CAAC,GACnCY,MAAM,CAACC,IAAI,CAAClB,QAAQ,CAAC,CAClBqB,MAAM,CAAED,GAAG,IAAK,CAAC,CAACE,cAAQ,CAACF,GAAG,CAAC,IAAIpB,QAAQ,CAACoB,GAAG,CAAC,CAACf,MAAM,GAAG,CAAC,CAAC,CAC5DkB,GAAG,CAAEH,GAAG,KAAM;IACbI,IAAI,EAAEF,cAAQ,CAACF,GAAG,CAAC;IACnBK,SAAS,EAAEzB,QAAQ,CAACoB,GAAG,CAAC,CAACG,GAAG,CAACG,IAAA;MAAA,IAAC;QAAEC,aAAa,GAAG,CAAC,CAAC;QAAEZ;MAAG,CAAC,GAAAW,IAAA;MAAA,OAAM;QAC5D,IAAIC,aAAa,KAAK,IAAI,GAAGA,aAAa,GAAG,CAAC,CAAC,CAAC;QAChDZ;MACF,CAAC;IAAA,CAAC;EACJ,CAAC,CAAC,CAAC,GACLT,SAAS;AACf,CAAC;AAACsB,OAAA,CAAA7B,cAAA,GAAAA,cAAA"}
|
package/package.json
CHANGED
package/public/index.html
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
<!-- /site -->
|
|
25
25
|
<div id="app"></div>
|
|
26
26
|
<script async type="module" defer src="./App.jsx"></script>
|
|
27
|
-
<script type="text/javascript" src="https://js-pre.mirai.com/mirai-tracking/mirai.tracking.js"></script>
|
|
27
|
+
<!-- <script type="text/javascript" src="https://js-pre.mirai.com/mirai-tracking/mirai.tracking.js"></script> -->
|
|
28
28
|
|
|
29
29
|
<!-- @mirai/core -->
|
|
30
30
|
<script async type="module" defer src="../src/index.js"></script>
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.action = void 0;
|
|
7
|
-
var _dataSources = require("@mirai/data-sources");
|
|
8
|
-
const action = function () {
|
|
9
|
-
let {
|
|
10
|
-
context,
|
|
11
|
-
intent,
|
|
12
|
-
locale,
|
|
13
|
-
session = {}
|
|
14
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
15
|
-
return (0, _dataSources.request)({
|
|
16
|
-
method: 'POST',
|
|
17
|
-
hostname: process.env.SERVICE_LISA,
|
|
18
|
-
endpoint: '/action',
|
|
19
|
-
headers: {
|
|
20
|
-
authorization: session.authorization
|
|
21
|
-
},
|
|
22
|
-
context,
|
|
23
|
-
intent,
|
|
24
|
-
locale
|
|
25
|
-
});
|
|
26
|
-
};
|
|
27
|
-
exports.action = action;
|
|
28
|
-
//# sourceMappingURL=action.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"action.js","names":["_dataSources","require","action","context","intent","locale","session","arguments","length","undefined","request","method","hostname","process","env","SERVICE_LISA","endpoint","headers","authorization","exports"],"sources":["../../../../../src/components/Chat/services/Lisa/action.js"],"sourcesContent":["import { request } from '@mirai/data-sources';\n\nexport const action = ({ context, intent, locale, session = {} } = {}) =>\n request({\n method: 'POST',\n hostname: process.env.SERVICE_LISA,\n endpoint: '/action',\n headers: { authorization: session.authorization },\n context,\n intent,\n locale,\n });\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEO,MAAMC,MAAM,GAAG,SAAAA,CAAA;EAAA,IAAC;IAAEC,OAAO;IAAEC,MAAM;IAAEC,MAAM;IAAEC,OAAO,GAAG,CAAC;EAAE,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAAA,OACnE,IAAAG,oBAAO,EAAC;IACNC,MAAM,EAAE,MAAM;IACdC,QAAQ,EAAEC,OAAO,CAACC,GAAG,CAACC,YAAY;IAClCC,QAAQ,EAAE,SAAS;IACnBC,OAAO,EAAE;MAAEC,aAAa,EAAEZ,OAAO,CAACY;IAAc,CAAC;IACjDf,OAAO;IACPC,MAAM;IACNC;EACF,CAAC,CAAC;AAAA;AAACc,OAAA,CAAAjB,MAAA,GAAAA,MAAA"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.ServiceLisa = void 0;
|
|
7
|
-
var _action = require("./action");
|
|
8
|
-
var _message = require("./message");
|
|
9
|
-
var _status = require("./status");
|
|
10
|
-
var _welcome = require("./welcome");
|
|
11
|
-
const ServiceLisa = exports.ServiceLisa = {
|
|
12
|
-
action: _action.action,
|
|
13
|
-
message: _message.message,
|
|
14
|
-
status: _status.status,
|
|
15
|
-
welcome: _welcome.welcome
|
|
16
|
-
};
|
|
17
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_action","require","_message","_status","_welcome","ServiceLisa","exports","action","message","status","welcome"],"sources":["../../../../../src/components/Chat/services/Lisa/index.js"],"sourcesContent":["import { action } from './action';\nimport { message } from './message';\nimport { status } from './status';\nimport { welcome } from './welcome';\n\nexport const ServiceLisa = {\n action,\n message,\n status,\n welcome,\n};\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAEO,MAAMI,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG;EACzBE,MAAM,EAANA,cAAM;EACNC,OAAO,EAAPA,gBAAO;EACPC,MAAM,EAANA,cAAM;EACNC,OAAO,EAAPA;AACF,CAAC"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.message = void 0;
|
|
7
|
-
var _dataSources = require("@mirai/data-sources");
|
|
8
|
-
const message = function () {
|
|
9
|
-
let {
|
|
10
|
-
context,
|
|
11
|
-
input,
|
|
12
|
-
session = {}
|
|
13
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
14
|
-
return (0, _dataSources.request)({
|
|
15
|
-
method: 'POST',
|
|
16
|
-
hostname: process.env.SERVICE_LISA,
|
|
17
|
-
endpoint: "/message",
|
|
18
|
-
headers: {
|
|
19
|
-
authorization: session.authorization
|
|
20
|
-
},
|
|
21
|
-
input,
|
|
22
|
-
context
|
|
23
|
-
});
|
|
24
|
-
};
|
|
25
|
-
exports.message = message;
|
|
26
|
-
//# sourceMappingURL=message.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","names":["_dataSources","require","message","context","input","session","arguments","length","undefined","request","method","hostname","process","env","SERVICE_LISA","endpoint","headers","authorization","exports"],"sources":["../../../../../src/components/Chat/services/Lisa/message.js"],"sourcesContent":["import { request } from '@mirai/data-sources';\n\nexport const message = ({ context, input, session = {} } = {}) =>\n request({\n method: 'POST',\n hostname: process.env.SERVICE_LISA,\n endpoint: `/message`,\n headers: { authorization: session.authorization },\n input,\n context,\n });\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEO,MAAMC,OAAO,GAAG,SAAAA,CAAA;EAAA,IAAC;IAAEC,OAAO;IAAEC,KAAK;IAAEC,OAAO,GAAG,CAAC;EAAE,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAAA,OAC3D,IAAAG,oBAAO,EAAC;IACNC,MAAM,EAAE,MAAM;IACdC,QAAQ,EAAEC,OAAO,CAACC,GAAG,CAACC,YAAY;IAClCC,QAAQ,YAAY;IACpBC,OAAO,EAAE;MAAEC,aAAa,EAAEZ,OAAO,CAACY;IAAc,CAAC;IACjDb,KAAK;IACLD;EACF,CAAC,CAAC;AAAA;AAACe,OAAA,CAAAhB,OAAA,GAAAA,OAAA"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.status = void 0;
|
|
7
|
-
var _dataSources = require("@mirai/data-sources");
|
|
8
|
-
const status = () => (0, _dataSources.request)({
|
|
9
|
-
hostname: process.env.SERVICE_LISA,
|
|
10
|
-
endpoint: '/status'
|
|
11
|
-
});
|
|
12
|
-
exports.status = status;
|
|
13
|
-
//# sourceMappingURL=status.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","names":["_dataSources","require","status","request","hostname","process","env","SERVICE_LISA","endpoint","exports"],"sources":["../../../../../src/components/Chat/services/Lisa/status.js"],"sourcesContent":["import { request } from '@mirai/data-sources';\n\nexport const status = () => request({ hostname: process.env.SERVICE_LISA, endpoint: '/status' });\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEO,MAAMC,MAAM,GAAGA,CAAA,KAAM,IAAAC,oBAAO,EAAC;EAAEC,QAAQ,EAAEC,OAAO,CAACC,GAAG,CAACC,YAAY;EAAEC,QAAQ,EAAE;AAAU,CAAC,CAAC;AAACC,OAAA,CAAAP,MAAA,GAAAA,MAAA"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.welcome = void 0;
|
|
7
|
-
var _dataSources = require("@mirai/data-sources");
|
|
8
|
-
const welcome = function () {
|
|
9
|
-
let {
|
|
10
|
-
locale,
|
|
11
|
-
session: {
|
|
12
|
-
authorization,
|
|
13
|
-
firstName: name = ''
|
|
14
|
-
} = {}
|
|
15
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
16
|
-
return (0, _dataSources.request)({
|
|
17
|
-
hostname: process.env.SERVICE_LISA,
|
|
18
|
-
endpoint: "/welcome?locale=".concat(locale, "&name=").concat(name, "&time=").concat(new Date().getHours()),
|
|
19
|
-
headers: {
|
|
20
|
-
authorization
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
};
|
|
24
|
-
exports.welcome = welcome;
|
|
25
|
-
//# sourceMappingURL=welcome.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"welcome.js","names":["_dataSources","require","welcome","locale","session","authorization","firstName","name","arguments","length","undefined","request","hostname","process","env","SERVICE_LISA","endpoint","concat","Date","getHours","headers","exports"],"sources":["../../../../../src/components/Chat/services/Lisa/welcome.js"],"sourcesContent":["import { request } from '@mirai/data-sources';\n\nexport const welcome = ({ locale, session: { authorization, firstName: name = '' } = {} } = {}) =>\n request({\n hostname: process.env.SERVICE_LISA,\n endpoint: `/welcome?locale=${locale}&name=${name}&time=${new Date().getHours()}`,\n headers: { authorization },\n });\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEO,MAAMC,OAAO,GAAG,SAAAA,CAAA;EAAA,IAAC;IAAEC,MAAM;IAAEC,OAAO,EAAE;MAAEC,aAAa;MAAEC,SAAS,EAAEC,IAAI,GAAG;IAAG,CAAC,GAAG,CAAC;EAAE,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAAA,OAC5F,IAAAG,oBAAO,EAAC;IACNC,QAAQ,EAAEC,OAAO,CAACC,GAAG,CAACC,YAAY;IAClCC,QAAQ,qBAAAC,MAAA,CAAqBd,MAAM,YAAAc,MAAA,CAASV,IAAI,YAAAU,MAAA,CAAS,IAAIC,IAAI,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,CAAE;IAChFC,OAAO,EAAE;MAAEf;IAAc;EAC3B,CAAC,CAAC;AAAA;AAACgB,OAAA,CAAAnB,OAAA,GAAAA,OAAA"}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.ClubRate = void 0;
|
|
7
|
-
var _dataSources = require("@mirai/data-sources");
|
|
8
|
-
var _locale = require("@mirai/locale");
|
|
9
|
-
var _ui = require("@mirai/ui");
|
|
10
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
-
var _ClubRate = require("./ClubRate.l10n");
|
|
13
|
-
var style = _interopRequireWildcard(require("./ClubRate.module.css"));
|
|
14
|
-
var _helpers = require("../../../helpers");
|
|
15
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
16
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
18
|
-
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
19
|
-
const ClubRate = _ref => {
|
|
20
|
-
let {
|
|
21
|
-
visible,
|
|
22
|
-
onCancel = () => {},
|
|
23
|
-
onSubmit = () => {},
|
|
24
|
-
...others
|
|
25
|
-
} = _ref;
|
|
26
|
-
const {
|
|
27
|
-
isMobile
|
|
28
|
-
} = (0, _ui.useDevice)();
|
|
29
|
-
const {
|
|
30
|
-
locale: stateLocale,
|
|
31
|
-
translate
|
|
32
|
-
} = (0, _locale.useLocale)();
|
|
33
|
-
const {
|
|
34
|
-
value: {
|
|
35
|
-
club: {
|
|
36
|
-
banner: {
|
|
37
|
-
benefits = []
|
|
38
|
-
} = {}
|
|
39
|
-
} = {}
|
|
40
|
-
}
|
|
41
|
-
} = (0, _dataSources.useStore)();
|
|
42
|
-
(0, _react.useEffect)(() => {
|
|
43
|
-
if (visible) _dataSources.Event.publish(_helpers.EVENT.METRICS, {
|
|
44
|
-
id: 'RATES:CLUB_RATE'
|
|
45
|
-
});
|
|
46
|
-
}, [visible]);
|
|
47
|
-
const locale = (0, _helpers.getNormalizedLocale)(stateLocale);
|
|
48
|
-
const handleCancel = () => {
|
|
49
|
-
_dataSources.Event.publish(_helpers.EVENT.RATES_FILTER_CLUB, false);
|
|
50
|
-
onCancel();
|
|
51
|
-
_dataSources.Event.publish(_helpers.EVENT.METRICS, {
|
|
52
|
-
id: 'RATES:CLUB_RATE:CLUBDISCOUNT',
|
|
53
|
-
value: false
|
|
54
|
-
});
|
|
55
|
-
};
|
|
56
|
-
return /*#__PURE__*/_react.default.createElement(_ui.View, _extends({}, others, {
|
|
57
|
-
className: style.container
|
|
58
|
-
}), /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
59
|
-
accent: true,
|
|
60
|
-
bold: true
|
|
61
|
-
}, translate(_ClubRate.L10N.LABEL_UNLOCK_EXCLUSIVE_MEMBER)), /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
62
|
-
action: true
|
|
63
|
-
}, translate(_ClubRate.L10N.LABEL_CLUB_BENEFITS)), !isMobile && benefits.length > 0 && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
64
|
-
className: style.list
|
|
65
|
-
}, benefits.map(function () {
|
|
66
|
-
let {
|
|
67
|
-
description,
|
|
68
|
-
icon
|
|
69
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
70
|
-
let index = arguments.length > 1 ? arguments[1] : undefined;
|
|
71
|
-
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
72
|
-
key: index,
|
|
73
|
-
row: true,
|
|
74
|
-
className: style.benefit
|
|
75
|
-
}, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
|
|
76
|
-
accent: true,
|
|
77
|
-
value: _helpers.ICON[icon] || _helpers.ICON.AMENITY
|
|
78
|
-
}), /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
79
|
-
action: !isMobile,
|
|
80
|
-
small: isMobile
|
|
81
|
-
}, description[locale] || description[_locale.DEFAULT_LOCALE]));
|
|
82
|
-
})), /*#__PURE__*/_react.default.createElement(_ui.Button, {
|
|
83
|
-
onPress: onSubmit,
|
|
84
|
-
wide: true
|
|
85
|
-
}, translate(_ClubRate.L10N.ACTION_BOOK_AND_JOIN)), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
86
|
-
className: style.anchor
|
|
87
|
-
}), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
88
|
-
className: style.divider
|
|
89
|
-
}), /*#__PURE__*/_react.default.createElement(_ui.Action, {
|
|
90
|
-
onPress: handleCancel
|
|
91
|
-
}, translate(_ClubRate.L10N.ACTION_SELECT_ANOTHER_FARE)));
|
|
92
|
-
};
|
|
93
|
-
exports.ClubRate = ClubRate;
|
|
94
|
-
ClubRate.displayName = 'Mirai:Core:Rates:ClubRate';
|
|
95
|
-
ClubRate.propTypes = {
|
|
96
|
-
visible: _propTypes.default.bool,
|
|
97
|
-
onCancel: _propTypes.default.func,
|
|
98
|
-
onSubmit: _propTypes.default.func
|
|
99
|
-
};
|
|
100
|
-
//# sourceMappingURL=ClubRate.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ClubRate.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_ClubRate","style","_helpers","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","ClubRate","_ref","visible","onCancel","onSubmit","others","isMobile","useDevice","locale","stateLocale","translate","useLocale","value","club","banner","benefits","useStore","useEffect","Event","publish","EVENT","METRICS","id","getNormalizedLocale","handleCancel","RATES_FILTER_CLUB","createElement","View","className","container","Text","accent","bold","L10N","LABEL_UNLOCK_EXCLUSIVE_MEMBER","action","LABEL_CLUB_BENEFITS","list","map","description","icon","undefined","index","row","benefit","Icon","ICON","AMENITY","small","DEFAULT_LOCALE","Button","onPress","wide","ACTION_BOOK_AND_JOIN","anchor","divider","Action","ACTION_SELECT_ANOTHER_FARE","exports","displayName","propTypes","PropTypes","bool","func"],"sources":["../../../../../src/components/Rates/components/ClubRate/ClubRate.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { DEFAULT_LOCALE, useLocale } from '@mirai/locale';\nimport { Action, Button, Icon, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect } from 'react';\n\nimport { L10N } from './ClubRate.l10n';\nimport * as style from './ClubRate.module.css';\nimport { EVENT, getNormalizedLocale, ICON } from '../../../helpers';\n\nconst ClubRate = ({ visible, onCancel = () => {}, onSubmit = () => {}, ...others }) => {\n const { isMobile } = useDevice();\n const { locale: stateLocale, translate } = useLocale();\n const {\n value: { club: { banner: { benefits = [] } = {} } = {} },\n } = useStore();\n\n useEffect(() => {\n if (visible) Event.publish(EVENT.METRICS, { id: 'RATES:CLUB_RATE' });\n }, [visible]);\n\n const locale = getNormalizedLocale(stateLocale);\n\n const handleCancel = () => {\n Event.publish(EVENT.RATES_FILTER_CLUB, false);\n onCancel();\n Event.publish(EVENT.METRICS, { id: 'RATES:CLUB_RATE:CLUBDISCOUNT', value: false });\n };\n\n return (\n <View {...others} className={style.container}>\n <Text accent bold>\n {translate(L10N.LABEL_UNLOCK_EXCLUSIVE_MEMBER)}\n </Text>\n\n <Text action>{translate(L10N.LABEL_CLUB_BENEFITS)}</Text>\n\n {!isMobile && benefits.length > 0 && (\n <View className={style.list}>\n {benefits.map(({ description, icon } = {}, index) => (\n <View key={index} row className={style.benefit}>\n <Icon accent value={ICON[icon] || ICON.AMENITY} />\n <Text action={!isMobile} small={isMobile}>\n {description[locale] || description[DEFAULT_LOCALE]}\n </Text>\n </View>\n ))}\n </View>\n )}\n\n <Button onPress={onSubmit} wide>\n {translate(L10N.ACTION_BOOK_AND_JOIN)}\n </Button>\n\n <View className={style.anchor} />\n <View className={style.divider} />\n\n <Action onPress={handleCancel}>{translate(L10N.ACTION_SELECT_ANOTHER_FARE)}</Action>\n </View>\n );\n};\n\nClubRate.displayName = 'Mirai:Core:Rates:ClubRate';\n\nClubRate.propTypes = {\n visible: PropTypes.bool,\n onCancel: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { ClubRate };\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ClubRate.l10n.js","names":["L10N","exports","ACTION_BOOK_AND_JOIN","id","ACTION_SELECT_ANOTHER_FARE","LABEL_CLUB_BENEFITS","LABEL_UNLOCK_EXCLUSIVE_MEMBER"],"sources":["../../../../../src/components/Rates/components/ClubRate/ClubRate.l10n.js"],"sourcesContent":["export const L10N = {\n ACTION_BOOK_AND_JOIN: { id: 'user.action.book_and_join' },\n ACTION_SELECT_ANOTHER_FARE: { id: 'user.action.select_another_fare' },\n\n LABEL_CLUB_BENEFITS: { id: 'finder.label.club_benefits' },\n LABEL_UNLOCK_EXCLUSIVE_MEMBER: { id: 'user.label.unlock_exclusive_member' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,oBAAoB,EAAE;IAAEC,EAAE,EAAE;EAA4B,CAAC;EACzDC,0BAA0B,EAAE;IAAED,EAAE,EAAE;EAAkC,CAAC;EAErEE,mBAAmB,EAAE;IAAEF,EAAE,EAAE;EAA6B,CAAC;EACzDG,6BAA6B,EAAE;IAAEH,EAAE,EAAE;EAAqC;AAC5E,CAAC"}
|