@mirai/core 0.4.342 → 0.4.343

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.
@@ -8,7 +8,7 @@ const BANNED_COMPONENTS = exports.BANNED_COMPONENTS = ['checkout', 'booking'];
8
8
  const CHAT_STORAGE_CACHE = exports.CHAT_STORAGE_CACHE = 1000 * 60 * 60 * 8; // 8 hours
9
9
 
10
10
  const CHAT_STORAGE_KEY = exports.CHAT_STORAGE_KEY = 'MIRAI:LISA:CHAT';
11
- const DEFAULT_NAME = exports.DEFAULT_NAME = 'Lisa';
11
+ const DEFAULT_NAME = exports.DEFAULT_NAME = 'Sarai';
12
12
  const DELAY_RESPONSE = exports.DELAY_RESPONSE = 500;
13
13
  const EVENT = exports.EVENT = {
14
14
  INPUT_COMPONENT: 'EVENT_INPUT_COMPONENT'
@@ -28,7 +28,7 @@ const INTENT = exports.INTENT = {
28
28
  LOGIN: 'LOGIN',
29
29
  PROFILE: 'PROFILE'
30
30
  };
31
- const NAME = exports.NAME = 'Lisa';
31
+ const NAME = exports.NAME = 'Sarai';
32
32
  const VERBOSE_DATE_FORMAT = exports.VERBOSE_DATE_FORMAT = {
33
33
  weekday: 'short',
34
34
  month: 'short',
@@ -1 +1 @@
1
- {"version":3,"file":"Chat.constants.js","names":["BANNED_COMPONENTS","exports","CHAT_STORAGE_CACHE","CHAT_STORAGE_KEY","DEFAULT_NAME","DELAY_RESPONSE","EVENT","INPUT_COMPONENT","INTENT","BOOK","BOOKING_CREATE","BOOKING_CANCEL","BOOKING_QUERY","BOOKING_VIEW","BOOKING_SEND","OFFERS","HOTEL_INFO","GREETINGS","FAREWELLS","SIGNUP","LOGIN","PROFILE","NAME","VERBOSE_DATE_FORMAT","weekday","month","day"],"sources":["../../../src/components/Chat/Chat.constants.js"],"sourcesContent":["const BANNED_COMPONENTS = ['checkout', 'booking'];\n\nconst CHAT_STORAGE_CACHE = 1000 * 60 * 60 * 8; // 8 hours\n\nconst CHAT_STORAGE_KEY = 'MIRAI:LISA:CHAT';\n\nconst DEFAULT_NAME = 'Lisa';\n\nconst DELAY_RESPONSE = 500;\n\nconst EVENT = {\n INPUT_COMPONENT: 'EVENT_INPUT_COMPONENT',\n};\n\nconst INTENT = {\n BOOK: 'BOOK',\n BOOKING_CREATE: 'BOOKING_CREATE',\n BOOKING_CANCEL: 'BOOKING_CANCEL',\n BOOKING_QUERY: 'BOOKING_QUERY',\n BOOKING_VIEW: 'BOOKING_VIEW',\n BOOKING_SEND: 'BOOKING_SEND',\n OFFERS: 'OFFERS',\n HOTEL_INFO: 'HOTEL_INFO',\n GREETINGS: 'GREETINGS',\n FAREWELLS: 'FAREWELLS',\n SIGNUP: 'SIGNUP',\n LOGIN: 'LOGIN',\n PROFILE: 'PROFILE',\n};\n\nconst NAME = 'Lisa';\n\nconst VERBOSE_DATE_FORMAT = { weekday: 'short', month: 'short', day: 'numeric' };\n\nexport {\n BANNED_COMPONENTS,\n CHAT_STORAGE_CACHE,\n CHAT_STORAGE_KEY,\n DEFAULT_NAME,\n DELAY_RESPONSE,\n EVENT,\n INTENT,\n NAME,\n VERBOSE_DATE_FORMAT,\n};\n"],"mappings":";;;;;;AAAA,MAAMA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC;AAEjD,MAAME,kBAAkB,GAAAD,OAAA,CAAAC,kBAAA,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;;AAE/C,MAAMC,gBAAgB,GAAAF,OAAA,CAAAE,gBAAA,GAAG,iBAAiB;AAE1C,MAAMC,YAAY,GAAAH,OAAA,CAAAG,YAAA,GAAG,MAAM;AAE3B,MAAMC,cAAc,GAAAJ,OAAA,CAAAI,cAAA,GAAG,GAAG;AAE1B,MAAMC,KAAK,GAAAL,OAAA,CAAAK,KAAA,GAAG;EACZC,eAAe,EAAE;AACnB,CAAC;AAED,MAAMC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG;EACbC,IAAI,EAAE,MAAM;EACZC,cAAc,EAAE,gBAAgB;EAChCC,cAAc,EAAE,gBAAgB;EAChCC,aAAa,EAAE,eAAe;EAC9BC,YAAY,EAAE,cAAc;EAC5BC,YAAY,EAAE,cAAc;EAC5BC,MAAM,EAAE,QAAQ;EAChBC,UAAU,EAAE,YAAY;EACxBC,SAAS,EAAE,WAAW;EACtBC,SAAS,EAAE,WAAW;EACtBC,MAAM,EAAE,QAAQ;EAChBC,KAAK,EAAE,OAAO;EACdC,OAAO,EAAE;AACX,CAAC;AAED,MAAMC,IAAI,GAAArB,OAAA,CAAAqB,IAAA,GAAG,MAAM;AAEnB,MAAMC,mBAAmB,GAAAtB,OAAA,CAAAsB,mBAAA,GAAG;EAAEC,OAAO,EAAE,OAAO;EAAEC,KAAK,EAAE,OAAO;EAAEC,GAAG,EAAE;AAAU,CAAC"}
1
+ {"version":3,"file":"Chat.constants.js","names":["BANNED_COMPONENTS","exports","CHAT_STORAGE_CACHE","CHAT_STORAGE_KEY","DEFAULT_NAME","DELAY_RESPONSE","EVENT","INPUT_COMPONENT","INTENT","BOOK","BOOKING_CREATE","BOOKING_CANCEL","BOOKING_QUERY","BOOKING_VIEW","BOOKING_SEND","OFFERS","HOTEL_INFO","GREETINGS","FAREWELLS","SIGNUP","LOGIN","PROFILE","NAME","VERBOSE_DATE_FORMAT","weekday","month","day"],"sources":["../../../src/components/Chat/Chat.constants.js"],"sourcesContent":["const BANNED_COMPONENTS = ['checkout', 'booking'];\n\nconst CHAT_STORAGE_CACHE = 1000 * 60 * 60 * 8; // 8 hours\n\nconst CHAT_STORAGE_KEY = 'MIRAI:LISA:CHAT';\n\nconst DEFAULT_NAME = 'Sarai';\n\nconst DELAY_RESPONSE = 500;\n\nconst EVENT = {\n INPUT_COMPONENT: 'EVENT_INPUT_COMPONENT',\n};\n\nconst INTENT = {\n BOOK: 'BOOK',\n BOOKING_CREATE: 'BOOKING_CREATE',\n BOOKING_CANCEL: 'BOOKING_CANCEL',\n BOOKING_QUERY: 'BOOKING_QUERY',\n BOOKING_VIEW: 'BOOKING_VIEW',\n BOOKING_SEND: 'BOOKING_SEND',\n OFFERS: 'OFFERS',\n HOTEL_INFO: 'HOTEL_INFO',\n GREETINGS: 'GREETINGS',\n FAREWELLS: 'FAREWELLS',\n SIGNUP: 'SIGNUP',\n LOGIN: 'LOGIN',\n PROFILE: 'PROFILE',\n};\n\nconst NAME = 'Sarai';\n\nconst VERBOSE_DATE_FORMAT = { weekday: 'short', month: 'short', day: 'numeric' };\n\nexport {\n BANNED_COMPONENTS,\n CHAT_STORAGE_CACHE,\n CHAT_STORAGE_KEY,\n DEFAULT_NAME,\n DELAY_RESPONSE,\n EVENT,\n INTENT,\n NAME,\n VERBOSE_DATE_FORMAT,\n};\n"],"mappings":";;;;;;AAAA,MAAMA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC;AAEjD,MAAME,kBAAkB,GAAAD,OAAA,CAAAC,kBAAA,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;;AAE/C,MAAMC,gBAAgB,GAAAF,OAAA,CAAAE,gBAAA,GAAG,iBAAiB;AAE1C,MAAMC,YAAY,GAAAH,OAAA,CAAAG,YAAA,GAAG,OAAO;AAE5B,MAAMC,cAAc,GAAAJ,OAAA,CAAAI,cAAA,GAAG,GAAG;AAE1B,MAAMC,KAAK,GAAAL,OAAA,CAAAK,KAAA,GAAG;EACZC,eAAe,EAAE;AACnB,CAAC;AAED,MAAMC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG;EACbC,IAAI,EAAE,MAAM;EACZC,cAAc,EAAE,gBAAgB;EAChCC,cAAc,EAAE,gBAAgB;EAChCC,aAAa,EAAE,eAAe;EAC9BC,YAAY,EAAE,cAAc;EAC5BC,YAAY,EAAE,cAAc;EAC5BC,MAAM,EAAE,QAAQ;EAChBC,UAAU,EAAE,YAAY;EACxBC,SAAS,EAAE,WAAW;EACtBC,SAAS,EAAE,WAAW;EACtBC,MAAM,EAAE,QAAQ;EAChBC,KAAK,EAAE,OAAO;EACdC,OAAO,EAAE;AACX,CAAC;AAED,MAAMC,IAAI,GAAArB,OAAA,CAAAqB,IAAA,GAAG,OAAO;AAEpB,MAAMC,mBAAmB,GAAAtB,OAAA,CAAAsB,mBAAA,GAAG;EAAEC,OAAO,EAAE,OAAO;EAAEC,KAAK,EAAE,OAAO;EAAEC,GAAG,EAAE;AAAU,CAAC"}
@@ -32,12 +32,12 @@ const Chat = _ref => {
32
32
  const {
33
33
  set,
34
34
  value: {
35
+ assistant = {},
35
36
  calendar,
36
37
  club,
37
38
  components = {},
38
39
  currency,
39
40
  hotel,
40
- id,
41
41
  locale,
42
42
  occupation,
43
43
  origin,
@@ -48,7 +48,6 @@ const Chat = _ref => {
48
48
  }
49
49
  } = (0, _dataSources.useStore)();
50
50
  const [busy, setBusy] = (0, _react.useState)(false);
51
- const [config, setConfig] = (0, _react.useState)();
52
51
  const [, setError] = (0, _react.useState)();
53
52
  const [messages, setMessages] = (0, _react.useState)([]);
54
53
  const [online, setOnline] = (0, _react.useState)(false);
@@ -56,9 +55,6 @@ const Chat = _ref => {
56
55
  const [welcome, setWelcome] = (0, _react.useState)();
57
56
  (0, _react.useEffect)(() => {
58
57
  if (skeleton || Object.keys(components).some(item => _Chat.BANNED_COMPONENTS.includes(item))) return;
59
- const nextConfig = process.env.NODE_ENV === 'production' ? _services.ServiceFeatures.get('lisa', id) : {};
60
- if (!nextConfig) return;
61
- setConfig(nextConfig);
62
58
  (async () => {
63
59
  if (!(await handleOnline())) return;
64
60
  setWelcome(await _services.ServiceLisa.welcome({
@@ -260,13 +256,12 @@ const Chat = _ref => {
260
256
  } = _ref5;
261
257
  return !(!auto && !text);
262
258
  });
263
- return !skeleton && !!config ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.Modal, _extends({}, others, {
259
+ return !skeleton && (assistant.mira || assistant.lisa) ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ui.Modal, _extends({}, others, {
264
260
  fit: true,
265
261
  portal: true,
266
262
  visible: visible,
267
263
  className: (0, _ui.styles)(style.container, others.className)
268
264
  }), /*#__PURE__*/_react.default.createElement(_components.Header, {
269
- config: config,
270
265
  onClose: () => setVisible(false)
271
266
  }), !chatMessages.length ? /*#__PURE__*/_react.default.createElement(_components.Welcome, _extends({}, welcomeMessage.response, {
272
267
  onInput: handleInput
@@ -297,10 +292,9 @@ const Chat = _ref => {
297
292
  }, translate(_Chat2.L10N.LABEL_WARNING_RESPONSES, {
298
293
  name: 'Lisa'
299
294
  }))), /*#__PURE__*/_react.default.createElement(_components.ButtonDispatcher, {
300
- config,
295
+ visible,
301
296
  welcomeMessage,
302
297
  ready: !!messages.length,
303
- visible: visible,
304
298
  onPress: () => setVisible(true)
305
299
  })) : null;
306
300
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Chat.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Chat","_Chat2","style","_components","_helpers","_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","connectionInterval","session","Chat","_ref","others","translate","useLocale","value","calendar","club","components","currency","hotel","id","locale","occupation","origin","stateSession","skeleton","tags","type","useStore","busy","setBusy","useState","config","setConfig","setError","messages","setMessages","online","setOnline","visible","setVisible","welcome","setWelcome","useEffect","keys","some","item","BANNED_COMPONENTS","includes","nextConfig","process","env","NODE_ENV","ServiceFeatures","handleOnline","ServiceLisa","context","catch","handleError","Event","publish","EVENT","METRICS","addMessage","timestamp","Date","getTime","lisa","clearInterval","setInterval","storeContext","filter","_ref2","storage","intent","text","slice","map","_ref3","response","form","next","status","handleInput","input","auto","undefined","nextMessages","setTimeout","_messages$filter$slic","_messages$filter$slic2","currentForm","_ref4","message","DELAY_RESPONSE","handleAction","nextContext","action","handleRetry","pop","error","notify","INTENT_LOCALE","audioNotification","welcomeMessage","chatMessages","_ref5","createElement","Fragment","Modal","fit","portal","className","styles","container","Header","onClose","Welcome","onInput","ScrollView","scrollTo","snap","index","_chatMessages","Message","concat","disabled","onAction","onRetry","Input","onValue","Text","light","tiny","warning","L10N","LABEL_WARNING_RESPONSES","name","ButtonDispatcher","ready","onPress","exports","displayName","propTypes","PropTypes","string"],"sources":["../../../src/components/Chat/Chat.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceFeatures, ServiceLisa } from '@mirai/services';\nimport { Modal, ScrollView, styles, Text } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { BANNED_COMPONENTS, DELAY_RESPONSE } from './Chat.constants';\nimport { L10N } from './Chat.l10n';\nimport * as style from './Chat.module.css';\nimport { ButtonDispatcher, Header, Input, Message, Welcome } from './components';\nimport { audioNotification } from './helpers';\nimport { EVENT } from '../helpers';\n\nlet connectionInterval;\nlet session;\n\nconst Chat = ({ ...others }) => {\n const { translate } = useLocale();\n const {\n set,\n value: {\n calendar,\n club,\n components = {},\n currency,\n hotel,\n id,\n locale,\n occupation,\n origin,\n session: stateSession,\n skeleton = false,\n tags,\n type,\n },\n } = useStore();\n\n const [busy, setBusy] = useState(false);\n const [config, setConfig] = useState();\n const [, setError] = useState();\n const [messages, setMessages] = useState([]);\n const [online, setOnline] = useState(false);\n const [visible, setVisible] = useState(false);\n const [welcome, setWelcome] = useState();\n\n useEffect(() => {\n if (skeleton || Object.keys(components).some((item) => BANNED_COMPONENTS.includes(item))) return;\n\n const nextConfig = process.env.NODE_ENV === 'production' ? ServiceFeatures.get('lisa', id) : {};\n if (!nextConfig) return;\n setConfig(nextConfig);\n\n (async () => {\n if (!(await handleOnline())) return;\n\n setWelcome(await ServiceLisa.welcome({ context: { club, hotel }, locale, session }).catch(handleError));\n })();\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [skeleton]);\n\n useEffect(() => {\n if (!visible) return;\n Event.publish(EVENT.METRICS, { id: 'CHAT:OPEN' });\n }, [visible]);\n\n useEffect(() => {\n if (!welcome) return;\n\n if (!messages.length) return addMessage({ ...welcome, timestamp: new Date().getTime() }, messages);\n set({ lisa: messages[messages.length - 1] });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [welcome]);\n\n useEffect(() => {\n if (stateSession) session = stateSession;\n }, [stateSession]);\n\n useEffect(() => {\n if (!visible) return clearInterval(connectionInterval);\n\n connectionInterval = setInterval(handleOnline, online ? 60000 : 10000);\n return () => clearInterval(connectionInterval);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [online, visible]);\n\n let storeContext = {\n calendar,\n club,\n currency,\n hotel,\n messages: messages\n .filter(({ storage, intent, text }) => !storage && (intent || text))\n .slice(-4)\n .map(({ intent, text, response: { form } = {} }) => ({ form, intent, text })),\n occupation,\n origin,\n tags,\n type,\n };\n\n const handleOnline = async () => {\n let next = false;\n const response = await ServiceLisa.status().catch(() => setOnline(next));\n if (response && !online) {\n next = true;\n setOnline(next);\n }\n return next;\n };\n\n const handleInput = (input, auto = false) => {\n const nextMessages = [...messages, { text: input, timestamp: new Date().getTime() }];\n setMessages(nextMessages);\n\n setTimeout(async () => {\n setBusy(true);\n const currentForm = messages.filter(({ storage }) => !storage).slice(-1)[0]?.response?.form;\n\n storeContext = { ...storeContext, form: currentForm };\n const response = await ServiceLisa.message({ auto, context: storeContext, input, locale, session }).catch(\n handleError,\n );\n if (response) addMessage(response, nextMessages, true);\n setBusy(false);\n }, DELAY_RESPONSE);\n };\n\n const handleAction = ({ context, form, intent, text } = {}) => {\n setBusy(true);\n\n setTimeout(async () => {\n const nextContext = { ...storeContext, ...context, form };\n const nextMessages = [...messages, { auto: false, text }];\n\n const response = await ServiceLisa.action({ context: nextContext, intent, locale, session }).catch(handleError);\n if (response) addMessage(response, nextMessages, true);\n setBusy(false);\n }, DELAY_RESPONSE);\n };\n\n const handleRetry = async () => {\n setBusy(true);\n\n const nextMessages = [...messages];\n nextMessages.pop();\n\n setMessages(nextMessages);\n const { text: input, response: { form } = {} } = nextMessages[nextMessages.length - 1] || {};\n storeContext = { ...storeContext, form };\n const response = await ServiceLisa.message({ context: storeContext, input, locale, session }).catch(handleError);\n if (response) addMessage(response, nextMessages, true);\n setBusy(false);\n };\n\n const handleError = (error) => {\n setError(error);\n setOnline(false);\n };\n\n const addMessage = (response = {}, messages = [], notify = false) => {\n if (!response) return;\n\n set({ lisa: response });\n setMessages([...messages, { auto: true, ...response }]);\n\n if (response.locale !== locale) Event.publish(EVENT.INTENT_LOCALE, { locale: response.locale });\n if (notify) audioNotification();\n };\n\n const { response: { form } = {} } = messages.filter(({ auto = false } = {}) => auto).pop() || [];\n const [welcomeMessage = {}, ...chatMessages] = messages.filter(({ auto, text }) => !(!auto && !text));\n\n return !skeleton && !!config ? (\n <>\n <Modal {...others} fit portal visible={visible} className={styles(style.container, others.className)}>\n <Header config={config} onClose={() => setVisible(false)} />\n\n {!chatMessages.length ? (\n <Welcome {...welcomeMessage.response} onInput={handleInput} />\n ) : (\n <>\n <ScrollView scrollTo={new Date().getTime()} snap={false} className={style.messages}>\n {chatMessages.map((message, index) => (\n <Message\n {...message}\n key={`message:${index}`}\n disabled={busy || index < chatMessages.length - 1}\n onAction={handleAction}\n onRetry={index === chatMessages.length - 1 && chatMessages[index - 1]?.text ? handleRetry : undefined}\n />\n ))}\n {busy && <Message auto busy />}\n </ScrollView>\n <Input disabled={busy} form={form} onValue={handleInput} className={style.input} />\n </>\n )}\n <Text light tiny className={style.warning}>\n {translate(L10N.LABEL_WARNING_RESPONSES, { name: 'Lisa' })}\n </Text>\n </Modal>\n\n <ButtonDispatcher\n {...{ config, welcomeMessage }}\n ready={!!messages.length}\n visible={visible}\n onPress={() => setVisible(true)}\n />\n </>\n ) : null;\n};\n\nChat.displayName = 'Mirai:Core:Chat';\n\nChat.propTypes = {\n name: PropTypes.string,\n};\n\nexport { Chat };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Chat.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Chat","_Chat2","style","_components","_helpers","_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","connectionInterval","session","Chat","_ref","others","translate","useLocale","value","assistant","calendar","club","components","currency","hotel","locale","occupation","origin","stateSession","skeleton","tags","type","useStore","busy","setBusy","useState","setError","messages","setMessages","online","setOnline","visible","setVisible","welcome","setWelcome","useEffect","keys","some","item","BANNED_COMPONENTS","includes","handleOnline","ServiceLisa","context","catch","handleError","Event","publish","EVENT","METRICS","id","addMessage","timestamp","Date","getTime","lisa","clearInterval","setInterval","storeContext","filter","_ref2","storage","intent","text","slice","map","_ref3","response","form","next","status","handleInput","input","auto","undefined","nextMessages","setTimeout","_messages$filter$slic","_messages$filter$slic2","currentForm","_ref4","message","DELAY_RESPONSE","handleAction","nextContext","action","handleRetry","pop","error","notify","INTENT_LOCALE","audioNotification","welcomeMessage","chatMessages","_ref5","mira","createElement","Fragment","Modal","fit","portal","className","styles","container","Header","onClose","Welcome","onInput","ScrollView","scrollTo","snap","index","_chatMessages","Message","concat","disabled","onAction","onRetry","Input","onValue","Text","light","tiny","warning","L10N","LABEL_WARNING_RESPONSES","name","ButtonDispatcher","ready","onPress","exports","displayName","propTypes","PropTypes","string"],"sources":["../../../src/components/Chat/Chat.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceLisa } from '@mirai/services';\nimport { Modal, ScrollView, styles, Text } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { BANNED_COMPONENTS, DELAY_RESPONSE } from './Chat.constants';\nimport { L10N } from './Chat.l10n';\nimport * as style from './Chat.module.css';\nimport { ButtonDispatcher, Header, Input, Message, Welcome } from './components';\nimport { audioNotification } from './helpers';\nimport { EVENT } from '../helpers';\n\nlet connectionInterval;\nlet session;\n\nconst Chat = ({ ...others }) => {\n const { translate } = useLocale();\n const {\n set,\n value: {\n assistant = {},\n calendar,\n club,\n components = {},\n currency,\n hotel,\n locale,\n occupation,\n origin,\n session: stateSession,\n skeleton = false,\n tags,\n type,\n },\n } = useStore();\n\n const [busy, setBusy] = useState(false);\n const [, setError] = useState();\n const [messages, setMessages] = useState([]);\n const [online, setOnline] = useState(false);\n const [visible, setVisible] = useState(false);\n const [welcome, setWelcome] = useState();\n\n useEffect(() => {\n if (skeleton || Object.keys(components).some((item) => BANNED_COMPONENTS.includes(item))) return;\n\n (async () => {\n if (!(await handleOnline())) return;\n\n setWelcome(await ServiceLisa.welcome({ context: { club, hotel }, locale, session }).catch(handleError));\n })();\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [skeleton]);\n\n useEffect(() => {\n if (!visible) return;\n Event.publish(EVENT.METRICS, { id: 'CHAT:OPEN' });\n }, [visible]);\n\n useEffect(() => {\n if (!welcome) return;\n\n if (!messages.length) return addMessage({ ...welcome, timestamp: new Date().getTime() }, messages);\n set({ lisa: messages[messages.length - 1] });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [welcome]);\n\n useEffect(() => {\n if (stateSession) session = stateSession;\n }, [stateSession]);\n\n useEffect(() => {\n if (!visible) return clearInterval(connectionInterval);\n\n connectionInterval = setInterval(handleOnline, online ? 60000 : 10000);\n return () => clearInterval(connectionInterval);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [online, visible]);\n\n let storeContext = {\n calendar,\n club,\n currency,\n hotel,\n messages: messages\n .filter(({ storage, intent, text }) => !storage && (intent || text))\n .slice(-4)\n .map(({ intent, text, response: { form } = {} }) => ({ form, intent, text })),\n occupation,\n origin,\n tags,\n type,\n };\n\n const handleOnline = async () => {\n let next = false;\n const response = await ServiceLisa.status().catch(() => setOnline(next));\n if (response && !online) {\n next = true;\n setOnline(next);\n }\n return next;\n };\n\n const handleInput = (input, auto = false) => {\n const nextMessages = [...messages, { text: input, timestamp: new Date().getTime() }];\n setMessages(nextMessages);\n\n setTimeout(async () => {\n setBusy(true);\n const currentForm = messages.filter(({ storage }) => !storage).slice(-1)[0]?.response?.form;\n\n storeContext = { ...storeContext, form: currentForm };\n const response = await ServiceLisa.message({ auto, context: storeContext, input, locale, session }).catch(\n handleError,\n );\n if (response) addMessage(response, nextMessages, true);\n setBusy(false);\n }, DELAY_RESPONSE);\n };\n\n const handleAction = ({ context, form, intent, text } = {}) => {\n setBusy(true);\n\n setTimeout(async () => {\n const nextContext = { ...storeContext, ...context, form };\n const nextMessages = [...messages, { auto: false, text }];\n\n const response = await ServiceLisa.action({ context: nextContext, intent, locale, session }).catch(handleError);\n if (response) addMessage(response, nextMessages, true);\n setBusy(false);\n }, DELAY_RESPONSE);\n };\n\n const handleRetry = async () => {\n setBusy(true);\n\n const nextMessages = [...messages];\n nextMessages.pop();\n\n setMessages(nextMessages);\n const { text: input, response: { form } = {} } = nextMessages[nextMessages.length - 1] || {};\n storeContext = { ...storeContext, form };\n const response = await ServiceLisa.message({ context: storeContext, input, locale, session }).catch(handleError);\n if (response) addMessage(response, nextMessages, true);\n setBusy(false);\n };\n\n const handleError = (error) => {\n setError(error);\n setOnline(false);\n };\n\n const addMessage = (response = {}, messages = [], notify = false) => {\n if (!response) return;\n\n set({ lisa: response });\n setMessages([...messages, { auto: true, ...response }]);\n\n if (response.locale !== locale) Event.publish(EVENT.INTENT_LOCALE, { locale: response.locale });\n if (notify) audioNotification();\n };\n\n const { response: { form } = {} } = messages.filter(({ auto = false } = {}) => auto).pop() || [];\n const [welcomeMessage = {}, ...chatMessages] = messages.filter(({ auto, text }) => !(!auto && !text));\n\n return !skeleton && (assistant.mira || assistant.lisa) ? (\n <>\n <Modal {...others} fit portal visible={visible} className={styles(style.container, others.className)}>\n <Header onClose={() => setVisible(false)} />\n\n {!chatMessages.length ? (\n <Welcome {...welcomeMessage.response} onInput={handleInput} />\n ) : (\n <>\n <ScrollView scrollTo={new Date().getTime()} snap={false} className={style.messages}>\n {chatMessages.map((message, index) => (\n <Message\n {...message}\n key={`message:${index}`}\n disabled={busy || index < chatMessages.length - 1}\n onAction={handleAction}\n onRetry={index === chatMessages.length - 1 && chatMessages[index - 1]?.text ? handleRetry : undefined}\n />\n ))}\n {busy && <Message auto busy />}\n </ScrollView>\n <Input disabled={busy} form={form} onValue={handleInput} className={style.input} />\n </>\n )}\n <Text light tiny className={style.warning}>\n {translate(L10N.LABEL_WARNING_RESPONSES, { name: 'Lisa' })}\n </Text>\n </Modal>\n\n <ButtonDispatcher {...{ visible, welcomeMessage }} ready={!!messages.length} onPress={() => setVisible(true)} />\n </>\n ) : null;\n};\n\nChat.displayName = 'Mirai:Core:Chat';\n\nChat.propTypes = {\n name: PropTypes.string,\n};\n\nexport { Chat };\n"],"mappings":"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"}
@@ -22,11 +22,6 @@ const DELAY_WELCOME = 10000;
22
22
  let focused = false;
23
23
  const ButtonDispatcher = _ref => {
24
24
  let {
25
- config: {
26
- image,
27
- name = _Chat.DEFAULT_NAME,
28
- ...config
29
- } = {},
30
25
  ready = false,
31
26
  visible,
32
27
  onPress
@@ -39,6 +34,11 @@ const ButtonDispatcher = _ref => {
39
34
  } = (0, _locale.useLocale)();
40
35
  const {
41
36
  value: {
37
+ assistant: {
38
+ image,
39
+ name = _Chat.DEFAULT_NAME,
40
+ ...assistant
41
+ } = {},
42
42
  session: {
43
43
  firstName
44
44
  } = {}
@@ -79,9 +79,7 @@ const ButtonDispatcher = _ref => {
79
79
  (0, _react.useEffect)(() => {
80
80
  if (focus) focused = true;
81
81
  }, [focus]);
82
- const position = (0, _helpers.determinePosition)(config, {
83
- isMobile
84
- });
82
+ const position = (0, _helpers.determinePosition)(assistant, isMobile);
85
83
  return /*#__PURE__*/_react.default.createElement(_ui.View, {
86
84
  className: (0, _ui.styles)(style.buttonDispatcher, ready && !visible && !hide && style.visible, ...position.className),
87
85
  style: position.style
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonDispatcher.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_ButtonDispatcher","style","_helpers","_helpers2","_Chat","_Avatar","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","DELAY_WELCOME","focused","ButtonDispatcher","_ref","config","image","name","DEFAULT_NAME","ready","visible","onPress","isMobile","useDevice","translate","useLocale","value","session","firstName","useStore","focus","setFocus","useState","hide","setHide","useEffect","callback","_ref2","modalVisible","Event","subscribe","EVENT","MODAL_VISIBLE","unsubscribe","inactivityTimer","resetTimer","clearTimeout","setTimeout","document","addEventListener","current","removeEventListener","position","determinePosition","createElement","View","className","styles","buttonDispatcher","row","welcome","Text","bold","brand","headline","hi","concat","L10N","LABEL_HI","markdown","medium","LABEL_GREETINGS","Button","icon","small","squared","transparent","Icon","ICON","CLOSE","Pressable","onEnter","onLeave","Avatar","disabled","avatar","exports","displayName","propTypes","PropTypes","shape","bottom","oneOfType","bool","number","string","left","right","top","func"],"sources":["../../../../../src/components/Chat/components/ButtonDispatcher/ButtonDispatcher.js"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Icon, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './ButtonDispatcher.l10n';\nimport * as style from './ButtonDispatcher.module.css';\nimport { determinePosition } from './helpers';\nimport { EVENT, ICON } from '../../../helpers';\nimport { DEFAULT_NAME } from '../../Chat.constants';\nimport { Avatar } from '../Avatar';\n\nconst DELAY_WELCOME = 10000;\nlet focused = false;\n\nconst ButtonDispatcher = ({\n config: { image, name = DEFAULT_NAME, ...config } = {},\n ready = false,\n visible,\n onPress,\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { session: { firstName } = {} },\n } = useStore();\n\n const [focus, setFocus] = useState(false);\n const [hide, setHide] = useState(false);\n\n useEffect(() => {\n const callback = ({ visible: modalVisible }) => {\n setHide(modalVisible);\n };\n\n Event.subscribe(EVENT.MODAL_VISIBLE, callback);\n return () => Event.unsubscribe(EVENT.MODAL_VISIBLE, callback);\n }, []);\n\n useEffect(() => {\n if (!ready || focused) return;\n let inactivityTimer;\n\n const resetTimer = () => {\n clearTimeout(inactivityTimer);\n if (focused) return;\n inactivityTimer = setTimeout(() => {\n setFocus(true);\n clearTimeout(inactivityTimer);\n }, DELAY_WELCOME);\n };\n\n document.addEventListener('mousemove', resetTimer);\n document.addEventListener('scroll', resetTimer);\n\n resetTimer();\n\n return () => {\n clearTimeout(inactivityTimer.current);\n document.removeEventListener('mousemove', resetTimer);\n document.removeEventListener('scroll', resetTimer);\n };\n }, [ready]);\n\n useEffect(() => {\n if (focus) focused = true;\n }, [focus]);\n\n const position = determinePosition(config, { isMobile });\n\n return (\n <View\n className={styles(style.buttonDispatcher, ready && !visible && !hide && style.visible, ...position.className)}\n style={position.style}\n >\n <View row className={styles(style.welcome, focus && !visible && style.visible)}>\n <View>\n <Text bold brand headline className={style.hi}>\n {`✦ ${translate(L10N.LABEL_HI)}${firstName ? `, ${firstName}` : ''}`}\n </Text>\n <Text markdown={false} medium>\n {translate(L10N.LABEL_GREETINGS, { name })}\n </Text>\n </View>\n {isMobile && (\n <Button icon=\"close\" small squared transparent onPress={() => setFocus(false)}>\n <Icon value={ICON.CLOSE} />\n </Button>\n )}\n </View>\n\n <Pressable onEnter={() => setFocus(true)} onLeave={() => setFocus(false)} onPress={onPress}>\n <Avatar disabled={visible} image={image} className={style.avatar} />\n </Pressable>\n </View>\n );\n};\n\nButtonDispatcher.displayName = 'Mirai:Core:Chat:ButtonDispatcher';\n\nButtonDispatcher.propTypes = {\n config: PropTypes.shape({\n bottom: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n image: PropTypes.string,\n left: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n name: PropTypes.string,\n right: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n top: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n }),\n ready: PropTypes.bool,\n visible: PropTypes.bool,\n onPress: PropTypes.func,\n};\n\nexport { ButtonDispatcher };\n"],"mappings":"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"}
1
+ {"version":3,"file":"ButtonDispatcher.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_ButtonDispatcher","style","_helpers","_helpers2","_Chat","_Avatar","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","DELAY_WELCOME","focused","ButtonDispatcher","_ref","ready","visible","onPress","isMobile","useDevice","translate","useLocale","value","assistant","image","name","DEFAULT_NAME","session","firstName","useStore","focus","setFocus","useState","hide","setHide","useEffect","callback","_ref2","modalVisible","Event","subscribe","EVENT","MODAL_VISIBLE","unsubscribe","inactivityTimer","resetTimer","clearTimeout","setTimeout","document","addEventListener","current","removeEventListener","position","determinePosition","createElement","View","className","styles","buttonDispatcher","row","welcome","Text","bold","brand","headline","hi","concat","L10N","LABEL_HI","markdown","medium","LABEL_GREETINGS","Button","icon","small","squared","transparent","Icon","ICON","CLOSE","Pressable","onEnter","onLeave","Avatar","disabled","avatar","exports","displayName","propTypes","config","PropTypes","shape","bottom","oneOfType","bool","number","string","left","right","top","func"],"sources":["../../../../../src/components/Chat/components/ButtonDispatcher/ButtonDispatcher.js"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Icon, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './ButtonDispatcher.l10n';\nimport * as style from './ButtonDispatcher.module.css';\nimport { determinePosition } from './helpers';\nimport { EVENT, ICON } from '../../../helpers';\nimport { DEFAULT_NAME } from '../../Chat.constants';\nimport { Avatar } from '../Avatar';\n\nconst DELAY_WELCOME = 10000;\nlet focused = false;\n\nconst ButtonDispatcher = ({ ready = false, visible, onPress }) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { assistant: { image, name = DEFAULT_NAME, ...assistant } = {}, session: { firstName } = {} },\n } = useStore();\n\n const [focus, setFocus] = useState(false);\n const [hide, setHide] = useState(false);\n\n useEffect(() => {\n const callback = ({ visible: modalVisible }) => {\n setHide(modalVisible);\n };\n\n Event.subscribe(EVENT.MODAL_VISIBLE, callback);\n return () => Event.unsubscribe(EVENT.MODAL_VISIBLE, callback);\n }, []);\n\n useEffect(() => {\n if (!ready || focused) return;\n let inactivityTimer;\n\n const resetTimer = () => {\n clearTimeout(inactivityTimer);\n if (focused) return;\n inactivityTimer = setTimeout(() => {\n setFocus(true);\n clearTimeout(inactivityTimer);\n }, DELAY_WELCOME);\n };\n\n document.addEventListener('mousemove', resetTimer);\n document.addEventListener('scroll', resetTimer);\n\n resetTimer();\n\n return () => {\n clearTimeout(inactivityTimer.current);\n document.removeEventListener('mousemove', resetTimer);\n document.removeEventListener('scroll', resetTimer);\n };\n }, [ready]);\n\n useEffect(() => {\n if (focus) focused = true;\n }, [focus]);\n\n const position = determinePosition(assistant, isMobile);\n\n return (\n <View\n className={styles(style.buttonDispatcher, ready && !visible && !hide && style.visible, ...position.className)}\n style={position.style}\n >\n <View row className={styles(style.welcome, focus && !visible && style.visible)}>\n <View>\n <Text bold brand headline className={style.hi}>\n {`✦ ${translate(L10N.LABEL_HI)}${firstName ? `, ${firstName}` : ''}`}\n </Text>\n <Text markdown={false} medium>\n {translate(L10N.LABEL_GREETINGS, { name })}\n </Text>\n </View>\n {isMobile && (\n <Button icon=\"close\" small squared transparent onPress={() => setFocus(false)}>\n <Icon value={ICON.CLOSE} />\n </Button>\n )}\n </View>\n\n <Pressable onEnter={() => setFocus(true)} onLeave={() => setFocus(false)} onPress={onPress}>\n <Avatar disabled={visible} image={image} className={style.avatar} />\n </Pressable>\n </View>\n );\n};\n\nButtonDispatcher.displayName = 'Mirai:Core:Chat:ButtonDispatcher';\n\nButtonDispatcher.propTypes = {\n config: PropTypes.shape({\n bottom: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n image: PropTypes.string,\n left: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n name: PropTypes.string,\n right: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n top: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n }),\n ready: PropTypes.bool,\n visible: PropTypes.bool,\n onPress: PropTypes.func,\n};\n\nexport { ButtonDispatcher };\n"],"mappings":"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"}
@@ -9,24 +9,15 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
9
9
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
10
10
  const determinePosition = (_ref, isMobile) => {
11
11
  let {
12
- mobile,
13
- desktop,
14
- ...config
12
+ desktopPosition = {},
13
+ mobilePosition = {}
15
14
  } = _ref;
16
- let base = {
17
- ...config
18
- };
19
- if (isMobile && mobile) base = {
20
- ...mobile
21
- };else if (!isMobile && desktop) base = {
22
- ...desktop
23
- };
24
15
  const {
25
16
  bottom,
26
17
  left = false,
27
18
  right,
28
19
  top = false
29
- } = base;
20
+ } = isMobile ? mobilePosition : desktopPosition;
30
21
  return {
31
22
  className: [left ? style.left : style.right, top ? style.top : style.bottom],
32
23
  style: {
@@ -1 +1 @@
1
- {"version":3,"file":"determinePosition.js","names":["style","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","determinePosition","_ref","isMobile","mobile","desktop","config","base","bottom","left","right","top","className","undefined","exports"],"sources":["../../../../../../src/components/Chat/components/ButtonDispatcher/helpers/determinePosition.js"],"sourcesContent":["import * as style from '../ButtonDispatcher.module.css';\n\nexport const determinePosition = ({ mobile, desktop, ...config }, isMobile) => {\n let base = { ...config };\n\n if (isMobile && mobile) base = { ...mobile };\n else if (!isMobile && desktop) base = { ...desktop };\n\n const { bottom, left = false, right, top = false } = base;\n\n return {\n className: [left ? style.left : style.right, top ? style.top : style.bottom],\n style: {\n top: top >= 1 ? top : undefined,\n bottom: bottom >= 1 ? bottom : undefined,\n left: left >= 1 ? left : undefined,\n right: right >= 1 ? right : undefined,\n },\n };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAwD,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEjD,MAAMY,iBAAiB,GAAGA,CAAAC,IAAA,EAAiCC,QAAQ,KAAK;EAAA,IAA7C;IAAEC,MAAM;IAAEC,OAAO;IAAE,GAAGC;EAAO,CAAC,GAAAJ,IAAA;EAC9D,IAAIK,IAAI,GAAG;IAAE,GAAGD;EAAO,CAAC;EAExB,IAAIH,QAAQ,IAAIC,MAAM,EAAEG,IAAI,GAAG;IAAE,GAAGH;EAAO,CAAC,CAAC,KACxC,IAAI,CAACD,QAAQ,IAAIE,OAAO,EAAEE,IAAI,GAAG;IAAE,GAAGF;EAAQ,CAAC;EAEpD,MAAM;IAAEG,MAAM;IAAEC,IAAI,GAAG,KAAK;IAAEC,KAAK;IAAEC,GAAG,GAAG;EAAM,CAAC,GAAGJ,IAAI;EAEzD,OAAO;IACLK,SAAS,EAAE,CAACH,IAAI,GAAGhC,KAAK,CAACgC,IAAI,GAAGhC,KAAK,CAACiC,KAAK,EAAEC,GAAG,GAAGlC,KAAK,CAACkC,GAAG,GAAGlC,KAAK,CAAC+B,MAAM,CAAC;IAC5E/B,KAAK,EAAE;MACLkC,GAAG,EAAEA,GAAG,IAAI,CAAC,GAAGA,GAAG,GAAGE,SAAS;MAC/BL,MAAM,EAAEA,MAAM,IAAI,CAAC,GAAGA,MAAM,GAAGK,SAAS;MACxCJ,IAAI,EAAEA,IAAI,IAAI,CAAC,GAAGA,IAAI,GAAGI,SAAS;MAClCH,KAAK,EAAEA,KAAK,IAAI,CAAC,GAAGA,KAAK,GAAGG;IAC9B;EACF,CAAC;AACH,CAAC;AAACC,OAAA,CAAAb,iBAAA,GAAAA,iBAAA"}
1
+ {"version":3,"file":"determinePosition.js","names":["style","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","determinePosition","_ref","isMobile","desktopPosition","mobilePosition","bottom","left","right","top","className","undefined","exports"],"sources":["../../../../../../src/components/Chat/components/ButtonDispatcher/helpers/determinePosition.js"],"sourcesContent":["import * as style from '../ButtonDispatcher.module.css';\n\nexport const determinePosition = ({ desktopPosition = {}, mobilePosition = {} }, isMobile) => {\n const { bottom, left = false, right, top = false } = isMobile ? mobilePosition : desktopPosition;\n\n return {\n className: [left ? style.left : style.right, top ? style.top : style.bottom],\n style: {\n top: top >= 1 ? top : undefined,\n bottom: bottom >= 1 ? bottom : undefined,\n left: left >= 1 ? left : undefined,\n right: right >= 1 ? right : undefined,\n },\n };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAwD,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEjD,MAAMY,iBAAiB,GAAGA,CAAAC,IAAA,EAAgDC,QAAQ,KAAK;EAAA,IAA5D;IAAEC,eAAe,GAAG,CAAC,CAAC;IAAEC,cAAc,GAAG,CAAC;EAAE,CAAC,GAAAH,IAAA;EAC7E,MAAM;IAAEI,MAAM;IAAEC,IAAI,GAAG,KAAK;IAAEC,KAAK;IAAEC,GAAG,GAAG;EAAM,CAAC,GAAGN,QAAQ,GAAGE,cAAc,GAAGD,eAAe;EAEhG,OAAO;IACLM,SAAS,EAAE,CAACH,IAAI,GAAG9B,KAAK,CAAC8B,IAAI,GAAG9B,KAAK,CAAC+B,KAAK,EAAEC,GAAG,GAAGhC,KAAK,CAACgC,GAAG,GAAGhC,KAAK,CAAC6B,MAAM,CAAC;IAC5E7B,KAAK,EAAE;MACLgC,GAAG,EAAEA,GAAG,IAAI,CAAC,GAAGA,GAAG,GAAGE,SAAS;MAC/BL,MAAM,EAAEA,MAAM,IAAI,CAAC,GAAGA,MAAM,GAAGK,SAAS;MACxCJ,IAAI,EAAEA,IAAI,IAAI,CAAC,GAAGA,IAAI,GAAGI,SAAS;MAClCH,KAAK,EAAEA,KAAK,IAAI,CAAC,GAAGA,KAAK,GAAGG;IAC9B;EACF,CAAC;AACH,CAAC;AAACC,OAAA,CAAAX,iBAAA,GAAAA,iBAAA"}
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.Header = void 0;
7
+ var _dataSources = require("@mirai/data-sources");
7
8
  var _locale = require("@mirai/locale");
8
9
  var _ui = require("@mirai/ui");
9
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -18,12 +19,16 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
18
19
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
20
  const Header = _ref => {
20
21
  let {
21
- config: {
22
- image,
23
- name = _Chat.DEFAULT_NAME
24
- } = {},
25
22
  onClose
26
23
  } = _ref;
24
+ const {
25
+ value: {
26
+ assistant: {
27
+ image,
28
+ name = _Chat.DEFAULT_NAME
29
+ } = {}
30
+ } = {}
31
+ } = (0, _dataSources.useStore)();
27
32
  const {
28
33
  translate
29
34
  } = (0, _locale.useLocale)();
@@ -55,11 +60,6 @@ const Header = _ref => {
55
60
  exports.Header = Header;
56
61
  Header.displayName = 'Mirai:Core:Chat.Header';
57
62
  Header.propTypes = {
58
- config: _propTypes.default.shape({
59
- image: _propTypes.default.string,
60
- name: _propTypes.default.string
61
- }),
62
- visible: _propTypes.default.bool,
63
63
  onClose: _propTypes.default.func
64
64
  };
65
65
  //# sourceMappingURL=Header.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Header.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_Header","style","_interopRequireWildcard","_helpers","_Chat","_Avatar","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Header","_ref","config","image","name","DEFAULT_NAME","onClose","translate","useLocale","createElement","View","row","className","header","Avatar","small","avatar","Text","bold","headline","light","L10N","LABEL_ASSISTANT","Button","squared","tooltip","ACTION_CLOSE","transparent","onPress","Icon","value","ICON","CLOSE","exports","displayName","propTypes","PropTypes","shape","string","visible","bool","func"],"sources":["../../../../../src/components/Chat/components/Header/Header.js"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, Icon, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './Header.l10n';\nimport * as style from './Header.module.css';\nimport { ICON } from '../../../helpers';\nimport { DEFAULT_NAME } from '../../Chat.constants';\nimport { Avatar } from '../Avatar';\n\nconst Header = ({ config: { image, name = DEFAULT_NAME } = {}, onClose }) => {\n const { translate } = useLocale();\n\n return (\n <View row className={style.header}>\n <View row>\n <Avatar {...{ image }} small className={style.avatar} />\n <View>\n <Text bold headline>\n {name}\n </Text>\n <Text light small>\n {translate(L10N.LABEL_ASSISTANT)}\n </Text>\n </View>\n </View>\n\n <Button small squared tooltip={translate(L10N.ACTION_CLOSE)} transparent onPress={onClose}>\n <Icon value={ICON.CLOSE} />\n </Button>\n </View>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Chat.Header';\n\nHeader.propTypes = {\n config: PropTypes.shape({\n image: PropTypes.string,\n name: PropTypes.string,\n }),\n visible: PropTypes.bool,\n onClose: PropTypes.func,\n};\n\nexport { Header };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Header.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_Header","style","_interopRequireWildcard","_helpers","_Chat","_Avatar","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Header","_ref","onClose","value","assistant","image","name","DEFAULT_NAME","useStore","translate","useLocale","createElement","View","row","className","header","Avatar","small","avatar","Text","bold","headline","light","L10N","LABEL_ASSISTANT","Button","squared","tooltip","ACTION_CLOSE","transparent","onPress","Icon","ICON","CLOSE","exports","displayName","propTypes","PropTypes","func"],"sources":["../../../../../src/components/Chat/components/Header/Header.js"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Icon, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { L10N } from './Header.l10n';\nimport * as style from './Header.module.css';\nimport { ICON } from '../../../helpers';\nimport { DEFAULT_NAME } from '../../Chat.constants';\nimport { Avatar } from '../Avatar';\n\nconst Header = ({ onClose }) => {\n const { value: { assistant: { image, name = DEFAULT_NAME } = {} } = {} } = useStore();\n const { translate } = useLocale();\n\n return (\n <View row className={style.header}>\n <View row>\n <Avatar {...{ image }} small className={style.avatar} />\n <View>\n <Text bold headline>\n {name}\n </Text>\n <Text light small>\n {translate(L10N.LABEL_ASSISTANT)}\n </Text>\n </View>\n </View>\n\n <Button small squared tooltip={translate(L10N.ACTION_CLOSE)} transparent onPress={onClose}>\n <Icon value={ICON.CLOSE} />\n </Button>\n </View>\n );\n};\n\nHeader.displayName = 'Mirai:Core:Chat.Header';\n\nHeader.propTypes = {\n onClose: PropTypes.func,\n};\n\nexport { Header };\n"],"mappings":"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"}
@@ -46,6 +46,11 @@ const consolidateStore = async function () {
46
46
  return component === 'rates';
47
47
  });
48
48
 
49
+ // -- assistant ------------------------------------------------------------------------------------------------------
50
+ const {
51
+ assistant = {}
52
+ } = config.accomodation || {};
53
+
49
54
  // -- calendar -------------------------------------------------------------------------------------------------------
50
55
  const {
51
56
  maxDays = 365,
@@ -233,6 +238,7 @@ const consolidateStore = async function () {
233
238
  locale,
234
239
  locales: (_config$languages = config.languages) === null || _config$languages === void 0 ? void 0 : _config$languages.map(language => language === 'no' ? 'nb' : language).map(language => "".concat(language, "-").concat(_locale.COUNTRIES[language])),
235
240
  // entities,
241
+ assistant,
236
242
  calendar,
237
243
  club: (0, _getClub.getClub)({
238
244
  config,
@@ -1 +1 @@
1
- {"version":3,"file":"consolidateStore.js","names":["_dataSources","require","_locale","_fetchCurrency","_getAccommodationType","_getClub","_getLocale","_getMetaRates","_getPerformance","_getTags","_prepareRoom","_toOccupation","_Core","_process","_process$env","IS_JEST","process","env","JEST_WORKER_ID","consolidateStore","_config$accomodation","_config$accomodation2","_config$accomodation3","_config$accomodation4","_config$accomodation5","_config$accomodation6","_tags","_storageFinder$occupa","_promo","_config$languages","components","config","cookies","instance","el","hotel","hotelId","id","type","session","urlParams","arguments","length","undefined","miraiId","isRates","some","component","maxDays","maxNights","rangeMaxDays","nightsForDeal","rangeMinDays","prices","showPrices","pricesWithTaxes","pricesLegend","accomodation","calendar","TAXES","includes","TAX_DEFAULT","to","dateFormat","dateCalc","Date","format","CALENDAR_FORMAT","language","country","locale","getLocale","currency","TYPE","HOTEL","fetchCurrency","DEFAULT_CURRENCY","accommodationType","getAccommodationType","lodgingDenomination","features","CHAIN","idtokenprovider","idHotel","url","home","window","location","origin","warningAvailability","minRoomsEngineNotification","hotels","variants","Object","entries","map","_ref","key","occupation","dataSource","ADULT","min","age","CHILD","fulfill","maxRooms","rooms","maxOccupation","commissionCode","hsri","TYPE_COMMISSION","chainSelector","tags","placeHolder","trees","options","getTags","placeholder","storageFinder","Storage","adapter","LocalAdapter","get","concat","FINDER_STORAGE_KEY","chainSelectorValue","checkin","clientCode","nights","parties","promo","promoCode","parseDate","UTC","checkout","parseInt","showPromoNav","configPromo","promoText","fromEntries","code","place","find","isHotel","value","Number","finder","dateDiff","days","toOccupation","places","prepareRoom","ages","promocode","host","document","protocol","isDevelopment","NODE_ENV","IS_PLAYWRIGHT","forwarder","rates","SERVICE_BOOKING","booking","signup","SERVICE_USER","profile","cookieBanner","locales","languages","COUNTRIES","club","getClub","reduce","_ref2","props","performance","getPerformance","checkoutForm","JSON","parse","deals","lisa","cart","split","getMetaRates","meta","exports"],"sources":["../../src/helpers/consolidateStore.js"],"sourcesContent":["import { LocalAdapter, Storage } from '@mirai/data-sources';\nimport { COUNTRIES, dateCalc, dateDiff, dateFormat, DEFAULT_CURRENCY, parseDate, UTC } from '@mirai/locale';\n\nimport { fetchCurrency } from './fetchCurrency';\nimport { getAccommodationType } from './getAccommodationType';\nimport { getClub } from './getClub';\nimport { getLocale } from './getLocale';\nimport { getMetaRates } from './getMetaRates';\nimport { getPerformance } from './getPerformance';\nimport { getTags } from './getTags';\nimport { prepareRoom } from './prepareRoom';\nimport { toOccupation } from './toOccupation';\nimport { CALENDAR_FORMAT, FINDER_STORAGE_KEY, TAX_DEFAULT, TAXES, TYPE, TYPE_COMMISSION } from '../Core.constants';\n\nconst IS_JEST = !!process?.env?.JEST_WORKER_ID;\n\n/* eslint-disable no-unused-vars */\nexport const consolidateStore = async ({\n components = [],\n config = {},\n cookies = {},\n instance: { el, hotel: hotelId, id, type, ...instance } = {},\n session,\n urlParams = {},\n} = {}) => {\n const { miraiId } = urlParams;\n const isRates = components.some(({ component } = {}) => component === 'rates');\n\n // -- calendar -------------------------------------------------------------------------------------------------------\n const {\n maxDays = 365,\n maxNights: rangeMaxDays = 31,\n nightsForDeal: rangeMinDays,\n prices: showPrices = false,\n pricesWithTaxes: pricesLegend,\n } = config.accomodation?.calendar || {};\n const calendar = {\n rangeMaxDays,\n rangeMinDays,\n pricesLegend: TAXES.includes(pricesLegend) ? pricesLegend : showPrices ? TAX_DEFAULT : undefined,\n showPrices,\n to: !IS_JEST ? dateFormat(dateCalc(new Date(), maxDays, 'days'), { format: CALENDAR_FORMAT }) : undefined,\n };\n\n // -- language, country & locale -------------------------------------------------------------------------------------\n const { language, country, locale } = getLocale(instance, urlParams);\n\n // -- currency -------------------------------------------------------------------------------------------------------\n const currency =\n urlParams.currency ||\n instance.currency ||\n (type === TYPE.HOTEL && !IS_JEST ? await fetchCurrency(id) : DEFAULT_CURRENCY);\n\n // -- hotel ----------------------------------------------------------------------------------------------------------\n const hotel = {\n accommodationType: getAccommodationType(config.lodgingDenomination, hotelId),\n features: config.accomodation?.features || {},\n id: type === TYPE.CHAIN ? urlParams.idtokenprovider || urlParams.idHotel || hotelId : id,\n url: urlParams.home || window.location.origin,\n warningAvailability: config.minRoomsEngineNotification,\n };\n\n if (type === TYPE.CHAIN) {\n const { hotels = {} } = config;\n hotel.variants = {};\n\n Object.entries(hotels).map(([key, { lodgingDenomination: accommodationType }]) => {\n hotel.variants[key] = { accommodationType };\n });\n }\n\n // -- occupation -----------------------------------------------------------------------------------------------------\n const occupation = {\n dataSource: config.accomodation?.occupation || [\n { type: TYPE.ADULT, min: 1, age: [18] },\n { type: TYPE.CHILD, age: [0, 17], fulfill: true },\n ],\n maxRooms: config.accomodation?.rooms?.maxOccupation,\n variants: config.accomodation?.variants || [],\n };\n\n // -- origin ---------------------------------------------------------------------------------------------------------\n const origin = {\n commissionCode: urlParams.hsri || TYPE_COMMISSION[type],\n };\n\n // -- tags -----------------------------------------------------------------------------------------------------------\n const { chainSelector } = config;\n let tags;\n if (type === TYPE.CHAIN && chainSelector) {\n const { placeHolder = {}, trees = [] } = chainSelector;\n tags = { options: getTags(trees, language), placeholder: placeHolder[language] };\n }\n\n // -- finder ---------------------------------------------------------------------------------------------------------\n const storageFinder = !isRates ? new Storage({ adapter: LocalAdapter }).get(`${FINDER_STORAGE_KEY}:${id}`) || {} : {};\n\n let { chainSelectorValue, checkin, clientCode, nights = isRates ? 1 : 0, parties, promo: promoCode } = urlParams;\n checkin = checkin ? parseDate(checkin) : isRates ? UTC(new Date()) : undefined;\n let checkout;\n\n if (checkin) checkout = dateCalc(checkin, parseInt(nights), 'days');\n\n let promo;\n if (config.showPromoNav) {\n const { accomodation: { promo: configPromo = {} } = {}, promoText: placeholder = {} } = config;\n promo = {\n ...configPromo,\n placeholder,\n variants: Object.fromEntries(occupation.variants.map(({ id, promo: { code } = {} } = {}) => [id, code])),\n };\n }\n\n let place;\n if (tags) {\n place = tags.options.find(\n ({ id: [idHotel] = [], isHotel, value } = {}) =>\n (chainSelectorValue && value === Number(chainSelectorValue)) || (isHotel && hotel.id === idHotel),\n );\n\n const { id: [id] = [] } = place || {};\n const { accommodationType } = hotel.variants[id] || {};\n if (accommodationType) hotel.accommodationType = accommodationType;\n }\n\n let finder = {\n place: place || storageFinder.place,\n calendar: checkin\n ? [checkin, checkout]\n : storageFinder.calendar && dateDiff(new Date(), new Date(storageFinder.calendar[0])).days > -1\n ? [new Date(storageFinder.calendar[0]), new Date(storageFinder.calendar[1])]\n : [],\n occupation: parties\n ? toOccupation({ chainSelectorValue, occupation, parties, places: tags?.options })\n : isRates\n ? [prepareRoom(occupation.dataSource)]\n : storageFinder.occupation?.map((rooms) =>\n rooms.map((value = {}) => ({\n ...value,\n ...(value?.ages ? { ages: value.ages.map((age) => (age === null ? undefined : age)) } : undefined),\n })),\n ) || undefined,\n promocode: clientCode || promoCode || (!isRates && promo?.code) || storageFinder.promocode,\n };\n\n // -- forwarder ------------------------------------------------------------------------------------------------------\n const host = `${document.location.protocol}//${document.location.host}`;\n const isDevelopment = process.env.NODE_ENV === 'development' || window.IS_PLAYWRIGHT;\n const forwarder = {\n rates: miraiId ? `${host}/step1-rates` : `${process.env.SERVICE_BOOKING}/miraiFrontDispatcher.htm`,\n checkout: miraiId ? `${host}/step2-checkout` : `${process.env.SERVICE_BOOKING}/forwarder_client_form.htm`,\n booking: miraiId ? `${host}/step3-booking` : `${process.env.SERVICE_BOOKING}/forwarder_manage_reservation.htm`,\n signup:\n miraiId || isDevelopment\n ? `${host}/signup`\n : `${process.env.SERVICE_USER}/club/v1/forwarder/registration_process`,\n profile:\n miraiId || isDevelopment ? `${host}/profile` : `${process.env.SERVICE_USER}/club/v1/forwarder/members_area`,\n };\n\n return {\n config,\n cookies,\n cookieBanner: config.cookieBanner,\n urlParams,\n ...instance,\n id,\n type,\n\n // region\n currency,\n language,\n country,\n locale,\n locales: config.languages\n ?.map((language) => (language === 'no' ? 'nb' : language))\n .map((language) => `${language}-${COUNTRIES[language]}`),\n\n // entities,\n calendar,\n club: getClub({ config, language, type, urlParams }),\n components: components.reduce((value, { component, ...props }) => {\n value[component] = props;\n return value;\n }, {}),\n forwarder,\n hotel,\n occupation,\n origin,\n performance: getPerformance(config, hotel.id),\n promo,\n session,\n tags,\n // -- components\n checkout: !IS_JEST && urlParams.checkoutForm ? JSON.parse(urlParams.checkoutForm) : undefined,\n deals: undefined,\n finder,\n lisa: undefined,\n rates: {\n cart: urlParams.cart ? urlParams.cart.split(',') : urlParams.rates ? getMetaRates(urlParams.rates) : undefined,\n meta: !!urlParams.rates,\n },\n rooms: undefined,\n signup: undefined,\n };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAEA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,qBAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AACA,IAAAO,eAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,YAAA,GAAAT,OAAA;AACA,IAAAU,aAAA,GAAAV,OAAA;AACA,IAAAW,KAAA,GAAAX,OAAA;AAAmH,IAAAY,QAAA,EAAAC,YAAA;AAEnH,MAAMC,OAAO,GAAG,CAAC,GAAAF,QAAA,GAACG,OAAO,cAAAH,QAAA,gBAAAC,YAAA,GAAPD,QAAA,CAASI,GAAG,cAAAH,YAAA,eAAZA,YAAA,CAAcI,cAAc;;AAE9C;AACO,MAAMC,gBAAgB,GAAG,eAAAA,CAAA,EAOrB;EAAA,IAAAC,oBAAA,EAAAC,qBAAA,EAAAC,qBAAA,EAAAC,qBAAA,EAAAC,qBAAA,EAAAC,qBAAA,EAAAC,KAAA,EAAAC,qBAAA,EAAAC,MAAA,EAAAC,iBAAA;EAAA,IAP4B;IACrCC,UAAU,GAAG,EAAE;IACfC,MAAM,GAAG,CAAC,CAAC;IACXC,OAAO,GAAG,CAAC,CAAC;IACZC,QAAQ,EAAE;MAAEC,EAAE;MAAEC,KAAK,EAAEC,OAAO;MAAEC,EAAE;MAAEC,IAAI;MAAE,GAAGL;IAAS,CAAC,GAAG,CAAC,CAAC;IAC5DM,OAAO;IACPC,SAAS,GAAG,CAAC;EACf,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACJ,MAAM;IAAEG;EAAQ,CAAC,GAAGJ,SAAS;EAC7B,MAAMK,OAAO,GAAGf,UAAU,CAACgB,IAAI,CAAC;IAAA,IAAC;MAAEC;IAAU,CAAC,GAAAN,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAAA,OAAKM,SAAS,KAAK,OAAO;EAAA,EAAC;;EAE9E;EACA,MAAM;IACJC,OAAO,GAAG,GAAG;IACbC,SAAS,EAAEC,YAAY,GAAG,EAAE;IAC5BC,aAAa,EAAEC,YAAY;IAC3BC,MAAM,EAAEC,UAAU,GAAG,KAAK;IAC1BC,eAAe,EAAEC;EACnB,CAAC,GAAG,EAAApC,oBAAA,GAAAW,MAAM,CAAC0B,YAAY,cAAArC,oBAAA,uBAAnBA,oBAAA,CAAqBsC,QAAQ,KAAI,CAAC,CAAC;EACvC,MAAMA,QAAQ,GAAG;IACfR,YAAY;IACZE,YAAY;IACZI,YAAY,EAAEG,WAAK,CAACC,QAAQ,CAACJ,YAAY,CAAC,GAAGA,YAAY,GAAGF,UAAU,GAAGO,iBAAW,GAAGlB,SAAS;IAChGW,UAAU;IACVQ,EAAE,EAAE,CAAC/C,OAAO,GAAG,IAAAgD,kBAAU,EAAC,IAAAC,gBAAQ,EAAC,IAAIC,IAAI,CAAC,CAAC,EAAEjB,OAAO,EAAE,MAAM,CAAC,EAAE;MAAEkB,MAAM,EAAEC;IAAgB,CAAC,CAAC,GAAGxB;EAClG,CAAC;;EAED;EACA,MAAM;IAAEyB,QAAQ;IAAEC,OAAO;IAAEC;EAAO,CAAC,GAAG,IAAAC,oBAAS,EAACtC,QAAQ,EAAEO,SAAS,CAAC;;EAEpE;EACA,MAAMgC,QAAQ,GACZhC,SAAS,CAACgC,QAAQ,IAClBvC,QAAQ,CAACuC,QAAQ,KAChBlC,IAAI,KAAKmC,UAAI,CAACC,KAAK,IAAI,CAAC3D,OAAO,GAAG,MAAM,IAAA4D,4BAAa,EAACtC,EAAE,CAAC,GAAGuC,wBAAgB,CAAC;;EAEhF;EACA,MAAMzC,KAAK,GAAG;IACZ0C,iBAAiB,EAAE,IAAAC,0CAAoB,EAAC/C,MAAM,CAACgD,mBAAmB,EAAE3C,OAAO,CAAC;IAC5E4C,QAAQ,EAAE,EAAA3D,qBAAA,GAAAU,MAAM,CAAC0B,YAAY,cAAApC,qBAAA,uBAAnBA,qBAAA,CAAqB2D,QAAQ,KAAI,CAAC,CAAC;IAC7C3C,EAAE,EAAEC,IAAI,KAAKmC,UAAI,CAACQ,KAAK,GAAGzC,SAAS,CAAC0C,eAAe,IAAI1C,SAAS,CAAC2C,OAAO,IAAI/C,OAAO,GAAGC,EAAE;IACxF+C,GAAG,EAAE5C,SAAS,CAAC6C,IAAI,IAAIC,MAAM,CAACC,QAAQ,CAACC,MAAM;IAC7CC,mBAAmB,EAAE1D,MAAM,CAAC2D;EAC9B,CAAC;EAED,IAAIpD,IAAI,KAAKmC,UAAI,CAACQ,KAAK,EAAE;IACvB,MAAM;MAAEU,MAAM,GAAG,CAAC;IAAE,CAAC,GAAG5D,MAAM;IAC9BI,KAAK,CAACyD,QAAQ,GAAG,CAAC,CAAC;IAEnBC,MAAM,CAACC,OAAO,CAACH,MAAM,CAAC,CAACI,GAAG,CAACC,IAAA,IAAuD;MAAA,IAAtD,CAACC,GAAG,EAAE;QAAElB,mBAAmB,EAAEF;MAAkB,CAAC,CAAC,GAAAmB,IAAA;MAC3E7D,KAAK,CAACyD,QAAQ,CAACK,GAAG,CAAC,GAAG;QAAEpB;MAAkB,CAAC;IAC7C,CAAC,CAAC;EACJ;;EAEA;EACA,MAAMqB,UAAU,GAAG;IACjBC,UAAU,EAAE,EAAA7E,qBAAA,GAAAS,MAAM,CAAC0B,YAAY,cAAAnC,qBAAA,uBAAnBA,qBAAA,CAAqB4E,UAAU,KAAI,CAC7C;MAAE5D,IAAI,EAAEmC,UAAI,CAAC2B,KAAK;MAAEC,GAAG,EAAE,CAAC;MAAEC,GAAG,EAAE,CAAC,EAAE;IAAE,CAAC,EACvC;MAAEhE,IAAI,EAAEmC,UAAI,CAAC8B,KAAK;MAAED,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC;MAAEE,OAAO,EAAE;IAAK,CAAC,CAClD;IACDC,QAAQ,GAAAlF,qBAAA,GAAEQ,MAAM,CAAC0B,YAAY,cAAAlC,qBAAA,wBAAAC,qBAAA,GAAnBD,qBAAA,CAAqBmF,KAAK,cAAAlF,qBAAA,uBAA1BA,qBAAA,CAA4BmF,aAAa;IACnDf,QAAQ,EAAE,EAAAnE,qBAAA,GAAAM,MAAM,CAAC0B,YAAY,cAAAhC,qBAAA,uBAAnBA,qBAAA,CAAqBmE,QAAQ,KAAI;EAC7C,CAAC;;EAED;EACA,MAAMJ,MAAM,GAAG;IACboB,cAAc,EAAEpE,SAAS,CAACqE,IAAI,IAAIC,qBAAe,CAACxE,IAAI;EACxD,CAAC;;EAED;EACA,MAAM;IAAEyE;EAAc,CAAC,GAAGhF,MAAM;EAChC,IAAIiF,IAAI;EACR,IAAI1E,IAAI,KAAKmC,UAAI,CAACQ,KAAK,IAAI8B,aAAa,EAAE;IACxC,MAAM;MAAEE,WAAW,GAAG,CAAC,CAAC;MAAEC,KAAK,GAAG;IAAG,CAAC,GAAGH,aAAa;IACtDC,IAAI,GAAG;MAAEG,OAAO,EAAE,IAAAC,gBAAO,EAACF,KAAK,EAAE9C,QAAQ,CAAC;MAAEiD,WAAW,EAAEJ,WAAW,CAAC7C,QAAQ;IAAE,CAAC;EAClF;;EAEA;EACA,MAAMkD,aAAa,GAAG,CAACzE,OAAO,GAAG,IAAI0E,oBAAO,CAAC;IAAEC,OAAO,EAAEC;EAAa,CAAC,CAAC,CAACC,GAAG,IAAAC,MAAA,CAAIC,wBAAkB,OAAAD,MAAA,CAAItF,EAAE,CAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;EAErH,IAAI;IAAEwF,kBAAkB;IAAEC,OAAO;IAAEC,UAAU;IAAEC,MAAM,GAAGnF,OAAO,GAAG,CAAC,GAAG,CAAC;IAAEoF,OAAO;IAAEC,KAAK,EAAEC;EAAU,CAAC,GAAG3F,SAAS;EAChHsF,OAAO,GAAGA,OAAO,GAAG,IAAAM,iBAAS,EAACN,OAAO,CAAC,GAAGjF,OAAO,GAAG,IAAAwF,WAAG,EAAC,IAAIpE,IAAI,CAAC,CAAC,CAAC,GAAGtB,SAAS;EAC9E,IAAI2F,QAAQ;EAEZ,IAAIR,OAAO,EAAEQ,QAAQ,GAAG,IAAAtE,gBAAQ,EAAC8D,OAAO,EAAES,QAAQ,CAACP,MAAM,CAAC,EAAE,MAAM,CAAC;EAEnE,IAAIE,KAAK;EACT,IAAInG,MAAM,CAACyG,YAAY,EAAE;IACvB,MAAM;MAAE/E,YAAY,EAAE;QAAEyE,KAAK,EAAEO,WAAW,GAAG,CAAC;MAAE,CAAC,GAAG,CAAC,CAAC;MAAEC,SAAS,EAAErB,WAAW,GAAG,CAAC;IAAE,CAAC,GAAGtF,MAAM;IAC9FmG,KAAK,GAAG;MACN,GAAGO,WAAW;MACdpB,WAAW;MACXzB,QAAQ,EAAEC,MAAM,CAAC8C,WAAW,CAACzC,UAAU,CAACN,QAAQ,CAACG,GAAG,CAAC;QAAA,IAAC;UAAE1D,EAAE;UAAE6F,KAAK,EAAE;YAAEU;UAAK,CAAC,GAAG,CAAC;QAAE,CAAC,GAAAnG,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;QAAA,OAAK,CAACJ,EAAE,EAAEuG,IAAI,CAAC;MAAA,EAAC;IACzG,CAAC;EACH;EAEA,IAAIC,KAAK;EACT,IAAI7B,IAAI,EAAE;IACR6B,KAAK,GAAG7B,IAAI,CAACG,OAAO,CAAC2B,IAAI,CACvB;MAAA,IAAC;QAAEzG,EAAE,EAAE,CAAC8C,OAAO,CAAC,GAAG,EAAE;QAAE4D,OAAO;QAAEC;MAAM,CAAC,GAAAvG,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;MAAA,OACzCoF,kBAAkB,IAAImB,KAAK,KAAKC,MAAM,CAACpB,kBAAkB,CAAC,IAAMkB,OAAO,IAAI5G,KAAK,CAACE,EAAE,KAAK8C,OAAQ;IAAA,CACrG,CAAC;IAED,MAAM;MAAE9C,EAAE,EAAE,CAACA,EAAE,CAAC,GAAG;IAAG,CAAC,GAAGwG,KAAK,IAAI,CAAC,CAAC;IACrC,MAAM;MAAEhE;IAAkB,CAAC,GAAG1C,KAAK,CAACyD,QAAQ,CAACvD,EAAE,CAAC,IAAI,CAAC,CAAC;IACtD,IAAIwC,iBAAiB,EAAE1C,KAAK,CAAC0C,iBAAiB,GAAGA,iBAAiB;EACpE;EAEA,IAAIqE,MAAM,GAAG;IACXL,KAAK,EAAEA,KAAK,IAAIvB,aAAa,CAACuB,KAAK;IACnCnF,QAAQ,EAAEoE,OAAO,GACb,CAACA,OAAO,EAAEQ,QAAQ,CAAC,GACnBhB,aAAa,CAAC5D,QAAQ,IAAI,IAAAyF,gBAAQ,EAAC,IAAIlF,IAAI,CAAC,CAAC,EAAE,IAAIA,IAAI,CAACqD,aAAa,CAAC5D,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC0F,IAAI,GAAG,CAAC,CAAC,GAC7F,CAAC,IAAInF,IAAI,CAACqD,aAAa,CAAC5D,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,IAAIO,IAAI,CAACqD,aAAa,CAAC5D,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAC1E,EAAE;IACNwC,UAAU,EAAE+B,OAAO,GACf,IAAAoB,0BAAY,EAAC;MAAExB,kBAAkB;MAAE3B,UAAU;MAAE+B,OAAO;MAAEqB,MAAM,GAAA5H,KAAA,GAAEsF,IAAI,cAAAtF,KAAA,uBAAJA,KAAA,CAAMyF;IAAQ,CAAC,CAAC,GAChFtE,OAAO,GACP,CAAC,IAAA0G,wBAAW,EAACrD,UAAU,CAACC,UAAU,CAAC,CAAC,GACpC,EAAAxE,qBAAA,GAAA2F,aAAa,CAACpB,UAAU,cAAAvE,qBAAA,uBAAxBA,qBAAA,CAA0BoE,GAAG,CAAEW,KAAK,IAClCA,KAAK,CAACX,GAAG,CAAC;MAAA,IAACiD,KAAK,GAAAvG,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;MAAA,OAAM;QACzB,GAAGuG,KAAK;QACR,IAAIA,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEQ,IAAI,GAAG;UAAEA,IAAI,EAAER,KAAK,CAACQ,IAAI,CAACzD,GAAG,CAAEO,GAAG,IAAMA,GAAG,KAAK,IAAI,GAAG3D,SAAS,GAAG2D,GAAI;QAAE,CAAC,GAAG3D,SAAS;MACnG,CAAC;IAAA,CAAC,CACJ,CAAC,KAAIA,SAAS;IAClB8G,SAAS,EAAE1B,UAAU,IAAII,SAAS,IAAK,CAACtF,OAAO,MAAAjB,MAAA,GAAIsG,KAAK,cAAAtG,MAAA,uBAALA,MAAA,CAAOgH,IAAI,CAAC,IAAItB,aAAa,CAACmC;EACnF,CAAC;;EAED;EACA,MAAMC,IAAI,MAAA/B,MAAA,CAAMgC,QAAQ,CAACpE,QAAQ,CAACqE,QAAQ,QAAAjC,MAAA,CAAKgC,QAAQ,CAACpE,QAAQ,CAACmE,IAAI,CAAE;EACvE,MAAMG,aAAa,GAAG7I,OAAO,CAACC,GAAG,CAAC6I,QAAQ,KAAK,aAAa,IAAIxE,MAAM,CAACyE,aAAa;EACpF,MAAMC,SAAS,GAAG;IAChBC,KAAK,EAAErH,OAAO,MAAA+E,MAAA,CAAM+B,IAAI,uBAAA/B,MAAA,CAAoB3G,OAAO,CAACC,GAAG,CAACiJ,eAAe,8BAA2B;IAClG5B,QAAQ,EAAE1F,OAAO,MAAA+E,MAAA,CAAM+B,IAAI,0BAAA/B,MAAA,CAAuB3G,OAAO,CAACC,GAAG,CAACiJ,eAAe,+BAA4B;IACzGC,OAAO,EAAEvH,OAAO,MAAA+E,MAAA,CAAM+B,IAAI,yBAAA/B,MAAA,CAAsB3G,OAAO,CAACC,GAAG,CAACiJ,eAAe,sCAAmC;IAC9GE,MAAM,EACJxH,OAAO,IAAIiH,aAAa,MAAAlC,MAAA,CACjB+B,IAAI,kBAAA/B,MAAA,CACJ3G,OAAO,CAACC,GAAG,CAACoJ,YAAY,4CAAyC;IAC1EC,OAAO,EACL1H,OAAO,IAAIiH,aAAa,MAAAlC,MAAA,CAAM+B,IAAI,mBAAA/B,MAAA,CAAgB3G,OAAO,CAACC,GAAG,CAACoJ,YAAY;EAC9E,CAAC;EAED,OAAO;IACLtI,MAAM;IACNC,OAAO;IACPuI,YAAY,EAAExI,MAAM,CAACwI,YAAY;IACjC/H,SAAS;IACT,GAAGP,QAAQ;IACXI,EAAE;IACFC,IAAI;IAEJ;IACAkC,QAAQ;IACRJ,QAAQ;IACRC,OAAO;IACPC,MAAM;IACNkG,OAAO,GAAA3I,iBAAA,GAAEE,MAAM,CAAC0I,SAAS,cAAA5I,iBAAA,uBAAhBA,iBAAA,CACLkE,GAAG,CAAE3B,QAAQ,IAAMA,QAAQ,KAAK,IAAI,GAAG,IAAI,GAAGA,QAAS,CAAC,CACzD2B,GAAG,CAAE3B,QAAQ,OAAAuD,MAAA,CAAQvD,QAAQ,OAAAuD,MAAA,CAAI+C,iBAAS,CAACtG,QAAQ,CAAC,CAAE,CAAC;IAE1D;IACAV,QAAQ;IACRiH,IAAI,EAAE,IAAAC,gBAAO,EAAC;MAAE7I,MAAM;MAAEqC,QAAQ;MAAE9B,IAAI;MAAEE;IAAU,CAAC,CAAC;IACpDV,UAAU,EAAEA,UAAU,CAAC+I,MAAM,CAAC,CAAC7B,KAAK,EAAA8B,KAAA,KAA8B;MAAA,IAA5B;QAAE/H,SAAS;QAAE,GAAGgI;MAAM,CAAC,GAAAD,KAAA;MAC3D9B,KAAK,CAACjG,SAAS,CAAC,GAAGgI,KAAK;MACxB,OAAO/B,KAAK;IACd,CAAC,EAAE,CAAC,CAAC,CAAC;IACNgB,SAAS;IACT7H,KAAK;IACL+D,UAAU;IACVV,MAAM;IACNwF,WAAW,EAAE,IAAAC,8BAAc,EAAClJ,MAAM,EAAEI,KAAK,CAACE,EAAE,CAAC;IAC7C6F,KAAK;IACL3F,OAAO;IACPyE,IAAI;IACJ;IACAsB,QAAQ,EAAE,CAACvH,OAAO,IAAIyB,SAAS,CAAC0I,YAAY,GAAGC,IAAI,CAACC,KAAK,CAAC5I,SAAS,CAAC0I,YAAY,CAAC,GAAGvI,SAAS;IAC7F0I,KAAK,EAAE1I,SAAS;IAChBuG,MAAM;IACNoC,IAAI,EAAE3I,SAAS;IACfsH,KAAK,EAAE;MACLsB,IAAI,EAAE/I,SAAS,CAAC+I,IAAI,GAAG/I,SAAS,CAAC+I,IAAI,CAACC,KAAK,CAAC,GAAG,CAAC,GAAGhJ,SAAS,CAACyH,KAAK,GAAG,IAAAwB,0BAAY,EAACjJ,SAAS,CAACyH,KAAK,CAAC,GAAGtH,SAAS;MAC9G+I,IAAI,EAAE,CAAC,CAAClJ,SAAS,CAACyH;IACpB,CAAC;IACDvD,KAAK,EAAE/D,SAAS;IAChByH,MAAM,EAAEzH;EACV,CAAC;AACH,CAAC;AAACgJ,OAAA,CAAAxK,gBAAA,GAAAA,gBAAA"}
1
+ {"version":3,"file":"consolidateStore.js","names":["_dataSources","require","_locale","_fetchCurrency","_getAccommodationType","_getClub","_getLocale","_getMetaRates","_getPerformance","_getTags","_prepareRoom","_toOccupation","_Core","_process","_process$env","IS_JEST","process","env","JEST_WORKER_ID","consolidateStore","_config$accomodation","_config$accomodation2","_config$accomodation3","_config$accomodation4","_config$accomodation5","_config$accomodation6","_tags","_storageFinder$occupa","_promo","_config$languages","components","config","cookies","instance","el","hotel","hotelId","id","type","session","urlParams","arguments","length","undefined","miraiId","isRates","some","component","assistant","accomodation","maxDays","maxNights","rangeMaxDays","nightsForDeal","rangeMinDays","prices","showPrices","pricesWithTaxes","pricesLegend","calendar","TAXES","includes","TAX_DEFAULT","to","dateFormat","dateCalc","Date","format","CALENDAR_FORMAT","language","country","locale","getLocale","currency","TYPE","HOTEL","fetchCurrency","DEFAULT_CURRENCY","accommodationType","getAccommodationType","lodgingDenomination","features","CHAIN","idtokenprovider","idHotel","url","home","window","location","origin","warningAvailability","minRoomsEngineNotification","hotels","variants","Object","entries","map","_ref","key","occupation","dataSource","ADULT","min","age","CHILD","fulfill","maxRooms","rooms","maxOccupation","commissionCode","hsri","TYPE_COMMISSION","chainSelector","tags","placeHolder","trees","options","getTags","placeholder","storageFinder","Storage","adapter","LocalAdapter","get","concat","FINDER_STORAGE_KEY","chainSelectorValue","checkin","clientCode","nights","parties","promo","promoCode","parseDate","UTC","checkout","parseInt","showPromoNav","configPromo","promoText","fromEntries","code","place","find","isHotel","value","Number","finder","dateDiff","days","toOccupation","places","prepareRoom","ages","promocode","host","document","protocol","isDevelopment","NODE_ENV","IS_PLAYWRIGHT","forwarder","rates","SERVICE_BOOKING","booking","signup","SERVICE_USER","profile","cookieBanner","locales","languages","COUNTRIES","club","getClub","reduce","_ref2","props","performance","getPerformance","checkoutForm","JSON","parse","deals","lisa","cart","split","getMetaRates","meta","exports"],"sources":["../../src/helpers/consolidateStore.js"],"sourcesContent":["import { LocalAdapter, Storage } from '@mirai/data-sources';\nimport { COUNTRIES, dateCalc, dateDiff, dateFormat, DEFAULT_CURRENCY, parseDate, UTC } from '@mirai/locale';\n\nimport { fetchCurrency } from './fetchCurrency';\nimport { getAccommodationType } from './getAccommodationType';\nimport { getClub } from './getClub';\nimport { getLocale } from './getLocale';\nimport { getMetaRates } from './getMetaRates';\nimport { getPerformance } from './getPerformance';\nimport { getTags } from './getTags';\nimport { prepareRoom } from './prepareRoom';\nimport { toOccupation } from './toOccupation';\nimport { CALENDAR_FORMAT, FINDER_STORAGE_KEY, TAX_DEFAULT, TAXES, TYPE, TYPE_COMMISSION } from '../Core.constants';\n\nconst IS_JEST = !!process?.env?.JEST_WORKER_ID;\n\n/* eslint-disable no-unused-vars */\nexport const consolidateStore = async ({\n components = [],\n config = {},\n cookies = {},\n instance: { el, hotel: hotelId, id, type, ...instance } = {},\n session,\n urlParams = {},\n} = {}) => {\n const { miraiId } = urlParams;\n const isRates = components.some(({ component } = {}) => component === 'rates');\n\n // -- assistant ------------------------------------------------------------------------------------------------------\n const { assistant = {} } = config.accomodation || {};\n\n // -- calendar -------------------------------------------------------------------------------------------------------\n const {\n maxDays = 365,\n maxNights: rangeMaxDays = 31,\n nightsForDeal: rangeMinDays,\n prices: showPrices = false,\n pricesWithTaxes: pricesLegend,\n } = config.accomodation?.calendar || {};\n const calendar = {\n rangeMaxDays,\n rangeMinDays,\n pricesLegend: TAXES.includes(pricesLegend) ? pricesLegend : showPrices ? TAX_DEFAULT : undefined,\n showPrices,\n to: !IS_JEST ? dateFormat(dateCalc(new Date(), maxDays, 'days'), { format: CALENDAR_FORMAT }) : undefined,\n };\n\n // -- language, country & locale -------------------------------------------------------------------------------------\n const { language, country, locale } = getLocale(instance, urlParams);\n\n // -- currency -------------------------------------------------------------------------------------------------------\n const currency =\n urlParams.currency ||\n instance.currency ||\n (type === TYPE.HOTEL && !IS_JEST ? await fetchCurrency(id) : DEFAULT_CURRENCY);\n\n // -- hotel ----------------------------------------------------------------------------------------------------------\n const hotel = {\n accommodationType: getAccommodationType(config.lodgingDenomination, hotelId),\n features: config.accomodation?.features || {},\n id: type === TYPE.CHAIN ? urlParams.idtokenprovider || urlParams.idHotel || hotelId : id,\n url: urlParams.home || window.location.origin,\n warningAvailability: config.minRoomsEngineNotification,\n };\n\n if (type === TYPE.CHAIN) {\n const { hotels = {} } = config;\n hotel.variants = {};\n\n Object.entries(hotels).map(([key, { lodgingDenomination: accommodationType }]) => {\n hotel.variants[key] = { accommodationType };\n });\n }\n\n // -- occupation -----------------------------------------------------------------------------------------------------\n const occupation = {\n dataSource: config.accomodation?.occupation || [\n { type: TYPE.ADULT, min: 1, age: [18] },\n { type: TYPE.CHILD, age: [0, 17], fulfill: true },\n ],\n maxRooms: config.accomodation?.rooms?.maxOccupation,\n variants: config.accomodation?.variants || [],\n };\n\n // -- origin ---------------------------------------------------------------------------------------------------------\n const origin = {\n commissionCode: urlParams.hsri || TYPE_COMMISSION[type],\n };\n\n // -- tags -----------------------------------------------------------------------------------------------------------\n const { chainSelector } = config;\n let tags;\n if (type === TYPE.CHAIN && chainSelector) {\n const { placeHolder = {}, trees = [] } = chainSelector;\n tags = { options: getTags(trees, language), placeholder: placeHolder[language] };\n }\n\n // -- finder ---------------------------------------------------------------------------------------------------------\n const storageFinder = !isRates ? new Storage({ adapter: LocalAdapter }).get(`${FINDER_STORAGE_KEY}:${id}`) || {} : {};\n\n let { chainSelectorValue, checkin, clientCode, nights = isRates ? 1 : 0, parties, promo: promoCode } = urlParams;\n checkin = checkin ? parseDate(checkin) : isRates ? UTC(new Date()) : undefined;\n let checkout;\n\n if (checkin) checkout = dateCalc(checkin, parseInt(nights), 'days');\n\n let promo;\n if (config.showPromoNav) {\n const { accomodation: { promo: configPromo = {} } = {}, promoText: placeholder = {} } = config;\n promo = {\n ...configPromo,\n placeholder,\n variants: Object.fromEntries(occupation.variants.map(({ id, promo: { code } = {} } = {}) => [id, code])),\n };\n }\n\n let place;\n if (tags) {\n place = tags.options.find(\n ({ id: [idHotel] = [], isHotel, value } = {}) =>\n (chainSelectorValue && value === Number(chainSelectorValue)) || (isHotel && hotel.id === idHotel),\n );\n\n const { id: [id] = [] } = place || {};\n const { accommodationType } = hotel.variants[id] || {};\n if (accommodationType) hotel.accommodationType = accommodationType;\n }\n\n let finder = {\n place: place || storageFinder.place,\n calendar: checkin\n ? [checkin, checkout]\n : storageFinder.calendar && dateDiff(new Date(), new Date(storageFinder.calendar[0])).days > -1\n ? [new Date(storageFinder.calendar[0]), new Date(storageFinder.calendar[1])]\n : [],\n occupation: parties\n ? toOccupation({ chainSelectorValue, occupation, parties, places: tags?.options })\n : isRates\n ? [prepareRoom(occupation.dataSource)]\n : storageFinder.occupation?.map((rooms) =>\n rooms.map((value = {}) => ({\n ...value,\n ...(value?.ages ? { ages: value.ages.map((age) => (age === null ? undefined : age)) } : undefined),\n })),\n ) || undefined,\n promocode: clientCode || promoCode || (!isRates && promo?.code) || storageFinder.promocode,\n };\n\n // -- forwarder ------------------------------------------------------------------------------------------------------\n const host = `${document.location.protocol}//${document.location.host}`;\n const isDevelopment = process.env.NODE_ENV === 'development' || window.IS_PLAYWRIGHT;\n const forwarder = {\n rates: miraiId ? `${host}/step1-rates` : `${process.env.SERVICE_BOOKING}/miraiFrontDispatcher.htm`,\n checkout: miraiId ? `${host}/step2-checkout` : `${process.env.SERVICE_BOOKING}/forwarder_client_form.htm`,\n booking: miraiId ? `${host}/step3-booking` : `${process.env.SERVICE_BOOKING}/forwarder_manage_reservation.htm`,\n signup:\n miraiId || isDevelopment\n ? `${host}/signup`\n : `${process.env.SERVICE_USER}/club/v1/forwarder/registration_process`,\n profile:\n miraiId || isDevelopment ? `${host}/profile` : `${process.env.SERVICE_USER}/club/v1/forwarder/members_area`,\n };\n\n return {\n config,\n cookies,\n cookieBanner: config.cookieBanner,\n urlParams,\n ...instance,\n id,\n type,\n\n // region\n currency,\n language,\n country,\n locale,\n locales: config.languages\n ?.map((language) => (language === 'no' ? 'nb' : language))\n .map((language) => `${language}-${COUNTRIES[language]}`),\n\n // entities,\n assistant,\n calendar,\n club: getClub({ config, language, type, urlParams }),\n components: components.reduce((value, { component, ...props }) => {\n value[component] = props;\n return value;\n }, {}),\n forwarder,\n hotel,\n occupation,\n origin,\n performance: getPerformance(config, hotel.id),\n promo,\n session,\n tags,\n // -- components\n checkout: !IS_JEST && urlParams.checkoutForm ? JSON.parse(urlParams.checkoutForm) : undefined,\n deals: undefined,\n finder,\n lisa: undefined,\n rates: {\n cart: urlParams.cart ? urlParams.cart.split(',') : urlParams.rates ? getMetaRates(urlParams.rates) : undefined,\n meta: !!urlParams.rates,\n },\n rooms: undefined,\n signup: undefined,\n };\n};\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.342",
3
+ "version": "0.4.343",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",