@mirai/core 0.4.460 → 0.4.462
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/AGENTS.md +2 -1
- package/build/Core.ErrorBoundary.js +43 -0
- package/build/Core.ErrorBoundary.js.map +1 -0
- package/build/Core.constants.js +2 -3
- package/build/Core.constants.js.map +1 -1
- package/build/components/Session/Session.Account.js +4 -18
- package/build/components/Session/Session.Account.js.map +1 -1
- package/build/components/Session/Session.Login.Modal.js +0 -28
- package/build/components/Session/Session.Login.Modal.js.map +1 -1
- package/build/components/Session/helpers/index.js +0 -11
- package/build/components/Session/helpers/index.js.map +1 -1
- package/build/components/__shared__/ButtonPayment/components/FormStripe/FormStripe.js +2 -2
- package/build/components/__shared__/ButtonPayment/components/FormStripe/FormStripe.js.map +1 -1
- package/build/components/__shared__/Payment/components/LinkagePay/LinkagePay.js +2 -0
- package/build/components/__shared__/Payment/components/LinkagePay/LinkagePay.js.map +1 -1
- package/build/components/__shared__/Payment/components/Openpay/Openpay.js +2 -2
- package/build/components/__shared__/Payment/components/Openpay/Openpay.js.map +1 -1
- package/build/components/__shared__/Payment/components/PCI/PCI.js +4 -3
- package/build/components/__shared__/Payment/components/PCI/PCI.js.map +1 -1
- package/build/helpers/fetchExternalSession.js +39 -0
- package/build/helpers/fetchExternalSession.js.map +1 -0
- package/build/helpers/index.js +22 -11
- package/build/helpers/index.js.map +1 -1
- package/build/helpers/logout.js +15 -0
- package/build/helpers/logout.js.map +1 -0
- package/build/helpers/trackError.js +18 -0
- package/build/helpers/trackError.js.map +1 -0
- package/build/index.js +18 -21
- package/build/index.js.map +1 -1
- package/package.json +1 -3
- package/build/Core.Error.js +0 -26
- package/build/Core.Error.js.map +0 -1
- package/build/components/Session/helpers/getExternalToken.js +0 -25
- package/build/components/Session/helpers/getExternalToken.js.map +0 -1
- package/build/helpers/loadSentry.js +0 -52
- package/build/helpers/loadSentry.js.map +0 -1
package/build/index.js
CHANGED
|
@@ -7,7 +7,7 @@ var _client = require("react-dom/client");
|
|
|
7
7
|
var _contexts = require("./contexts");
|
|
8
8
|
var _Core = require("./Core");
|
|
9
9
|
var _Core2 = require("./Core.constants");
|
|
10
|
-
var _Core3 = require("./Core.
|
|
10
|
+
var _Core3 = require("./Core.ErrorBoundary");
|
|
11
11
|
var _helpers = require("./helpers");
|
|
12
12
|
var _package = require("../package.json");
|
|
13
13
|
require("./helpers/polyfills");
|
|
@@ -30,6 +30,7 @@ window.Mirai = _objectSpread(_objectSpread({}, window.Mirai), {}, {
|
|
|
30
30
|
static: process.env.SERVICE_STATIC,
|
|
31
31
|
user: process.env.SERVICE_USER
|
|
32
32
|
},
|
|
33
|
+
trackError: _helpers.trackError,
|
|
33
34
|
version: _package.version
|
|
34
35
|
});
|
|
35
36
|
let memoizedRoot;
|
|
@@ -49,36 +50,26 @@ window.Mirai.core = async () => {
|
|
|
49
50
|
});
|
|
50
51
|
if (!instance) return;
|
|
51
52
|
|
|
52
|
-
// 2.
|
|
53
|
-
let {
|
|
54
|
-
Sentry
|
|
55
|
-
} = window.Mirai;
|
|
56
|
-
if (!Sentry && process.env.SENTRY) {
|
|
57
|
-
Sentry = await (0, _helpers.loadSentry)(process.env.SENTRY, _package.version, instance.id);
|
|
58
|
-
window.Mirai.Sentry = Sentry;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
// 3. Fetch client-side dataSources
|
|
53
|
+
// 2. Fetch client-side dataSources
|
|
62
54
|
const cookies = (0, _helpers.fetchCookies)(Object.values(_Core2.COOKIE));
|
|
63
55
|
let session = (0, _helpers.fetchSession)(urlParams);
|
|
64
|
-
if (session && Sentry) Sentry.setUser(session);
|
|
65
56
|
|
|
66
|
-
//
|
|
57
|
+
// 3. Analyze environment
|
|
67
58
|
const environment = urlParams.env && isProduction ? (0, _helpers.loadEnvironment)(urlParams.env) : undefined;
|
|
68
59
|
if (environment) return;
|
|
69
60
|
|
|
70
|
-
//
|
|
61
|
+
// 4. Find components
|
|
71
62
|
const components = (0, _helpers.findComponents)();
|
|
72
63
|
window.Mirai = _objectSpread(_objectSpread({}, window.Mirai), {}, {
|
|
73
64
|
components
|
|
74
65
|
});
|
|
75
66
|
|
|
76
|
-
//
|
|
67
|
+
// 5. Theming
|
|
77
68
|
(0, _helpers.theme)(urlParams);
|
|
78
69
|
const localeInstance = (0, _helpers.getLocale)(instance, urlParams);
|
|
79
70
|
memoizedRoot = (0, _client.createRoot)(instance.el);
|
|
80
71
|
// 7. 1st render
|
|
81
|
-
window && !window.IS_PLAYWRIGHT && memoizedRoot.render(/*#__PURE__*/_react.default.createElement(_react.default.StrictMode, null, /*#__PURE__*/_react.default.createElement(
|
|
72
|
+
window && !window.IS_PLAYWRIGHT && memoizedRoot.render(/*#__PURE__*/_react.default.createElement(_react.default.StrictMode, null, /*#__PURE__*/_react.default.createElement(_dataSources.StoreProvider, {
|
|
82
73
|
value: _objectSpread({
|
|
83
74
|
id: instance.id,
|
|
84
75
|
session,
|
|
@@ -88,7 +79,7 @@ window.Mirai.core = async () => {
|
|
|
88
79
|
}, localeInstance)
|
|
89
80
|
}, /*#__PURE__*/_react.default.createElement(_Core.Core, {
|
|
90
81
|
components
|
|
91
|
-
}))))
|
|
82
|
+
}))));
|
|
92
83
|
|
|
93
84
|
// 8. Analyze id to fetch its config
|
|
94
85
|
const config = await (0, _helpers.fetchConfig)(_objectSpread(_objectSpread({}, instance), {}, {
|
|
@@ -97,13 +88,20 @@ window.Mirai.core = async () => {
|
|
|
97
88
|
if (!config) return;
|
|
98
89
|
window.Mirai.config = config;
|
|
99
90
|
|
|
100
|
-
//
|
|
91
|
+
// 8. Check session
|
|
101
92
|
if (session && !(await (0, _helpers.checkSession)(instance.id, session, config))) session = undefined;
|
|
102
93
|
if (urlParams.utm_source === 'synapse' && urlParams.fingerprint) {
|
|
103
94
|
var _localStorage;
|
|
104
95
|
(_localStorage = localStorage) === null || _localStorage === void 0 ? void 0 : _localStorage.setItem('MIRAI:FINGERPRINT', urlParams.fingerprint);
|
|
105
96
|
}
|
|
106
97
|
|
|
98
|
+
// 9. Fetch external session
|
|
99
|
+
session = await (0, _helpers.fetchExternalSession)({
|
|
100
|
+
config,
|
|
101
|
+
cookies,
|
|
102
|
+
session
|
|
103
|
+
});
|
|
104
|
+
|
|
107
105
|
// 10. Consolidate store
|
|
108
106
|
const store = await (0, _helpers.consolidateStore)({
|
|
109
107
|
components,
|
|
@@ -123,7 +121,7 @@ window.Mirai.core = async () => {
|
|
|
123
121
|
// 13. Render components
|
|
124
122
|
memoizedRoot.unmount();
|
|
125
123
|
memoizedRoot = (0, _client.createRoot)(instance.el);
|
|
126
|
-
memoizedRoot.render(/*#__PURE__*/_react.default.createElement(_react.default.StrictMode, null, /*#__PURE__*/_react.default.createElement(_Core3.
|
|
124
|
+
memoizedRoot.render(/*#__PURE__*/_react.default.createElement(_react.default.StrictMode, null, /*#__PURE__*/_react.default.createElement(_Core3.ErrorBoundary, null, /*#__PURE__*/_react.default.createElement(_dataSources.StoreProvider, {
|
|
127
125
|
value: store
|
|
128
126
|
}, /*#__PURE__*/_react.default.createElement(_contexts.PerformanceManager, null), /*#__PURE__*/_react.default.createElement(_Core.Core, {
|
|
129
127
|
components
|
|
@@ -138,8 +136,7 @@ window.Mirai.core = async () => {
|
|
|
138
136
|
try {
|
|
139
137
|
!window.ON_DEMAND_INIT && (await window.Mirai.core());
|
|
140
138
|
} catch (error) {
|
|
141
|
-
|
|
142
|
-
(_window$Mirai$Sentry = window.Mirai.Sentry) === null || _window$Mirai$Sentry === void 0 ? void 0 : _window$Mirai$Sentry.captureException(error);
|
|
139
|
+
(0, _helpers.trackError)((error === null || error === void 0 ? void 0 : error.message) || 'core:init', error === null || error === void 0 ? void 0 : error.stack);
|
|
143
140
|
throw error;
|
|
144
141
|
}
|
|
145
142
|
const {
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_dataSources","require","_services","_react","_interopRequireDefault","_client","_contexts","_Core","_Core2","_Core3","_helpers","_package","e","__esModule","default","ownKeys","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","window","Mirai","components","undefined","config","environment","process","env","NODE_ENV","Event","services","booking","SERVICE_BOOKING","club","SERVICE_CLUB","dictionary","SERVICE_DICTIONARY","engine","SERVICE_ENGINE","static","SERVICE_STATIC","user","SERVICE_USER","version","memoizedRoot","core","unmount","publish","EVENT","CORE_EVENTS_READY","isProduction","isDevelopment","isPreproduction","log","concat","name","console","urlParams","fetchUrlParams","location","search","instance","findInstance","Sentry","SENTRY","loadSentry","id","cookies","fetchCookies","values","COOKIE","session","fetchSession","setUser","loadEnvironment","findComponents","theme","localeInstance","getLocale","createRoot","el","IS_PLAYWRIGHT","render","createElement","StrictMode","Error","StoreProvider","skeleton","type","Core","fetchConfig","language","checkSession","utm_source","fingerprint","_localStorage","localStorage","setItem","store","consolidateStore","ServiceFeatures","initialize","ServiceDictionary","cache","locale","get","PerformanceManager","EventManager","ready","setTimeout","CORE_READY","ON_DEMAND_INIT","error","_window$Mirai$Sentry","captureException","component","includes","addEventListener","event","persisted"],"sources":["../src/index.js"],"sourcesContent":["/* eslint-disable no-console */\nimport { Event, StoreProvider } from '@mirai/data-sources';\nimport { ServiceDictionary, ServiceFeatures } from '@mirai/services';\nimport React from 'react';\nimport { createRoot } from 'react-dom/client';\n\nimport { EventManager, PerformanceManager } from './contexts';\nimport { Core } from './Core';\nimport { COOKIE, EVENT } from './Core.constants';\nimport { Error } from './Core.Error';\nimport {\n checkSession,\n consolidateStore,\n fetchConfig,\n fetchCookies,\n fetchSession,\n fetchUrlParams,\n findComponents,\n findInstance,\n getLocale,\n loadEnvironment,\n loadSentry,\n theme,\n} from './helpers';\nimport { name, version } from '../package.json';\nimport './helpers/polyfills';\n\nwindow.Mirai = {\n ...window.Mirai,\n components: undefined,\n config: undefined,\n environment: process.env.NODE_ENV,\n Event,\n services: {\n booking: process.env.SERVICE_BOOKING,\n club: process.env.SERVICE_CLUB,\n dictionary: process.env.SERVICE_DICTIONARY,\n engine: process.env.SERVICE_ENGINE,\n static: process.env.SERVICE_STATIC,\n user: process.env.SERVICE_USER,\n },\n version,\n};\n\nlet memoizedRoot;\nwindow.Mirai.core = async () => {\n if (memoizedRoot) memoizedRoot.unmount();\n\n Event.publish(EVENT.CORE_EVENTS_READY);\n\n const isProduction = process.env.NODE_ENV === 'production';\n const isDevelopment = process.env.NODE_ENV === 'development';\n const isPreproduction = process.env.NODE_ENV === 'preproduction';\n const log = `${isProduction ? '🟢' : isPreproduction ? '🟡' : isDevelopment ? '🔴' : '⚫️'} ${name} v${version}`;\n\n console.log(log, 'starting...');\n\n // 1. Find instance\n const urlParams = fetchUrlParams(location.search);\n const instance = findInstance({ urlParams });\n if (!instance) return;\n\n // 2. Initialize sentry\n let { Sentry } = window.Mirai;\n if (!Sentry && process.env.SENTRY) {\n Sentry = await loadSentry(process.env.SENTRY, version, instance.id);\n window.Mirai.Sentry = Sentry;\n }\n\n // 3. Fetch client-side dataSources\n const cookies = fetchCookies(Object.values(COOKIE));\n let session = fetchSession(urlParams);\n\n if (session && Sentry) Sentry.setUser(session);\n\n // 4. Analyze environment\n const environment = urlParams.env && isProduction ? loadEnvironment(urlParams.env) : undefined;\n if (environment) return;\n\n // 5. Find components\n const components = findComponents();\n\n window.Mirai = { ...window.Mirai, components };\n\n // 6. Theming\n theme(urlParams);\n\n const localeInstance = getLocale(instance, urlParams);\n\n memoizedRoot = createRoot(instance.el);\n // 7. 1st render\n window &&\n !window.IS_PLAYWRIGHT &&\n memoizedRoot.render(\n <React.StrictMode>\n <Error>\n <StoreProvider\n value={{ id: instance.id, session, skeleton: true, type: instance.type, urlParams, ...localeInstance }}\n >\n <Core {...{ components }} />\n </StoreProvider>\n </Error>\n </React.StrictMode>,\n );\n\n // 8. Analyze id to fetch its config\n const config = await fetchConfig({ ...instance, language: localeInstance.language });\n if (!config) return;\n window.Mirai.config = config;\n\n // 9. Check session\n if (session && !(await checkSession(instance.id, session, config))) session = undefined;\n if (urlParams.utm_source === 'synapse' && urlParams.fingerprint) {\n localStorage?.setItem('MIRAI:FINGERPRINT', urlParams.fingerprint);\n }\n\n // 10. Consolidate store\n const store = await consolidateStore({ components, config, cookies, instance, session, urlParams });\n\n // 11. Initialize features\n await ServiceFeatures.initialize();\n\n // 12. Initialize dictionary\n if (!ServiceDictionary.cache(store.locale)) await ServiceDictionary.get(store.locale, false);\n\n // 13. Render components\n memoizedRoot.unmount();\n memoizedRoot = createRoot(instance.el);\n memoizedRoot.render(\n <React.StrictMode>\n <Error>\n <StoreProvider value={store}>\n <PerformanceManager />\n <Core {...{ components }} />\n <EventManager />\n </StoreProvider>\n </Error>\n </React.StrictMode>,\n );\n\n // 14. Up & Ready\n window.Mirai.ready = true;\n setTimeout(() => Event.publish(EVENT.CORE_READY, window.Mirai), 0);\n console.log(log, '[READY]', window.Mirai);\n};\n\n(async () => {\n try {\n !window.ON_DEMAND_INIT && (await window.Mirai.core());\n } catch (error) {\n window.Mirai.Sentry?.captureException(error);\n\n throw error;\n }\n\n const { components = [], ready } = window.Mirai;\n\n if (ready && components.filter(({ component } = {}) => ['booking', 'checkout', 'rates'].includes(component).length)) {\n window.addEventListener('pageshow', (event) => event.persisted && window.Mirai.core());\n }\n})();\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_dataSources","require","_services","_react","_interopRequireDefault","_client","_contexts","_Core","_Core2","_Core3","_helpers","_package","e","__esModule","default","ownKeys","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","window","Mirai","components","undefined","config","environment","process","env","NODE_ENV","Event","services","booking","SERVICE_BOOKING","club","SERVICE_CLUB","dictionary","SERVICE_DICTIONARY","engine","SERVICE_ENGINE","static","SERVICE_STATIC","user","SERVICE_USER","trackError","version","memoizedRoot","core","unmount","publish","EVENT","CORE_EVENTS_READY","isProduction","isDevelopment","isPreproduction","log","concat","name","console","urlParams","fetchUrlParams","location","search","instance","findInstance","cookies","fetchCookies","values","COOKIE","session","fetchSession","loadEnvironment","findComponents","theme","localeInstance","getLocale","createRoot","el","IS_PLAYWRIGHT","render","createElement","StrictMode","StoreProvider","id","skeleton","type","Core","fetchConfig","language","checkSession","utm_source","fingerprint","_localStorage","localStorage","setItem","fetchExternalSession","store","consolidateStore","ServiceFeatures","initialize","ServiceDictionary","cache","locale","get","ErrorBoundary","PerformanceManager","EventManager","ready","setTimeout","CORE_READY","ON_DEMAND_INIT","error","message","stack","component","includes","addEventListener","event","persisted"],"sources":["../src/index.js"],"sourcesContent":["/* eslint-disable no-console */\nimport { Event, StoreProvider } from '@mirai/data-sources';\nimport { ServiceDictionary, ServiceFeatures } from '@mirai/services';\nimport React from 'react';\nimport { createRoot } from 'react-dom/client';\n\nimport { EventManager, PerformanceManager } from './contexts';\nimport { Core } from './Core';\nimport { COOKIE, EVENT } from './Core.constants';\nimport { ErrorBoundary } from './Core.ErrorBoundary';\nimport {\n checkSession,\n consolidateStore,\n fetchConfig,\n fetchCookies,\n fetchExternalSession,\n fetchSession,\n fetchUrlParams,\n findComponents,\n findInstance,\n getLocale,\n loadEnvironment,\n theme,\n trackError,\n} from './helpers';\nimport { name, version } from '../package.json';\nimport './helpers/polyfills';\n\nwindow.Mirai = {\n ...window.Mirai,\n components: undefined,\n config: undefined,\n environment: process.env.NODE_ENV,\n Event,\n services: {\n booking: process.env.SERVICE_BOOKING,\n club: process.env.SERVICE_CLUB,\n dictionary: process.env.SERVICE_DICTIONARY,\n engine: process.env.SERVICE_ENGINE,\n static: process.env.SERVICE_STATIC,\n user: process.env.SERVICE_USER,\n },\n trackError,\n version,\n};\n\nlet memoizedRoot;\nwindow.Mirai.core = async () => {\n if (memoizedRoot) memoizedRoot.unmount();\n\n Event.publish(EVENT.CORE_EVENTS_READY);\n\n const isProduction = process.env.NODE_ENV === 'production';\n const isDevelopment = process.env.NODE_ENV === 'development';\n const isPreproduction = process.env.NODE_ENV === 'preproduction';\n const log = `${isProduction ? '🟢' : isPreproduction ? '🟡' : isDevelopment ? '🔴' : '⚫️'} ${name} v${version}`;\n\n console.log(log, 'starting...');\n\n // 1. Find instance\n const urlParams = fetchUrlParams(location.search);\n const instance = findInstance({ urlParams });\n if (!instance) return;\n\n // 2. Fetch client-side dataSources\n const cookies = fetchCookies(Object.values(COOKIE));\n let session = fetchSession(urlParams);\n\n // 3. Analyze environment\n const environment = urlParams.env && isProduction ? loadEnvironment(urlParams.env) : undefined;\n if (environment) return;\n\n // 4. Find components\n const components = findComponents();\n\n window.Mirai = { ...window.Mirai, components };\n\n // 5. Theming\n theme(urlParams);\n\n const localeInstance = getLocale(instance, urlParams);\n\n memoizedRoot = createRoot(instance.el);\n // 7. 1st render\n window &&\n !window.IS_PLAYWRIGHT &&\n memoizedRoot.render(\n <React.StrictMode>\n <StoreProvider\n value={{ id: instance.id, session, skeleton: true, type: instance.type, urlParams, ...localeInstance }}\n >\n <Core {...{ components }} />\n </StoreProvider>\n </React.StrictMode>,\n );\n\n // 8. Analyze id to fetch its config\n const config = await fetchConfig({ ...instance, language: localeInstance.language });\n if (!config) return;\n window.Mirai.config = config;\n\n // 8. Check session\n if (session && !(await checkSession(instance.id, session, config))) session = undefined;\n if (urlParams.utm_source === 'synapse' && urlParams.fingerprint) {\n localStorage?.setItem('MIRAI:FINGERPRINT', urlParams.fingerprint);\n }\n\n // 9. Fetch external session\n session = await fetchExternalSession({ config, cookies, session });\n\n // 10. Consolidate store\n const store = await consolidateStore({ components, config, cookies, instance, session, urlParams });\n\n // 11. Initialize features\n await ServiceFeatures.initialize();\n\n // 12. Initialize dictionary\n if (!ServiceDictionary.cache(store.locale)) await ServiceDictionary.get(store.locale, false);\n\n // 13. Render components\n memoizedRoot.unmount();\n memoizedRoot = createRoot(instance.el);\n memoizedRoot.render(\n <React.StrictMode>\n <ErrorBoundary>\n <StoreProvider value={store}>\n <PerformanceManager />\n <Core {...{ components }} />\n <EventManager />\n </StoreProvider>\n </ErrorBoundary>\n </React.StrictMode>,\n );\n\n // 14. Up & Ready\n window.Mirai.ready = true;\n setTimeout(() => Event.publish(EVENT.CORE_READY, window.Mirai), 0);\n console.log(log, '[READY]', window.Mirai);\n};\n\n(async () => {\n try {\n !window.ON_DEMAND_INIT && (await window.Mirai.core());\n } catch (error) {\n trackError(error?.message || 'core:init', error?.stack);\n\n throw error;\n }\n\n const { components = [], ready } = window.Mirai;\n\n if (ready && components.filter(({ component } = {}) => ['booking', 'checkout', 'rates'].includes(component).length)) {\n window.addEventListener('pageshow', (event) => event.persisted && window.Mirai.core());\n }\n})();\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mirai/core",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.462",
|
|
4
4
|
"source": "src/index.js",
|
|
5
5
|
"repository": "https://gitlab.com/miraicorp/dev/frontend/core",
|
|
6
6
|
"author": "JΛVI <hello@soyjavi.com>",
|
|
@@ -30,7 +30,6 @@
|
|
|
30
30
|
"@mirai/locale": "^0.3",
|
|
31
31
|
"@mirai/services": "^0.3",
|
|
32
32
|
"@mirai/ui": "^2.1",
|
|
33
|
-
"@sentry/react": "^7.57.0",
|
|
34
33
|
"prop-types": "^15.8.1",
|
|
35
34
|
"react": "^19.1.0",
|
|
36
35
|
"react-dom": "^19.1.0"
|
|
@@ -43,7 +42,6 @@
|
|
|
43
42
|
"@mirai/eslint": "0.1.13",
|
|
44
43
|
"@parcel/transformer-inline-string": "2.15.2",
|
|
45
44
|
"@playwright/test": "^1.54.1",
|
|
46
|
-
"@sentry/cli": "^2.38.1",
|
|
47
45
|
"@testing-library/dom": "^10.4.0",
|
|
48
46
|
"@testing-library/react": "16.3.0",
|
|
49
47
|
"http-server": "^14.1.1",
|
package/build/Core.Error.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.Error = void 0;
|
|
7
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
8
|
-
var _react = _interopRequireDefault(require("react"));
|
|
9
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
|
-
const Error = _ref => {
|
|
11
|
-
let {
|
|
12
|
-
children
|
|
13
|
-
} = _ref;
|
|
14
|
-
const {
|
|
15
|
-
Mirai: {
|
|
16
|
-
Sentry
|
|
17
|
-
} = {}
|
|
18
|
-
} = window || {};
|
|
19
|
-
return /*#__PURE__*/_react.default.createElement(Sentry ? Sentry.ErrorBoundary : _react.default.Fragment, null, children);
|
|
20
|
-
};
|
|
21
|
-
exports.Error = Error;
|
|
22
|
-
Error.displayName = 'core:components:Error';
|
|
23
|
-
Error.propTypes = {
|
|
24
|
-
children: _propTypes.default.node
|
|
25
|
-
};
|
|
26
|
-
//# sourceMappingURL=Core.Error.js.map
|
package/build/Core.Error.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Core.Error.js","names":["_propTypes","_interopRequireDefault","require","_react","e","__esModule","default","Error","_ref","children","Mirai","Sentry","window","React","createElement","ErrorBoundary","Fragment","exports","displayName","propTypes","PropTypes","node"],"sources":["../src/Core.Error.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\n\nconst Error = ({ children }) => {\n const { Mirai: { Sentry } = {} } = window || {};\n\n return React.createElement(Sentry ? Sentry.ErrorBoundary : React.Fragment, null, children);\n};\n\nError.displayName = 'core:components:Error';\n\nError.propTypes = {\n children: PropTypes.node,\n};\n\nexport { Error };\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA0B,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE1B,MAAMG,KAAK,GAAGC,IAAA,IAAkB;EAAA,IAAjB;IAAEC;EAAS,CAAC,GAAAD,IAAA;EACzB,MAAM;IAAEE,KAAK,EAAE;MAAEC;IAAO,CAAC,GAAG,CAAC;EAAE,CAAC,GAAGC,MAAM,IAAI,CAAC,CAAC;EAE/C,oBAAOC,cAAK,CAACC,aAAa,CAACH,MAAM,GAAGA,MAAM,CAACI,aAAa,GAAGF,cAAK,CAACG,QAAQ,EAAE,IAAI,EAAEP,QAAQ,CAAC;AAC5F,CAAC;AAACQ,OAAA,CAAAV,KAAA,GAAAA,KAAA;AAEFA,KAAK,CAACW,WAAW,GAAG,uBAAuB;AAE3CX,KAAK,CAACY,SAAS,GAAG;EAChBV,QAAQ,EAAEW,kBAAS,CAACC;AACtB,CAAC","ignoreList":[]}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getExternalToken = void 0;
|
|
7
|
-
var _dataSources = require("@mirai/data-sources");
|
|
8
|
-
var _Core = require("../../../Core.constants");
|
|
9
|
-
var _Session = require("../Session.constants");
|
|
10
|
-
const getExternalToken = function () {
|
|
11
|
-
let {
|
|
12
|
-
cookies,
|
|
13
|
-
type
|
|
14
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
15
|
-
let value;
|
|
16
|
-
if (type === _Core.AUTH_TYPE.PESTANA) value = cookies === null || cookies === void 0 ? void 0 : cookies.pestana;else if (type === _Core.AUTH_TYPE.SENATOR) {
|
|
17
|
-
const tokenData = new _dataSources.Storage({
|
|
18
|
-
adapter: _dataSources.LocalAdapter
|
|
19
|
-
}).get(_Session.SENATOR_CLUB_TOKEN);
|
|
20
|
-
if (tokenData) value = window.btoa(encodeURIComponent(JSON.stringify(tokenData)));
|
|
21
|
-
}
|
|
22
|
-
return value;
|
|
23
|
-
};
|
|
24
|
-
exports.getExternalToken = getExternalToken;
|
|
25
|
-
//# sourceMappingURL=getExternalToken.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getExternalToken.js","names":["_dataSources","require","_Core","_Session","getExternalToken","cookies","type","arguments","length","undefined","value","AUTH_TYPE","PESTANA","pestana","SENATOR","tokenData","Storage","adapter","LocalAdapter","get","SENATOR_CLUB_TOKEN","window","btoa","encodeURIComponent","JSON","stringify","exports"],"sources":["../../../../src/components/Session/helpers/getExternalToken.js"],"sourcesContent":["import { LocalAdapter, Storage } from '@mirai/data-sources';\n\nimport { AUTH_TYPE } from '../../../Core.constants';\nimport { SENATOR_CLUB_TOKEN } from '../Session.constants';\n\nexport const getExternalToken = ({ cookies, type } = {}) => {\n let value;\n\n if (type === AUTH_TYPE.PESTANA) value = cookies?.pestana;\n else if (type === AUTH_TYPE.SENATOR) {\n const tokenData = new Storage({ adapter: LocalAdapter }).get(SENATOR_CLUB_TOKEN);\n if (tokenData) value = window.btoa(encodeURIComponent(JSON.stringify(tokenData)));\n }\n\n return value;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAEO,MAAMG,gBAAgB,GAAG,SAAAA,CAAA,EAA4B;EAAA,IAA3B;IAAEC,OAAO;IAAEC;EAAK,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACrD,IAAIG,KAAK;EAET,IAAIJ,IAAI,KAAKK,eAAS,CAACC,OAAO,EAAEF,KAAK,GAAGL,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEQ,OAAO,CAAC,KACpD,IAAIP,IAAI,KAAKK,eAAS,CAACG,OAAO,EAAE;IACnC,MAAMC,SAAS,GAAG,IAAIC,oBAAO,CAAC;MAAEC,OAAO,EAAEC;IAAa,CAAC,CAAC,CAACC,GAAG,CAACC,2BAAkB,CAAC;IAChF,IAAIL,SAAS,EAAEL,KAAK,GAAGW,MAAM,CAACC,IAAI,CAACC,kBAAkB,CAACC,IAAI,CAACC,SAAS,CAACV,SAAS,CAAC,CAAC,CAAC;EACnF;EAEA,OAAOL,KAAK;AACd,CAAC;AAACgB,OAAA,CAAAtB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.loadSentry = void 0;
|
|
7
|
-
var _Core = require("../Core.constants");
|
|
8
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
9
|
-
const loadSentry = async (dsn, release, instanceId) => {
|
|
10
|
-
if (!dsn || !release) return;
|
|
11
|
-
if (_Core.SENTRY_EXCLUDED_HOTELS.includes(instanceId)) return;
|
|
12
|
-
const Sentry = await Promise.resolve().then(() => _interopRequireWildcard(require('@sentry/react')));
|
|
13
|
-
Sentry.init({
|
|
14
|
-
allowUrls: [/https?:\/\/((static)\.)?mirai\.com/],
|
|
15
|
-
beforeSend(event, hint) {
|
|
16
|
-
// eslint-disable-next-line no-console
|
|
17
|
-
console.log({
|
|
18
|
-
event,
|
|
19
|
-
hint
|
|
20
|
-
});
|
|
21
|
-
if (hint !== null) {
|
|
22
|
-
const {
|
|
23
|
-
originalException: {
|
|
24
|
-
message = '',
|
|
25
|
-
stack = ''
|
|
26
|
-
} = {}
|
|
27
|
-
} = hint || {};
|
|
28
|
-
if (message === "Cannot read properties of null (reading 'style')" && stack !== null && stack !== void 0 && stack.includes('HTMLLIElement.changeBackground') || stack !== null && stack !== void 0 && stack.includes('flickity')) {
|
|
29
|
-
return null;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
return event;
|
|
33
|
-
},
|
|
34
|
-
dsn,
|
|
35
|
-
release,
|
|
36
|
-
ignoreErrors: [/^Object captured as exception with keys: code, message$/, /^Object captured as exception with keys: code, message, payload$/, /^null is not an object (evaluating 'document.getElementById("cartAbandonment123_send_mail_offer_button").click')$/, /^Java exception was raised during method invocation$/, /^a.target.className.includes is not a function$/, /^undefined is not an object (evaluating 'window.webkit.messageHandlers')$/, /^Java bridge method invocation error$/, /^a.target.parentNode.parentNode.className.includes is not a function$/, /^undefined is not an object (evaluating 'window.webkit.messageHandlers.print.postMessage')$/, /^undefined is not an object (evaluating 'content.replace')$/, /^Cannot read properties of null (reading 'style')$/],
|
|
37
|
-
integrations: [new Sentry.Replay({
|
|
38
|
-
networkDetailAllowUrls: /mirai/g
|
|
39
|
-
}), new Sentry.GlobalHandlers({
|
|
40
|
-
onerror: false,
|
|
41
|
-
onunhandledrejection: false
|
|
42
|
-
})],
|
|
43
|
-
tracesSampleRate: 0.5,
|
|
44
|
-
// Capture 100% of the transactions, reduce in production!
|
|
45
|
-
replaysSessionSampleRate: 0.01,
|
|
46
|
-
// This sets the sample rate at 10%. You may want to change it to 100% while in development and then sample at a lower rate in production.
|
|
47
|
-
replaysOnErrorSampleRate: 1.0 // If you're not already sampling the entire session, change the sample rate to 100% when sampling sessions where errors occur.
|
|
48
|
-
});
|
|
49
|
-
return Sentry;
|
|
50
|
-
};
|
|
51
|
-
exports.loadSentry = loadSentry;
|
|
52
|
-
//# sourceMappingURL=loadSentry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"loadSentry.js","names":["_Core","require","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","loadSentry","dsn","release","instanceId","SENTRY_EXCLUDED_HOTELS","includes","Sentry","Promise","resolve","then","init","allowUrls","beforeSend","event","hint","console","log","originalException","message","stack","ignoreErrors","integrations","Replay","networkDetailAllowUrls","GlobalHandlers","onerror","onunhandledrejection","tracesSampleRate","replaysSessionSampleRate","replaysOnErrorSampleRate","exports"],"sources":["../../src/helpers/loadSentry.js"],"sourcesContent":["import { SENTRY_EXCLUDED_HOTELS } from '../Core.constants';\n\nexport const loadSentry = async (dsn, release, instanceId) => {\n if (!dsn || !release) return;\n\n if (SENTRY_EXCLUDED_HOTELS.includes(instanceId)) return;\n\n const Sentry = await import('@sentry/react');\n\n Sentry.init({\n allowUrls: [/https?:\\/\\/((static)\\.)?mirai\\.com/],\n beforeSend(event, hint) {\n // eslint-disable-next-line no-console\n console.log({ event, hint });\n\n if (hint !== null) {\n const { originalException: { message = '', stack = '' } = {} } = hint || {};\n if (\n (message === `Cannot read properties of null (reading 'style')` &&\n stack?.includes('HTMLLIElement.changeBackground')) ||\n stack?.includes('flickity')\n ) {\n return null;\n }\n }\n return event;\n },\n dsn,\n release,\n ignoreErrors: [\n /^Object captured as exception with keys: code, message$/,\n /^Object captured as exception with keys: code, message, payload$/,\n /^null is not an object (evaluating 'document.getElementById(\"cartAbandonment123_send_mail_offer_button\").click')$/,\n /^Java exception was raised during method invocation$/,\n /^a.target.className.includes is not a function$/,\n /^undefined is not an object (evaluating 'window.webkit.messageHandlers')$/,\n /^Java bridge method invocation error$/,\n /^a.target.parentNode.parentNode.className.includes is not a function$/,\n /^undefined is not an object (evaluating 'window.webkit.messageHandlers.print.postMessage')$/,\n /^undefined is not an object (evaluating 'content.replace')$/,\n /^Cannot read properties of null (reading 'style')$/,\n ],\n integrations: [\n new Sentry.Replay({ networkDetailAllowUrls: /mirai/g }),\n new Sentry.GlobalHandlers({ onerror: false, onunhandledrejection: false }),\n ],\n tracesSampleRate: 0.5, // Capture 100% of the transactions, reduce in production!\n replaysSessionSampleRate: 0.01, // This sets the sample rate at 10%. You may want to change it to 100% while in development and then sample at a lower rate in production.\n replaysOnErrorSampleRate: 1.0, // If you're not already sampling the entire session, change the sample rate to 100% when sampling sessions where errors occur.\n });\n\n return Sentry;\n};\n"],"mappings":"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","ignoreList":[]}
|