@mirai/core 0.4.18 → 0.4.20

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.
@@ -14,6 +14,7 @@ const ratesResponse = function () {
14
14
  } = {},
15
15
  instances = [],
16
16
  response: {
17
+ calendar,
17
18
  hotels = [],
18
19
  tracking = {}
19
20
  } = {},
@@ -39,7 +40,7 @@ const ratesResponse = function () {
39
40
  occupation = [],
40
41
  promocode = ''
41
42
  } = finder || {};
42
- const hasHotels = (hotels === null || hotels === void 0 ? void 0 : hotels.length) > 0;
43
+ const hasHotels = (hotels === null || hotels === void 0 ? void 0 : hotels.length) > 0 && !calendar;
43
44
  const items = [];
44
45
  if (hasHotels) {
45
46
  // ! TODO
@@ -1 +1 @@
1
- {"version":3,"file":"ratesResponse.js","names":["_helpers","require","_helpers2","_legacy","ratesResponse","device","mobile","instances","response","hotels","tracking","store","finder","place","id","hotelId","isHotel","type","arguments","length","undefined","hotelInfo","hotelInfoBAR","rates","occupation","promocode","hasHotels","items","forEach","_ref","currency","hotelName","idTokenProvider","bestAvailableRate","averagePrice","internalWithoutTaxes","push","item_id","concat","item_name","coupon","currencyCode","item_brand","price","formatPrice","Object","entries","getRoomsPriceRange","_ref2","key","minRate","maxRate","parseRate","rate","step","value","item_list_name","parseCommon","multiroom","send_to","map","idAnalytics","window","gtag","non_interaction","exports"],"sources":["../../../../../src/contexts/PerformanceManager/providers/analytics/ratesResponse.js"],"sourcesContent":["import { parseCommon, parseRate } from './helpers';\nimport { getRoomsPriceRange } from '../helpers';\nimport { formatPrice } from '../helpers/legacy';\n\nexport const ratesResponse = ({\n device: { mobile } = {},\n instances = [],\n response: { hotels = [], tracking = {} } = {},\n store: { finder: { place: { id: [hotelId] = [], isHotel } = {}, ...finder } = {}, id, type } = {},\n} = {}) => {\n // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------\n const { hotelInfo = {}, hotelInfoBAR = [], rates } = tracking;\n const { occupation = [], promocode = '' } = finder || {};\n const hasHotels = hotels?.length > 0;\n const items = [];\n\n if (hasHotels) {\n // ! TODO\n hotelInfoBAR.forEach(\n ({\n currency,\n hotelName,\n idTokenProvider,\n bestAvailableRate: { averagePrice: { internalWithoutTaxes } } = {},\n }) => {\n items.push({\n item_id: `${idTokenProvider}`,\n item_name: hotelName,\n coupon: promocode,\n currency: currency.currencyCode,\n item_brand: `${id}`,\n price: formatPrice(internalWithoutTaxes, currency),\n });\n },\n );\n } else if (rates) {\n Object.entries(getRoomsPriceRange(rates, hotelInfo.currency)).forEach(\n ([key, { minRate = 0, maxRate = 0 } = {}]) => {\n const { id } = rates[key];\n\n items.push(parseRate({ hotelInfo, id, promocode, rate: minRate }));\n if (minRate.id !== maxRate.id) items.push(parseRate({ hotelInfo, id, promocode, rate: maxRate }));\n },\n );\n }\n\n const step = hasHotels ? 'CHAINRESULT' : 'BOOKINGSTEP1';\n const value = {\n ...(rates || hasHotels\n ? {\n coupon: finder?.promocode || '',\n item_list_name: hasHotels ? 'CHAIN_RESULT' : 'Search Results',\n items,\n }\n : {\n ...parseCommon({ ...finder, id, type }),\n device: mobile ? 'MOBILE' : 'DESKTOP_TABLET',\n hotelId: isHotel ? hotelId : undefined,\n multiroom: occupation.length > 1,\n step,\n }),\n send_to: instances.map(({ idAnalytics } = {}) => idAnalytics),\n };\n\n window.gtag('event', rates || hasHotels ? (hasHotels ? 'view_item_list' : 'view_item') : 'no_view_item_list', value);\n window.gtag('event', 'data_search_info', {\n ...parseCommon({ ...finder, id, type }),\n non_interaction: true,\n send_to: instances.map(({ idAnalytics } = {}) => idAnalytics),\n step,\n });\n\n return value;\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"ratesResponse.js","names":["_helpers","require","_helpers2","_legacy","ratesResponse","device","mobile","instances","response","calendar","hotels","tracking","store","finder","place","id","hotelId","isHotel","type","arguments","length","undefined","hotelInfo","hotelInfoBAR","rates","occupation","promocode","hasHotels","items","forEach","_ref","currency","hotelName","idTokenProvider","bestAvailableRate","averagePrice","internalWithoutTaxes","push","item_id","concat","item_name","coupon","currencyCode","item_brand","price","formatPrice","Object","entries","getRoomsPriceRange","_ref2","key","minRate","maxRate","parseRate","rate","step","value","item_list_name","parseCommon","multiroom","send_to","map","idAnalytics","window","gtag","non_interaction","exports"],"sources":["../../../../../src/contexts/PerformanceManager/providers/analytics/ratesResponse.js"],"sourcesContent":["import { parseCommon, parseRate } from './helpers';\nimport { getRoomsPriceRange } from '../helpers';\nimport { formatPrice } from '../helpers/legacy';\n\nexport const ratesResponse = ({\n device: { mobile } = {},\n instances = [],\n response: { calendar, hotels = [], tracking = {} } = {},\n store: { finder: { place: { id: [hotelId] = [], isHotel } = {}, ...finder } = {}, id, type } = {},\n} = {}) => {\n // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------\n const { hotelInfo = {}, hotelInfoBAR = [], rates } = tracking;\n const { occupation = [], promocode = '' } = finder || {};\n const hasHotels = hotels?.length > 0 && !calendar;\n const items = [];\n\n if (hasHotels) {\n // ! TODO\n hotelInfoBAR.forEach(\n ({\n currency,\n hotelName,\n idTokenProvider,\n bestAvailableRate: { averagePrice: { internalWithoutTaxes } } = {},\n }) => {\n items.push({\n item_id: `${idTokenProvider}`,\n item_name: hotelName,\n coupon: promocode,\n currency: currency.currencyCode,\n item_brand: `${id}`,\n price: formatPrice(internalWithoutTaxes, currency),\n });\n },\n );\n } else if (rates) {\n Object.entries(getRoomsPriceRange(rates, hotelInfo.currency)).forEach(\n ([key, { minRate = 0, maxRate = 0 } = {}]) => {\n const { id } = rates[key];\n\n items.push(parseRate({ hotelInfo, id, promocode, rate: minRate }));\n if (minRate.id !== maxRate.id) items.push(parseRate({ hotelInfo, id, promocode, rate: maxRate }));\n },\n );\n }\n\n const step = hasHotels ? 'CHAINRESULT' : 'BOOKINGSTEP1';\n const value = {\n ...(rates || hasHotels\n ? {\n coupon: finder?.promocode || '',\n item_list_name: hasHotels ? 'CHAIN_RESULT' : 'Search Results',\n items,\n }\n : {\n ...parseCommon({ ...finder, id, type }),\n device: mobile ? 'MOBILE' : 'DESKTOP_TABLET',\n hotelId: isHotel ? hotelId : undefined,\n multiroom: occupation.length > 1,\n step,\n }),\n send_to: instances.map(({ idAnalytics } = {}) => idAnalytics),\n };\n\n window.gtag('event', rates || hasHotels ? (hasHotels ? 'view_item_list' : 'view_item') : 'no_view_item_list', value);\n window.gtag('event', 'data_search_info', {\n ...parseCommon({ ...finder, id, type }),\n non_interaction: true,\n send_to: instances.map(({ idAnalytics } = {}) => idAnalytics),\n step,\n });\n\n return value;\n};\n"],"mappings":"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"}
@@ -21,6 +21,7 @@ const ratesResponse = function () {
21
21
  mobile
22
22
  } = {},
23
23
  response: {
24
+ calendar: calendarSuggestion,
24
25
  hotels,
25
26
  infantAge,
26
27
  tracking = {}
@@ -85,7 +86,7 @@ const ratesResponse = function () {
85
86
  const {
86
87
  days: nights
87
88
  } = (0, _locale.dateDiff)(...calendar);
88
- const step = hotels && searchCategory ? 'CHAINRESULT' : 'BOOKINGSTEP1';
89
+ const step = hotels && !calendarSuggestion && searchCategory ? 'CHAINRESULT' : 'BOOKINGSTEP1';
89
90
  const common = {
90
91
  ...(!rates && (hotelInfoBAR === null || hotelInfoBAR === void 0 ? void 0 : hotelInfoBAR.length) === 0 ? {
91
92
  availability: 'no'
@@ -1 +1 @@
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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"}
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","calendar","calendarSuggestion","hotels","infantAge","tracking","store","currency","finder","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: { calendar: calendarSuggestion, 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 && !calendarSuggestion && 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":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AACA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AACA,IAAAQ,OAAA,GAAAR,OAAA;AAEA,MAAMS,uBAAuB,GAAGC,MAAM,CAACC,IAAI,CAACC,wBAAkB,CAAC;AAExD,MAAMC,aAAa,GAAG,SAAAA,CAAA,EAYlB;EAAA,IAAAC,iBAAA;EAAA,IAZmB;IAC5BC,MAAM,EAAE;MAAEC;IAAO,CAAC,GAAG,CAAC,CAAC;IACvBC,QAAQ,EAAE;MAAEC,QAAQ,EAAEC,kBAAkB;MAAEC,MAAM;MAAEC,SAAS;MAAEC,QAAQ,GAAG,CAAC;IAAE,CAAC,GAAG,CAAC,CAAC;IACjFC,KAAK,EAAE;MACLC,QAAQ;MACRC,MAAM,EAAE;QAAEP,QAAQ,GAAG,EAAE;QAAEQ,UAAU,GAAG,EAAE;QAAEC,KAAK,EAAE;UAAEC,KAAK,EAAEC;QAAe,CAAC,GAAG,CAAC,CAAC;QAAEC,SAAS,GAAG;MAAG,CAAC,GAAG,CAAC,CAAC;MACtGC,KAAK,EAAE;QAAEC,iBAAiB;QAAEC,QAAQ,GAAG,CAAC,CAAC;QAAE,GAAGF;MAAM,CAAC,GAAG,CAAC,CAAC;MAC1DG,EAAE;MACFC,QAAQ;MACRC,OAAO;MACPC;IACF,CAAC,GAAG,CAAC;EACP,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACJ;EACA,MAAM;IACJG,OAAO;IACPC,QAAQ;IACRC,eAAe,EAAEC,OAAO;IAAE;IAC1BC;EACF,CAAC,GAAG,IAAAC,wBAAc,EAACC,QAAQ,CAACC,MAAM,CAAC;;EAEnC;EACA,MAAM;IACJC,OAAO;IACPC,SAAS,EAAE;MAAE1B,QAAQ,EAAE2B,aAAa,GAAG,CAAC,CAAC;MAAEC,YAAY;MAAEC;IAAa,CAAC,GAAG,CAAC,CAAC;IAC5EC,YAAY;IACZC,kBAAkB;IAClBC,KAAK;IACLC,aAAa;IACbC,YAAY,EAAE;MAAEC,KAAK,EAAEC;IAAkB,CAAC,GAAG,CAAC;EAChD,CAAC,GAAGtC,QAAQ;EAEZ,MAAM;IAAEuC,MAAM,GAAG,CAAC;IAAEC,QAAQ,GAAG;EAAE,CAAC,GAAG,IAAAC,6BAAmB,EAAC;IAAE1C,SAAS;IAAEK;EAAW,CAAC,CAAC;EACnF,MAAM;IAAEsC,OAAO;IAAEC;EAAQ,CAAC,GAAG,IAAAC,4BAAkB,EAACV,KAAK,EAAEL,aAAa,CAAC;EACrE,MAAM;IAAEgB,IAAI,EAAEC;EAAO,CAAC,GAAG,IAAAC,gBAAQ,EAAC,GAAGnD,QAAQ,CAAC;EAE9C,MAAMoD,IAAI,GAAGlD,MAAM,IAAI,CAACD,kBAAkB,IAAIU,cAAc,GAAG,aAAa,GAAG,cAAc;EAC7F,MAAM0C,MAAM,GAAG;IACb,IAAI,CAACf,KAAK,IAAI,CAAAF,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEf,MAAM,MAAK,CAAC,GAAG;MAAEiC,YAAY,EAAE;IAAK,CAAC,GAAGhC,SAAS,CAAC;IAC9EiC,OAAO,EAAEhC,OAAO;IAChBiC,OAAO,EAAE,IAAAC,kBAAU,EAACzD,QAAQ,CAAC,CAAC,CAAC,EAAE;MAAE0D,MAAM,EAAE;IAAa,CAAC,CAAC;IAC1DC,QAAQ,EAAE,IAAAF,kBAAU,EAACzD,QAAQ,CAAC,CAAC,CAAC,EAAE;MAAE0D,MAAM,EAAE;IAAa,CAAC,CAAC;IAC3DE,MAAM,EAAEhD,SAAS;IACjBf,MAAM,EAAEC,MAAM,GAAG,QAAQ,GAAG,gBAAgB;IAC5C+D,IAAI,EAAEC,QAAQ,CAACjC,QAAQ,CAACkC,QAAQ;IAChCrC,OAAO;IACPsC,OAAO,EAAExC,QAAQ,GAAGyC,QAAQ,CAACzC,QAAQ,CAAC,GAAGF,SAAS;IAClD4C,MAAM,EAAEvC,UAAU,GAAGsC,QAAQ,CAACtC,UAAU,CAAC,GAAGL,SAAS;IACrDL,QAAQ;IACRkD,mBAAmB,EAAE5E,uBAAuB,CAAC,EAAAK,iBAAA,GAAAmB,QAAQ,CAACW,OAAO,CAAC,cAAA9B,iBAAA,uBAAjBA,iBAAA,CAAmBkB,iBAAiB,KAAIA,iBAAiB,CAAC;IACvGsD,SAAS,EAAE5D,UAAU,CAACa,MAAM,GAAG,CAAC;IAChCgD,SAAS,EAAE1B,MAAM;IACjB2B,WAAW,EAAE1B,QAAQ;IACrB2B,QAAQ,EAAE/D,UAAU,CAACa,MAAM;IAC3Ba,YAAY;IACZC,YAAY;IACZ,IAAI,CAACG,KAAK,IAAIF,YAAY,GAAG;MAAEzB;IAAe,CAAC,GAAGW,SAAS,CAAC;IAC5D8B,IAAI;IACJoB,WAAW,EAAEzC,OAAO;IACpB0C,UAAU,EAAE,CAAC,CAACvD;EAChB,CAAC;EAED,MAAMwD,SAAS,GAAGpC,KAAK,GACnB;IACE,GAAGe,MAAM;IACT/C,QAAQ,EAAE2B,aAAa,CAAC0C,IAAI;IAC5BC,YAAY,EAAElC,iBAAiB,IAAIT,aAAa,CAACQ,KAAK,IAAIC,iBAAiB,GAAGT,aAAa,CAACQ,KAAK;IACjGoC,WAAW,EAAE,IAAAC,kBAAS,EAAC/B,OAAO,EAAEd,aAAa,EAAEiB,MAAM,CAAC;IACtDb,kBAAkB;IAClB0C,UAAU,EAAE,IAAAD,kBAAS,EAAChC,OAAO,EAAEb,aAAa,EAAEiB,MAAM,CAAC;IACrDA,MAAM;IACN8B,WAAW,EAAExF,MAAM,CAACyF,MAAM,CAAC3C,KAAK,CAAC,CAAC4C,GAAG,CAAC;MAAA,IAAC;QAAElE,EAAE;QAAEmE,IAAI;QAAEC,iBAAiB,GAAG,CAAC;MAAE,CAAC,GAAAhE,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;MAAA,OAAM;QACpFJ,EAAE;QACFmE,IAAI;QACJE,WAAW,EAAE7F,MAAM,CAACyF,MAAM,CAACG,iBAAiB,CAAC,CAACF,GAAG,CAC/C;UAAA,IAAC;YAAEb,SAAS,GAAG,CAAC;YAAEiB,qBAAqB,GAAG,CAAC;YAAEC,sBAAsB,GAAG,CAAC;YAAEvE,EAAE;YAAEsB,KAAK,GAAG,CAAC;UAAE,CAAC,GAAAlB,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;UAAA,OAAM;YAClGuB,MAAM,EAAE0B,SAAS;YACjBzB,QAAQ,EAAE0C,qBAAqB,GAAGC,sBAAsB;YACxDvE,EAAE;YACFsB,KAAK,EAAE9C,MAAM,CAACyF,MAAM,CAAC3C,KAAK,CAAC,CAAC4C,GAAG,CAAC;cAAA,IAAC;gBAAEM,YAAY,GAAG,CAAC,CAAC;gBAAExE,EAAE;gBAAEmE;cAAK,CAAC,GAAA/D,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;cAAA,OAAM;gBACzEqE,MAAM,EAAEjG,MAAM,CAACyF,MAAM,CAACO,YAAY,CAAC,CAACN,GAAG,CACrC;kBAAA,IAAC;oBAAElE,EAAE;oBAAEmE,IAAI;oBAAEO,cAAc;oBAAEC,eAAe,GAAG,CAAC;oBAAEC;kBAAoB,CAAC,GAAAxE,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;kBAAA,OAAM;oBAChFJ,EAAE;oBACF6E,UAAU,EAAE,IAAAC,mBAAW,EAACH,eAAe,EAAE1D,aAAa,CAAC;oBACvDkD,IAAI;oBACJY,QAAQ,EAAE,IAAAD,mBAAW,EAACJ,cAAc,EAAEzD,aAAa,CAAC;oBACpD+D,KAAK,EAAE,IAAAF,mBAAW,EAACF,mBAAmB,GAAGF,cAAc,EAAEzD,aAAa;kBACxE,CAAC;gBAAA,CACH,CAAC;gBACDjB,EAAE;gBACFmE;cACF,CAAC;YAAA,CAAC;UACJ,CAAC;QAAA,CACH;MACF,CAAC;IAAA,CAAC,CAAC;IACH5C,aAAa;IACbC,YAAY,EAAElC;EAChB,CAAC,GACD,CAAA8B,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEf,MAAM,IAAG,CAAC,GACxB;IACE,GAAGgC,MAAM;IACTC,YAAY,EAAE,KAAK;IACnBsB,YAAY,EACVlC,iBAAiB,IAAIN,YAAY,CAAC,CAAC,CAAC,CAAC9B,QAAQ,CAACmC,KAAK,IAAIC,iBAAiB,GAAGN,YAAY,CAAC,CAAC,CAAC,CAAC9B,QAAQ,CAACmC,KAAK;IAC3GwD,QAAQ,EAAE7D,YAAY,CAAC8C,GAAG,CAAC;MAAA,IAAC;QAAEgB;MAAgB,CAAC,GAAA9E,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;MAAA,OAAK8E,eAAe;IAAA,EAAC,CAACC,IAAI,CAAC,GAAG,CAAC;IACnFC,UAAU,EAAEhE,YAAY,CAAC8C,GAAG,CAAC;MAAA,IAAC;QAAEmB;MAAU,CAAC,GAAAjF,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;MAAA,OAAKiF,SAAS;IAAA,EAAC,CAACF,IAAI,CAAC,GAAG,CAAC;IACzEpB,UAAU,EAAE,IAAAe,mBAAW,EACrB1D,YAAY,CAAC,CAAC,CAAC,CAACkE,iBAAiB,CAACC,UAAU,CAACC,iBAAiB,GAAGtD,MAAM,EACvEd,YAAY,CAAC,CAAC,CAAC,CAAC9B,QAClB;EACF,CAAC,GACD+C,MAAM;EAEV,IAAAoD,uBAAa,EAAC,IAAAC,qBAAY,EAAC;IAAE5G,MAAM;IAAEe,KAAK,EAAE;MAAEC,iBAAiB;MAAEC,QAAQ;MAAE,GAAGF;IAAM,CAAC;IAAEG,EAAE;IAAEoC,IAAI;IAAEjC;EAAK,CAAC,CAAC,CAAC;EACzG,IAAAsF,uBAAa,EAAC;IACZE,KAAK,EAAErE,KAAK,IAAI,CAAAF,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAEf,MAAM,IAAG,CAAC,GAAG,oBAAoB,GAAG,sBAAsB;IACxF,YAAY,EAAEqD;EAChB,CAAC,CAAC;EACF,IAAAkC,qBAAmB,EAAC;IAAE,GAAGvD,MAAM;IAAEpB,aAAa;IAAEK;EAAM,CAAC,CAAC;EAExD,OAAOoC,SAAS;AAClB,CAAC;AAACmC,OAAA,CAAAlH,aAAA,GAAAA,aAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.4.18",
3
+ "version": "0.4.20",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",
@@ -67,7 +67,7 @@ export const Container = ({ children }) => {
67
67
  {children}
68
68
  </View>
69
69
 
70
- <View data-mirai-component="chat" />
70
+ {/* <View data-mirai-component="chat" /> */}
71
71
 
72
72
  {richTemplate && (
73
73
  <View tag="footer" className={style.footer}>