@mirai/core 0.4.391 → 0.4.392
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.
|
@@ -119,7 +119,8 @@ const Chat = _ref => {
|
|
|
119
119
|
key: "message:".concat(index),
|
|
120
120
|
disabled: busy || index < messages.length - 1
|
|
121
121
|
}, message))), busy && /*#__PURE__*/_react.default.createElement(_components.Message, {
|
|
122
|
-
busy: true
|
|
122
|
+
busy: true,
|
|
123
|
+
synapse: true
|
|
123
124
|
})), /*#__PURE__*/_react.default.createElement(_components.Input, {
|
|
124
125
|
disabled: busy,
|
|
125
126
|
entities: entities,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chat.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Chat","_Chat2","style","_components","_helpers","_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","locale","occupation","origin","session","skeleton","useStore","busy","setBusy","useState","messages","setMessages","visible","setVisible","useEffect","some","item","BANNED_COMPONENTS","includes","Event","publish","EVENT","METRICS","id","handleInput","input","shortcutMessage","undefined","nextMessages","text","timestamp","Date","getTime","setTimeout","response","ServiceSynapse","message","agents","getAgents","context","catch","synapse","audioNotification","DELAY_RESPONSE","hasAura","navigator","mediaDevices","aura","isReady","mira","lisa","entities","createElement","Fragment","Modal","fit","portal","className","styles","container","Header","onClose","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 { 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 locale,\n occupation,\n origin,\n session,\n skeleton = false,\n } = {},\n } = useStore();\n\n const [busy, setBusy] = useState(false);\n const [messages, setMessages] = useState([]);\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n if (skeleton || Object.keys(components).some((item) => BANNED_COMPONENTS.includes(item))) return;\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 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 response = await ServiceSynapse.message({\n agents: getAgents(assistant),\n context: {\n calendar,\n currency,\n hotel,\n isMobile,\n locale,\n occupation,\n origin,\n shortcutMessage,\n },\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 hasAura = navigator.mediaDevices && assistant.aura;\n const isReady = !skeleton && (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={() => setVisible(false)} />\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 />}\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={() => setVisible(true)} />\n </>\n ) : null;\n};\n\nexport { Chat };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Chat.js","names":["_dataSources","require","_locale","_services","_ui","_react","_interopRequireWildcard","_Chat","_Chat2","style","_components","_helpers","_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","locale","occupation","origin","session","skeleton","useStore","busy","setBusy","useState","messages","setMessages","visible","setVisible","useEffect","some","item","BANNED_COMPONENTS","includes","Event","publish","EVENT","METRICS","id","handleInput","input","shortcutMessage","undefined","nextMessages","text","timestamp","Date","getTime","setTimeout","response","ServiceSynapse","message","agents","getAgents","context","catch","synapse","audioNotification","DELAY_RESPONSE","hasAura","navigator","mediaDevices","aura","isReady","mira","lisa","entities","createElement","Fragment","Modal","fit","portal","className","styles","container","Header","onClose","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 { 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 locale,\n occupation,\n origin,\n session,\n skeleton = false,\n } = {},\n } = useStore();\n\n const [busy, setBusy] = useState(false);\n const [messages, setMessages] = useState([]);\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n if (skeleton || Object.keys(components).some((item) => BANNED_COMPONENTS.includes(item))) return;\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 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 response = await ServiceSynapse.message({\n agents: getAgents(assistant),\n context: {\n calendar,\n currency,\n hotel,\n isMobile,\n locale,\n occupation,\n origin,\n shortcutMessage,\n },\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 hasAura = navigator.mediaDevices && assistant.aura;\n const isReady = !skeleton && (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={() => setVisible(false)} />\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={() => setVisible(true)} />\n </>\n ) : null;\n};\n\nexport { Chat };\n"],"mappings":"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","ignoreList":[]}
|