@mirai/core 0.4.558 → 0.4.560
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.
|
@@ -48,7 +48,8 @@ const Chat = _ref => {
|
|
|
48
48
|
origin,
|
|
49
49
|
session,
|
|
50
50
|
skeleton = false,
|
|
51
|
-
type
|
|
51
|
+
type,
|
|
52
|
+
urlParams = {}
|
|
52
53
|
} = {}
|
|
53
54
|
} = (0, _dataSources.useStore)();
|
|
54
55
|
const [busy, setBusy] = (0, _react.useState)(false);
|
|
@@ -191,7 +192,8 @@ const Chat = _ref => {
|
|
|
191
192
|
setVisible(false);
|
|
192
193
|
setInputMode();
|
|
193
194
|
};
|
|
194
|
-
const
|
|
195
|
+
const isSaraiForced = urlParams.sarai === 'true';
|
|
196
|
+
const isReady = !skeleton && Object.keys(components).every(item => !_Chat.BANNED_COMPONENTS.includes(item)) && ((channelSettings === null || channelSettings === void 0 ? void 0 : (_channelSettings$web = channelSettings.web) === null || _channelSettings$web === void 0 ? void 0 : _channelSettings$web.active) || isSaraiForced);
|
|
195
197
|
const {
|
|
196
198
|
entities = {}
|
|
197
199
|
} = messages[messages.length - 1] || {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chat.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Chat","_Chat2","style","_components","_Aura","_helpers","_lobby","_Core","_helpers2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectDestructuringEmpty","_extends","assign","bind","client","Chat","_ref","_channelSettings$web","_channelSettings$ai","others","translate","useLocale","isMobile","useDevice","calendar","components","currency","hotel","id","locale","occupation","origin","session","skeleton","type","useStore","busy","setBusy","useState","channelSettings","setChannelSettings","inputMode","setInputMode","messages","setMessages","visible","setVisible","useEffect","Event","subscribe","EVENT","CHAT_OPEN","handleOpen","unsubscribe","active","loadSettings","channel","getChannelSettings","channelId","settings","_client","INPUT_MODE","TEXT","disconnect","ClientLobby","onMessage","message","_client2","author","body","createdAt","fingerprint","prev","synapse","text","timestamp","connect","handleInput","input","_client3","shortcutMessage","undefined","nextMessages","Date","getTime","send","setTimeout","_client4","aiBlocked","context","TYPE","CHAIN","chain","response","ServiceSynapse","mcp","catch","_client5","audioNotification","DELAY_RESPONSE","handleInputMode","next","publish","METRICS","METRICS_EVENTS","SARAI_INTERACTION","action","method","WHATSAPP","handleClose","source","SARAI_SOURCE","CHAT_OPENED","event","CHAT_CLOSE","isReady","every","item","BANNED_COMPONENTS","includes","web","entities","createElement","Fragment","Modal","fit","portal","className","styles","container","Header","onClose","Welcome","onInputMode","ScrollView","scrollTo","snap","map","index","Message","key","concat","disabled","Input","onValue","AUDIO","Aura","onCallEnd","RATING","Rating","onRejoin","onReturnHome","Text","light","tiny","warning","L10N","LABEL_WARNING_RESPONSES","name","ai","DEFAULT_NAME","ButtonDispatcher","onPress","exports"],"sources":["../../../src/components/Chat/Chat.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceSynapse } from '@mirai/services';\nimport { Modal, ScrollView, styles, Text, useDevice } from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport { BANNED_COMPONENTS, DEFAULT_NAME, DELAY_RESPONSE, INPUT_MODE } from './Chat.constants';\nimport { L10N } from './Chat.l10n';\nimport * as style from './Chat.module.css';\nimport { ButtonDispatcher, Header, Input, Message, Rating, Welcome } from './components';\nimport { Aura } from './components/Aura/Aura';\nimport { audioNotification, ClientLobby } from './helpers';\nimport { getChannelSettings } from './services/lobby.service';\nimport { SARAI_SOURCE, TYPE } from '../../Core.constants';\nimport { EVENT, METRICS_EVENTS } from '../helpers';\n\nlet client;\n\nconst Chat = ({ ...others }) => {\n const { translate } = useLocale();\n const { isMobile } = useDevice();\n const {\n value: {\n calendar,\n components = {},\n currency,\n hotel,\n id,\n locale,\n occupation,\n origin,\n session,\n skeleton = false,\n type,\n } = {},\n } = useStore();\n\n const [busy, setBusy] = useState(false);\n const [channelSettings, setChannelSettings] = useState();\n const [inputMode, setInputMode] = useState();\n const [messages, setMessages] = useState([]);\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n if (skeleton) return;\n\n Event.subscribe(EVENT.CHAT_OPEN, handleOpen);\n return () => Event.unsubscribe(EVENT.CHAT_OPEN, handleOpen);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [skeleton]);\n\n useEffect(() => {\n if (skeleton || !id) {\n setChannelSettings();\n return;\n }\n\n let active = true;\n\n const loadSettings = async () => {\n const channel = await getChannelSettings({ channelId: id });\n if (!active) return;\n setChannelSettings(channel?.settings);\n };\n\n loadSettings();\n\n return () => {\n active = false;\n };\n }, [id, skeleton]);\n\n useEffect(() => {\n if (!visible || inputMode !== INPUT_MODE.TEXT) return client?.disconnect();\n\n client = new ClientLobby({ channelId: id, session });\n\n client.onMessage((message) => {\n const { author, body, createdAt, fingerprint } = message || {};\n if (fingerprint !== client?.fingerprint || author !== 'human') return;\n setMessages((prev) => [...prev, { synapse: true, text: body, timestamp: createdAt }]);\n });\n\n client.connect();\n }, [id, inputMode, session, visible]);\n\n const handleInput = (input, shortcutMessage = false) => {\n const nextMessages = [...messages, { text: input, timestamp: new Date().getTime() }];\n setMessages(nextMessages);\n\n client?.send({ body: input });\n\n setTimeout(async () => {\n if (client?.aiBlocked) return;\n setBusy(true);\n\n const context = { calendar, currency, isMobile, locale, occupation, origin, shortcutMessage };\n if (type === TYPE.CHAIN) context.chain = { id };\n if (hotel.id) context.hotel = hotel;\n\n const response = await ServiceSynapse.message({\n context,\n input,\n session,\n mcp: false,\n }).catch(() => {});\n\n if (response) {\n setMessages([...nextMessages, { synapse: true, ...response }]);\n client?.send({ body: response.text, author: 'ai' });\n\n // ! TODO: Handle locale\n // if (response.locale !== locale) Event.publish(EVENT.INTENT_LOCALE, { locale: response.locale });\n audioNotification();\n }\n setBusy(false);\n }, DELAY_RESPONSE);\n };\n\n const handleInputMode = (next) => {\n Event.publish(EVENT.METRICS, { id: METRICS_EVENTS.SARAI_INTERACTION, action: 'click', method: next });\n if (next === INPUT_MODE.WHATSAPP) return handleClose();\n setInputMode(next);\n };\n\n const handleOpen = ({ source = SARAI_SOURCE } = {}) => {\n setVisible(true);\n Event.publish(EVENT.CHAT_OPENED, { event: EVENT.CHAT_OPENED, source });\n Event.publish(EVENT.METRICS, { id: METRICS_EVENTS.SARAI_INTERACTION, action: 'open', method: inputMode });\n };\n\n const handleClose = () => {\n Event.publish(EVENT.CHAT_CLOSE, { inputMode });\n Event.publish(EVENT.METRICS, { id: METRICS_EVENTS.SARAI_INTERACTION, action: 'close', method: inputMode });\n setVisible(false);\n setInputMode();\n };\n\n const isReady =\n !skeleton &&\n Object.keys(components).every((item) => !BANNED_COMPONENTS.includes(item)) &&\n channelSettings?.web?.active;\n const { entities = {} } = messages[messages.length - 1] || {};\n\n return isReady ? (\n <>\n <Modal {...others} fit portal visible={visible} className={styles(style.container, others.className)}>\n <Header settings={channelSettings} onClose={handleClose} />\n\n {!inputMode ? (\n <Welcome settings={channelSettings} onInputMode={handleInputMode} />\n ) : inputMode === INPUT_MODE.TEXT ? (\n <>\n <ScrollView scrollTo={new Date().getTime()} snap={false} className={style.messages}>\n {messages.map((message, index) => (\n <Message key={`message:${index}`} disabled={busy || index < messages.length - 1} {...message} />\n ))}\n {busy && <Message busy synapse />}\n </ScrollView>\n <Input disabled={busy} entities={entities} onValue={handleInput} className={style.input} />\n </>\n ) : inputMode === INPUT_MODE.AUDIO ? (\n <Aura settings={channelSettings} onCallEnd={() => setInputMode(INPUT_MODE.RATING)} />\n ) : inputMode === INPUT_MODE.RATING ? (\n <Rating onRejoin={() => setInputMode(INPUT_MODE.AUDIO)} onReturnHome={handleClose} />\n ) : null}\n <Text light tiny className={style.warning}>\n {translate(L10N.LABEL_WARNING_RESPONSES, { name: channelSettings?.ai?.name || DEFAULT_NAME })}\n </Text>\n </Modal>\n\n <ButtonDispatcher settings={channelSettings} visible={visible} onPress={handleOpen} />\n </>\n ) : null;\n};\n\nexport { Chat };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Chat.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Chat","_Chat2","style","_components","_Aura","_helpers","_lobby","_Core","_helpers2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectDestructuringEmpty","_extends","assign","bind","client","Chat","_ref","_channelSettings$web","_channelSettings$ai","others","translate","useLocale","isMobile","useDevice","calendar","components","currency","hotel","id","locale","occupation","origin","session","skeleton","type","urlParams","useStore","busy","setBusy","useState","channelSettings","setChannelSettings","inputMode","setInputMode","messages","setMessages","visible","setVisible","useEffect","Event","subscribe","EVENT","CHAT_OPEN","handleOpen","unsubscribe","active","loadSettings","channel","getChannelSettings","channelId","settings","_client","INPUT_MODE","TEXT","disconnect","ClientLobby","onMessage","message","_client2","author","body","createdAt","fingerprint","prev","synapse","text","timestamp","connect","handleInput","input","_client3","shortcutMessage","undefined","nextMessages","Date","getTime","send","setTimeout","_client4","aiBlocked","context","TYPE","CHAIN","chain","response","ServiceSynapse","mcp","catch","_client5","audioNotification","DELAY_RESPONSE","handleInputMode","next","publish","METRICS","METRICS_EVENTS","SARAI_INTERACTION","action","method","WHATSAPP","handleClose","source","SARAI_SOURCE","CHAT_OPENED","event","CHAT_CLOSE","isSaraiForced","sarai","isReady","every","item","BANNED_COMPONENTS","includes","web","entities","createElement","Fragment","Modal","fit","portal","className","styles","container","Header","onClose","Welcome","onInputMode","ScrollView","scrollTo","snap","map","index","Message","key","concat","disabled","Input","onValue","AUDIO","Aura","onCallEnd","RATING","Rating","onRejoin","onReturnHome","Text","light","tiny","warning","L10N","LABEL_WARNING_RESPONSES","name","ai","DEFAULT_NAME","ButtonDispatcher","onPress","exports"],"sources":["../../../src/components/Chat/Chat.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceSynapse } from '@mirai/services';\nimport { Modal, ScrollView, styles, Text, useDevice } from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport { BANNED_COMPONENTS, DEFAULT_NAME, DELAY_RESPONSE, INPUT_MODE } from './Chat.constants';\nimport { L10N } from './Chat.l10n';\nimport * as style from './Chat.module.css';\nimport { ButtonDispatcher, Header, Input, Message, Rating, Welcome } from './components';\nimport { Aura } from './components/Aura/Aura';\nimport { audioNotification, ClientLobby } from './helpers';\nimport { getChannelSettings } from './services/lobby.service';\nimport { SARAI_SOURCE, TYPE } from '../../Core.constants';\nimport { EVENT, METRICS_EVENTS } from '../helpers';\n\nlet client;\n\nconst Chat = ({ ...others }) => {\n const { translate } = useLocale();\n const { isMobile } = useDevice();\n const {\n value: {\n calendar,\n components = {},\n currency,\n hotel,\n id,\n locale,\n occupation,\n origin,\n session,\n skeleton = false,\n type,\n urlParams = {},\n } = {},\n } = useStore();\n\n const [busy, setBusy] = useState(false);\n const [channelSettings, setChannelSettings] = useState();\n const [inputMode, setInputMode] = useState();\n const [messages, setMessages] = useState([]);\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n if (skeleton) return;\n\n Event.subscribe(EVENT.CHAT_OPEN, handleOpen);\n return () => Event.unsubscribe(EVENT.CHAT_OPEN, handleOpen);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [skeleton]);\n\n useEffect(() => {\n if (skeleton || !id) {\n setChannelSettings();\n return;\n }\n\n let active = true;\n\n const loadSettings = async () => {\n const channel = await getChannelSettings({ channelId: id });\n if (!active) return;\n setChannelSettings(channel?.settings);\n };\n\n loadSettings();\n\n return () => {\n active = false;\n };\n }, [id, skeleton]);\n\n useEffect(() => {\n if (!visible || inputMode !== INPUT_MODE.TEXT) return client?.disconnect();\n\n client = new ClientLobby({ channelId: id, session });\n\n client.onMessage((message) => {\n const { author, body, createdAt, fingerprint } = message || {};\n if (fingerprint !== client?.fingerprint || author !== 'human') return;\n setMessages((prev) => [...prev, { synapse: true, text: body, timestamp: createdAt }]);\n });\n\n client.connect();\n }, [id, inputMode, session, visible]);\n\n const handleInput = (input, shortcutMessage = false) => {\n const nextMessages = [...messages, { text: input, timestamp: new Date().getTime() }];\n setMessages(nextMessages);\n\n client?.send({ body: input });\n\n setTimeout(async () => {\n if (client?.aiBlocked) return;\n setBusy(true);\n\n const context = { calendar, currency, isMobile, locale, occupation, origin, shortcutMessage };\n if (type === TYPE.CHAIN) context.chain = { id };\n if (hotel.id) context.hotel = hotel;\n\n const response = await ServiceSynapse.message({\n context,\n input,\n session,\n mcp: false,\n }).catch(() => {});\n\n if (response) {\n setMessages([...nextMessages, { synapse: true, ...response }]);\n client?.send({ body: response.text, author: 'ai' });\n\n // ! TODO: Handle locale\n // if (response.locale !== locale) Event.publish(EVENT.INTENT_LOCALE, { locale: response.locale });\n audioNotification();\n }\n setBusy(false);\n }, DELAY_RESPONSE);\n };\n\n const handleInputMode = (next) => {\n Event.publish(EVENT.METRICS, { id: METRICS_EVENTS.SARAI_INTERACTION, action: 'click', method: next });\n if (next === INPUT_MODE.WHATSAPP) return handleClose();\n setInputMode(next);\n };\n\n const handleOpen = ({ source = SARAI_SOURCE } = {}) => {\n setVisible(true);\n Event.publish(EVENT.CHAT_OPENED, { event: EVENT.CHAT_OPENED, source });\n Event.publish(EVENT.METRICS, { id: METRICS_EVENTS.SARAI_INTERACTION, action: 'open', method: inputMode });\n };\n\n const handleClose = () => {\n Event.publish(EVENT.CHAT_CLOSE, { inputMode });\n Event.publish(EVENT.METRICS, { id: METRICS_EVENTS.SARAI_INTERACTION, action: 'close', method: inputMode });\n setVisible(false);\n setInputMode();\n };\n\n const isSaraiForced = urlParams.sarai === 'true';\n const isReady =\n !skeleton &&\n Object.keys(components).every((item) => !BANNED_COMPONENTS.includes(item)) &&\n (channelSettings?.web?.active || isSaraiForced);\n const { entities = {} } = messages[messages.length - 1] || {};\n\n return isReady ? (\n <>\n <Modal {...others} fit portal visible={visible} className={styles(style.container, others.className)}>\n <Header settings={channelSettings} onClose={handleClose} />\n\n {!inputMode ? (\n <Welcome settings={channelSettings} onInputMode={handleInputMode} />\n ) : inputMode === INPUT_MODE.TEXT ? (\n <>\n <ScrollView scrollTo={new Date().getTime()} snap={false} className={style.messages}>\n {messages.map((message, index) => (\n <Message key={`message:${index}`} disabled={busy || index < messages.length - 1} {...message} />\n ))}\n {busy && <Message busy synapse />}\n </ScrollView>\n <Input disabled={busy} entities={entities} onValue={handleInput} className={style.input} />\n </>\n ) : inputMode === INPUT_MODE.AUDIO ? (\n <Aura settings={channelSettings} onCallEnd={() => setInputMode(INPUT_MODE.RATING)} />\n ) : inputMode === INPUT_MODE.RATING ? (\n <Rating onRejoin={() => setInputMode(INPUT_MODE.AUDIO)} onReturnHome={handleClose} />\n ) : null}\n <Text light tiny className={style.warning}>\n {translate(L10N.LABEL_WARNING_RESPONSES, { name: channelSettings?.ai?.name || DEFAULT_NAME })}\n </Text>\n </Modal>\n\n <ButtonDispatcher settings={channelSettings} visible={visible} onPress={handleOpen} />\n </>\n ) : null;\n};\n\nexport { Chat };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -82,6 +82,7 @@ const ratesResponse = function () {
|
|
|
82
82
|
} = tracking;
|
|
83
83
|
const {
|
|
84
84
|
adults = 0,
|
|
85
|
+
babies = 0,
|
|
85
86
|
children = 0
|
|
86
87
|
} = (0, _helpers2.getOccupationTotals)({
|
|
87
88
|
infantAge,
|
|
@@ -123,7 +124,7 @@ const ratesResponse = function () {
|
|
|
123
124
|
lodgingDenomination: ACCOMMODATION_TYPE_NAME[((_variants$hotelId = variants[hotelId]) === null || _variants$hotelId === void 0 ? void 0 : _variants$hotelId.accommodationType) || accommodationType],
|
|
124
125
|
multiroom: occupation.length > 1,
|
|
125
126
|
numAdults: adults,
|
|
126
|
-
numChildren: children,
|
|
127
|
+
numChildren: babies + children,
|
|
127
128
|
numRooms: occupation.length,
|
|
128
129
|
pricePerNight: showPricePerNight,
|
|
129
130
|
propertyName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ratesResponse.js","names":["_locale","require","_duetto","_helpers","_helpers2","_helpers3","_Core","_helpers4","_helpers5","_helpers6","_legacy","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ACCOMMODATION_TYPE_NAME","ACCOMMODATION_TYPE","ratesResponse","_variants$hotelId","device","mobile","response","calendar","calendarSuggestion","currency","finder","occupation","place","title","searchCategory","promocode","hotels","infantAge","language","session","tracking","store","hotel","accommodationType","features","variants","id","type","urlParams","undefined","idchain","idoffers","idtokenprovider","hotelId","roomTypeId","fetchUrlParams","location","search","country","hotelInfo","hotelCurrency","propertyName","propertyType","hotelInfoBAR","localTaxesIncluded","rates","taxesIncluded","userCurrency","userCurrencyValue","userLocation","adults","children","getOccupationTotals","minRate","maxRate","getRatesPriceRange","days","nights","dateDiff","showPricePerNight","getFeatures","has","hotelAvailability","chainAvailability","bestAvailableRate","availability","step","common","chainId","checkin","dateFormat","format","checkout","coupon","home","document","hostname","idOffer","parseInt","idRoom","lodgingDenomination","multiroom","numAdults","numChildren","numRooms","pricePerNight","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","totalPrice","internalWithTaxes","cause","noAvailableReason","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 { getFeatures } from '../../../../components/Rates/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: {\n calendar: calendarSuggestion,\n currency,\n finder: { calendar = [], occupation = [], place: { title: searchCategory } = {}, promocode = '' } = {},\n hotels,\n infantAge,\n language,\n session,\n tracking = {},\n } = {},\n store: { hotel: { accommodationType, features = {}, variants = {} } = {}, id, type, urlParams } = {},\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 userLocation = {},\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 const { showPricePerNight = false } = getFeatures(features, urlParams);\n const has = {\n hotelAvailability: () => rates,\n chainAvailability: () => hotelInfoBAR?.length > 0 && hotelInfoBAR[0].bestAvailableRate,\n availability: () => has.hotelAvailability() || has.chainAvailability(),\n };\n\n const step = hotels && !calendarSuggestion && searchCategory ? 'CHAINRESULT' : 'BOOKINGSTEP1';\n const common = {\n ...(!has.availability() ? { 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 pricePerNight: showPricePerNight,\n propertyName,\n propertyType,\n ...(!rates && hotelInfoBAR ? { searchCategory } : undefined),\n step,\n userCountry: country,\n userLogged: !!session,\n };\n\n const dataLayer = has.hotelAvailability()\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 userLocation,\n }\n : has.chainAvailability()\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 userLocation,\n }\n : {\n ...common,\n cause: hotelInfoBAR?.length > 0 ? hotelInfoBAR[0].noAvailableReason : undefined,\n };\n\n dataLayerPush(getInitEvent({ mobile, hotel: { accommodationType, id: hotelId, variants }, id, step, type }));\n dataLayerPush({\n event: has.availability() ? '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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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ratesResponse.js","names":["_locale","require","_duetto","_helpers","_helpers2","_helpers3","_Core","_helpers4","_helpers5","_helpers6","_legacy","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ACCOMMODATION_TYPE_NAME","ACCOMMODATION_TYPE","ratesResponse","_variants$hotelId","device","mobile","response","calendar","calendarSuggestion","currency","finder","occupation","place","title","searchCategory","promocode","hotels","infantAge","language","session","tracking","store","hotel","accommodationType","features","variants","id","type","urlParams","undefined","idchain","idoffers","idtokenprovider","hotelId","roomTypeId","fetchUrlParams","location","search","country","hotelInfo","hotelCurrency","propertyName","propertyType","hotelInfoBAR","localTaxesIncluded","rates","taxesIncluded","userCurrency","userCurrencyValue","userLocation","adults","babies","children","getOccupationTotals","minRate","maxRate","getRatesPriceRange","days","nights","dateDiff","showPricePerNight","getFeatures","has","hotelAvailability","chainAvailability","bestAvailableRate","availability","step","common","chainId","checkin","dateFormat","format","checkout","coupon","home","document","hostname","idOffer","parseInt","idRoom","lodgingDenomination","multiroom","numAdults","numChildren","numRooms","pricePerNight","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","totalPrice","internalWithTaxes","cause","noAvailableReason","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 { getFeatures } from '../../../../components/Rates/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: {\n calendar: calendarSuggestion,\n currency,\n finder: { calendar = [], occupation = [], place: { title: searchCategory } = {}, promocode = '' } = {},\n hotels,\n infantAge,\n language,\n session,\n tracking = {},\n } = {},\n store: { hotel: { accommodationType, features = {}, variants = {} } = {}, id, type, urlParams } = {},\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 userLocation = {},\n } = tracking;\n\n const { adults = 0, babies = 0, children = 0 } = getOccupationTotals({ infantAge, occupation });\n const { minRate, maxRate } = getRatesPriceRange(rates, hotelCurrency);\n const { days: nights } = dateDiff(...calendar);\n const { showPricePerNight = false } = getFeatures(features, urlParams);\n const has = {\n hotelAvailability: () => rates,\n chainAvailability: () => hotelInfoBAR?.length > 0 && hotelInfoBAR[0].bestAvailableRate,\n availability: () => has.hotelAvailability() || has.chainAvailability(),\n };\n\n const step = hotels && !calendarSuggestion && searchCategory ? 'CHAINRESULT' : 'BOOKINGSTEP1';\n const common = {\n ...(!has.availability() ? { 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: babies + children,\n numRooms: occupation.length,\n pricePerNight: showPricePerNight,\n propertyName,\n propertyType,\n ...(!rates && hotelInfoBAR ? { searchCategory } : undefined),\n step,\n userCountry: country,\n userLogged: !!session,\n };\n\n const dataLayer = has.hotelAvailability()\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 userLocation,\n }\n : has.chainAvailability()\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 userLocation,\n }\n : {\n ...common,\n cause: hotelInfoBAR?.length > 0 ? hotelInfoBAR[0].noAvailableReason : undefined,\n };\n\n dataLayerPush(getInitEvent({ mobile, hotel: { accommodationType, id: hotelId, variants }, id, step, type }));\n dataLayerPush({\n event: has.availability() ? '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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","ignoreList":[]}
|