@mirai/core 0.4.386 → 0.4.388

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/Dockerfile CHANGED
@@ -1,4 +1,4 @@
1
- FROM mcr.microsoft.com/playwright:v1.49.1-noble
1
+ FROM mcr.microsoft.com/playwright:v1.54.1-noble
2
2
 
3
3
  WORKDIR /app
4
4
 
@@ -81,7 +81,7 @@ const SelectEnvironment = _ref => {
81
81
  } = others;
82
82
  const tooltipText = translate(is.currency ? _SelectEnvironment2.L10N.LABEL_SELECT_CURRENCY : _SelectEnvironment2.L10N.LABEL_SELECT_LANGUAGE);
83
83
  const icon = is.currency ? _helpers2.ICON.CURRENCY : _helpers2.ICON.LANGUAGE;
84
- return !skeleton ? !isMobile || !window.IS_PLAYWRIGHT ? /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
84
+ return !skeleton ? /*#__PURE__*/_react.default.createElement(_ui.Tooltip, {
85
85
  text: !isMobile && !skeleton ? tooltipText : undefined
86
86
  }, /*#__PURE__*/_react.default.createElement(_ui.View, {
87
87
  row: true,
@@ -108,7 +108,7 @@ const SelectEnvironment = _ref => {
108
108
  className: style.input,
109
109
  testId: testId,
110
110
  "aria-label": tooltipText
111
- }))) : null : /*#__PURE__*/_react.default.createElement(_SelectEnvironment3.default, {
111
+ }))) : /*#__PURE__*/_react.default.createElement(_SelectEnvironment3.default, {
112
112
  icon: icon
113
113
  });
114
114
  };
@@ -1 +1 @@
1
- {"version":3,"file":"SelectEnvironment.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_SelectEnvironment","_SelectEnvironment2","style","_interopRequireWildcard","_SelectEnvironment3","_helpers","_helpers2","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","length","indexOf","propertyIsEnumerable","SelectEnvironment","_ref","compacted","name","metrics","small","others","isMobile","useDevice","translate","useLocale","value","currency","language","locale","locales","skeleton","useStore","is","handleChange","next","replaceUrlParams","Event","publish","EVENT","INTENT_CURRENCY","lang","split","nextLocale","getLocale","undefined","INTENT_LOCALE","METRICS","id","concat","className","testId","tooltipText","L10N","LABEL_SELECT_CURRENCY","LABEL_SELECT_LANGUAGE","icon","ICON","CURRENCY","LANGUAGE","window","IS_PLAYWRIGHT","createElement","Tooltip","text","View","row","styles","selectEnvironment","caption","Icon","headline","level","Text","action","medium","LANGUAGES","LOCALES","findIndex","includes","Select","options","CURRENCIES","map","item","Intl","DisplayNames","type","of","filter","_","index","values","onChange","input","exports","displayName","propTypes","PropTypes","bool","string","oneOf","isRequired"],"sources":["../../../../src/components/__shared__/SelectEnvironment/SelectEnvironment.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { CURRENCIES, useLocale } from '@mirai/locale';\nimport { Icon, Select, styles, Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { LANGUAGES } from './SelectEnvironment.constants';\nimport { L10N } from './SelectEnvironment.l10n';\nimport * as style from './SelectEnvironment.module.css';\nimport Skeleton from './SelectEnvironment.skeleton';\nimport { getLocale } from '../../../helpers';\nimport { EVENT, ICON, LOCALES, replaceUrlParams } from '../../helpers';\n\nconst SelectEnvironment = ({ compacted = false, name, metrics = 'ENVIRONMENT', small = false, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { currency, language, locale, locales = [], skeleton = false },\n } = useStore();\n\n const is = {\n currency: name === 'currency',\n locale: name === 'locale',\n };\n\n const handleChange = (next) => {\n if (is.currency) {\n replaceUrlParams({ currency: next });\n Event.publish(EVENT.INTENT_CURRENCY, { currency: next });\n } else if (is.locale) {\n const [lang] = next.split('-');\n const { locale: nextLocale } = getLocale(undefined, { lang });\n\n replaceUrlParams({ lang, locale: nextLocale });\n Event.publish(EVENT.INTENT_LOCALE, { locale: next });\n }\n\n Event.publish(EVENT.METRICS, { id: `${metrics}:${name}`, value: next });\n };\n\n const { className, testId } = others;\n const tooltipText = translate(is.currency ? L10N.LABEL_SELECT_CURRENCY : L10N.LABEL_SELECT_LANGUAGE);\n const icon = is.currency ? ICON.CURRENCY : ICON.LANGUAGE;\n\n return !skeleton ? (\n !isMobile || !window.IS_PLAYWRIGHT ? (\n <Tooltip text={!isMobile && !skeleton ? tooltipText : undefined}>\n <View row className={styles(style.selectEnvironment, small && style.small, className)}>\n <View row className={style.caption}>\n <Icon headline level={2} value={icon} className={styles(style.icon, skeleton && style.skeleton)} />\n {!compacted && (\n <Text action medium>\n {is.currency ? currency : LANGUAGES[LOCALES.findIndex((locale) => locale.includes(language))]}\n </Text>\n )}\n </View>\n <Select\n name={name}\n options={\n is.currency\n ? CURRENCIES.map(\n (item) =>\n `${item}${\n Intl.DisplayNames ? ` - ${new Intl.DisplayNames(locale, { type: 'currency' }).of(item)}` : ''\n }`,\n )\n : locales.length > 0\n ? LANGUAGES.filter((_, index) => locales.includes(LOCALES[index]))\n : LANGUAGES\n }\n value={is.currency ? currency : locale}\n values={\n is.currency\n ? CURRENCIES\n : locales.length > 0\n ? LOCALES.filter((locale) => locales.includes(locale))\n : LOCALES\n }\n onChange={handleChange}\n className={style.input}\n testId={testId}\n aria-label={tooltipText}\n />\n </View>\n </Tooltip>\n ) : null\n ) : (\n <Skeleton icon={icon} />\n );\n};\n\nSelectEnvironment.displayName = 'Mirai:Core:SelectEnvironment';\n\nSelectEnvironment.propTypes = {\n compacted: PropTypes.bool,\n metrics: PropTypes.string,\n name: PropTypes.oneOf(['currency', 'locale']).isRequired,\n small: PropTypes.bool,\n};\n\nexport { SelectEnvironment };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SelectEnvironment.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_SelectEnvironment","_SelectEnvironment2","style","_interopRequireWildcard","_SelectEnvironment3","_helpers","_helpers2","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","length","indexOf","propertyIsEnumerable","SelectEnvironment","_ref","compacted","name","metrics","small","others","isMobile","useDevice","translate","useLocale","value","currency","language","locale","locales","skeleton","useStore","is","handleChange","next","replaceUrlParams","Event","publish","EVENT","INTENT_CURRENCY","lang","split","nextLocale","getLocale","undefined","INTENT_LOCALE","METRICS","id","concat","className","testId","tooltipText","L10N","LABEL_SELECT_CURRENCY","LABEL_SELECT_LANGUAGE","icon","ICON","CURRENCY","LANGUAGE","createElement","Tooltip","text","View","row","styles","selectEnvironment","caption","Icon","headline","level","Text","action","medium","LANGUAGES","LOCALES","findIndex","includes","Select","options","CURRENCIES","map","item","Intl","DisplayNames","type","of","filter","_","index","values","onChange","input","exports","displayName","propTypes","PropTypes","bool","string","oneOf","isRequired"],"sources":["../../../../src/components/__shared__/SelectEnvironment/SelectEnvironment.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { CURRENCIES, useLocale } from '@mirai/locale';\nimport { Icon, Select, styles, Text, Tooltip, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { LANGUAGES } from './SelectEnvironment.constants';\nimport { L10N } from './SelectEnvironment.l10n';\nimport * as style from './SelectEnvironment.module.css';\nimport Skeleton from './SelectEnvironment.skeleton';\nimport { getLocale } from '../../../helpers';\nimport { EVENT, ICON, LOCALES, replaceUrlParams } from '../../helpers';\n\nconst SelectEnvironment = ({ compacted = false, name, metrics = 'ENVIRONMENT', small = false, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { currency, language, locale, locales = [], skeleton = false },\n } = useStore();\n\n const is = {\n currency: name === 'currency',\n locale: name === 'locale',\n };\n\n const handleChange = (next) => {\n if (is.currency) {\n replaceUrlParams({ currency: next });\n Event.publish(EVENT.INTENT_CURRENCY, { currency: next });\n } else if (is.locale) {\n const [lang] = next.split('-');\n const { locale: nextLocale } = getLocale(undefined, { lang });\n\n replaceUrlParams({ lang, locale: nextLocale });\n Event.publish(EVENT.INTENT_LOCALE, { locale: next });\n }\n\n Event.publish(EVENT.METRICS, { id: `${metrics}:${name}`, value: next });\n };\n\n const { className, testId } = others;\n const tooltipText = translate(is.currency ? L10N.LABEL_SELECT_CURRENCY : L10N.LABEL_SELECT_LANGUAGE);\n const icon = is.currency ? ICON.CURRENCY : ICON.LANGUAGE;\n\n return !skeleton ? (\n <Tooltip text={!isMobile && !skeleton ? tooltipText : undefined}>\n <View row className={styles(style.selectEnvironment, small && style.small, className)}>\n <View row className={style.caption}>\n <Icon headline level={2} value={icon} className={styles(style.icon, skeleton && style.skeleton)} />\n {!compacted && (\n <Text action medium>\n {is.currency ? currency : LANGUAGES[LOCALES.findIndex((locale) => locale.includes(language))]}\n </Text>\n )}\n </View>\n <Select\n name={name}\n options={\n is.currency\n ? CURRENCIES.map(\n (item) =>\n `${item}${\n Intl.DisplayNames ? ` - ${new Intl.DisplayNames(locale, { type: 'currency' }).of(item)}` : ''\n }`,\n )\n : locales.length > 0\n ? LANGUAGES.filter((_, index) => locales.includes(LOCALES[index]))\n : LANGUAGES\n }\n value={is.currency ? currency : locale}\n values={\n is.currency\n ? CURRENCIES\n : locales.length > 0\n ? LOCALES.filter((locale) => locales.includes(locale))\n : LOCALES\n }\n onChange={handleChange}\n className={style.input}\n testId={testId}\n aria-label={tooltipText}\n />\n </View>\n </Tooltip>\n ) : (\n <Skeleton icon={icon} />\n );\n};\n\nSelectEnvironment.displayName = 'Mirai:Core:SelectEnvironment';\n\nSelectEnvironment.propTypes = {\n compacted: PropTypes.bool,\n metrics: PropTypes.string,\n name: PropTypes.oneOf(['currency', 'locale']).isRequired,\n small: PropTypes.bool,\n};\n\nexport { SelectEnvironment };\n"],"mappings":"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","ignoreList":[]}
@@ -110,7 +110,7 @@ const PerformanceManager = () => {
110
110
  const {
111
111
  provider
112
112
  } = event;
113
- const execute = nextConsentMode || counter >= MAX_COUNTER && _PerformanceManager.CONSENT_MODE_ANSWERED.includes(provider);
113
+ const execute = nextConsentMode || counter >= MAX_COUNTER && _PerformanceManager.CONSENT_MODE_ANSWERED.includes(provider) && (nextConsentMode === false || isGtm(provider));
114
114
  const requeue = nextConsentMode === undefined && !isGtm(provider);
115
115
  if (execute) {
116
116
  executeEvent(event, nextConsentMode);
@@ -149,6 +149,7 @@ const PerformanceManager = () => {
149
149
  event
150
150
  } = _ref4,
151
151
  value = _objectWithoutProperties(_ref4, _excluded3);
152
+ if (performance.length === 0) return;
152
153
  const currentConsentMode = (0, _helpers.getConsentMode)(true);
153
154
  const availableProviders = performance.map(function () {
154
155
  let {
@@ -1 +1 @@
1
- {"version":3,"file":"PerformanceManager.js","names":["_dataSources","require","_services","_ui","_react","_helpers","_PerformanceManager","_PerformanceManager2","_PerformanceManager3","_helpers2","_Core","_helpers3","_excluded","_excluded2","_excluded3","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","_objectWithoutProperties","_objectWithoutPropertiesLoose","n","indexOf","propertyIsEnumerable","hasOwnProperty","MAX_COUNTER","COMPARE","GTM","PERFORMANCE","counter","memoizedPendingEvents","PerformanceManager","device","useDevice","track","trackRender","useMetrics","_useStore","useStore","components","performance","storePerformance","store","consentMode","setConsentMode","useState","getConsentMode","setPerformance","hotel","finder","place","id","instanceId","locale","session","type","useEffect","window","Mirai","urlParameters","fetchUrlParams","location","search","metrics","ServiceFeatures","get","bannedMetrics","entries","_ref","map","_ref2","key","handleMetrics","_ref3","props","IS_PLAYWRIGHT","host","event","toUpperCase","trim","metric","split","includes","KPI_EVENTS","method","hotelId","mobile","Event","subscribe","COMPONENTS_EVENT","METRICS","unsubscribe","interval","setInterval","undefined","nextConsentMode","isGtm","provider","nextMemoizedPendingEvents","execute","CONSENT_MODE_ANSWERED","requeue","executeEvent","clearInterval","config","isHotel","getPerformance","handleEvent","_ref4","currentConsentMode","availableProviders","CONSENT_MODE_REQUIRED","EVENTS","_ref5","propProvider","callback","parseInt","some","item","loadScripts","then","find","_ref6","response","label","concat","getPerformanceLabel","console","log","propConsentMode","loadedComponents","scripts","instances","propInstances","init","once","SCRIPTS","index","domain","loadScript","catch","exports"],"sources":["../../../src/contexts/PerformanceManager/PerformanceManager.jsx"],"sourcesContent":["import { Event, useMetrics, useStore } from '@mirai/data-sources';\nimport { ServiceFeatures } from '@mirai/services';\nimport { useDevice } from '@mirai/ui';\nimport { useEffect, useState } from 'react';\n\nimport { getConsentMode, getPerformanceLabel } from './helpers';\nimport { CONSENT_MODE_ANSWERED, CONSENT_MODE_REQUIRED, KPI_EVENTS } from './PerformanceManager.constants';\nimport { EVENTS } from './PerformanceManager.events';\nimport { SCRIPTS } from './PerformanceManager.scripts';\nimport { EVENT as COMPONENTS_EVENT } from '../../components/helpers';\nimport { PERFORMANCE } from '../../Core.constants';\nimport { fetchUrlParams, getPerformance, loadScript } from '../../helpers';\n\nconst MAX_COUNTER = 5;\nconst { COMPARE, GTM } = PERFORMANCE || {};\n\nlet counter = 0;\nlet memoizedPendingEvents = [];\n\nconst PerformanceManager = () => {\n const device = useDevice();\n const { track, trackRender } = useMetrics();\n const {\n value: { components = {}, performance: storePerformance = [], ...store },\n } = useStore();\n\n const [consentMode, setConsentMode] = useState(getConsentMode());\n const [performance, setPerformance] = useState(storePerformance);\n\n const { hotel = {}, finder: { place } = {}, id: instanceId, locale, session, type } = store;\n\n useEffect(() => {\n //! TODO: temp fix for 123 compare for first phase\n window.Mirai.urlParameters = fetchUrlParams(location.search);\n\n const metrics = ServiceFeatures.get('metrics', hotel.id) || {};\n const bannedMetrics = Object.entries(metrics)\n .filter(([, value]) => value === false)\n .map(([key]) => key);\n\n const handleMetrics = ({ id, ...props }) => {\n if (!id || window.IS_PLAYWRIGHT || window.location.host === 'monalisa.mirai.com') return;\n const event = id.toUpperCase().trim();\n const [metric] = event.split(':');\n\n if (bannedMetrics.includes(metric) && !KPI_EVENTS.includes(event)) return;\n const method = event.includes('RENDER') ? trackRender : track;\n\n method(event, {\n ...props,\n hotelId: hotel.id,\n instanceId,\n locale,\n mobile: device.mobile,\n session,\n type,\n });\n };\n\n Event.subscribe(COMPONENTS_EVENT.METRICS, handleMetrics);\n\n return () => Event.unsubscribe(COMPONENTS_EVENT.METRICS, handleMetrics);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (consentMode) return;\n\n const interval = setInterval(async () => {\n counter !== undefined && counter++;\n const nextConsentMode = getConsentMode(counter >= MAX_COUNTER);\n const isGtm = (provider) => [COMPARE, GTM].includes(provider);\n\n if (\n (nextConsentMode === undefined &&\n memoizedPendingEvents.filter(({ provider } = {}) => isGtm(provider)).length === 0) ||\n (!nextConsentMode && counter < MAX_COUNTER)\n )\n return;\n\n const nextMemoizedPendingEvents = [];\n memoizedPendingEvents.forEach((event = {}) => {\n const { provider } = event;\n const execute = nextConsentMode || (counter >= MAX_COUNTER && CONSENT_MODE_ANSWERED.includes(provider));\n const requeue = nextConsentMode === undefined && !isGtm(provider);\n\n if (execute) {\n executeEvent(event, nextConsentMode);\n\n if (!nextConsentMode && !isGtm(provider)) nextMemoizedPendingEvents.push(event);\n } else if (!execute || requeue) {\n nextMemoizedPendingEvents.push(event);\n }\n });\n memoizedPendingEvents = nextMemoizedPendingEvents;\n if (nextConsentMode !== undefined) {\n counter = undefined;\n setConsentMode(nextConsentMode);\n }\n }, 1000);\n\n return () => clearInterval(interval);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [consentMode]);\n\n useEffect(() => {\n const { config, finder: { place: { id: [hotelId] = [], isHotel } = {} } = {} } = store;\n\n if (place) {\n setPerformance(getPerformance(config, isHotel ? hotelId : undefined));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [place]);\n\n useEffect(() => {\n const handleEvent = ({ event, ...value }) => {\n const currentConsentMode = getConsentMode(true);\n\n const availableProviders = performance\n .map(({ type } = {}) => type)\n .filter((type) => !(!currentConsentMode && CONSENT_MODE_ANSWERED.includes(type)))\n .filter((type) => currentConsentMode || !CONSENT_MODE_REQUIRED.includes(type));\n\n Object.entries(EVENTS[event]).forEach(([propProvider, callback = () => {}]) => {\n const provider = parseInt(propProvider);\n const props = { callback, event, provider, value };\n\n if (!currentConsentMode && !availableProviders.includes(provider)) {\n if (counter === undefined && CONSENT_MODE_ANSWERED.includes(provider)) {\n executeEvent(props);\n } else if (!memoizedPendingEvents.some((item) => item.event === event && item.provider === provider)) {\n memoizedPendingEvents.push(props);\n }\n } else executeEvent(props, currentConsentMode);\n });\n };\n\n Object.keys(EVENTS).forEach((event) => Event.subscribe(event, handleEvent));\n\n return () => Object.keys(EVENTS).forEach((event) => Event.unsubscribe(event, handleEvent));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [device, performance, store]);\n\n const executeEvent = ({ provider, callback, value, event } = {}, nextConsentMode = consentMode) => {\n loadScripts(\n performance.filter(({ type } = {}) => type === provider && type !== COMPARE),\n nextConsentMode,\n ).then(() => {\n const config = performance.find(({ type }) => type === provider);\n const response = callback({ ...value, ...config, device, store });\n if (!response) return;\n\n const label = `⚡️ ${getPerformanceLabel(provider)} ${event}`;\n // eslint-disable-next-line no-console\n response.then ? response.then((value) => console.log(label, value)) : console.log(label, response);\n\n if (provider === GTM) {\n loadScripts(\n performance.filter(({ type } = {}) => type === COMPARE),\n nextConsentMode,\n );\n }\n });\n };\n\n const loadScripts = async (performance = [], propConsentMode = consentMode) => {\n const loadedComponents = Object.keys(components);\n\n const scripts = [];\n performance\n .filter(({ type } = {}) => propConsentMode === true || !CONSENT_MODE_REQUIRED.includes(type))\n .forEach(({ type, instances: propInstances = [] } = {}) => {\n const { components = [], init = () => {}, once = false } = SCRIPTS[type] || {};\n\n if (components.length === 0 || components.some((item) => loadedComponents.includes(item))) {\n const instances = once ? [propInstances[0]] : propInstances;\n scripts.push(\n ...instances.map((config = {}, index) => ({\n domain: `performance-${getPerformanceLabel(type)}`,\n id: index + 1,\n ...init({ ...config, hotel, instanceId, loadedComponents, place }),\n type,\n })),\n );\n }\n });\n\n for (let index = 0; index < scripts.length; index++) {\n await loadScript(scripts[index]).catch(() => {});\n }\n };\n\n return null;\n};\n\nexport { PerformanceManager };\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PerformanceManager.js","names":["_dataSources","require","_services","_ui","_react","_helpers","_PerformanceManager","_PerformanceManager2","_PerformanceManager3","_helpers2","_Core","_helpers3","_excluded","_excluded2","_excluded3","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","_objectWithoutProperties","_objectWithoutPropertiesLoose","n","indexOf","propertyIsEnumerable","hasOwnProperty","MAX_COUNTER","COMPARE","GTM","PERFORMANCE","counter","memoizedPendingEvents","PerformanceManager","device","useDevice","track","trackRender","useMetrics","_useStore","useStore","components","performance","storePerformance","store","consentMode","setConsentMode","useState","getConsentMode","setPerformance","hotel","finder","place","id","instanceId","locale","session","type","useEffect","window","Mirai","urlParameters","fetchUrlParams","location","search","metrics","ServiceFeatures","get","bannedMetrics","entries","_ref","map","_ref2","key","handleMetrics","_ref3","props","IS_PLAYWRIGHT","host","event","toUpperCase","trim","metric","split","includes","KPI_EVENTS","method","hotelId","mobile","Event","subscribe","COMPONENTS_EVENT","METRICS","unsubscribe","interval","setInterval","undefined","nextConsentMode","isGtm","provider","nextMemoizedPendingEvents","execute","CONSENT_MODE_ANSWERED","requeue","executeEvent","clearInterval","config","isHotel","getPerformance","handleEvent","_ref4","currentConsentMode","availableProviders","CONSENT_MODE_REQUIRED","EVENTS","_ref5","propProvider","callback","parseInt","some","item","loadScripts","then","find","_ref6","response","label","concat","getPerformanceLabel","console","log","propConsentMode","loadedComponents","scripts","instances","propInstances","init","once","SCRIPTS","index","domain","loadScript","catch","exports"],"sources":["../../../src/contexts/PerformanceManager/PerformanceManager.jsx"],"sourcesContent":["import { Event, useMetrics, useStore } from '@mirai/data-sources';\nimport { ServiceFeatures } from '@mirai/services';\nimport { useDevice } from '@mirai/ui';\nimport { useEffect, useState } from 'react';\n\nimport { getConsentMode, getPerformanceLabel } from './helpers';\nimport { CONSENT_MODE_ANSWERED, CONSENT_MODE_REQUIRED, KPI_EVENTS } from './PerformanceManager.constants';\nimport { EVENTS } from './PerformanceManager.events';\nimport { SCRIPTS } from './PerformanceManager.scripts';\nimport { EVENT as COMPONENTS_EVENT } from '../../components/helpers';\nimport { PERFORMANCE } from '../../Core.constants';\nimport { fetchUrlParams, getPerformance, loadScript } from '../../helpers';\n\nconst MAX_COUNTER = 5;\nconst { COMPARE, GTM } = PERFORMANCE || {};\n\nlet counter = 0;\nlet memoizedPendingEvents = [];\n\nconst PerformanceManager = () => {\n const device = useDevice();\n const { track, trackRender } = useMetrics();\n const {\n value: { components = {}, performance: storePerformance = [], ...store },\n } = useStore();\n\n const [consentMode, setConsentMode] = useState(getConsentMode());\n const [performance, setPerformance] = useState(storePerformance);\n\n const { hotel = {}, finder: { place } = {}, id: instanceId, locale, session, type } = store;\n\n useEffect(() => {\n //! TODO: temp fix for 123 compare for first phase\n window.Mirai.urlParameters = fetchUrlParams(location.search);\n\n const metrics = ServiceFeatures.get('metrics', hotel.id) || {};\n const bannedMetrics = Object.entries(metrics)\n .filter(([, value]) => value === false)\n .map(([key]) => key);\n\n const handleMetrics = ({ id, ...props }) => {\n if (!id || window.IS_PLAYWRIGHT || window.location.host === 'monalisa.mirai.com') return;\n const event = id.toUpperCase().trim();\n const [metric] = event.split(':');\n\n if (bannedMetrics.includes(metric) && !KPI_EVENTS.includes(event)) return;\n const method = event.includes('RENDER') ? trackRender : track;\n\n method(event, {\n ...props,\n hotelId: hotel.id,\n instanceId,\n locale,\n mobile: device.mobile,\n session,\n type,\n });\n };\n\n Event.subscribe(COMPONENTS_EVENT.METRICS, handleMetrics);\n\n return () => Event.unsubscribe(COMPONENTS_EVENT.METRICS, handleMetrics);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (consentMode) return;\n\n const interval = setInterval(async () => {\n counter !== undefined && counter++;\n const nextConsentMode = getConsentMode(counter >= MAX_COUNTER);\n const isGtm = (provider) => [COMPARE, GTM].includes(provider);\n\n if (\n (nextConsentMode === undefined &&\n memoizedPendingEvents.filter(({ provider } = {}) => isGtm(provider)).length === 0) ||\n (!nextConsentMode && counter < MAX_COUNTER)\n )\n return;\n\n const nextMemoizedPendingEvents = [];\n memoizedPendingEvents.forEach((event = {}) => {\n const { provider } = event;\n const execute =\n nextConsentMode ||\n (counter >= MAX_COUNTER &&\n CONSENT_MODE_ANSWERED.includes(provider) &&\n (nextConsentMode === false || isGtm(provider)));\n const requeue = nextConsentMode === undefined && !isGtm(provider);\n\n if (execute) {\n executeEvent(event, nextConsentMode);\n\n if (!nextConsentMode && !isGtm(provider)) nextMemoizedPendingEvents.push(event);\n } else if (!execute || requeue) {\n nextMemoizedPendingEvents.push(event);\n }\n });\n memoizedPendingEvents = nextMemoizedPendingEvents;\n if (nextConsentMode !== undefined) {\n counter = undefined;\n setConsentMode(nextConsentMode);\n }\n }, 1000);\n\n return () => clearInterval(interval);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [consentMode]);\n\n useEffect(() => {\n const { config, finder: { place: { id: [hotelId] = [], isHotel } = {} } = {} } = store;\n\n if (place) {\n setPerformance(getPerformance(config, isHotel ? hotelId : undefined));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [place]);\n\n useEffect(() => {\n const handleEvent = ({ event, ...value }) => {\n if (performance.length === 0) return;\n\n const currentConsentMode = getConsentMode(true);\n\n const availableProviders = performance\n .map(({ type } = {}) => type)\n .filter((type) => !(!currentConsentMode && CONSENT_MODE_ANSWERED.includes(type)))\n .filter((type) => currentConsentMode || !CONSENT_MODE_REQUIRED.includes(type));\n\n Object.entries(EVENTS[event]).forEach(([propProvider, callback = () => {}]) => {\n const provider = parseInt(propProvider);\n const props = { callback, event, provider, value };\n\n if (!currentConsentMode && !availableProviders.includes(provider)) {\n if (counter === undefined && CONSENT_MODE_ANSWERED.includes(provider)) {\n executeEvent(props);\n } else if (!memoizedPendingEvents.some((item) => item.event === event && item.provider === provider)) {\n memoizedPendingEvents.push(props);\n }\n } else executeEvent(props, currentConsentMode);\n });\n };\n\n Object.keys(EVENTS).forEach((event) => Event.subscribe(event, handleEvent));\n\n return () => Object.keys(EVENTS).forEach((event) => Event.unsubscribe(event, handleEvent));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [device, performance, store]);\n\n const executeEvent = ({ provider, callback, value, event } = {}, nextConsentMode = consentMode) => {\n loadScripts(\n performance.filter(({ type } = {}) => type === provider && type !== COMPARE),\n nextConsentMode,\n ).then(() => {\n const config = performance.find(({ type }) => type === provider);\n const response = callback({ ...value, ...config, device, store });\n if (!response) return;\n\n const label = `⚡️ ${getPerformanceLabel(provider)} ${event}`;\n // eslint-disable-next-line no-console\n response.then ? response.then((value) => console.log(label, value)) : console.log(label, response);\n\n if (provider === GTM) {\n loadScripts(\n performance.filter(({ type } = {}) => type === COMPARE),\n nextConsentMode,\n );\n }\n });\n };\n\n const loadScripts = async (performance = [], propConsentMode = consentMode) => {\n const loadedComponents = Object.keys(components);\n\n const scripts = [];\n performance\n .filter(({ type } = {}) => propConsentMode === true || !CONSENT_MODE_REQUIRED.includes(type))\n .forEach(({ type, instances: propInstances = [] } = {}) => {\n const { components = [], init = () => {}, once = false } = SCRIPTS[type] || {};\n\n if (components.length === 0 || components.some((item) => loadedComponents.includes(item))) {\n const instances = once ? [propInstances[0]] : propInstances;\n scripts.push(\n ...instances.map((config = {}, index) => ({\n domain: `performance-${getPerformanceLabel(type)}`,\n id: index + 1,\n ...init({ ...config, hotel, instanceId, loadedComponents, place }),\n type,\n })),\n );\n }\n });\n\n for (let index = 0; index < scripts.length; index++) {\n await loadScript(scripts[index]).catch(() => {});\n }\n };\n\n return null;\n};\n\nexport { PerformanceManager };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,GAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAEA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,mBAAA,GAAAL,OAAA;AACA,IAAAM,oBAAA,GAAAN,OAAA;AACA,IAAAO,oBAAA,GAAAP,OAAA;AACA,IAAAQ,SAAA,GAAAR,OAAA;AACA,IAAAS,KAAA,GAAAT,OAAA;AACA,IAAAU,SAAA,GAAAV,OAAA;AAA2E,MAAAW,SAAA;EAAAC,UAAA;EAAAC,UAAA;AAAA,SAAAC,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,IAAAe,eAAA,CAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAAA,SAAAgB,gBAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAmB,cAAA,CAAAnB,CAAA,MAAAD,CAAA,GAAAG,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,IAAAoB,KAAA,EAAAnB,CAAA,EAAAO,UAAA,MAAAa,YAAA,MAAAC,QAAA,UAAAvB,CAAA,CAAAC,CAAA,IAAAC,CAAA,EAAAF,CAAA;AAAA,SAAAoB,eAAAlB,CAAA,QAAAsB,CAAA,GAAAC,YAAA,CAAAvB,CAAA,uCAAAsB,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAvB,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAwB,MAAA,CAAAC,WAAA,kBAAA3B,CAAA,QAAAwB,CAAA,GAAAxB,CAAA,CAAA4B,IAAA,CAAA1B,CAAA,EAAAD,CAAA,uCAAAuB,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAA5B,CAAA,GAAA6B,MAAA,GAAAC,MAAA,EAAA7B,CAAA;AAAA,SAAA8B,yBAAAhC,CAAA,EAAAE,CAAA,gBAAAF,CAAA,iBAAAM,CAAA,EAAAL,CAAA,EAAAuB,CAAA,GAAAS,6BAAA,CAAAjC,CAAA,EAAAE,CAAA,OAAAC,MAAA,CAAAE,qBAAA,QAAA6B,CAAA,GAAA/B,MAAA,CAAAE,qBAAA,CAAAL,CAAA,QAAAC,CAAA,MAAAA,CAAA,GAAAiC,CAAA,CAAApB,MAAA,EAAAb,CAAA,IAAAK,CAAA,GAAA4B,CAAA,CAAAjC,CAAA,UAAAC,CAAA,CAAAiC,OAAA,CAAA7B,CAAA,QAAA8B,oBAAA,CAAAR,IAAA,CAAA5B,CAAA,EAAAM,CAAA,MAAAkB,CAAA,CAAAlB,CAAA,IAAAN,CAAA,CAAAM,CAAA,aAAAkB,CAAA;AAAA,SAAAS,8BAAAhC,CAAA,EAAAD,CAAA,gBAAAC,CAAA,iBAAAC,CAAA,gBAAAgC,CAAA,IAAAjC,CAAA,SAAAoC,cAAA,CAAAT,IAAA,CAAA3B,CAAA,EAAAiC,CAAA,gBAAAlC,CAAA,CAAAmC,OAAA,CAAAD,CAAA,aAAAhC,CAAA,CAAAgC,CAAA,IAAAjC,CAAA,CAAAiC,CAAA,YAAAhC,CAAA;AAE3E,MAAMoC,WAAW,GAAG,CAAC;AACrB,MAAM;EAAEC,OAAO;EAAEC;AAAI,CAAC,GAAGC,iBAAW,IAAI,CAAC,CAAC;AAE1C,IAAIC,OAAO,GAAG,CAAC;AACf,IAAIC,qBAAqB,GAAG,EAAE;AAE9B,MAAMC,kBAAkB,GAAGA,CAAA,KAAM;EAC/B,MAAMC,MAAM,GAAG,IAAAC,aAAS,EAAC,CAAC;EAC1B,MAAM;IAAEC,KAAK;IAAEC;EAAY,CAAC,GAAG,IAAAC,uBAAU,EAAC,CAAC;EAC3C,MAAAC,SAAA,GAEI,IAAAC,qBAAQ,EAAC,CAAC;IAFR;MACJ9B,KAAK,EAAE;QAAE+B,UAAU,GAAG,CAAC,CAAC;QAAEC,WAAW,EAAEC,gBAAgB,GAAG;MAAa;IACzE,CAAC,GAAAJ,SAAA;IADkEK,KAAK,GAAAvB,wBAAA,CAAAkB,SAAA,CAAtE7B,KAAK,EAAAzB,SAAA;EAGP,MAAM,CAAC4D,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAC,eAAQ,EAAC,IAAAC,uBAAc,EAAC,CAAC,CAAC;EAChE,MAAM,CAACN,WAAW,EAAEO,cAAc,CAAC,GAAG,IAAAF,eAAQ,EAACJ,gBAAgB,CAAC;EAEhE,MAAM;IAAEO,KAAK,GAAG,CAAC,CAAC;IAAEC,MAAM,EAAE;MAAEC;IAAM,CAAC,GAAG,CAAC,CAAC;IAAEC,EAAE,EAAEC,UAAU;IAAEC,MAAM;IAAEC,OAAO;IAAEC;EAAK,CAAC,GAAGb,KAAK;EAE3F,IAAAc,gBAAS,EAAC,MAAM;IACd;IACAC,MAAM,CAACC,KAAK,CAACC,aAAa,GAAG,IAAAC,wBAAc,EAACC,QAAQ,CAACC,MAAM,CAAC;IAE5D,MAAMC,OAAO,GAAGC,yBAAe,CAACC,GAAG,CAAC,SAAS,EAAEjB,KAAK,CAACG,EAAE,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAMe,aAAa,GAAG5E,MAAM,CAAC6E,OAAO,CAACJ,OAAO,CAAC,CAC1CrE,MAAM,CAAC0E,IAAA;MAAA,IAAC,GAAG5D,KAAK,CAAC,GAAA4D,IAAA;MAAA,OAAK5D,KAAK,KAAK,KAAK;IAAA,EAAC,CACtC6D,GAAG,CAACC,KAAA;MAAA,IAAC,CAACC,GAAG,CAAC,GAAAD,KAAA;MAAA,OAAKC,GAAG;IAAA,EAAC;IAEtB,MAAMC,aAAa,GAAGC,KAAA,IAAsB;MAAA,IAArB;UAAEtB;QAAa,CAAC,GAAAsB,KAAA;QAAPC,KAAK,GAAAvD,wBAAA,CAAAsD,KAAA,EAAAzF,UAAA;MACnC,IAAI,CAACmE,EAAE,IAAIM,MAAM,CAACkB,aAAa,IAAIlB,MAAM,CAACI,QAAQ,CAACe,IAAI,KAAK,oBAAoB,EAAE;MAClF,MAAMC,KAAK,GAAG1B,EAAE,CAAC2B,WAAW,CAAC,CAAC,CAACC,IAAI,CAAC,CAAC;MACrC,MAAM,CAACC,MAAM,CAAC,GAAGH,KAAK,CAACI,KAAK,CAAC,GAAG,CAAC;MAEjC,IAAIf,aAAa,CAACgB,QAAQ,CAACF,MAAM,CAAC,IAAI,CAACG,8BAAU,CAACD,QAAQ,CAACL,KAAK,CAAC,EAAE;MACnE,MAAMO,MAAM,GAAGP,KAAK,CAACK,QAAQ,CAAC,QAAQ,CAAC,GAAG/C,WAAW,GAAGD,KAAK;MAE7DkD,MAAM,CAACP,KAAK,EAAA9E,aAAA,CAAAA,aAAA,KACP2E,KAAK;QACRW,OAAO,EAAErC,KAAK,CAACG,EAAE;QACjBC,UAAU;QACVC,MAAM;QACNiC,MAAM,EAAEtD,MAAM,CAACsD,MAAM;QACrBhC,OAAO;QACPC;MAAI,EACL,CAAC;IACJ,CAAC;IAEDgC,kBAAK,CAACC,SAAS,CAACC,eAAgB,CAACC,OAAO,EAAElB,aAAa,CAAC;IAExD,OAAO,MAAMe,kBAAK,CAACI,WAAW,CAACF,eAAgB,CAACC,OAAO,EAAElB,aAAa,CAAC;IACvE;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAhB,gBAAS,EAAC,MAAM;IACd,IAAIb,WAAW,EAAE;IAEjB,MAAMiD,QAAQ,GAAGC,WAAW,CAAC,YAAY;MACvChE,OAAO,KAAKiE,SAAS,IAAIjE,OAAO,EAAE;MAClC,MAAMkE,eAAe,GAAG,IAAAjD,uBAAc,EAACjB,OAAO,IAAIJ,WAAW,CAAC;MAC9D,MAAMuE,KAAK,GAAIC,QAAQ,IAAK,CAACvE,OAAO,EAAEC,GAAG,CAAC,CAACuD,QAAQ,CAACe,QAAQ,CAAC;MAE7D,IACGF,eAAe,KAAKD,SAAS,IAC5BhE,qBAAqB,CAACpC,MAAM,CAAC;QAAA,IAAC;UAAEuG;QAAS,CAAC,GAAAjG,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8F,SAAA,GAAA9F,SAAA,MAAG,CAAC,CAAC;QAAA,OAAKgG,KAAK,CAACC,QAAQ,CAAC;MAAA,EAAC,CAAChG,MAAM,KAAK,CAAC,IAClF,CAAC8F,eAAe,IAAIlE,OAAO,GAAGJ,WAAY,EAE3C;MAEF,MAAMyE,yBAAyB,GAAG,EAAE;MACpCpE,qBAAqB,CAAC5B,OAAO,CAAC,YAAgB;QAAA,IAAf2E,KAAK,GAAA7E,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8F,SAAA,GAAA9F,SAAA,MAAG,CAAC,CAAC;QACvC,MAAM;UAAEiG;QAAS,CAAC,GAAGpB,KAAK;QAC1B,MAAMsB,OAAO,GACXJ,eAAe,IACdlE,OAAO,IAAIJ,WAAW,IACrB2E,yCAAqB,CAAClB,QAAQ,CAACe,QAAQ,CAAC,KACvCF,eAAe,KAAK,KAAK,IAAIC,KAAK,CAACC,QAAQ,CAAC,CAAE;QACnD,MAAMI,OAAO,GAAGN,eAAe,KAAKD,SAAS,IAAI,CAACE,KAAK,CAACC,QAAQ,CAAC;QAEjE,IAAIE,OAAO,EAAE;UACXG,YAAY,CAACzB,KAAK,EAAEkB,eAAe,CAAC;UAEpC,IAAI,CAACA,eAAe,IAAI,CAACC,KAAK,CAACC,QAAQ,CAAC,EAAEC,yBAAyB,CAACrG,IAAI,CAACgF,KAAK,CAAC;QACjF,CAAC,MAAM,IAAI,CAACsB,OAAO,IAAIE,OAAO,EAAE;UAC9BH,yBAAyB,CAACrG,IAAI,CAACgF,KAAK,CAAC;QACvC;MACF,CAAC,CAAC;MACF/C,qBAAqB,GAAGoE,yBAAyB;MACjD,IAAIH,eAAe,KAAKD,SAAS,EAAE;QACjCjE,OAAO,GAAGiE,SAAS;QACnBlD,cAAc,CAACmD,eAAe,CAAC;MACjC;IACF,CAAC,EAAE,IAAI,CAAC;IAER,OAAO,MAAMQ,aAAa,CAACX,QAAQ,CAAC;IACpC;EACF,CAAC,EAAE,CAACjD,WAAW,CAAC,CAAC;EAEjB,IAAAa,gBAAS,EAAC,MAAM;IACd,MAAM;MAAEgD,MAAM;MAAEvD,MAAM,EAAE;QAAEC,KAAK,EAAE;UAAEC,EAAE,EAAE,CAACkC,OAAO,CAAC,GAAG,EAAE;UAAEoB;QAAQ,CAAC,GAAG,CAAC;MAAE,CAAC,GAAG,CAAC;IAAE,CAAC,GAAG/D,KAAK;IAEtF,IAAIQ,KAAK,EAAE;MACTH,cAAc,CAAC,IAAA2D,wBAAc,EAACF,MAAM,EAAEC,OAAO,GAAGpB,OAAO,GAAGS,SAAS,CAAC,CAAC;IACvE;IACA;EACF,CAAC,EAAE,CAAC5C,KAAK,CAAC,CAAC;EAEX,IAAAM,gBAAS,EAAC,MAAM;IACd,MAAMmD,WAAW,GAAGC,KAAA,IAAyB;MAAA,IAAxB;UAAE/B;QAAgB,CAAC,GAAA+B,KAAA;QAAPpG,KAAK,GAAAW,wBAAA,CAAAyF,KAAA,EAAA3H,UAAA;MACpC,IAAIuD,WAAW,CAACvC,MAAM,KAAK,CAAC,EAAE;MAE9B,MAAM4G,kBAAkB,GAAG,IAAA/D,uBAAc,EAAC,IAAI,CAAC;MAE/C,MAAMgE,kBAAkB,GAAGtE,WAAW,CACnC6B,GAAG,CAAC;QAAA,IAAC;UAAEd;QAAK,CAAC,GAAAvD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8F,SAAA,GAAA9F,SAAA,MAAG,CAAC,CAAC;QAAA,OAAKuD,IAAI;MAAA,EAAC,CAC5B7D,MAAM,CAAE6D,IAAI,IAAK,EAAE,CAACsD,kBAAkB,IAAIT,yCAAqB,CAAClB,QAAQ,CAAC3B,IAAI,CAAC,CAAC,CAAC,CAChF7D,MAAM,CAAE6D,IAAI,IAAKsD,kBAAkB,IAAI,CAACE,yCAAqB,CAAC7B,QAAQ,CAAC3B,IAAI,CAAC,CAAC;MAEhFjE,MAAM,CAAC6E,OAAO,CAAC6C,2BAAM,CAACnC,KAAK,CAAC,CAAC,CAAC3E,OAAO,CAAC+G,KAAA,IAAyC;QAAA,IAAxC,CAACC,YAAY,EAAEC,QAAQ,GAAGA,CAAA,KAAM,CAAC,CAAC,CAAC,GAAAF,KAAA;QACxE,MAAMhB,QAAQ,GAAGmB,QAAQ,CAACF,YAAY,CAAC;QACvC,MAAMxC,KAAK,GAAG;UAAEyC,QAAQ;UAAEtC,KAAK;UAAEoB,QAAQ;UAAEzF;QAAM,CAAC;QAElD,IAAI,CAACqG,kBAAkB,IAAI,CAACC,kBAAkB,CAAC5B,QAAQ,CAACe,QAAQ,CAAC,EAAE;UACjE,IAAIpE,OAAO,KAAKiE,SAAS,IAAIM,yCAAqB,CAAClB,QAAQ,CAACe,QAAQ,CAAC,EAAE;YACrEK,YAAY,CAAC5B,KAAK,CAAC;UACrB,CAAC,MAAM,IAAI,CAAC5C,qBAAqB,CAACuF,IAAI,CAAEC,IAAI,IAAKA,IAAI,CAACzC,KAAK,KAAKA,KAAK,IAAIyC,IAAI,CAACrB,QAAQ,KAAKA,QAAQ,CAAC,EAAE;YACpGnE,qBAAqB,CAACjC,IAAI,CAAC6E,KAAK,CAAC;UACnC;QACF,CAAC,MAAM4B,YAAY,CAAC5B,KAAK,EAAEmC,kBAAkB,CAAC;MAChD,CAAC,CAAC;IACJ,CAAC;IAEDvH,MAAM,CAACC,IAAI,CAACyH,2BAAM,CAAC,CAAC9G,OAAO,CAAE2E,KAAK,IAAKU,kBAAK,CAACC,SAAS,CAACX,KAAK,EAAE8B,WAAW,CAAC,CAAC;IAE3E,OAAO,MAAMrH,MAAM,CAACC,IAAI,CAACyH,2BAAM,CAAC,CAAC9G,OAAO,CAAE2E,KAAK,IAAKU,kBAAK,CAACI,WAAW,CAACd,KAAK,EAAE8B,WAAW,CAAC,CAAC;IAC1F;EACF,CAAC,EAAE,CAAC3E,MAAM,EAAEQ,WAAW,EAAEE,KAAK,CAAC,CAAC;EAEhC,MAAM4D,YAAY,GAAG,SAAAA,CAAA,EAA8E;IAAA,IAA7E;MAAEL,QAAQ;MAAEkB,QAAQ;MAAE3G,KAAK;MAAEqE;IAAM,CAAC,GAAA7E,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8F,SAAA,GAAA9F,SAAA,MAAG,CAAC,CAAC;IAAA,IAAE+F,eAAe,GAAA/F,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8F,SAAA,GAAA9F,SAAA,MAAG2C,WAAW;IAC5F4E,WAAW,CACT/E,WAAW,CAAC9C,MAAM,CAAC;MAAA,IAAC;QAAE6D;MAAK,CAAC,GAAAvD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8F,SAAA,GAAA9F,SAAA,MAAG,CAAC,CAAC;MAAA,OAAKuD,IAAI,KAAK0C,QAAQ,IAAI1C,IAAI,KAAK7B,OAAO;IAAA,EAAC,EAC5EqE,eACF,CAAC,CAACyB,IAAI,CAAC,MAAM;MACX,MAAMhB,MAAM,GAAGhE,WAAW,CAACiF,IAAI,CAACC,KAAA;QAAA,IAAC;UAAEnE;QAAK,CAAC,GAAAmE,KAAA;QAAA,OAAKnE,IAAI,KAAK0C,QAAQ;MAAA,EAAC;MAChE,MAAM0B,QAAQ,GAAGR,QAAQ,CAAApH,aAAA,CAAAA,aAAA,CAAAA,aAAA,KAAMS,KAAK,GAAKgG,MAAM;QAAExE,MAAM;QAAEU;MAAK,EAAE,CAAC;MACjE,IAAI,CAACiF,QAAQ,EAAE;MAEf,MAAMC,KAAK,mBAAAC,MAAA,CAAS,IAAAC,4BAAmB,EAAC7B,QAAQ,CAAC,OAAA4B,MAAA,CAAIhD,KAAK,CAAE;MAC5D;MACA8C,QAAQ,CAACH,IAAI,GAAGG,QAAQ,CAACH,IAAI,CAAEhH,KAAK,IAAKuH,OAAO,CAACC,GAAG,CAACJ,KAAK,EAAEpH,KAAK,CAAC,CAAC,GAAGuH,OAAO,CAACC,GAAG,CAACJ,KAAK,EAAED,QAAQ,CAAC;MAElG,IAAI1B,QAAQ,KAAKtE,GAAG,EAAE;QACpB4F,WAAW,CACT/E,WAAW,CAAC9C,MAAM,CAAC;UAAA,IAAC;YAAE6D;UAAK,CAAC,GAAAvD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8F,SAAA,GAAA9F,SAAA,MAAG,CAAC,CAAC;UAAA,OAAKuD,IAAI,KAAK7B,OAAO;QAAA,EAAC,EACvDqE,eACF,CAAC;MACH;IACF,CAAC,CAAC;EACJ,CAAC;EAED,MAAMwB,WAAW,GAAG,eAAAA,CAAA,EAA2D;IAAA,IAApD/E,WAAW,GAAAxC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8F,SAAA,GAAA9F,SAAA,MAAG,EAAE;IAAA,IAAEiI,eAAe,GAAAjI,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8F,SAAA,GAAA9F,SAAA,MAAG2C,WAAW;IACxE,MAAMuF,gBAAgB,GAAG5I,MAAM,CAACC,IAAI,CAACgD,UAAU,CAAC;IAEhD,MAAM4F,OAAO,GAAG,EAAE;IAClB3F,WAAW,CACR9C,MAAM,CAAC;MAAA,IAAC;QAAE6D;MAAK,CAAC,GAAAvD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8F,SAAA,GAAA9F,SAAA,MAAG,CAAC,CAAC;MAAA,OAAKiI,eAAe,KAAK,IAAI,IAAI,CAAClB,yCAAqB,CAAC7B,QAAQ,CAAC3B,IAAI,CAAC;IAAA,EAAC,CAC5FrD,OAAO,CAAC,YAAkD;MAAA,IAAjD;QAAEqD,IAAI;QAAE6E,SAAS,EAAEC,aAAa,GAAG;MAAG,CAAC,GAAArI,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8F,SAAA,GAAA9F,SAAA,MAAG,CAAC,CAAC;MACpD,MAAM;QAAEuC,UAAU,GAAG,EAAE;QAAE+F,IAAI,GAAGA,CAAA,KAAM,CAAC,CAAC;QAAEC,IAAI,GAAG;MAAM,CAAC,GAAGC,4BAAO,CAACjF,IAAI,CAAC,IAAI,CAAC,CAAC;MAE9E,IAAIhB,UAAU,CAACtC,MAAM,KAAK,CAAC,IAAIsC,UAAU,CAAC8E,IAAI,CAAEC,IAAI,IAAKY,gBAAgB,CAAChD,QAAQ,CAACoC,IAAI,CAAC,CAAC,EAAE;QACzF,MAAMc,SAAS,GAAGG,IAAI,GAAG,CAACF,aAAa,CAAC,CAAC,CAAC,CAAC,GAAGA,aAAa;QAC3DF,OAAO,CAACtI,IAAI,CACV,GAAGuI,SAAS,CAAC/D,GAAG,CAAC;UAAA,IAACmC,MAAM,GAAAxG,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA8F,SAAA,GAAA9F,SAAA,MAAG,CAAC,CAAC;UAAA,IAAEyI,KAAK,GAAAzI,SAAA,CAAAC,MAAA,OAAAD,SAAA,MAAA8F,SAAA;UAAA,OAAA/F,aAAA,CAAAA,aAAA;YAClC2I,MAAM,iBAAAb,MAAA,CAAiB,IAAAC,4BAAmB,EAACvE,IAAI,CAAC,CAAE;YAClDJ,EAAE,EAAEsF,KAAK,GAAG;UAAC,GACVH,IAAI,CAAAvI,aAAA,CAAAA,aAAA,KAAMyG,MAAM;YAAExD,KAAK;YAAEI,UAAU;YAAE8E,gBAAgB;YAAEhF;UAAK,EAAE,CAAC;YAClEK;UAAI;QAAA,CACJ,CACJ,CAAC;MACH;IACF,CAAC,CAAC;IAEJ,KAAK,IAAIkF,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGN,OAAO,CAAClI,MAAM,EAAEwI,KAAK,EAAE,EAAE;MACnD,MAAM,IAAAE,oBAAU,EAACR,OAAO,CAACM,KAAK,CAAC,CAAC,CAACG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD;EACF,CAAC;EAED,OAAO,IAAI;AACb,CAAC;AAACC,OAAA,CAAA9G,kBAAA,GAAAA,kBAAA","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.4.386",
3
+ "version": "0.4.388",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",
@@ -11,7 +11,6 @@
11
11
  "build:npm": "node scripts/build.js",
12
12
  "build:bundle": "node scripts/bundle.js",
13
13
  "build:stats": "source-map-explorer 'dist/**/*.js'",
14
- "serve": "serve dist/site -p 8080 -u -n -s",
15
14
  "lint": "eslint --cache --fix --format codeframe --ext .jsx,.js src",
16
15
  "test": "node scripts/test.js --watchAll=false --silent --runInBand",
17
16
  "test:coverage": "node scripts/test.js --coverage --coverageReporters=text --detectOpenHandles --forceExit --silent",
@@ -43,15 +42,16 @@
43
42
  "@babel/preset-react": "7.27.1",
44
43
  "@mirai/eslint": "0.1.13",
45
44
  "@parcel/transformer-inline-string": "2.15.2",
46
- "@playwright/test": "^1.49.1",
45
+ "@playwright/test": "^1.54.1",
47
46
  "@sentry/cli": "^2.38.1",
48
47
  "@testing-library/dom": "^10.4.0",
49
48
  "@testing-library/react": "16.3.0",
49
+ "http-server": "^14.1.1",
50
50
  "jest-fetch-mock": "^3.0.3",
51
51
  "parcel": "2.15.2",
52
52
  "process": "0.11.10",
53
53
  "react-scripts": "5.0.1",
54
- "serve": "14.2.0",
54
+ "serve": "14.2.4",
55
55
  "source-map-explorer": "2.5.3",
56
56
  "wouter": "^2.8.1"
57
57
  },