@mirai/core 0.4.316 → 0.4.318

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.
@@ -80,6 +80,7 @@ const Account = _ref => {
80
80
  setMenu(false);
81
81
  if (value === 'logout') return handleLogout();
82
82
  const url = (0, _helpers.getProfileUrl)({
83
+ authType: type,
83
84
  id,
84
85
  value,
85
86
  ...store
@@ -111,17 +112,17 @@ const Account = _ref => {
111
112
  lastName = '',
112
113
  level
113
114
  } = session || {};
114
- let options = type === _Core.AUTH_TYPE.MIRAI ? [{
115
+ let options = [_Core.AUTH_TYPE.MIRAI, _Core.AUTH_TYPE.SENATOR].includes(type) ? [{
115
116
  icon: _helpers2.ICON.PERSON,
116
117
  label: translate(_Session2.L10N.ACTION_MANAGE_ACCOUNT),
117
118
  value: 'profile',
118
119
  testId: 'session-profile'
119
- }, {
120
+ }, type === _Core.AUTH_TYPE.MIRAI ? {
120
121
  icon: _helpers2.ICON.LIST,
121
122
  label: translate(_Session2.L10N.ACTION_MY_BOOKINGS),
122
123
  value: 'bookings',
123
124
  testId: 'session-bookings'
124
- }] : [];
125
+ } : undefined] : [];
125
126
  if (level) options = [{
126
127
  divider: true,
127
128
  label: translate(_Session2.L10N.LEVEL, {
@@ -1 +1 @@
1
- {"version":3,"file":"Session.Account.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_SessionAccount","_Session","_Session2","style","_Core","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","Account","_ref","ghost","others","isMobile","useDevice","translate","useLocale","ref","useRef","value","components","club","authentication","type","AUTH_TYPE","MIRAI","cookies","hotel","url","hotelUrl","id","session","store","useStore","menu","setMenu","useState","useEffect","handleClickOutside","_ref2","_ref$current","current","contains","undefined","document","addEventListener","getExternalToken","ServiceUser","logout","removeEventListener","handlePress","handleLogout","getProfileUrl","location","href","SENATOR","Storage","adapter","LocalAdapter","remove","SENATOR_CLUB_TOKEN","profile","window","reload","concat","process","env","SERVICE_USER","ENDPOINT","EXTERNAL_LOGOUT","toUrlParams","idtokenprovider","domain","email","firstName","lastName","level","options","icon","ICON","PERSON","label","L10N","ACTION_MANAGE_ACCOUNT","testId","LIST","ACTION_MY_BOOKINGS","divider","LEVEL","children","createElement","Info","View","role","Menu","visible","LOGOUT","CTA_LOGOUT","onPress","Pressable","dangerouslySetInnerHTML","__html","template","outerHTML","className","pressable","row","styles","account","rates","hover","avatar","Text","action","bold","substr","toUpperCase","exports","displayName","propTypes","PropTypes","any"],"sources":["../../../src/components/Session/Session.Account.jsx"],"sourcesContent":["import { LocalAdapter, Storage, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceUser } from '@mirai/services';\nimport { Menu, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { getExternalToken, getProfileUrl } from './helpers';\nimport { Info } from './Session.Account.Info';\nimport { ENDPOINT, SENATOR_CLUB_TOKEN } from './Session.constants';\nimport { L10N } from './Session.l10n';\nimport * as style from './Session.module.css';\nimport { AUTH_TYPE } from '../../Core.constants';\nimport { ICON, template, toUrlParams } from '../helpers';\n\nconst Account = ({ ghost, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const ref = useRef(null);\n const {\n set,\n value: {\n components = {},\n club: { authentication: { type = AUTH_TYPE.MIRAI } = {} } = {},\n cookies,\n hotel: { url: hotelUrl } = {},\n id,\n session,\n ...store\n },\n } = useStore();\n\n const [menu, setMenu] = useState(false);\n\n useEffect(() => {\n const handleClickOutside = ({ target }) => {\n if (!ref.current?.contains(target)) setMenu(undefined);\n };\n document.addEventListener('click', handleClickOutside, true);\n\n if (type !== AUTH_TYPE.MIRAI) {\n if (session && !getExternalToken({ cookies, type })) {\n ServiceUser.logout();\n set({ session: undefined });\n }\n }\n return () => document.removeEventListener('click', handleClickOutside, true);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handlePress = (value) => {\n if (!value) return setMenu(!menu);\n\n setMenu(false);\n if (value === 'logout') return handleLogout();\n\n const url = getProfileUrl({ id, value, ...store });\n if (!url) return;\n\n document.location.href = url;\n };\n\n const handleLogout = () => {\n ServiceUser.logout();\n\n if (type === AUTH_TYPE.MIRAI || type === AUTH_TYPE.SENATOR) {\n set({ session: undefined });\n\n if (type === AUTH_TYPE.SENATOR) new Storage({ adapter: LocalAdapter }).remove(SENATOR_CLUB_TOKEN);\n\n if (components.profile) window.location.href = hotelUrl;\n else window.location.reload();\n\n return;\n }\n\n const url = `${process.env.SERVICE_USER}/${ENDPOINT.EXTERNAL_LOGOUT}${toUrlParams({\n idtokenprovider: id,\n domain: document.location.href,\n })}`;\n\n document.location.href = url;\n };\n\n const { email, firstName = '', lastName = '', level } = session || {};\n\n let options =\n type === AUTH_TYPE.MIRAI\n ? [\n {\n icon: ICON.PERSON,\n label: translate(L10N.ACTION_MANAGE_ACCOUNT),\n value: 'profile',\n testId: 'session-profile',\n },\n { icon: ICON.LIST, label: translate(L10N.ACTION_MY_BOOKINGS), value: 'bookings', testId: 'session-bookings' },\n ]\n : [];\n if (level) options = [{ divider: true, label: translate(L10N.LEVEL, { level }) }, ...options];\n if (!ghost && isMobile)\n options = [\n {\n children: <Info {...{ email, firstName, lastName }} />,\n divider: true,\n },\n ...options,\n ];\n\n return (\n <View {...others} role=\"account\" ref={ref}>\n <Menu\n visible={menu}\n options={\n session ? [...options, { icon: ICON.LOGOUT, label: translate(L10N.CTA_LOGOUT), value: 'logout' }] : null\n }\n onPress={handlePress}\n testId=\"profile-menu\"\n >\n <Pressable\n onPress={() => setMenu(!menu)}\n dangerouslySetInnerHTML={ghost ? { __html: template(ghost.outerHTML, session, translate) } : undefined}\n className={style.pressable}\n testId=\"show-profile-menu\"\n >\n {!ghost ? (\n <View row className={styles(style.account, components.rates && style.hover)}>\n <View row className={style.avatar}>\n <Text action bold>\n {`${firstName.substr(0, 1)}`.toUpperCase()}\n </Text>\n </View>\n {!isMobile && <Info {...{ email, firstName, lastName }} />}\n </View>\n ) : null}\n </Pressable>\n </Menu>\n </View>\n );\n};\n\nAccount.displayName = 'Mirai:Core:Session:Account';\n\nAccount.propTypes = {\n ghost: PropTypes.any,\n};\n\nexport { Account };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Session.Account.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_SessionAccount","_Session","_Session2","style","_Core","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","Account","_ref","ghost","others","isMobile","useDevice","translate","useLocale","ref","useRef","value","components","club","authentication","type","AUTH_TYPE","MIRAI","cookies","hotel","url","hotelUrl","id","session","store","useStore","menu","setMenu","useState","useEffect","handleClickOutside","_ref2","_ref$current","current","contains","undefined","document","addEventListener","getExternalToken","ServiceUser","logout","removeEventListener","handlePress","handleLogout","getProfileUrl","authType","location","href","SENATOR","Storage","adapter","LocalAdapter","remove","SENATOR_CLUB_TOKEN","profile","window","reload","concat","process","env","SERVICE_USER","ENDPOINT","EXTERNAL_LOGOUT","toUrlParams","idtokenprovider","domain","email","firstName","lastName","level","options","includes","icon","ICON","PERSON","label","L10N","ACTION_MANAGE_ACCOUNT","testId","LIST","ACTION_MY_BOOKINGS","divider","LEVEL","children","createElement","Info","View","role","Menu","visible","LOGOUT","CTA_LOGOUT","onPress","Pressable","dangerouslySetInnerHTML","__html","template","outerHTML","className","pressable","row","styles","account","rates","hover","avatar","Text","action","bold","substr","toUpperCase","exports","displayName","propTypes","PropTypes","any"],"sources":["../../../src/components/Session/Session.Account.jsx"],"sourcesContent":["import { LocalAdapter, Storage, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceUser } from '@mirai/services';\nimport { Menu, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { getExternalToken, getProfileUrl } from './helpers';\nimport { Info } from './Session.Account.Info';\nimport { ENDPOINT, SENATOR_CLUB_TOKEN } from './Session.constants';\nimport { L10N } from './Session.l10n';\nimport * as style from './Session.module.css';\nimport { AUTH_TYPE } from '../../Core.constants';\nimport { ICON, template, toUrlParams } from '../helpers';\n\nconst Account = ({ ghost, ...others }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const ref = useRef(null);\n const {\n set,\n value: {\n components = {},\n club: { authentication: { type = AUTH_TYPE.MIRAI } = {} } = {},\n cookies,\n hotel: { url: hotelUrl } = {},\n id,\n session,\n ...store\n },\n } = useStore();\n\n const [menu, setMenu] = useState(false);\n\n useEffect(() => {\n const handleClickOutside = ({ target }) => {\n if (!ref.current?.contains(target)) setMenu(undefined);\n };\n document.addEventListener('click', handleClickOutside, true);\n\n if (type !== AUTH_TYPE.MIRAI) {\n if (session && !getExternalToken({ cookies, type })) {\n ServiceUser.logout();\n set({ session: undefined });\n }\n }\n return () => document.removeEventListener('click', handleClickOutside, true);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handlePress = (value) => {\n if (!value) return setMenu(!menu);\n\n setMenu(false);\n if (value === 'logout') return handleLogout();\n\n const url = getProfileUrl({ authType: type, id, value, ...store });\n if (!url) return;\n\n document.location.href = url;\n };\n\n const handleLogout = () => {\n ServiceUser.logout();\n\n if (type === AUTH_TYPE.MIRAI || type === AUTH_TYPE.SENATOR) {\n set({ session: undefined });\n\n if (type === AUTH_TYPE.SENATOR) new Storage({ adapter: LocalAdapter }).remove(SENATOR_CLUB_TOKEN);\n\n if (components.profile) window.location.href = hotelUrl;\n else window.location.reload();\n\n return;\n }\n\n const url = `${process.env.SERVICE_USER}/${ENDPOINT.EXTERNAL_LOGOUT}${toUrlParams({\n idtokenprovider: id,\n domain: document.location.href,\n })}`;\n\n document.location.href = url;\n };\n\n const { email, firstName = '', lastName = '', level } = session || {};\n\n let options = [AUTH_TYPE.MIRAI, AUTH_TYPE.SENATOR].includes(type)\n ? [\n {\n icon: ICON.PERSON,\n label: translate(L10N.ACTION_MANAGE_ACCOUNT),\n value: 'profile',\n testId: 'session-profile',\n },\n type === AUTH_TYPE.MIRAI\n ? {\n icon: ICON.LIST,\n label: translate(L10N.ACTION_MY_BOOKINGS),\n value: 'bookings',\n testId: 'session-bookings',\n }\n : undefined,\n ]\n : [];\n if (level) options = [{ divider: true, label: translate(L10N.LEVEL, { level }) }, ...options];\n if (!ghost && isMobile)\n options = [\n {\n children: <Info {...{ email, firstName, lastName }} />,\n divider: true,\n },\n ...options,\n ];\n\n return (\n <View {...others} role=\"account\" ref={ref}>\n <Menu\n visible={menu}\n options={\n session ? [...options, { icon: ICON.LOGOUT, label: translate(L10N.CTA_LOGOUT), value: 'logout' }] : null\n }\n onPress={handlePress}\n testId=\"profile-menu\"\n >\n <Pressable\n onPress={() => setMenu(!menu)}\n dangerouslySetInnerHTML={ghost ? { __html: template(ghost.outerHTML, session, translate) } : undefined}\n className={style.pressable}\n testId=\"show-profile-menu\"\n >\n {!ghost ? (\n <View row className={styles(style.account, components.rates && style.hover)}>\n <View row className={style.avatar}>\n <Text action bold>\n {`${firstName.substr(0, 1)}`.toUpperCase()}\n </Text>\n </View>\n {!isMobile && <Info {...{ email, firstName, lastName }} />}\n </View>\n ) : null}\n </Pressable>\n </Menu>\n </View>\n );\n};\n\nAccount.displayName = 'Mirai:Core:Session:Account';\n\nAccount.propTypes = {\n ghost: PropTypes.any,\n};\n\nexport { Account };\n"],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.URL_PARAMS = exports.TRACKING = exports.SENATOR_CLUB_TOKEN = exports.MODE = exports.ENDPOINT = void 0;
6
+ exports.URL_PARAMS = exports.TRACKING = exports.SENATOR_PROFILE_URL = exports.SENATOR_CLUB_TOKEN = exports.MODE = exports.ENDPOINT = void 0;
7
7
  const ENDPOINT = exports.ENDPOINT = {
8
8
  EXTERNAL_LOGIN: 'club/v1/forwarder/login',
9
9
  EXTERNAL_LOGOUT: 'club/v1/forwarder/logout'
@@ -18,4 +18,10 @@ const URL_PARAMS = exports.URL_PARAMS = {
18
18
  login: [MODE.FINISH_SIGNUP]
19
19
  };
20
20
  const SENATOR_CLUB_TOKEN = exports.SENATOR_CLUB_TOKEN = 'apiData';
21
+ const SENATOR_PROFILE_URL = exports.SENATOR_PROFILE_URL = {
22
+ es: 'https://www.senatorhr.com/my-senator-profile/',
23
+ en: 'https://www.senatorhr.com/en/my-senator-profile/',
24
+ de: 'https://www.senatorhr.com/de/my-senator-profile/',
25
+ fr: 'https://www.senatorhr.com/fr/my-senator-profile/'
26
+ };
21
27
  //# sourceMappingURL=Session.constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Session.constants.js","names":["ENDPOINT","exports","EXTERNAL_LOGIN","EXTERNAL_LOGOUT","MODE","ACTIVATE","ACTIVATE_ERROR","FINISH_SIGNUP","TRACKING","URL_PARAMS","login","SENATOR_CLUB_TOKEN"],"sources":["../../../src/components/Session/Session.constants.js"],"sourcesContent":["const ENDPOINT = {\n EXTERNAL_LOGIN: 'club/v1/forwarder/login',\n EXTERNAL_LOGOUT: 'club/v1/forwarder/logout',\n};\n\nconst MODE = {\n ACTIVATE: 'ACTIVATE',\n ACTIVATE_ERROR: 'ACTIVATE_ERROR',\n FINISH_SIGNUP: 'FINISH_SIGNUP',\n};\n\nconst TRACKING = 'SESSION';\n\nconst URL_PARAMS = {\n login: [MODE.FINISH_SIGNUP],\n};\n\nconst SENATOR_CLUB_TOKEN = 'apiData';\n\nexport { ENDPOINT, MODE, SENATOR_CLUB_TOKEN, TRACKING, URL_PARAMS };\n"],"mappings":";;;;;;AAAA,MAAMA,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG;EACfE,cAAc,EAAE,yBAAyB;EACzCC,eAAe,EAAE;AACnB,CAAC;AAED,MAAMC,IAAI,GAAAH,OAAA,CAAAG,IAAA,GAAG;EACXC,QAAQ,EAAE,UAAU;EACpBC,cAAc,EAAE,gBAAgB;EAChCC,aAAa,EAAE;AACjB,CAAC;AAED,MAAMC,QAAQ,GAAAP,OAAA,CAAAO,QAAA,GAAG,SAAS;AAE1B,MAAMC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG;EACjBC,KAAK,EAAE,CAACN,IAAI,CAACG,aAAa;AAC5B,CAAC;AAED,MAAMI,kBAAkB,GAAAV,OAAA,CAAAU,kBAAA,GAAG,SAAS"}
1
+ {"version":3,"file":"Session.constants.js","names":["ENDPOINT","exports","EXTERNAL_LOGIN","EXTERNAL_LOGOUT","MODE","ACTIVATE","ACTIVATE_ERROR","FINISH_SIGNUP","TRACKING","URL_PARAMS","login","SENATOR_CLUB_TOKEN","SENATOR_PROFILE_URL","es","en","de","fr"],"sources":["../../../src/components/Session/Session.constants.js"],"sourcesContent":["const ENDPOINT = {\n EXTERNAL_LOGIN: 'club/v1/forwarder/login',\n EXTERNAL_LOGOUT: 'club/v1/forwarder/logout',\n};\n\nconst MODE = {\n ACTIVATE: 'ACTIVATE',\n ACTIVATE_ERROR: 'ACTIVATE_ERROR',\n FINISH_SIGNUP: 'FINISH_SIGNUP',\n};\n\nconst TRACKING = 'SESSION';\n\nconst URL_PARAMS = {\n login: [MODE.FINISH_SIGNUP],\n};\n\nconst SENATOR_CLUB_TOKEN = 'apiData';\n\nconst SENATOR_PROFILE_URL = {\n es: 'https://www.senatorhr.com/my-senator-profile/',\n en: 'https://www.senatorhr.com/en/my-senator-profile/',\n de: 'https://www.senatorhr.com/de/my-senator-profile/',\n fr: 'https://www.senatorhr.com/fr/my-senator-profile/',\n};\n\nexport { ENDPOINT, MODE, SENATOR_CLUB_TOKEN, SENATOR_PROFILE_URL, TRACKING, URL_PARAMS };\n"],"mappings":";;;;;;AAAA,MAAMA,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG;EACfE,cAAc,EAAE,yBAAyB;EACzCC,eAAe,EAAE;AACnB,CAAC;AAED,MAAMC,IAAI,GAAAH,OAAA,CAAAG,IAAA,GAAG;EACXC,QAAQ,EAAE,UAAU;EACpBC,cAAc,EAAE,gBAAgB;EAChCC,aAAa,EAAE;AACjB,CAAC;AAED,MAAMC,QAAQ,GAAAP,OAAA,CAAAO,QAAA,GAAG,SAAS;AAE1B,MAAMC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG;EACjBC,KAAK,EAAE,CAACN,IAAI,CAACG,aAAa;AAC5B,CAAC;AAED,MAAMI,kBAAkB,GAAAV,OAAA,CAAAU,kBAAA,GAAG,SAAS;AAEpC,MAAMC,mBAAmB,GAAAX,OAAA,CAAAW,mBAAA,GAAG;EAC1BC,EAAE,EAAE,+CAA+C;EACnDC,EAAE,EAAE,kDAAkD;EACtDC,EAAE,EAAE,kDAAkD;EACtDC,EAAE,EAAE;AACN,CAAC"}
@@ -4,9 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.getProfileUrl = void 0;
7
+ var _Core = require("../../../Core.constants");
7
8
  var _helpers = require("../../helpers");
9
+ var _Session = require("../Session.constants");
8
10
  const getProfileUrl = function () {
9
11
  let {
12
+ authType,
10
13
  id,
11
14
  forwarder: {
12
15
  profile: url
@@ -19,7 +22,7 @@ const getProfileUrl = function () {
19
22
  value
20
23
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
21
24
  if (!id || !language || !url) return;
22
- return "".concat(url).concat((0, _helpers.toUrlParams)({
25
+ return authType === _Core.AUTH_TYPE.SENATOR ? _Session.SENATOR_PROFILE_URL[language] || _Session.SENATOR_PROFILE_URL['en'] : "".concat(url).concat((0, _helpers.toUrlParams)({
23
26
  idtokenprovider: id,
24
27
  lang: language,
25
28
  miraiId,
@@ -1 +1 @@
1
- {"version":3,"file":"getProfileUrl.js","names":["_helpers","require","getProfileUrl","id","forwarder","profile","url","language","urlParams","miraiId","type","value","arguments","length","undefined","concat","toUrlParams","idtokenprovider","lang","context","exports"],"sources":["../../../../src/components/Session/helpers/getProfileUrl.js"],"sourcesContent":["import { toUrlParams } from '../../helpers';\n\nexport const getProfileUrl = ({\n id,\n forwarder: { profile: url } = {},\n language,\n urlParams: { miraiId, type } = {},\n value,\n} = {}) => {\n if (!id || !language || !url) return;\n\n return `${url}${toUrlParams({\n idtokenprovider: id,\n lang: language,\n miraiId,\n context: value,\n type,\n })}`;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAEO,MAAMC,aAAa,GAAG,SAAAA,CAAA,EAMlB;EAAA,IANmB;IAC5BC,EAAE;IACFC,SAAS,EAAE;MAAEC,OAAO,EAAEC;IAAI,CAAC,GAAG,CAAC,CAAC;IAChCC,QAAQ;IACRC,SAAS,EAAE;MAAEC,OAAO;MAAEC;IAAK,CAAC,GAAG,CAAC,CAAC;IACjCC;EACF,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACJ,IAAI,CAACT,EAAE,IAAI,CAACI,QAAQ,IAAI,CAACD,GAAG,EAAE;EAE9B,UAAAS,MAAA,CAAUT,GAAG,EAAAS,MAAA,CAAG,IAAAC,oBAAW,EAAC;IAC1BC,eAAe,EAAEd,EAAE;IACnBe,IAAI,EAAEX,QAAQ;IACdE,OAAO;IACPU,OAAO,EAAER,KAAK;IACdD;EACF,CAAC,CAAC;AACJ,CAAC;AAACU,OAAA,CAAAlB,aAAA,GAAAA,aAAA"}
1
+ {"version":3,"file":"getProfileUrl.js","names":["_Core","require","_helpers","_Session","getProfileUrl","authType","id","forwarder","profile","url","language","urlParams","miraiId","type","value","arguments","length","undefined","AUTH_TYPE","SENATOR","SENATOR_PROFILE_URL","concat","toUrlParams","idtokenprovider","lang","context","exports"],"sources":["../../../../src/components/Session/helpers/getProfileUrl.js"],"sourcesContent":["import { AUTH_TYPE } from '../../../Core.constants';\nimport { toUrlParams } from '../../helpers';\nimport { SENATOR_PROFILE_URL } from '../Session.constants';\n\nexport const getProfileUrl = ({\n authType,\n id,\n forwarder: { profile: url } = {},\n language,\n urlParams: { miraiId, type } = {},\n value,\n} = {}) => {\n if (!id || !language || !url) return;\n\n return authType === AUTH_TYPE.SENATOR\n ? SENATOR_PROFILE_URL[language] || SENATOR_PROFILE_URL['en']\n : `${url}${toUrlParams({\n idtokenprovider: id,\n lang: language,\n miraiId,\n context: value,\n type,\n })}`;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAEO,MAAMG,aAAa,GAAG,SAAAA,CAAA,EAOlB;EAAA,IAPmB;IAC5BC,QAAQ;IACRC,EAAE;IACFC,SAAS,EAAE;MAAEC,OAAO,EAAEC;IAAI,CAAC,GAAG,CAAC,CAAC;IAChCC,QAAQ;IACRC,SAAS,EAAE;MAAEC,OAAO;MAAEC;IAAK,CAAC,GAAG,CAAC,CAAC;IACjCC;EACF,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACJ,IAAI,CAACT,EAAE,IAAI,CAACI,QAAQ,IAAI,CAACD,GAAG,EAAE;EAE9B,OAAOJ,QAAQ,KAAKa,eAAS,CAACC,OAAO,GACjCC,4BAAmB,CAACV,QAAQ,CAAC,IAAIU,4BAAmB,CAAC,IAAI,CAAC,MAAAC,MAAA,CACvDZ,GAAG,EAAAY,MAAA,CAAG,IAAAC,oBAAW,EAAC;IACnBC,eAAe,EAAEjB,EAAE;IACnBkB,IAAI,EAAEd,QAAQ;IACdE,OAAO;IACPa,OAAO,EAAEX,KAAK;IACdD;EACF,CAAC,CAAC,CAAE;AACV,CAAC;AAACa,OAAA,CAAAtB,aAAA,GAAAA,aAAA"}
@@ -167,7 +167,7 @@ const PerformanceManager = () => {
167
167
  } else if (!memoizedPendingEvents.some(item => item.event === event && item.provider === provider)) {
168
168
  memoizedPendingEvents.push(props);
169
169
  }
170
- } else executeEvent(props);
170
+ } else executeEvent(props, currentConsentMode);
171
171
  });
172
172
  };
173
173
  Object.keys(_PerformanceManager2.EVENTS).forEach(event => _dataSources.Event.subscribe(event, handleEvent));
@@ -1 +1 @@
1
- {"version":3,"file":"PerformanceManager.js","names":["_dataSources","require","_services","_ui","_react","_helpers","_PerformanceManager","_PerformanceManager2","_PerformanceManager3","_helpers2","_Core","_helpers3","MAX_COUNTER","COMPARE","GTM","PERFORMANCE","counter","memoizedPendingEvents","PerformanceManager","device","useDevice","track","trackRender","useMetrics","value","components","performance","storePerformance","store","useStore","consentMode","setConsentMode","useState","getConsentMode","setPerformance","hotel","finder","place","id","instanceId","locale","session","type","useEffect","window","Mirai","urlParameters","fetchUrlParams","location","search","metrics","ServiceFeatures","get","bannedMetrics","Object","entries","filter","_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","arguments","length","nextMemoizedPendingEvents","forEach","execute","CONSENT_MODE_ANSWERED","requeue","push","executeEvent","clearInterval","config","isHotel","_getPerformance","getPerformance","handleEvent","_ref4","currentConsentMode","availableProviders","CONSENT_MODE_REQUIRED","EVENTS","_ref5","propProvider","callback","parseInt","some","item","keys","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 || requeue) {\n nextMemoizedPendingEvents.push(event);\n } else {\n executeEvent(event, nextConsentMode);\n\n if (!nextConsentMode && !isGtm(provider)) 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(\n getPerformance(config, isHotel ? hotelId : undefined)?.filter(({ type } = {}) => type !== COMPARE),\n );\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);\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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"}
1
+ {"version":3,"file":"PerformanceManager.js","names":["_dataSources","require","_services","_ui","_react","_helpers","_PerformanceManager","_PerformanceManager2","_PerformanceManager3","_helpers2","_Core","_helpers3","MAX_COUNTER","COMPARE","GTM","PERFORMANCE","counter","memoizedPendingEvents","PerformanceManager","device","useDevice","track","trackRender","useMetrics","value","components","performance","storePerformance","store","useStore","consentMode","setConsentMode","useState","getConsentMode","setPerformance","hotel","finder","place","id","instanceId","locale","session","type","useEffect","window","Mirai","urlParameters","fetchUrlParams","location","search","metrics","ServiceFeatures","get","bannedMetrics","Object","entries","filter","_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","arguments","length","nextMemoizedPendingEvents","forEach","execute","CONSENT_MODE_ANSWERED","requeue","push","executeEvent","clearInterval","config","isHotel","_getPerformance","getPerformance","handleEvent","_ref4","currentConsentMode","availableProviders","CONSENT_MODE_REQUIRED","EVENTS","_ref5","propProvider","callback","parseInt","some","item","keys","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 || requeue) {\n nextMemoizedPendingEvents.push(event);\n } else {\n executeEvent(event, nextConsentMode);\n\n if (!nextConsentMode && !isGtm(provider)) 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(\n getPerformance(config, isHotel ? hotelId : undefined)?.filter(({ type } = {}) => type !== COMPARE),\n );\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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.4.316",
3
+ "version": "0.4.318",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",