@mirai/core 0.4.437 → 0.4.439
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/Core.constants.js +1 -0
- package/build/Core.constants.js.map +1 -1
- package/build/Core.js +9 -3
- package/build/Core.js.map +1 -1
- package/build/components/Chat/Chat.js +1 -1
- package/build/components/Chat/Chat.js.map +1 -1
- package/build/components/Chat/components/Aura/Aura.js +10 -4
- package/build/components/Chat/components/Aura/Aura.js.map +1 -1
- package/build/components/Chat/helpers/auraHelpers.js +22 -12
- package/build/components/Chat/helpers/auraHelpers.js.map +1 -1
- package/package.json +1 -1
package/build/Core.constants.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Core.constants.js","names":["ACCOMMODATION_TYPE","exports","DEFAULT","ROOM","APARTMENT","PITCH","ACCOMMODATION","VILLA","AUTH_TYPE","MIRAI","PESTANA","SENATOR","CALENDAR_FORMAT","COMPONENTS","RATES","CHECKOUT","BOOKING","COOKIE","CART","PESTANA_OLD","VALUES","ERROR","NOT_AVAILABLE","PARAMETER_ERROR","UNKNOWN","EVENT","CORE_READY","CORE_EVENTS_READY","TYPE","CHAIN","HOTEL","GUEST","ADULT","CHILD","TYPE_COMMISSION","FINDER_STORAGE_KEY","MIN_STAY_TYPE","CHECK_IN","STAY","PERFORMANCE","ANALYTICS","GOOGLE_ADS","GTM","FACEBOOK","THE_HOTEL_NETWORK","AFFILIRED","BING","COMPARE","REDIRECT_PATH","SENTRY_EXCLUDED_HOTELS","TAX_DEFAULT","TAX_FREE","TAX_PARTIAL","TAXES","TAXES_TYPE","ALL_EXCLUDED","ALL_INCLUDED","FEES_INCLUDED","FEES_EXCLUDED","FEES_INCLUDED_TAXES_EXCLUDED","TAXES_INCLUDED","TAXES_EXCLUDED","TAXES_INCLUDED_FEES_EXCLUDED","TRACKING","adwordsTracking","affiliredTracking","analyticsTracking","bingTracking","compareTracking","facebookTracking","gtmTracking","miraiTracking","thnTracking","VALIDATE_ERROR","PRICE_CHANGED","NOT_ENOUGH_ROOMS","NOT_ENOUGH_ROOMS_FOR_OFFER","NO_SELECTED_ROOMS","EXTRA_CHANGED","URL_GENERIC"],"sources":["../src/Core.constants.js"],"sourcesContent":["const ACCOMMODATION_TYPE = {\n DEFAULT: 0,\n ROOM: 1,\n APARTMENT: 2,\n PITCH: 3,\n ACCOMMODATION: 4,\n VILLA: 5,\n};\n\nconst AUTH_TYPE = {\n MIRAI: 1,\n PESTANA: 3,\n SENATOR: 2,\n};\n\nconst CALENDAR_FORMAT = 'DD/MM/YYYY';\n\nconst COMPONENTS = {\n RATES: 'rates',\n CHECKOUT: 'checkout',\n BOOKING: 'booking',\n};\n\nconst COOKIE = {\n CART: 'CART_COOKIE',\n PESTANA_OLD: '_jwt',\n PESTANA: 'pestana-login-token',\n VALUES: 'BOOKING_VALUES',\n};\n\nconst ERROR = {\n NOT_AVAILABLE: 4,\n PARAMETER_ERROR: 3,\n UNKNOWN: 1,\n};\n\nconst EVENT = {\n CORE_READY: 'core:ready',\n CORE_EVENTS_READY: 'core:events:ready',\n};\n\nconst TYPE = {\n CHAIN: 'chain',\n HOTEL: 'hotel',\n GUEST: 1,\n ADULT: 2,\n CHILD: 3,\n};\n\nconst TYPE_COMMISSION = {\n [TYPE.HOTEL]: '02040',\n [TYPE.CHAIN]: '02080',\n};\n\nconst FINDER_STORAGE_KEY = 'MIRAI:FINDER';\n\nconst MIN_STAY_TYPE = {\n CHECK_IN: 1,\n STAY: 2,\n};\n\nconst PERFORMANCE = {\n ANALYTICS: 1,\n GOOGLE_ADS: 2,\n GTM: 3,\n MIRAI: 4,\n FACEBOOK: 5,\n THE_HOTEL_NETWORK: 6,\n AFFILIRED: 7,\n BING: 8,\n COMPARE: 9,\n};\n\nconst REDIRECT_PATH = 'miraiFrontDispatcher.htm';\n\nconst SENTRY_EXCLUDED_HOTELS = [\n '100379008', // Monalisa\n];\n\nconst TAX_DEFAULT = 1;\n\nconst TAX_FREE = 2;\n\nconst TAX_PARTIAL = 3;\n\nconst TAXES = [TAX_DEFAULT, TAX_FREE, TAX_PARTIAL];\n\nconst TAXES_TYPE = {\n ALL_EXCLUDED: 1,\n ALL_INCLUDED: 2,\n FEES_INCLUDED: 3,\n FEES_EXCLUDED: 4,\n FEES_INCLUDED_TAXES_EXCLUDED: 5,\n TAXES_INCLUDED: 6,\n TAXES_EXCLUDED: 7,\n TAXES_INCLUDED_FEES_EXCLUDED: 8,\n};\n\nconst TRACKING = {\n adwordsTracking: PERFORMANCE.GOOGLE_ADS,\n affiliredTracking: PERFORMANCE.AFFILIRED,\n analyticsTracking: PERFORMANCE.ANALYTICS,\n bingTracking: PERFORMANCE.BING,\n compareTracking: PERFORMANCE.COMPARE,\n facebookTracking: PERFORMANCE.FACEBOOK,\n gtmTracking: PERFORMANCE.GTM,\n miraiTracking: PERFORMANCE.MIRAI,\n thnTracking: PERFORMANCE.THE_HOTEL_NETWORK,\n};\n\nconst VALIDATE_ERROR = {\n PRICE_CHANGED: 1,\n NOT_ENOUGH_ROOMS: 2,\n NOT_ENOUGH_ROOMS_FOR_OFFER: 3,\n NO_SELECTED_ROOMS: 4,\n EXTRA_CHANGED: 5,\n URL_GENERIC: 6,\n};\n\nexport {\n ACCOMMODATION_TYPE,\n AUTH_TYPE,\n CALENDAR_FORMAT,\n COMPONENTS,\n COOKIE,\n ERROR,\n EVENT,\n FINDER_STORAGE_KEY,\n MIN_STAY_TYPE,\n PERFORMANCE,\n REDIRECT_PATH,\n SENTRY_EXCLUDED_HOTELS,\n TAX_DEFAULT,\n TAXES_TYPE,\n TAXES,\n TRACKING,\n TYPE_COMMISSION,\n TYPE,\n VALIDATE_ERROR,\n};\n"],"mappings":";;;;;;AAAA,MAAMA,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,GAAG;EACzBE,OAAO,EAAE,CAAC;EACVC,IAAI,EAAE,CAAC;EACPC,SAAS,EAAE,CAAC;EACZC,KAAK,EAAE,CAAC;EACRC,aAAa,EAAE,CAAC;EAChBC,KAAK,EAAE;AACT,CAAC;AAED,MAAMC,SAAS,GAAAP,OAAA,CAAAO,SAAA,GAAG;EAChBC,KAAK,EAAE,CAAC;EACRC,OAAO,EAAE,CAAC;EACVC,OAAO,EAAE;AACX,CAAC;AAED,MAAMC,eAAe,GAAAX,OAAA,CAAAW,eAAA,GAAG,YAAY;AAEpC,MAAMC,UAAU,GAAAZ,OAAA,CAAAY,UAAA,GAAG;EACjBC,KAAK,EAAE,OAAO;EACdC,QAAQ,EAAE,UAAU;EACpBC,OAAO,EAAE;AACX,CAAC;AAED,MAAMC,MAAM,
|
|
1
|
+
{"version":3,"file":"Core.constants.js","names":["ACCOMMODATION_TYPE","exports","DEFAULT","ROOM","APARTMENT","PITCH","ACCOMMODATION","VILLA","AUTH_TYPE","MIRAI","PESTANA","SENATOR","CALENDAR_FORMAT","COMPONENTS","FINDER","RATES","CHECKOUT","BOOKING","COOKIE","CART","PESTANA_OLD","VALUES","ERROR","NOT_AVAILABLE","PARAMETER_ERROR","UNKNOWN","EVENT","CORE_READY","CORE_EVENTS_READY","TYPE","CHAIN","HOTEL","GUEST","ADULT","CHILD","TYPE_COMMISSION","FINDER_STORAGE_KEY","MIN_STAY_TYPE","CHECK_IN","STAY","PERFORMANCE","ANALYTICS","GOOGLE_ADS","GTM","FACEBOOK","THE_HOTEL_NETWORK","AFFILIRED","BING","COMPARE","REDIRECT_PATH","SENTRY_EXCLUDED_HOTELS","TAX_DEFAULT","TAX_FREE","TAX_PARTIAL","TAXES","TAXES_TYPE","ALL_EXCLUDED","ALL_INCLUDED","FEES_INCLUDED","FEES_EXCLUDED","FEES_INCLUDED_TAXES_EXCLUDED","TAXES_INCLUDED","TAXES_EXCLUDED","TAXES_INCLUDED_FEES_EXCLUDED","TRACKING","adwordsTracking","affiliredTracking","analyticsTracking","bingTracking","compareTracking","facebookTracking","gtmTracking","miraiTracking","thnTracking","VALIDATE_ERROR","PRICE_CHANGED","NOT_ENOUGH_ROOMS","NOT_ENOUGH_ROOMS_FOR_OFFER","NO_SELECTED_ROOMS","EXTRA_CHANGED","URL_GENERIC"],"sources":["../src/Core.constants.js"],"sourcesContent":["const ACCOMMODATION_TYPE = {\n DEFAULT: 0,\n ROOM: 1,\n APARTMENT: 2,\n PITCH: 3,\n ACCOMMODATION: 4,\n VILLA: 5,\n};\n\nconst AUTH_TYPE = {\n MIRAI: 1,\n PESTANA: 3,\n SENATOR: 2,\n};\n\nconst CALENDAR_FORMAT = 'DD/MM/YYYY';\n\nconst COMPONENTS = {\n FINDER: 'finder',\n RATES: 'rates',\n CHECKOUT: 'checkout',\n BOOKING: 'booking',\n};\n\nconst COOKIE = {\n CART: 'CART_COOKIE',\n PESTANA_OLD: '_jwt',\n PESTANA: 'pestana-login-token',\n VALUES: 'BOOKING_VALUES',\n};\n\nconst ERROR = {\n NOT_AVAILABLE: 4,\n PARAMETER_ERROR: 3,\n UNKNOWN: 1,\n};\n\nconst EVENT = {\n CORE_READY: 'core:ready',\n CORE_EVENTS_READY: 'core:events:ready',\n};\n\nconst TYPE = {\n CHAIN: 'chain',\n HOTEL: 'hotel',\n GUEST: 1,\n ADULT: 2,\n CHILD: 3,\n};\n\nconst TYPE_COMMISSION = {\n [TYPE.HOTEL]: '02040',\n [TYPE.CHAIN]: '02080',\n};\n\nconst FINDER_STORAGE_KEY = 'MIRAI:FINDER';\n\nconst MIN_STAY_TYPE = {\n CHECK_IN: 1,\n STAY: 2,\n};\n\nconst PERFORMANCE = {\n ANALYTICS: 1,\n GOOGLE_ADS: 2,\n GTM: 3,\n MIRAI: 4,\n FACEBOOK: 5,\n THE_HOTEL_NETWORK: 6,\n AFFILIRED: 7,\n BING: 8,\n COMPARE: 9,\n};\n\nconst REDIRECT_PATH = 'miraiFrontDispatcher.htm';\n\nconst SENTRY_EXCLUDED_HOTELS = [\n '100379008', // Monalisa\n];\n\nconst TAX_DEFAULT = 1;\n\nconst TAX_FREE = 2;\n\nconst TAX_PARTIAL = 3;\n\nconst TAXES = [TAX_DEFAULT, TAX_FREE, TAX_PARTIAL];\n\nconst TAXES_TYPE = {\n ALL_EXCLUDED: 1,\n ALL_INCLUDED: 2,\n FEES_INCLUDED: 3,\n FEES_EXCLUDED: 4,\n FEES_INCLUDED_TAXES_EXCLUDED: 5,\n TAXES_INCLUDED: 6,\n TAXES_EXCLUDED: 7,\n TAXES_INCLUDED_FEES_EXCLUDED: 8,\n};\n\nconst TRACKING = {\n adwordsTracking: PERFORMANCE.GOOGLE_ADS,\n affiliredTracking: PERFORMANCE.AFFILIRED,\n analyticsTracking: PERFORMANCE.ANALYTICS,\n bingTracking: PERFORMANCE.BING,\n compareTracking: PERFORMANCE.COMPARE,\n facebookTracking: PERFORMANCE.FACEBOOK,\n gtmTracking: PERFORMANCE.GTM,\n miraiTracking: PERFORMANCE.MIRAI,\n thnTracking: PERFORMANCE.THE_HOTEL_NETWORK,\n};\n\nconst VALIDATE_ERROR = {\n PRICE_CHANGED: 1,\n NOT_ENOUGH_ROOMS: 2,\n NOT_ENOUGH_ROOMS_FOR_OFFER: 3,\n NO_SELECTED_ROOMS: 4,\n EXTRA_CHANGED: 5,\n URL_GENERIC: 6,\n};\n\nexport {\n ACCOMMODATION_TYPE,\n AUTH_TYPE,\n CALENDAR_FORMAT,\n COMPONENTS,\n COOKIE,\n ERROR,\n EVENT,\n FINDER_STORAGE_KEY,\n MIN_STAY_TYPE,\n PERFORMANCE,\n REDIRECT_PATH,\n SENTRY_EXCLUDED_HOTELS,\n TAX_DEFAULT,\n TAXES_TYPE,\n TAXES,\n TRACKING,\n TYPE_COMMISSION,\n TYPE,\n VALIDATE_ERROR,\n};\n"],"mappings":"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","ignoreList":[]}
|
package/build/Core.js
CHANGED
|
@@ -14,7 +14,8 @@ var _reactDom = _interopRequireDefault(require("react-dom"));
|
|
|
14
14
|
var _components = require("./components");
|
|
15
15
|
var _CookieBanner = require("./components/CookieBanner");
|
|
16
16
|
var _helpers = require("./components/helpers");
|
|
17
|
-
var _Core = require("./Core.
|
|
17
|
+
var _Core = require("./Core.constants");
|
|
18
|
+
var _Core2 = require("./Core.Notifications");
|
|
18
19
|
var _helpers2 = require("./helpers");
|
|
19
20
|
const _excluded = ["cookieBanner", "currency", "locale", "skeleton"],
|
|
20
21
|
_excluded2 = ["el", "component"];
|
|
@@ -51,7 +52,12 @@ const Core = _ref => {
|
|
|
51
52
|
const [dictionary, setDictionary] = (0, _react.useState)(!skeleton ? _services.ServiceDictionary.cache(locale) : undefined);
|
|
52
53
|
(0, _react.useEffect)(() => {
|
|
53
54
|
if (skeleton) return;
|
|
54
|
-
|
|
55
|
+
if (!components.some(function () {
|
|
56
|
+
let {
|
|
57
|
+
component
|
|
58
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
59
|
+
return Object.values(_Core.COMPONENTS).includes(component);
|
|
60
|
+
})) _dataSources.Event.publish(_helpers.EVENT.CORE_READY, {
|
|
55
61
|
event: _helpers.EVENT.CORE_READY
|
|
56
62
|
});
|
|
57
63
|
fetchDictionary(locale);
|
|
@@ -109,7 +115,7 @@ const Core = _ref => {
|
|
|
109
115
|
currency,
|
|
110
116
|
dictionary,
|
|
111
117
|
locale
|
|
112
|
-
}, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, !skeleton && cookieBanner && /*#__PURE__*/_react.default.createElement(_CookieBanner.CookieBanner, null), !skeleton && /*#__PURE__*/_react.default.createElement(
|
|
118
|
+
}, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, !skeleton && cookieBanner && /*#__PURE__*/_react.default.createElement(_CookieBanner.CookieBanner, null), !skeleton && /*#__PURE__*/_react.default.createElement(_Core2.Notifications, null), components.filter(function () {
|
|
113
119
|
let {
|
|
114
120
|
desktop,
|
|
115
121
|
mobile
|
package/build/Core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Core.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_reactDom","_components","_CookieBanner","_helpers","_Core","_helpers2","_excluded","_excluded2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","contents","ghosts","Core","_ref","children","components","isMobile","useDevice","_useStore","useStore","cookieBanner","currency","locale","DEFAULT_LOCALE","skeleton","store","dictionary","setDictionary","useState","ServiceDictionary","cache","undefined","useEffect","Event","publish","EVENT","CORE_READY","event","fetchDictionary","subscribe","INTENT_CURRENCY","handleIntentCurrency","INTENT_LOCALE","handleIntentLocale","LOCALE_CHANGED","handleLocaleChanged","unsubscribe","_ref2","_ref3","language","split","themeDirection","_ref4","cached","next","createElement","LocaleProvider","Fragment","CookieBanner","Notifications","desktop","mobile","map","_ref5","el","component","props","index","getGhost","getContents","sanitizeComponent","ReactDOM","createPortal","React","COMPONENTS","dangerousChildren","ghost","process","env","NODE_ENV","exports","propTypes","PropTypes","node","arrayOf","shape","oneOf","any"],"sources":["../src/Core.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { DEFAULT_LOCALE, LocaleProvider } from '@mirai/locale';\nimport { ServiceDictionary } from '@mirai/services';\nimport { useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { COMPONENTS } from './components';\nimport { CookieBanner } from './components/CookieBanner';\nimport { EVENT } from './components/helpers';\nimport { Notifications } from './Core.Notifications';\nimport { getContents, getGhost, sanitizeComponent, themeDirection } from './helpers';\n\nconst contents = {};\nconst ghosts = {};\n\nconst Core = ({ children, components = [] }) => {\n const { isMobile } = useDevice();\n const {\n set,\n value: { cookieBanner, currency, locale = DEFAULT_LOCALE, skeleton = false, ...store },\n } = useStore();\n\n const [dictionary, setDictionary] = useState(!skeleton ? ServiceDictionary.cache(locale) : undefined);\n\n useEffect(() => {\n if (skeleton) return;\n\n Event.publish(EVENT.CORE_READY, { event: EVENT.CORE_READY });\n fetchDictionary(locale);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (skeleton) return;\n\n Event.subscribe(EVENT.INTENT_CURRENCY, handleIntentCurrency);\n Event.subscribe(EVENT.INTENT_LOCALE, handleIntentLocale);\n Event.subscribe(EVENT.LOCALE_CHANGED, handleLocaleChanged);\n\n return () => {\n Event.unsubscribe(EVENT.INTENT_CURRENCY, handleIntentCurrency);\n Event.unsubscribe(EVENT.INTENT_LOCALE, handleIntentLocale);\n Event.unsubscribe(EVENT.LOCALE_CHANGED, handleLocaleChanged);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [store]);\n\n const handleIntentCurrency = ({ currency }) => {\n set({ currency });\n };\n\n const handleIntentLocale = async ({ locale }) => {\n const [language] = locale.split('-');\n\n set({ language, locale });\n\n themeDirection(language);\n fetchDictionary(locale);\n };\n\n const handleLocaleChanged = ({ locale, language }) => {\n themeDirection(language);\n fetchDictionary(locale);\n };\n\n const fetchDictionary = async (locale = DEFAULT_LOCALE) => {\n const cached = ServiceDictionary.cache(locale);\n if (cached) setDictionary(cached);\n\n const next = await ServiceDictionary.get(locale, false);\n if (next) setDictionary(next);\n\n return next;\n };\n\n return (\n <LocaleProvider {...{ currency, dictionary, locale }}>\n <>\n {!skeleton && cookieBanner && <CookieBanner />}\n {!skeleton && <Notifications />}\n\n {components\n .filter(\n ({ desktop, mobile } = {}) =>\n (isMobile && (mobile === undefined || mobile === true) && desktop !== true) ||\n (!isMobile && (desktop === undefined || desktop === true) && mobile !== true),\n )\n .map(({ el, component, ...props } = {}, index) => {\n if (!ghosts[index]) ghosts[index] = getGhost(el);\n if (!contents[index]) contents[index] = getContents(el);\n sanitizeComponent(el);\n\n return ReactDOM.createPortal(\n React.createElement(COMPONENTS[component], {\n ...props,\n dangerousChildren: contents[index],\n el,\n ghost: ghosts[index],\n ['data-testid']: process.env.NODE_ENV === 'production' ? component : undefined,\n }),\n el,\n );\n })}\n </>\n {children}\n </LocaleProvider>\n );\n};\n\nCore.propTypes = {\n children: PropTypes.node,\n components: PropTypes.arrayOf(\n PropTypes.shape({\n component: PropTypes.oneOf(Object.keys(COMPONENTS)),\n el: PropTypes.any,\n }),\n ),\n};\n\nexport { Core };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Core.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_reactDom","_components","_CookieBanner","_helpers","_Core","_Core2","_helpers2","_excluded","_excluded2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","_objectWithoutPropertiesLoose","indexOf","propertyIsEnumerable","contents","ghosts","Core","_ref","children","components","isMobile","useDevice","_useStore","useStore","cookieBanner","currency","locale","DEFAULT_LOCALE","skeleton","store","dictionary","setDictionary","useState","ServiceDictionary","cache","undefined","useEffect","some","component","values","STEP_COMPONENTS","includes","Event","publish","EVENT","CORE_READY","event","fetchDictionary","subscribe","INTENT_CURRENCY","handleIntentCurrency","INTENT_LOCALE","handleIntentLocale","LOCALE_CHANGED","handleLocaleChanged","unsubscribe","_ref2","_ref3","language","split","themeDirection","_ref4","cached","next","createElement","LocaleProvider","Fragment","CookieBanner","Notifications","desktop","mobile","map","_ref5","el","props","index","getGhost","getContents","sanitizeComponent","ReactDOM","createPortal","React","COMPONENTS","dangerousChildren","ghost","process","env","NODE_ENV","exports","propTypes","PropTypes","node","arrayOf","shape","oneOf","any"],"sources":["../src/Core.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { DEFAULT_LOCALE, LocaleProvider } from '@mirai/locale';\nimport { ServiceDictionary } from '@mirai/services';\nimport { useDevice } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\nimport ReactDOM from 'react-dom';\n\nimport { COMPONENTS } from './components';\nimport { CookieBanner } from './components/CookieBanner';\nimport { EVENT } from './components/helpers';\nimport { COMPONENTS as STEP_COMPONENTS } from './Core.constants';\nimport { Notifications } from './Core.Notifications';\nimport { getContents, getGhost, sanitizeComponent, themeDirection } from './helpers';\n\nconst contents = {};\nconst ghosts = {};\n\nconst Core = ({ children, components = [] }) => {\n const { isMobile } = useDevice();\n const {\n set,\n value: { cookieBanner, currency, locale = DEFAULT_LOCALE, skeleton = false, ...store },\n } = useStore();\n\n const [dictionary, setDictionary] = useState(!skeleton ? ServiceDictionary.cache(locale) : undefined);\n\n useEffect(() => {\n if (skeleton) return;\n\n if (!components.some(({ component } = {}) => Object.values(STEP_COMPONENTS).includes(component)))\n Event.publish(EVENT.CORE_READY, { event: EVENT.CORE_READY });\n\n fetchDictionary(locale);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (skeleton) return;\n\n Event.subscribe(EVENT.INTENT_CURRENCY, handleIntentCurrency);\n Event.subscribe(EVENT.INTENT_LOCALE, handleIntentLocale);\n Event.subscribe(EVENT.LOCALE_CHANGED, handleLocaleChanged);\n\n return () => {\n Event.unsubscribe(EVENT.INTENT_CURRENCY, handleIntentCurrency);\n Event.unsubscribe(EVENT.INTENT_LOCALE, handleIntentLocale);\n Event.unsubscribe(EVENT.LOCALE_CHANGED, handleLocaleChanged);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [store]);\n\n const handleIntentCurrency = ({ currency }) => {\n set({ currency });\n };\n\n const handleIntentLocale = async ({ locale }) => {\n const [language] = locale.split('-');\n\n set({ language, locale });\n\n themeDirection(language);\n fetchDictionary(locale);\n };\n\n const handleLocaleChanged = ({ locale, language }) => {\n themeDirection(language);\n fetchDictionary(locale);\n };\n\n const fetchDictionary = async (locale = DEFAULT_LOCALE) => {\n const cached = ServiceDictionary.cache(locale);\n if (cached) setDictionary(cached);\n\n const next = await ServiceDictionary.get(locale, false);\n if (next) setDictionary(next);\n\n return next;\n };\n\n return (\n <LocaleProvider {...{ currency, dictionary, locale }}>\n <>\n {!skeleton && cookieBanner && <CookieBanner />}\n {!skeleton && <Notifications />}\n\n {components\n .filter(\n ({ desktop, mobile } = {}) =>\n (isMobile && (mobile === undefined || mobile === true) && desktop !== true) ||\n (!isMobile && (desktop === undefined || desktop === true) && mobile !== true),\n )\n .map(({ el, component, ...props } = {}, index) => {\n if (!ghosts[index]) ghosts[index] = getGhost(el);\n if (!contents[index]) contents[index] = getContents(el);\n sanitizeComponent(el);\n\n return ReactDOM.createPortal(\n React.createElement(COMPONENTS[component], {\n ...props,\n dangerousChildren: contents[index],\n el,\n ghost: ghosts[index],\n ['data-testid']: process.env.NODE_ENV === 'production' ? component : undefined,\n }),\n el,\n );\n })}\n </>\n {children}\n </LocaleProvider>\n );\n};\n\nCore.propTypes = {\n children: PropTypes.node,\n components: PropTypes.arrayOf(\n PropTypes.shape({\n component: PropTypes.oneOf(Object.keys(COMPONENTS)),\n el: PropTypes.any,\n }),\n ),\n};\n\nexport { Core };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -75,7 +75,7 @@ const Chat = _ref => {
|
|
|
75
75
|
shortcutMessage
|
|
76
76
|
};
|
|
77
77
|
if (type === _Core.TYPE.CHAIN && !hotel.id || process.env.NODE_ENV === 'preproduction' && id === '100379008') context.chain = {
|
|
78
|
-
id
|
|
78
|
+
id: process.env.NODE_ENV === 'preproduction' && id === '100379008' ? '500659' : id
|
|
79
79
|
};else context.hotel = hotel;
|
|
80
80
|
const response = await _services.ServiceSynapse.message({
|
|
81
81
|
agents: (0, _helpers.getAgents)(assistant),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chat.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Chat","_Chat2","style","_components","_helpers","_Core","_helpers2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectDestructuringEmpty","_extends","assign","bind","Chat","_ref","others","translate","useLocale","isMobile","useDevice","assistant","calendar","components","currency","hotel","id","locale","occupation","origin","session","skeleton","type","useStore","useEffect","Event","subscribe","EVENT","CHAT_OPEN","handleOpen","unsubscribe","busy","setBusy","useState","messages","setMessages","visible","setVisible","handleInput","input","shortcutMessage","undefined","nextMessages","text","timestamp","Date","getTime","setTimeout","context","TYPE","CHAIN","process","env","NODE_ENV","chain","response","ServiceSynapse","message","agents","getAgents","catch","synapse","audioNotification","DELAY_RESPONSE","publish","METRICS","handleClose","hasAura","navigator","mediaDevices","aura","isReady","every","item","BANNED_COMPONENTS","includes","mira","lisa","entities","createElement","Fragment","Modal","fit","portal","className","styles","container","Header","onClose","onRestart","Welcome","onInput","ScrollView","scrollTo","snap","map","index","Message","key","concat","disabled","Input","onValue","Text","light","tiny","warning","L10N","LABEL_WARNING_RESPONSES","name","DEFAULT_NAME","ButtonDispatcher","onPress","exports"],"sources":["../../../src/components/Chat/Chat.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceSynapse } from '@mirai/services';\nimport { Modal, ScrollView, styles, Text, useDevice } from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport { BANNED_COMPONENTS, DEFAULT_NAME, 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, getAgents } from './helpers';\nimport { TYPE } from '../../Core.constants';\nimport { EVENT } from '../helpers';\n\nconst Chat = ({ ...others }) => {\n const { translate } = useLocale();\n const { isMobile } = useDevice();\n const {\n value: {\n assistant = {},\n calendar,\n components = {},\n currency,\n hotel,\n id,\n locale,\n occupation,\n origin,\n session,\n skeleton = false,\n type,\n } = {},\n } = useStore();\n\n useEffect(() => {\n if (skeleton) return;\n\n Event.subscribe(EVENT.CHAT_OPEN, handleOpen);\n return () => Event.unsubscribe(EVENT.CHAT_OPEN, handleOpen);\n }, [skeleton]);\n\n const [busy, setBusy] = useState(false);\n const [messages, setMessages] = useState([]);\n const [visible, setVisible] = useState(false);\n\n const handleInput = (input, shortcutMessage = false) => {\n const nextMessages = [...messages, { text: input, timestamp: new Date().getTime() }];\n setMessages(nextMessages);\n\n setTimeout(async () => {\n setBusy(true);\n\n const context = { calendar, currency, isMobile, locale, occupation, origin, shortcutMessage };\n if ((type === TYPE.CHAIN && !hotel.id) || (process.env.NODE_ENV === 'preproduction' && id === '100379008'))\n context.chain = { id };\n else context.hotel = hotel;\n\n const response = await ServiceSynapse.message({\n agents: getAgents(assistant),\n context,\n input,\n session,\n }).catch(() => {});\n\n if (response) {\n setMessages([...nextMessages, { synapse: true, ...response }]);\n\n // ! TODO: Handle locale\n // if (response.locale !== locale) Event.publish(EVENT.INTENT_LOCALE, { locale: response.locale });\n audioNotification();\n }\n setBusy(false);\n }, DELAY_RESPONSE);\n };\n\n const handleOpen = () => {\n setVisible(true);\n Event.publish(EVENT.METRICS, { id: 'SARAI:OPEN' });\n };\n\n const handleClose = () => {\n setVisible(false);\n Event.publish(EVENT.METRICS, { id: 'SARAI:CLOSE' });\n };\n\n const hasAura = navigator.mediaDevices && assistant.aura;\n const isReady =\n !skeleton &&\n Object.keys(components).every((item) => !BANNED_COMPONENTS.includes(item)) &&\n (assistant.mira || assistant.lisa || hasAura);\n // ? TODO: Get entities, from where... which strategy?\n const { entities = {} } = messages[messages.length - 1] || {};\n\n return isReady ? (\n <>\n <Modal {...others} fit portal visible={visible} className={styles(style.container, others.className)}>\n <Header onClose={handleClose} onRestart={() => setMessages([])} />\n\n {!messages.length ? (\n <Welcome onInput={handleInput} hasAura={hasAura} />\n ) : (\n <>\n <ScrollView scrollTo={new Date().getTime()} snap={false} className={style.messages}>\n {messages.map((message, index) => (\n <Message key={`message:${index}`} disabled={busy || index < messages.length - 1} {...message} />\n ))}\n {busy && <Message busy synapse />}\n </ScrollView>\n <Input\n disabled={busy}\n entities={entities}\n hasAura={hasAura}\n onValue={handleInput}\n className={style.input}\n />\n </>\n )}\n <Text light tiny className={style.warning}>\n {translate(L10N.LABEL_WARNING_RESPONSES, { name: assistant.name || DEFAULT_NAME })}\n </Text>\n </Modal>\n\n <ButtonDispatcher visible={visible} onPress={handleOpen} />\n </>\n ) : null;\n};\n\nexport { Chat };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAC,uBAAA,CAAAL,OAAA;AAEA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,KAAA,GAAAH,uBAAA,CAAAL,OAAA;AACA,IAAAS,WAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AACA,IAAAW,KAAA,GAAAX,OAAA;AACA,IAAAY,SAAA,GAAAZ,OAAA;AAAmC,SAAAK,wBAAAQ,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAV,uBAAA,YAAAA,CAAAQ,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAAA,SAAAkB,QAAAnB,CAAA,EAAAG,CAAA,QAAAF,CAAA,GAAAe,MAAA,CAAAI,IAAA,CAAApB,CAAA,OAAAgB,MAAA,CAAAK,qBAAA,QAAAf,CAAA,GAAAU,MAAA,CAAAK,qBAAA,CAAArB,CAAA,GAAAG,CAAA,KAAAG,CAAA,GAAAA,CAAA,CAAAgB,MAAA,WAAAnB,CAAA,WAAAa,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAG,CAAA,EAAAoB,UAAA,OAAAtB,CAAA,CAAAuB,IAAA,CAAAC,KAAA,CAAAxB,CAAA,EAAAK,CAAA,YAAAL,CAAA;AAAA,SAAAyB,cAAA1B,CAAA,aAAAG,CAAA,MAAAA,CAAA,GAAAwB,SAAA,CAAAC,MAAA,EAAAzB,CAAA,UAAAF,CAAA,WAAA0B,SAAA,CAAAxB,CAAA,IAAAwB,SAAA,CAAAxB,CAAA,QAAAA,CAAA,OAAAgB,OAAA,CAAAH,MAAA,CAAAf,CAAA,OAAA4B,OAAA,WAAA1B,CAAA,IAAA2B,eAAA,CAAA9B,CAAA,EAAAG,CAAA,EAAAF,CAAA,CAAAE,CAAA,SAAAa,MAAA,CAAAe,yBAAA,GAAAf,MAAA,CAAAgB,gBAAA,CAAAhC,CAAA,EAAAgB,MAAA,CAAAe,yBAAA,CAAA9B,CAAA,KAAAkB,OAAA,CAAAH,MAAA,CAAAf,CAAA,GAAA4B,OAAA,WAAA1B,CAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAjB,CAAA,EAAAG,CAAA,EAAAa,MAAA,CAAAE,wBAAA,CAAAjB,CAAA,EAAAE,CAAA,iBAAAH,CAAA;AAAA,SAAA8B,gBAAA9B,CAAA,EAAAG,CAAA,EAAAF,CAAA,YAAAE,CAAA,GAAA8B,cAAA,CAAA9B,CAAA,MAAAH,CAAA,GAAAgB,MAAA,CAAAC,cAAA,CAAAjB,CAAA,EAAAG,CAAA,IAAA+B,KAAA,EAAAjC,CAAA,EAAAsB,UAAA,MAAAY,YAAA,MAAAC,QAAA,UAAApC,CAAA,CAAAG,CAAA,IAAAF,CAAA,EAAAD,CAAA;AAAA,SAAAiC,eAAAhC,CAAA,QAAAM,CAAA,GAAA8B,YAAA,CAAApC,CAAA,uCAAAM,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAA8B,aAAApC,CAAA,EAAAE,CAAA,2BAAAF,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAD,CAAA,GAAAC,CAAA,CAAAqC,MAAA,CAAAC,WAAA,kBAAAvC,CAAA,QAAAO,CAAA,GAAAP,CAAA,CAAAe,IAAA,CAAAd,CAAA,EAAAE,CAAA,uCAAAI,CAAA,SAAAA,CAAA,YAAAiC,SAAA,yEAAArC,CAAA,GAAAsC,MAAA,GAAAC,MAAA,EAAAzC,CAAA;AAAA,SAAA0C,0BAAA1C,CAAA,gBAAAA,CAAA,YAAAuC,SAAA,yBAAAvC,CAAA;AAAA,SAAA2C,SAAA,WAAAA,QAAA,GAAA5B,MAAA,CAAA6B,MAAA,GAAA7B,MAAA,CAAA6B,MAAA,CAAAC,IAAA,eAAA1C,CAAA,aAAAJ,CAAA,MAAAA,CAAA,GAAA2B,SAAA,CAAAC,MAAA,EAAA5B,CAAA,UAAAC,CAAA,GAAA0B,SAAA,CAAA3B,CAAA,YAAAG,CAAA,IAAAF,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAd,CAAA,EAAAE,CAAA,MAAAC,CAAA,CAAAD,CAAA,IAAAF,CAAA,CAAAE,CAAA,aAAAC,CAAA,KAAAwC,QAAA,CAAAnB,KAAA,OAAAE,SAAA;AAEnC,MAAMoB,IAAI,GAAGC,IAAA,IAAmB;EAAA,IAAbC,MAAM,GAAAL,QAAA,MAAAD,yBAAA,CAAAK,IAAA,GAAAA,IAAA;EACvB,MAAM;IAAEE;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACjC,MAAM;IAAEC;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAChC,MAAM;IACJnB,KAAK,EAAE;MACLoB,SAAS,GAAG,CAAC,CAAC;MACdC,QAAQ;MACRC,UAAU,GAAG,CAAC,CAAC;MACfC,QAAQ;MACRC,KAAK;MACLC,EAAE;MACFC,MAAM;MACNC,UAAU;MACVC,MAAM;MACNC,OAAO;MACPC,QAAQ,GAAG,KAAK;MAChBC;IACF,CAAC,GAAG,CAAC;EACP,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAEd,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAIH,QAAQ,EAAE;IAEdI,kBAAK,CAACC,SAAS,CAACC,eAAK,CAACC,SAAS,EAAEC,UAAU,CAAC;IAC5C,OAAO,MAAMJ,kBAAK,CAACK,WAAW,CAACH,eAAK,CAACC,SAAS,EAAEC,UAAU,CAAC;EAC7D,CAAC,EAAE,CAACR,QAAQ,CAAC,CAAC;EAEd,MAAM,CAACU,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACvC,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAF,eAAQ,EAAC,EAAE,CAAC;EAC5C,MAAM,CAACG,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAJ,eAAQ,EAAC,KAAK,CAAC;EAE7C,MAAMK,WAAW,GAAG,SAAAA,CAACC,KAAK,EAA8B;IAAA,IAA5BC,eAAe,GAAAxD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAyD,SAAA,GAAAzD,SAAA,MAAG,KAAK;IACjD,MAAM0D,YAAY,GAAG,CAAC,GAAGR,QAAQ,EAAE;MAAES,IAAI,EAAEJ,KAAK;MAAEK,SAAS,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC;IAAE,CAAC,CAAC;IACpFX,WAAW,CAACO,YAAY,CAAC;IAEzBK,UAAU,CAAC,YAAY;MACrBf,OAAO,CAAC,IAAI,CAAC;MAEb,MAAMgB,OAAO,GAAG;QAAEpC,QAAQ;QAAEE,QAAQ;QAAEL,QAAQ;QAAEQ,MAAM;QAAEC,UAAU;QAAEC,MAAM;QAAEqB;MAAgB,CAAC;MAC7F,IAAKlB,IAAI,KAAK2B,UAAI,CAACC,KAAK,IAAI,CAACnC,KAAK,CAACC,EAAE,IAAMmC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,eAAe,IAAIrC,EAAE,KAAK,WAAY,EACxGgC,OAAO,CAACM,KAAK,GAAG;QAAEtC;MAAG,CAAC,CAAC,KACpBgC,OAAO,CAACjC,KAAK,GAAGA,KAAK;MAE1B,MAAMwC,QAAQ,GAAG,MAAMC,wBAAc,CAACC,OAAO,CAAC;QAC5CC,MAAM,EAAE,IAAAC,kBAAS,EAAChD,SAAS,CAAC;QAC5BqC,OAAO;QACPT,KAAK;QACLnB;MACF,CAAC,CAAC,CAACwC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;MAElB,IAAIL,QAAQ,EAAE;QACZpB,WAAW,CAAC,CAAC,GAAGO,YAAY,EAAA3D,aAAA;UAAI8E,OAAO,EAAE;QAAI,GAAKN,QAAQ,EAAG,CAAC;;QAE9D;QACA;QACA,IAAAO,0BAAiB,EAAC,CAAC;MACrB;MACA9B,OAAO,CAAC,KAAK,CAAC;IAChB,CAAC,EAAE+B,oBAAc,CAAC;EACpB,CAAC;EAED,MAAMlC,UAAU,GAAGA,CAAA,KAAM;IACvBQ,UAAU,CAAC,IAAI,CAAC;IAChBZ,kBAAK,CAACuC,OAAO,CAACrC,eAAK,CAACsC,OAAO,EAAE;MAAEjD,EAAE,EAAE;IAAa,CAAC,CAAC;EACpD,CAAC;EAED,MAAMkD,WAAW,GAAGA,CAAA,KAAM;IACxB7B,UAAU,CAAC,KAAK,CAAC;IACjBZ,kBAAK,CAACuC,OAAO,CAACrC,eAAK,CAACsC,OAAO,EAAE;MAAEjD,EAAE,EAAE;IAAc,CAAC,CAAC;EACrD,CAAC;EAED,MAAMmD,OAAO,GAAGC,SAAS,CAACC,YAAY,IAAI1D,SAAS,CAAC2D,IAAI;EACxD,MAAMC,OAAO,GACX,CAAClD,QAAQ,IACThD,MAAM,CAACI,IAAI,CAACoC,UAAU,CAAC,CAAC2D,KAAK,CAAEC,IAAI,IAAK,CAACC,uBAAiB,CAACC,QAAQ,CAACF,IAAI,CAAC,CAAC,KACzE9D,SAAS,CAACiE,IAAI,IAAIjE,SAAS,CAACkE,IAAI,IAAIV,OAAO,CAAC;EAC/C;EACA,MAAM;IAAEW,QAAQ,GAAG,CAAC;EAAE,CAAC,GAAG5C,QAAQ,CAACA,QAAQ,CAACjD,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;EAE7D,OAAOsF,OAAO,gBACZ3H,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAAnI,MAAA,CAAAmB,OAAA,CAAAiH,QAAA,qBACEpI,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAACpI,GAAA,CAAAsI,KAAK,EAAAhF,QAAA,KAAKK,MAAM;IAAE4E,GAAG;IAACC,MAAM;IAAC/C,OAAO,EAAEA,OAAQ;IAACgD,SAAS,EAAE,IAAAC,UAAM,EAACrI,KAAK,CAACsI,SAAS,EAAEhF,MAAM,CAAC8E,SAAS;EAAE,iBACnGxI,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAC9H,WAAA,CAAAsI,MAAM;IAACC,OAAO,EAAEtB,WAAY;IAACuB,SAAS,EAAEA,CAAA,KAAMtD,WAAW,CAAC,EAAE;EAAE,CAAE,CAAC,EAEjE,CAACD,QAAQ,CAACjD,MAAM,gBACfrC,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAC9H,WAAA,CAAAyI,OAAO;IAACC,OAAO,EAAErD,WAAY;IAAC6B,OAAO,EAAEA;EAAQ,CAAE,CAAC,gBAEnDvH,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAAnI,MAAA,CAAAmB,OAAA,CAAAiH,QAAA,qBACEpI,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAACpI,GAAA,CAAAiJ,UAAU;IAACC,QAAQ,EAAE,IAAIhD,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC,CAAE;IAACgD,IAAI,EAAE,KAAM;IAACV,SAAS,EAAEpI,KAAK,CAACkF;EAAS,GAChFA,QAAQ,CAAC6D,GAAG,CAAC,CAACtC,OAAO,EAAEuC,KAAK,kBAC3BpJ,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAC9H,WAAA,CAAAgJ,OAAO,EAAAhG,QAAA;IAACiG,GAAG,aAAAC,MAAA,CAAaH,KAAK,CAAG;IAACI,QAAQ,EAAErE,IAAI,IAAIiE,KAAK,GAAG9D,QAAQ,CAACjD,MAAM,GAAG;EAAE,GAAKwE,OAAO,CAAG,CAChG,CAAC,EACD1B,IAAI,iBAAInF,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAC9H,WAAA,CAAAgJ,OAAO;IAAClE,IAAI;IAAC8B,OAAO;EAAA,CAAE,CACtB,CAAC,eACbjH,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAC9H,WAAA,CAAAoJ,KAAK;IACJD,QAAQ,EAAErE,IAAK;IACf+C,QAAQ,EAAEA,QAAS;IACnBX,OAAO,EAAEA,OAAQ;IACjBmC,OAAO,EAAEhE,WAAY;IACrB8C,SAAS,EAAEpI,KAAK,CAACuF;EAAM,CACxB,CACD,CACH,eACD3F,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAACpI,GAAA,CAAA4J,IAAI;IAACC,KAAK;IAACC,IAAI;IAACrB,SAAS,EAAEpI,KAAK,CAAC0J;EAAQ,GACvCnG,SAAS,CAACoG,WAAI,CAACC,uBAAuB,EAAE;IAAEC,IAAI,EAAElG,SAAS,CAACkG,IAAI,IAAIC;EAAa,CAAC,CAC7E,CACD,CAAC,eAERlK,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAC9H,WAAA,CAAA8J,gBAAgB;IAAC3E,OAAO,EAAEA,OAAQ;IAAC4E,OAAO,EAAEnF;EAAW,CAAE,CAC1D,CAAC,GACD,IAAI;AACV,CAAC;AAACoF,OAAA,CAAA7G,IAAA,GAAAA,IAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Chat.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Chat","_Chat2","style","_components","_helpers","_Core","_helpers2","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectDestructuringEmpty","_extends","assign","bind","Chat","_ref","others","translate","useLocale","isMobile","useDevice","assistant","calendar","components","currency","hotel","id","locale","occupation","origin","session","skeleton","type","useStore","useEffect","Event","subscribe","EVENT","CHAT_OPEN","handleOpen","unsubscribe","busy","setBusy","useState","messages","setMessages","visible","setVisible","handleInput","input","shortcutMessage","undefined","nextMessages","text","timestamp","Date","getTime","setTimeout","context","TYPE","CHAIN","process","env","NODE_ENV","chain","response","ServiceSynapse","message","agents","getAgents","catch","synapse","audioNotification","DELAY_RESPONSE","publish","METRICS","handleClose","hasAura","navigator","mediaDevices","aura","isReady","every","item","BANNED_COMPONENTS","includes","mira","lisa","entities","createElement","Fragment","Modal","fit","portal","className","styles","container","Header","onClose","onRestart","Welcome","onInput","ScrollView","scrollTo","snap","map","index","Message","key","concat","disabled","Input","onValue","Text","light","tiny","warning","L10N","LABEL_WARNING_RESPONSES","name","DEFAULT_NAME","ButtonDispatcher","onPress","exports"],"sources":["../../../src/components/Chat/Chat.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceSynapse } from '@mirai/services';\nimport { Modal, ScrollView, styles, Text, useDevice } from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport { BANNED_COMPONENTS, DEFAULT_NAME, 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, getAgents } from './helpers';\nimport { TYPE } from '../../Core.constants';\nimport { EVENT } from '../helpers';\n\nconst Chat = ({ ...others }) => {\n const { translate } = useLocale();\n const { isMobile } = useDevice();\n const {\n value: {\n assistant = {},\n calendar,\n components = {},\n currency,\n hotel,\n id,\n locale,\n occupation,\n origin,\n session,\n skeleton = false,\n type,\n } = {},\n } = useStore();\n\n useEffect(() => {\n if (skeleton) return;\n\n Event.subscribe(EVENT.CHAT_OPEN, handleOpen);\n return () => Event.unsubscribe(EVENT.CHAT_OPEN, handleOpen);\n }, [skeleton]);\n\n const [busy, setBusy] = useState(false);\n const [messages, setMessages] = useState([]);\n const [visible, setVisible] = useState(false);\n\n const handleInput = (input, shortcutMessage = false) => {\n const nextMessages = [...messages, { text: input, timestamp: new Date().getTime() }];\n setMessages(nextMessages);\n\n setTimeout(async () => {\n setBusy(true);\n\n const context = { calendar, currency, isMobile, locale, occupation, origin, shortcutMessage };\n if ((type === TYPE.CHAIN && !hotel.id) || (process.env.NODE_ENV === 'preproduction' && id === '100379008'))\n context.chain = { id: process.env.NODE_ENV === 'preproduction' && id === '100379008' ? '500659' : id };\n else context.hotel = hotel;\n\n const response = await ServiceSynapse.message({\n agents: getAgents(assistant),\n context,\n input,\n session,\n }).catch(() => {});\n\n if (response) {\n setMessages([...nextMessages, { synapse: true, ...response }]);\n\n // ! TODO: Handle locale\n // if (response.locale !== locale) Event.publish(EVENT.INTENT_LOCALE, { locale: response.locale });\n audioNotification();\n }\n setBusy(false);\n }, DELAY_RESPONSE);\n };\n\n const handleOpen = () => {\n setVisible(true);\n Event.publish(EVENT.METRICS, { id: 'SARAI:OPEN' });\n };\n\n const handleClose = () => {\n setVisible(false);\n Event.publish(EVENT.METRICS, { id: 'SARAI:CLOSE' });\n };\n\n const hasAura = navigator.mediaDevices && assistant.aura;\n const isReady =\n !skeleton &&\n Object.keys(components).every((item) => !BANNED_COMPONENTS.includes(item)) &&\n (assistant.mira || assistant.lisa || hasAura);\n // ? TODO: Get entities, from where... which strategy?\n const { entities = {} } = messages[messages.length - 1] || {};\n\n return isReady ? (\n <>\n <Modal {...others} fit portal visible={visible} className={styles(style.container, others.className)}>\n <Header onClose={handleClose} onRestart={() => setMessages([])} />\n\n {!messages.length ? (\n <Welcome onInput={handleInput} hasAura={hasAura} />\n ) : (\n <>\n <ScrollView scrollTo={new Date().getTime()} snap={false} className={style.messages}>\n {messages.map((message, index) => (\n <Message key={`message:${index}`} disabled={busy || index < messages.length - 1} {...message} />\n ))}\n {busy && <Message busy synapse />}\n </ScrollView>\n <Input\n disabled={busy}\n entities={entities}\n hasAura={hasAura}\n onValue={handleInput}\n className={style.input}\n />\n </>\n )}\n <Text light tiny className={style.warning}>\n {translate(L10N.LABEL_WARNING_RESPONSES, { name: assistant.name || DEFAULT_NAME })}\n </Text>\n </Modal>\n\n <ButtonDispatcher visible={visible} onPress={handleOpen} />\n </>\n ) : null;\n};\n\nexport { Chat };\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAC,uBAAA,CAAAL,OAAA;AAEA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,KAAA,GAAAH,uBAAA,CAAAL,OAAA;AACA,IAAAS,WAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AACA,IAAAW,KAAA,GAAAX,OAAA;AACA,IAAAY,SAAA,GAAAZ,OAAA;AAAmC,SAAAK,wBAAAQ,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAV,uBAAA,YAAAA,CAAAQ,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAAA,SAAAkB,QAAAnB,CAAA,EAAAG,CAAA,QAAAF,CAAA,GAAAe,MAAA,CAAAI,IAAA,CAAApB,CAAA,OAAAgB,MAAA,CAAAK,qBAAA,QAAAf,CAAA,GAAAU,MAAA,CAAAK,qBAAA,CAAArB,CAAA,GAAAG,CAAA,KAAAG,CAAA,GAAAA,CAAA,CAAAgB,MAAA,WAAAnB,CAAA,WAAAa,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAG,CAAA,EAAAoB,UAAA,OAAAtB,CAAA,CAAAuB,IAAA,CAAAC,KAAA,CAAAxB,CAAA,EAAAK,CAAA,YAAAL,CAAA;AAAA,SAAAyB,cAAA1B,CAAA,aAAAG,CAAA,MAAAA,CAAA,GAAAwB,SAAA,CAAAC,MAAA,EAAAzB,CAAA,UAAAF,CAAA,WAAA0B,SAAA,CAAAxB,CAAA,IAAAwB,SAAA,CAAAxB,CAAA,QAAAA,CAAA,OAAAgB,OAAA,CAAAH,MAAA,CAAAf,CAAA,OAAA4B,OAAA,WAAA1B,CAAA,IAAA2B,eAAA,CAAA9B,CAAA,EAAAG,CAAA,EAAAF,CAAA,CAAAE,CAAA,SAAAa,MAAA,CAAAe,yBAAA,GAAAf,MAAA,CAAAgB,gBAAA,CAAAhC,CAAA,EAAAgB,MAAA,CAAAe,yBAAA,CAAA9B,CAAA,KAAAkB,OAAA,CAAAH,MAAA,CAAAf,CAAA,GAAA4B,OAAA,WAAA1B,CAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAjB,CAAA,EAAAG,CAAA,EAAAa,MAAA,CAAAE,wBAAA,CAAAjB,CAAA,EAAAE,CAAA,iBAAAH,CAAA;AAAA,SAAA8B,gBAAA9B,CAAA,EAAAG,CAAA,EAAAF,CAAA,YAAAE,CAAA,GAAA8B,cAAA,CAAA9B,CAAA,MAAAH,CAAA,GAAAgB,MAAA,CAAAC,cAAA,CAAAjB,CAAA,EAAAG,CAAA,IAAA+B,KAAA,EAAAjC,CAAA,EAAAsB,UAAA,MAAAY,YAAA,MAAAC,QAAA,UAAApC,CAAA,CAAAG,CAAA,IAAAF,CAAA,EAAAD,CAAA;AAAA,SAAAiC,eAAAhC,CAAA,QAAAM,CAAA,GAAA8B,YAAA,CAAApC,CAAA,uCAAAM,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAA8B,aAAApC,CAAA,EAAAE,CAAA,2BAAAF,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAD,CAAA,GAAAC,CAAA,CAAAqC,MAAA,CAAAC,WAAA,kBAAAvC,CAAA,QAAAO,CAAA,GAAAP,CAAA,CAAAe,IAAA,CAAAd,CAAA,EAAAE,CAAA,uCAAAI,CAAA,SAAAA,CAAA,YAAAiC,SAAA,yEAAArC,CAAA,GAAAsC,MAAA,GAAAC,MAAA,EAAAzC,CAAA;AAAA,SAAA0C,0BAAA1C,CAAA,gBAAAA,CAAA,YAAAuC,SAAA,yBAAAvC,CAAA;AAAA,SAAA2C,SAAA,WAAAA,QAAA,GAAA5B,MAAA,CAAA6B,MAAA,GAAA7B,MAAA,CAAA6B,MAAA,CAAAC,IAAA,eAAA1C,CAAA,aAAAJ,CAAA,MAAAA,CAAA,GAAA2B,SAAA,CAAAC,MAAA,EAAA5B,CAAA,UAAAC,CAAA,GAAA0B,SAAA,CAAA3B,CAAA,YAAAG,CAAA,IAAAF,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAd,CAAA,EAAAE,CAAA,MAAAC,CAAA,CAAAD,CAAA,IAAAF,CAAA,CAAAE,CAAA,aAAAC,CAAA,KAAAwC,QAAA,CAAAnB,KAAA,OAAAE,SAAA;AAEnC,MAAMoB,IAAI,GAAGC,IAAA,IAAmB;EAAA,IAAbC,MAAM,GAAAL,QAAA,MAAAD,yBAAA,CAAAK,IAAA,GAAAA,IAAA;EACvB,MAAM;IAAEE;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACjC,MAAM;IAAEC;EAAS,CAAC,GAAG,IAAAC,aAAS,EAAC,CAAC;EAChC,MAAM;IACJnB,KAAK,EAAE;MACLoB,SAAS,GAAG,CAAC,CAAC;MACdC,QAAQ;MACRC,UAAU,GAAG,CAAC,CAAC;MACfC,QAAQ;MACRC,KAAK;MACLC,EAAE;MACFC,MAAM;MACNC,UAAU;MACVC,MAAM;MACNC,OAAO;MACPC,QAAQ,GAAG,KAAK;MAChBC;IACF,CAAC,GAAG,CAAC;EACP,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAEd,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAIH,QAAQ,EAAE;IAEdI,kBAAK,CAACC,SAAS,CAACC,eAAK,CAACC,SAAS,EAAEC,UAAU,CAAC;IAC5C,OAAO,MAAMJ,kBAAK,CAACK,WAAW,CAACH,eAAK,CAACC,SAAS,EAAEC,UAAU,CAAC;EAC7D,CAAC,EAAE,CAACR,QAAQ,CAAC,CAAC;EAEd,MAAM,CAACU,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACvC,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAF,eAAQ,EAAC,EAAE,CAAC;EAC5C,MAAM,CAACG,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAJ,eAAQ,EAAC,KAAK,CAAC;EAE7C,MAAMK,WAAW,GAAG,SAAAA,CAACC,KAAK,EAA8B;IAAA,IAA5BC,eAAe,GAAAxD,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAyD,SAAA,GAAAzD,SAAA,MAAG,KAAK;IACjD,MAAM0D,YAAY,GAAG,CAAC,GAAGR,QAAQ,EAAE;MAAES,IAAI,EAAEJ,KAAK;MAAEK,SAAS,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC;IAAE,CAAC,CAAC;IACpFX,WAAW,CAACO,YAAY,CAAC;IAEzBK,UAAU,CAAC,YAAY;MACrBf,OAAO,CAAC,IAAI,CAAC;MAEb,MAAMgB,OAAO,GAAG;QAAEpC,QAAQ;QAAEE,QAAQ;QAAEL,QAAQ;QAAEQ,MAAM;QAAEC,UAAU;QAAEC,MAAM;QAAEqB;MAAgB,CAAC;MAC7F,IAAKlB,IAAI,KAAK2B,UAAI,CAACC,KAAK,IAAI,CAACnC,KAAK,CAACC,EAAE,IAAMmC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,eAAe,IAAIrC,EAAE,KAAK,WAAY,EACxGgC,OAAO,CAACM,KAAK,GAAG;QAAEtC,EAAE,EAAEmC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,eAAe,IAAIrC,EAAE,KAAK,WAAW,GAAG,QAAQ,GAAGA;MAAG,CAAC,CAAC,KACpGgC,OAAO,CAACjC,KAAK,GAAGA,KAAK;MAE1B,MAAMwC,QAAQ,GAAG,MAAMC,wBAAc,CAACC,OAAO,CAAC;QAC5CC,MAAM,EAAE,IAAAC,kBAAS,EAAChD,SAAS,CAAC;QAC5BqC,OAAO;QACPT,KAAK;QACLnB;MACF,CAAC,CAAC,CAACwC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;MAElB,IAAIL,QAAQ,EAAE;QACZpB,WAAW,CAAC,CAAC,GAAGO,YAAY,EAAA3D,aAAA;UAAI8E,OAAO,EAAE;QAAI,GAAKN,QAAQ,EAAG,CAAC;;QAE9D;QACA;QACA,IAAAO,0BAAiB,EAAC,CAAC;MACrB;MACA9B,OAAO,CAAC,KAAK,CAAC;IAChB,CAAC,EAAE+B,oBAAc,CAAC;EACpB,CAAC;EAED,MAAMlC,UAAU,GAAGA,CAAA,KAAM;IACvBQ,UAAU,CAAC,IAAI,CAAC;IAChBZ,kBAAK,CAACuC,OAAO,CAACrC,eAAK,CAACsC,OAAO,EAAE;MAAEjD,EAAE,EAAE;IAAa,CAAC,CAAC;EACpD,CAAC;EAED,MAAMkD,WAAW,GAAGA,CAAA,KAAM;IACxB7B,UAAU,CAAC,KAAK,CAAC;IACjBZ,kBAAK,CAACuC,OAAO,CAACrC,eAAK,CAACsC,OAAO,EAAE;MAAEjD,EAAE,EAAE;IAAc,CAAC,CAAC;EACrD,CAAC;EAED,MAAMmD,OAAO,GAAGC,SAAS,CAACC,YAAY,IAAI1D,SAAS,CAAC2D,IAAI;EACxD,MAAMC,OAAO,GACX,CAAClD,QAAQ,IACThD,MAAM,CAACI,IAAI,CAACoC,UAAU,CAAC,CAAC2D,KAAK,CAAEC,IAAI,IAAK,CAACC,uBAAiB,CAACC,QAAQ,CAACF,IAAI,CAAC,CAAC,KACzE9D,SAAS,CAACiE,IAAI,IAAIjE,SAAS,CAACkE,IAAI,IAAIV,OAAO,CAAC;EAC/C;EACA,MAAM;IAAEW,QAAQ,GAAG,CAAC;EAAE,CAAC,GAAG5C,QAAQ,CAACA,QAAQ,CAACjD,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;EAE7D,OAAOsF,OAAO,gBACZ3H,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAAnI,MAAA,CAAAmB,OAAA,CAAAiH,QAAA,qBACEpI,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAACpI,GAAA,CAAAsI,KAAK,EAAAhF,QAAA,KAAKK,MAAM;IAAE4E,GAAG;IAACC,MAAM;IAAC/C,OAAO,EAAEA,OAAQ;IAACgD,SAAS,EAAE,IAAAC,UAAM,EAACrI,KAAK,CAACsI,SAAS,EAAEhF,MAAM,CAAC8E,SAAS;EAAE,iBACnGxI,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAC9H,WAAA,CAAAsI,MAAM;IAACC,OAAO,EAAEtB,WAAY;IAACuB,SAAS,EAAEA,CAAA,KAAMtD,WAAW,CAAC,EAAE;EAAE,CAAE,CAAC,EAEjE,CAACD,QAAQ,CAACjD,MAAM,gBACfrC,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAC9H,WAAA,CAAAyI,OAAO;IAACC,OAAO,EAAErD,WAAY;IAAC6B,OAAO,EAAEA;EAAQ,CAAE,CAAC,gBAEnDvH,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAAnI,MAAA,CAAAmB,OAAA,CAAAiH,QAAA,qBACEpI,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAACpI,GAAA,CAAAiJ,UAAU;IAACC,QAAQ,EAAE,IAAIhD,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC,CAAE;IAACgD,IAAI,EAAE,KAAM;IAACV,SAAS,EAAEpI,KAAK,CAACkF;EAAS,GAChFA,QAAQ,CAAC6D,GAAG,CAAC,CAACtC,OAAO,EAAEuC,KAAK,kBAC3BpJ,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAC9H,WAAA,CAAAgJ,OAAO,EAAAhG,QAAA;IAACiG,GAAG,aAAAC,MAAA,CAAaH,KAAK,CAAG;IAACI,QAAQ,EAAErE,IAAI,IAAIiE,KAAK,GAAG9D,QAAQ,CAACjD,MAAM,GAAG;EAAE,GAAKwE,OAAO,CAAG,CAChG,CAAC,EACD1B,IAAI,iBAAInF,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAC9H,WAAA,CAAAgJ,OAAO;IAAClE,IAAI;IAAC8B,OAAO;EAAA,CAAE,CACtB,CAAC,eACbjH,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAC9H,WAAA,CAAAoJ,KAAK;IACJD,QAAQ,EAAErE,IAAK;IACf+C,QAAQ,EAAEA,QAAS;IACnBX,OAAO,EAAEA,OAAQ;IACjBmC,OAAO,EAAEhE,WAAY;IACrB8C,SAAS,EAAEpI,KAAK,CAACuF;EAAM,CACxB,CACD,CACH,eACD3F,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAACpI,GAAA,CAAA4J,IAAI;IAACC,KAAK;IAACC,IAAI;IAACrB,SAAS,EAAEpI,KAAK,CAAC0J;EAAQ,GACvCnG,SAAS,CAACoG,WAAI,CAACC,uBAAuB,EAAE;IAAEC,IAAI,EAAElG,SAAS,CAACkG,IAAI,IAAIC;EAAa,CAAC,CAC7E,CACD,CAAC,eAERlK,MAAA,CAAAmB,OAAA,CAAAgH,aAAA,CAAC9H,WAAA,CAAA8J,gBAAgB;IAAC3E,OAAO,EAAEA,OAAQ;IAAC4E,OAAO,EAAEnF;EAAW,CAAE,CAC1D,CAAC,GACD,IAAI;AACV,CAAC;AAACoF,OAAA,CAAA7G,IAAA,GAAAA,IAAA","ignoreList":[]}
|
|
@@ -9,6 +9,7 @@ var _dataSources = require("@mirai/data-sources");
|
|
|
9
9
|
var _ui = require("@mirai/ui");
|
|
10
10
|
var _react2 = _interopRequireWildcard(require("react"));
|
|
11
11
|
var style = _interopRequireWildcard(require("./Aura.module.css"));
|
|
12
|
+
var _Core = require("../../../../Core.constants");
|
|
12
13
|
var _helpers = require("../../../helpers");
|
|
13
14
|
var _auraHelpers = require("../../helpers/auraHelpers");
|
|
14
15
|
var _AiHalo = require("../AiHalo");
|
|
@@ -23,7 +24,9 @@ const Aura = () => {
|
|
|
23
24
|
value: {
|
|
24
25
|
assistant = {},
|
|
25
26
|
hotel = {},
|
|
26
|
-
locale
|
|
27
|
+
locale,
|
|
28
|
+
type,
|
|
29
|
+
id
|
|
27
30
|
}
|
|
28
31
|
} = (0, _dataSources.useStore)();
|
|
29
32
|
(0, _react2.useEffect)(() => {
|
|
@@ -31,16 +34,19 @@ const Aura = () => {
|
|
|
31
34
|
return (0, _auraHelpers.subscribeToMessageSent)(handler);
|
|
32
35
|
}, [busyConversation, conversation]);
|
|
33
36
|
(0, _react2.useEffect)(() => {
|
|
37
|
+
if (type === _Core.TYPE.CHAIN && !hotel.id || process.env.NODE_ENV === 'preproduction' && id === '100379008') return;
|
|
34
38
|
const callback = async () => {
|
|
35
39
|
const hotelContext = await (0, _auraHelpers.loadHotelContext)(hotel.id);
|
|
36
40
|
setContext(hotelContext);
|
|
37
41
|
};
|
|
38
42
|
callback();
|
|
39
|
-
}, [hotel.id]);
|
|
43
|
+
}, [hotel.id, type, id]);
|
|
40
44
|
const handlePressConversation = () => {
|
|
41
|
-
|
|
45
|
+
const isChain = type === _Core.TYPE.CHAIN && !hotel.id || process.env.NODE_ENV === 'preproduction' && id === '100379008';
|
|
46
|
+
const chainId = process.env.NODE_ENV === 'preproduction' && id === '100379008' ? '500659' : isChain ? id : null;
|
|
47
|
+
(0, _auraHelpers.handleConversation)(busyConversation, isConnecting, context, conversation, assistant, locale, setIsConnecting, setBusyConversation, isChain, chainId);
|
|
42
48
|
};
|
|
43
|
-
if (!context) return null;
|
|
49
|
+
if (!context && !(type === _Core.TYPE.CHAIN && !hotel.id || process.env.NODE_ENV === 'preproduction' && id === '100379008')) return null;
|
|
44
50
|
const getIcon = () => {
|
|
45
51
|
if (busyConversation && isHovering) return _helpers.ICON.HANG_UP;
|
|
46
52
|
if (busyConversation) return _helpers.ICON.RECORD;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Aura.js","names":["_react","require","_dataSources","_ui","_react2","_interopRequireWildcard","style","_helpers","_auraHelpers","_AiHalo","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Aura","busyConversation","setBusyConversation","useState","isConnecting","setIsConnecting","context","setContext","isHovering","setIsHovering","conversation","useConversation","value","assistant","hotel","locale","useStore","useEffect","handler","createMessageSentHandler","subscribeToMessageSent","callback","hotelContext","loadHotelContext","
|
|
1
|
+
{"version":3,"file":"Aura.js","names":["_react","require","_dataSources","_ui","_react2","_interopRequireWildcard","style","_Core","_helpers","_auraHelpers","_AiHalo","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Aura","busyConversation","setBusyConversation","useState","isConnecting","setIsConnecting","context","setContext","isHovering","setIsHovering","conversation","useConversation","value","assistant","hotel","locale","type","id","useStore","useEffect","handler","createMessageSentHandler","subscribeToMessageSent","TYPE","CHAIN","process","env","NODE_ENV","callback","hotelContext","loadHotelContext","handlePressConversation","isChain","chainId","handleConversation","getIcon","ICON","HANG_UP","RECORD","AGENT","createElement","AiHalo","active","sensitivity","onMouseEnter","onMouseLeave","Button","busy","squared","top","onPress","className","styles","button","hangup","Icon","exports"],"sources":["../../../../../src/components/Chat/components/Aura/Aura.jsx"],"sourcesContent":["import { useConversation } from '@elevenlabs/react';\nimport { useStore } from '@mirai/data-sources';\nimport { Button, Icon, styles } from '@mirai/ui';\nimport React, { useEffect, useState } from 'react';\n\nimport * as style from './Aura.module.css';\nimport { TYPE } from '../../../../Core.constants';\nimport { ICON } from '../../../helpers';\nimport {\n createMessageSentHandler,\n subscribeToMessageSent,\n loadHotelContext,\n handleConversation,\n} from '../../helpers/auraHelpers';\nimport { AiHalo } from '../AiHalo';\n\nconst Aura = () => {\n const [busyConversation, setBusyConversation] = useState(false);\n const [isConnecting, setIsConnecting] = useState(false);\n const [context, setContext] = useState(null);\n const [isHovering, setIsHovering] = useState(false);\n const conversation = useConversation();\n const {\n value: { assistant = {}, hotel = {}, locale, type, id },\n } = useStore();\n\n useEffect(() => {\n const handler = createMessageSentHandler(busyConversation, conversation, setBusyConversation);\n return subscribeToMessageSent(handler);\n }, [busyConversation, conversation]);\n\n useEffect(() => {\n if ((type === TYPE.CHAIN && !hotel.id) || (process.env.NODE_ENV === 'preproduction' && id === '100379008')) return;\n\n const callback = async () => {\n const hotelContext = await loadHotelContext(hotel.id);\n setContext(hotelContext);\n };\n callback();\n }, [hotel.id, type, id]);\n\n const handlePressConversation = () => {\n const isChain =\n (type === TYPE.CHAIN && !hotel.id) || (process.env.NODE_ENV === 'preproduction' && id === '100379008');\n const chainId = process.env.NODE_ENV === 'preproduction' && id === '100379008' ? '500659' : isChain ? id : null;\n\n handleConversation(\n busyConversation,\n isConnecting,\n context,\n conversation,\n assistant,\n locale,\n setIsConnecting,\n setBusyConversation,\n isChain,\n chainId,\n );\n };\n\n if (\n !context &&\n !((type === TYPE.CHAIN && !hotel.id) || (process.env.NODE_ENV === 'preproduction' && id === '100379008'))\n )\n return null;\n\n const getIcon = () => {\n if (busyConversation && isHovering) return ICON.HANG_UP;\n if (busyConversation) return ICON.RECORD;\n return ICON.AGENT;\n };\n\n return (\n <AiHalo\n active={busyConversation}\n conversation={conversation}\n sensitivity={1.2}\n onMouseEnter={() => setIsHovering(true)}\n onMouseLeave={() => setIsHovering(false)}\n >\n <Button\n busy={isConnecting}\n squared\n top\n onPress={handlePressConversation}\n className={styles(style.button, busyConversation && isHovering && style.hangup)}\n >\n <Icon value={getIcon()} />\n </Button>\n </AiHalo>\n );\n};\n\nexport { Aura };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -40,10 +40,12 @@ const loadHotelContext = async hotelId => {
|
|
|
40
40
|
}
|
|
41
41
|
};
|
|
42
42
|
exports.loadHotelContext = loadHotelContext;
|
|
43
|
-
const getElevenLabsSignedUrl = async ()
|
|
43
|
+
const getElevenLabsSignedUrl = async function () {
|
|
44
|
+
let chain = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
44
45
|
try {
|
|
46
|
+
const endpoint = chain ? '/elevenlabs/signed-url?chain=true' : '/elevenlabs/signed-url';
|
|
45
47
|
const response = await (0, _dataSources.request)({
|
|
46
|
-
endpoint
|
|
48
|
+
endpoint,
|
|
47
49
|
hostname: process.env.SERVICE_SYNAPSE,
|
|
48
50
|
method: 'GET'
|
|
49
51
|
});
|
|
@@ -72,22 +74,28 @@ const openUrlClientTool = _ref => {
|
|
|
72
74
|
}
|
|
73
75
|
};
|
|
74
76
|
exports.openUrlClientTool = openUrlClientTool;
|
|
75
|
-
const createSessionConfig = (signedUrl, assistant, context, locale, callbacks)
|
|
77
|
+
const createSessionConfig = function (signedUrl, assistant, context, locale, callbacks) {
|
|
78
|
+
let chain = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;
|
|
79
|
+
let chainId = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
|
|
76
80
|
const {
|
|
77
81
|
onConnect,
|
|
78
82
|
onDisconnect,
|
|
79
83
|
onError,
|
|
80
84
|
onMessage
|
|
81
85
|
} = callbacks;
|
|
86
|
+
const dynamicVariables = chain ? {
|
|
87
|
+
assistant_name: assistant.name || 'Sarai',
|
|
88
|
+
chain_id: chainId || ''
|
|
89
|
+
} : {
|
|
90
|
+
assistant_name: assistant.name || 'Sarai',
|
|
91
|
+
hotelId: context.hotelId,
|
|
92
|
+
hotel_info: JSON.stringify(context)
|
|
93
|
+
};
|
|
82
94
|
return {
|
|
83
95
|
clientTools: {
|
|
84
96
|
open_url: openUrlClientTool
|
|
85
97
|
},
|
|
86
|
-
dynamicVariables
|
|
87
|
-
assistant_name: assistant.name || 'Sarai',
|
|
88
|
-
hotelId: context.hotelId,
|
|
89
|
-
hotel_info: JSON.stringify(context)
|
|
90
|
-
},
|
|
98
|
+
dynamicVariables,
|
|
91
99
|
overrides: {
|
|
92
100
|
agent: {
|
|
93
101
|
language: locale.split('-')[0]
|
|
@@ -107,15 +115,17 @@ const createSessionConfig = (signedUrl, assistant, context, locale, callbacks) =
|
|
|
107
115
|
};
|
|
108
116
|
};
|
|
109
117
|
exports.createSessionConfig = createSessionConfig;
|
|
110
|
-
const handleConversation = async (busyConversation, isConnecting, context, conversation, assistant, locale, setIsConnecting, setBusyConversation)
|
|
111
|
-
|
|
118
|
+
const handleConversation = async function (busyConversation, isConnecting, context, conversation, assistant, locale, setIsConnecting, setBusyConversation) {
|
|
119
|
+
let chain = arguments.length > 8 && arguments[8] !== undefined ? arguments[8] : false;
|
|
120
|
+
let chainId = arguments.length > 9 && arguments[9] !== undefined ? arguments[9] : null;
|
|
121
|
+
if (!navigator.mediaDevices || !conversation || !context && !chain) return;
|
|
112
122
|
if (!busyConversation) {
|
|
113
123
|
setIsConnecting(true);
|
|
114
124
|
try {
|
|
115
125
|
await navigator.mediaDevices.getUserMedia({
|
|
116
126
|
audio: true
|
|
117
127
|
});
|
|
118
|
-
const signedUrl = await getElevenLabsSignedUrl();
|
|
128
|
+
const signedUrl = await getElevenLabsSignedUrl(chain);
|
|
119
129
|
const sessionConfig = createSessionConfig(signedUrl, assistant, context, locale, {
|
|
120
130
|
onConnect: () => {
|
|
121
131
|
setIsConnecting(false);
|
|
@@ -130,7 +140,7 @@ const handleConversation = async (busyConversation, isConnecting, context, conve
|
|
|
130
140
|
// eslint-disable-next-line no-console
|
|
131
141
|
console.log(message);
|
|
132
142
|
}
|
|
133
|
-
});
|
|
143
|
+
}, chain, chainId);
|
|
134
144
|
await conversation.startSession(sessionConfig);
|
|
135
145
|
} catch (error) {
|
|
136
146
|
setIsConnecting(false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auraHelpers.js","names":["_dataSources","require","_helpers","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","createMessageSentHandler","busyConversation","conversation","setBusyConversation","endSession","exports","subscribeToMessageSent","handler","Event","subscribe","EVENT","SARAI_MESSAGE_SENT","unsubscribe","loadHotelContext","hotelId","hotelInfo","request","endpoint","concat","hostname","process","env","SERVICE_MIRA","method","error","getElevenLabsSignedUrl","response","SERVICE_SYNAPSE","signedUrl","openUrlClientTool","_ref","url","validUrl","URL","startsWith","_unused","window","location","href","createSessionConfig","assistant","context","locale","callbacks","onConnect","onDisconnect","onError","onMessage","clientTools","open_url","dynamicVariables","assistant_name","name","hotel_info","JSON","stringify","overrides","agent","language","split","message","console","log","handleConversation","isConnecting","setIsConnecting","navigator","mediaDevices","getUserMedia","audio","sessionConfig","startSession"],"sources":["../../../../src/components/Chat/helpers/auraHelpers.js"],"sourcesContent":["import { Event, request } from '@mirai/data-sources';\n\nimport { EVENT } from '../../../components/helpers';\n\nexport const createMessageSentHandler = (busyConversation, conversation, setBusyConversation) => {\n return async () => {\n if (busyConversation) {\n await conversation.endSession();\n setBusyConversation(false);\n }\n };\n};\n\nexport const subscribeToMessageSent = (handler) => {\n Event.subscribe(EVENT.SARAI_MESSAGE_SENT, handler);\n return () => Event.unsubscribe(EVENT.SARAI_MESSAGE_SENT, handler);\n};\n\nexport const loadHotelContext = async (hotelId) => {\n try {\n const hotelInfo = await request({\n endpoint: `/context/${hotelId}`,\n hostname: process.env.SERVICE_MIRA,\n method: 'GET',\n });\n\n return { ...(hotelInfo?.value || {}), hotelId };\n } catch (error) {\n return null;\n }\n};\n\nexport const getElevenLabsSignedUrl = async () => {\n try {\n const response = await request({\n endpoint: '/elevenlabs/signed-url',\n hostname: process.env.SERVICE_SYNAPSE,\n method: 'GET',\n });\n return response?.signedUrl || null;\n } catch (error) {\n return null;\n }\n};\n\nexport const openUrlClientTool = ({ url }) => {\n try {\n if (!url) return 'Error: No URL provided';\n\n let validUrl;\n try {\n validUrl = new URL(url.startsWith('http') ? url : `https://${url}`);\n } catch {\n return 'Error: Invalid URL format';\n }\n\n window.location.href = validUrl.href;\n\n return `Successfully opened URL: ${validUrl.href}`;\n } catch (error) {\n return 'Error: Failed to open URL';\n }\n};\n\nexport const createSessionConfig = (signedUrl, assistant, context, locale, callbacks) => {\n const { onConnect, onDisconnect, onError, onMessage } = callbacks;\n\n return {\n clientTools: {\n open_url: openUrlClientTool,\n },\n dynamicVariables: {\n assistant_name: assistant.name || 'Sarai',\n hotelId: context.hotelId,\n hotel_info: JSON.stringify(context),\n },\n overrides: {\n agent: {\n language: locale.split('-')[0],\n },\n },\n signedUrl,\n onConnect,\n onDisconnect,\n onError:\n onError ||\n ((message) => {\n // eslint-disable-next-line no-console\n console.log(message);\n }),\n onMessage:\n onMessage ||\n ((message) => {\n // eslint-disable-next-line no-console\n console.log(message);\n }),\n };\n};\n\nexport const handleConversation = async (\n busyConversation,\n isConnecting,\n context,\n conversation,\n assistant,\n locale,\n setIsConnecting,\n setBusyConversation,\n) => {\n if (!navigator.mediaDevices || !context || !conversation) return;\n\n if (!busyConversation) {\n setIsConnecting(true);\n try {\n await navigator.mediaDevices.getUserMedia({ audio: true });\n\n const signedUrl = await getElevenLabsSignedUrl();\n\n const sessionConfig = createSessionConfig(signedUrl, assistant, context, locale, {\n onConnect: () => {\n setIsConnecting(false);\n setBusyConversation(true);\n },\n onDisconnect: () => {\n setIsConnecting(false);\n setBusyConversation(false);\n },\n onError: (message) => {\n setIsConnecting(false);\n // eslint-disable-next-line no-console\n console.log(message);\n },\n });\n\n await conversation.startSession(sessionConfig);\n } catch (error) {\n setIsConnecting(false);\n // eslint-disable-next-line no-console\n console.error('Error starting conversation:', error);\n }\n } else {\n await conversation.endSession();\n setBusyConversation(false);\n }\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"auraHelpers.js","names":["_dataSources","require","_helpers","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","createMessageSentHandler","busyConversation","conversation","setBusyConversation","endSession","exports","subscribeToMessageSent","handler","Event","subscribe","EVENT","SARAI_MESSAGE_SENT","unsubscribe","loadHotelContext","hotelId","hotelInfo","request","endpoint","concat","hostname","process","env","SERVICE_MIRA","method","error","getElevenLabsSignedUrl","chain","undefined","response","SERVICE_SYNAPSE","signedUrl","openUrlClientTool","_ref","url","validUrl","URL","startsWith","_unused","window","location","href","createSessionConfig","assistant","context","locale","callbacks","chainId","onConnect","onDisconnect","onError","onMessage","dynamicVariables","assistant_name","name","chain_id","hotel_info","JSON","stringify","clientTools","open_url","overrides","agent","language","split","message","console","log","handleConversation","isConnecting","setIsConnecting","navigator","mediaDevices","getUserMedia","audio","sessionConfig","startSession"],"sources":["../../../../src/components/Chat/helpers/auraHelpers.js"],"sourcesContent":["import { Event, request } from '@mirai/data-sources';\n\nimport { EVENT } from '../../../components/helpers';\n\nexport const createMessageSentHandler = (busyConversation, conversation, setBusyConversation) => {\n return async () => {\n if (busyConversation) {\n await conversation.endSession();\n setBusyConversation(false);\n }\n };\n};\n\nexport const subscribeToMessageSent = (handler) => {\n Event.subscribe(EVENT.SARAI_MESSAGE_SENT, handler);\n return () => Event.unsubscribe(EVENT.SARAI_MESSAGE_SENT, handler);\n};\n\nexport const loadHotelContext = async (hotelId) => {\n try {\n const hotelInfo = await request({\n endpoint: `/context/${hotelId}`,\n hostname: process.env.SERVICE_MIRA,\n method: 'GET',\n });\n\n return { ...(hotelInfo?.value || {}), hotelId };\n } catch (error) {\n return null;\n }\n};\n\nexport const getElevenLabsSignedUrl = async (chain = false) => {\n try {\n const endpoint = chain ? '/elevenlabs/signed-url?chain=true' : '/elevenlabs/signed-url';\n const response = await request({\n endpoint,\n hostname: process.env.SERVICE_SYNAPSE,\n method: 'GET',\n });\n return response?.signedUrl || null;\n } catch (error) {\n return null;\n }\n};\n\nexport const openUrlClientTool = ({ url }) => {\n try {\n if (!url) return 'Error: No URL provided';\n\n let validUrl;\n try {\n validUrl = new URL(url.startsWith('http') ? url : `https://${url}`);\n } catch {\n return 'Error: Invalid URL format';\n }\n\n window.location.href = validUrl.href;\n\n return `Successfully opened URL: ${validUrl.href}`;\n } catch (error) {\n return 'Error: Failed to open URL';\n }\n};\n\nexport const createSessionConfig = (\n signedUrl,\n assistant,\n context,\n locale,\n callbacks,\n chain = false,\n chainId = null,\n) => {\n const { onConnect, onDisconnect, onError, onMessage } = callbacks;\n\n const dynamicVariables = chain\n ? {\n assistant_name: assistant.name || 'Sarai',\n chain_id: chainId || '',\n }\n : {\n assistant_name: assistant.name || 'Sarai',\n hotelId: context.hotelId,\n hotel_info: JSON.stringify(context),\n };\n\n return {\n clientTools: {\n open_url: openUrlClientTool,\n },\n dynamicVariables,\n overrides: {\n agent: {\n language: locale.split('-')[0],\n },\n },\n signedUrl,\n onConnect,\n onDisconnect,\n onError:\n onError ||\n ((message) => {\n // eslint-disable-next-line no-console\n console.log(message);\n }),\n onMessage:\n onMessage ||\n ((message) => {\n // eslint-disable-next-line no-console\n console.log(message);\n }),\n };\n};\n\nexport const handleConversation = async (\n busyConversation,\n isConnecting,\n context,\n conversation,\n assistant,\n locale,\n setIsConnecting,\n setBusyConversation,\n chain = false,\n chainId = null,\n) => {\n if (!navigator.mediaDevices || !conversation || (!context && !chain)) return;\n\n if (!busyConversation) {\n setIsConnecting(true);\n try {\n await navigator.mediaDevices.getUserMedia({ audio: true });\n\n const signedUrl = await getElevenLabsSignedUrl(chain);\n\n const sessionConfig = createSessionConfig(\n signedUrl,\n assistant,\n context,\n locale,\n {\n onConnect: () => {\n setIsConnecting(false);\n setBusyConversation(true);\n },\n onDisconnect: () => {\n setIsConnecting(false);\n setBusyConversation(false);\n },\n onError: (message) => {\n setIsConnecting(false);\n // eslint-disable-next-line no-console\n console.log(message);\n },\n },\n chain,\n chainId,\n );\n\n await conversation.startSession(sessionConfig);\n } catch (error) {\n setIsConnecting(false);\n // eslint-disable-next-line no-console\n console.error('Error starting conversation:', error);\n }\n } else {\n await conversation.endSession();\n setBusyConversation(false);\n }\n};\n"],"mappings":"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","ignoreList":[]}
|