@mirai/core 0.3.415 → 0.3.416
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.
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.PerfomanceManager = void 0;
|
|
7
7
|
var _dataSources = require("@mirai/data-sources");
|
|
8
|
+
var _services = require("@mirai/services");
|
|
8
9
|
var _ui = require("@mirai/ui");
|
|
9
10
|
var _react = require("react");
|
|
10
11
|
var _helpers = require("./helpers");
|
|
@@ -13,9 +14,6 @@ var _PerfomanceManager2 = require("./PerfomanceManager.scripts");
|
|
|
13
14
|
var _helpers2 = require("../../components/helpers");
|
|
14
15
|
var _Core = require("../../Core.constants");
|
|
15
16
|
var _helpers3 = require("../../helpers");
|
|
16
|
-
// ! TODO
|
|
17
|
-
// import { ServiceFeatures } from '@mirai/services';
|
|
18
|
-
|
|
19
17
|
const PerfomanceManager = () => {
|
|
20
18
|
const device = (0, _ui.useDevice)();
|
|
21
19
|
const {
|
|
@@ -57,16 +55,23 @@ const PerfomanceManager = () => {
|
|
|
57
55
|
});
|
|
58
56
|
});
|
|
59
57
|
};
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
58
|
+
const metrics = _services.ServiceFeatures.get('metrics', hotel.id) || {};
|
|
59
|
+
const bannedMetrics = Object.entries(metrics).filter(_ref3 => {
|
|
60
|
+
let [, value] = _ref3;
|
|
61
|
+
return value === false;
|
|
62
|
+
}).map(_ref4 => {
|
|
63
|
+
let [key] = _ref4;
|
|
64
|
+
return key;
|
|
65
|
+
});
|
|
66
|
+
const handleMetrics = _ref5 => {
|
|
64
67
|
let {
|
|
65
68
|
id,
|
|
66
69
|
...props
|
|
67
|
-
} =
|
|
70
|
+
} = _ref5;
|
|
68
71
|
if (!id || window.IS_PLAYWRIGHT || window.location.host === 'monalisa.mirai.com') return;
|
|
69
72
|
const event = id.toUpperCase().trim();
|
|
73
|
+
const [metric] = event.split(':');
|
|
74
|
+
if (bannedMetrics.includes(metric)) return;
|
|
70
75
|
const method = event.includes('RENDER') ? trackRender : track;
|
|
71
76
|
method(event, {
|
|
72
77
|
...props,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerfomanceManager.js","names":["_dataSources","require","_ui","_react","_helpers","_PerfomanceManager","_PerfomanceManager2","_helpers2","_Core","_helpers3","PerfomanceManager","device","useDevice","track","trackRender","useMetrics","value","components","perfomance","store","useStore","hotel","id","instanceId","locale","session","type","useEffect","handleEvent","event","availableProviders","map","arguments","length","undefined","Object","entries","EVENTS","filter","_ref","provider","includes","parseInt","forEach","_ref2","callback","console","log","concat","getPerfomanceLabel","
|
|
1
|
+
{"version":3,"file":"PerfomanceManager.js","names":["_dataSources","require","_services","_ui","_react","_helpers","_PerfomanceManager","_PerfomanceManager2","_helpers2","_Core","_helpers3","PerfomanceManager","device","useDevice","track","trackRender","useMetrics","value","components","perfomance","store","useStore","hotel","id","instanceId","locale","session","type","useEffect","handleEvent","event","availableProviders","map","arguments","length","undefined","Object","entries","EVENTS","filter","_ref","provider","includes","parseInt","forEach","_ref2","callback","console","log","concat","getPerfomanceLabel","metrics","ServiceFeatures","get","bannedMetrics","_ref3","_ref4","key","handleMetrics","_ref5","props","window","IS_PLAYWRIGHT","location","host","toUpperCase","trim","metric","split","method","hotelId","mobile","keys","Event","subscribe","EVENT","CORE_READY","loadScripts","COMPONENTS_EVENT","METRICS","unsubscribe","loadedComponents","Promise","all","config","index","init","SCRIPTS","some","item","loadScript","domain","publish","PERFOMANCE_READY","exports"],"sources":["../../../src/contexts/PerfomanceManager/PerfomanceManager.jsx"],"sourcesContent":["import { Event, useMetrics, useStore } from '@mirai/data-sources';\nimport { ServiceFeatures } from '@mirai/services';\nimport { useDevice } from '@mirai/ui';\nimport { useEffect } from 'react';\n\nimport { getPerfomanceLabel } from './helpers';\nimport { EVENTS } from './PerfomanceManager.events';\nimport { SCRIPTS } from './PerfomanceManager.scripts';\nimport { EVENT as COMPONENTS_EVENT } from '../../components/helpers';\nimport { EVENT } from '../../Core.constants';\nimport { loadScript } from '../../helpers';\n\nconst PerfomanceManager = () => {\n const device = useDevice();\n const { track, trackRender } = useMetrics();\n const {\n value: { components = {}, perfomance = [], ...store },\n } = useStore();\n\n const { hotel, id: instanceId, locale, session, type } = store;\n\n useEffect(() => {\n const handleEvent = (event, value) => {\n const availableProviders = perfomance.map(({ id } = {}) => id);\n\n Object.entries(EVENTS[event])\n .filter(([provider]) => availableProviders.includes(parseInt(provider)))\n .forEach(([provider, callback = () => {}]) => {\n console.log(`⚡️ ${getPerfomanceLabel(provider)} ${event}`);\n callback({ ...value, device, store });\n });\n };\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)) 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 Object.keys(EVENTS).forEach((event) => Event.subscribe(event, (value) => handleEvent(event, value)));\n Event.subscribe(EVENT.CORE_READY, loadScripts);\n Event.subscribe(COMPONENTS_EVENT.METRICS, handleMetrics);\n\n return () => {\n Object.keys(EVENT).forEach((event) => Event.unsubscribe(event, handleEvent));\n Event.unsubscribe(EVENT.CORE_READY, loadScripts);\n Event.unsubscribe(COMPONENTS_EVENT.METRICS, handleMetrics);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const loadScripts = async () => {\n const loadedComponents = Object.keys(components);\n\n await Promise.all(\n perfomance.map(async ({ id, ...config } = {}, index) => {\n const { components = [], init = () => {} } = SCRIPTS[id] || {};\n\n if (components.length === 0 || components.some((item) => loadedComponents.includes(item))) {\n await loadScript({\n domain: `perfomance-${getPerfomanceLabel(id)}`,\n id: index,\n ...init({ ...config, hotel }),\n });\n }\n }),\n );\n\n Event.publish(EVENT.PERFOMANCE_READY);\n };\n\n return null;\n};\n\nexport { PerfomanceManager };\n"],"mappings":"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"}
|