@mirai/core 0.4.245 → 0.4.247

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.
@@ -141,7 +141,6 @@ const Chat = _ref => {
141
141
  type
142
142
  };
143
143
  const handleOnline = async () => {
144
- if (!(components.finder || components.rates)) return;
145
144
  let next = false;
146
145
  const response = await _services.ServiceLisa.status().catch(() => setOnline(next));
147
146
  if (response && !online) {
@@ -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","storage","Storage","adapter","LocalAdapter","cache","CHAT_STORAGE_CACHE","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","previousMessages","getStorageDomain","visible","setVisible","useEffect","keys","some","item","BANNED_COMPONENTS","includes","nextConfig","process","env","NODE_ENV","ServiceFeatures","handleOnline","response","ServiceLisa","welcome","context","catch","handleError","addMessage","timestamp","Date","getTime","lisa","nextStoreMessages","filter","auto","intent","text","undefined","slice","map","clearInterval","setInterval","storeContext","_ref2","_ref3","form","finder","rates","next","status","handleInput","input","nextMessages","setTimeout","_messages$filter$slic","_messages$filter$slic2","currentForm","_ref4","message","DELAY_RESPONSE","handleAction","nextContext","action","handleRetry","pop","error","notify","Event","publish","EVENT","INTENT_LOCALE","audioNotification","welcomeMessage","chatMessages","_ref5","createElement","Fragment","Modal","fit","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, LocalAdapter, Storage, 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, CHAT_STORAGE_CACHE, 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, getStorageDomain } from './helpers';\nimport { EVENT } from '../helpers';\n\nconst storage = new Storage({ adapter: LocalAdapter, cache: CHAT_STORAGE_CACHE });\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 [previousMessages] = useState(storage.get(getStorageDomain(components)) || []);\n const [visible, setVisible] = useState(false);\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 const response = await ServiceLisa.welcome({ context: { club, hotel }, locale, session }).catch(handleError);\n if (response) {\n if (!messages.length) return addMessage({ ...response, timestamp: new Date().getTime() }, messages);\n set({ lisa: messages[messages.length - 1] });\n }\n })();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [skeleton]);\n\n useEffect(() => {\n if (stateSession) session = stateSession;\n }, [stateSession]);\n\n useEffect(() => {\n const nextStoreMessages = [...previousMessages, ...messages]\n .filter(({ auto = false, intent, text } = {}) => (!auto && text) || !!intent)\n .slice(-32)\n .map((item) => ({\n ...item,\n storage: true,\n }));\n\n storage.set(getStorageDomain(components), nextStoreMessages);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [components, messages]);\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 if (!(components.finder || components.rates)) return;\n\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 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":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,GAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,MAAA,GAAAC,uBAAA,CAAAP,OAAA;AAEA,IAAAQ,KAAA,GAAAR,OAAA;AACA,IAAAS,MAAA,GAAAT,OAAA;AACA,IAAAU,KAAA,GAAAH,uBAAA,CAAAP,OAAA;AACA,IAAAW,WAAA,GAAAX,OAAA;AACA,IAAAY,QAAA,GAAAZ,OAAA;AACA,IAAAa,SAAA,GAAAb,OAAA;AAAmC,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,SAAAR,wBAAAQ,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;AAAA,SAAAlB,uBAAA8B,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,KAAAf,OAAA,EAAAe,GAAA;AAAA,SAAAC,SAAA,IAAAA,QAAA,GAAAV,MAAA,CAAAW,MAAA,GAAAX,MAAA,CAAAW,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAO,SAAA,CAAAC,MAAA,EAAAR,CAAA,UAAAS,MAAA,GAAAF,SAAA,CAAAP,CAAA,YAAAU,GAAA,IAAAD,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAC,GAAA,KAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAJ,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAJ,SAAA;AAEnC,MAAMK,OAAO,GAAG,IAAIC,oBAAO,CAAC;EAAEC,OAAO,EAAEC,yBAAY;EAAEC,KAAK,EAAEC;AAAmB,CAAC,CAAC;AACjF,IAAIC,kBAAkB;AACtB,IAAIC,OAAO;AAEX,MAAMC,IAAI,GAAGC,IAAA,IAAmB;EAAA,IAAlB;IAAE,GAAGC;EAAO,CAAC,GAAAD,IAAA;EACzB,MAAM;IAAEE;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACjC,MAAM;IACJvB,GAAG;IACHwB,KAAK,EAAE;MACLC,QAAQ;MACRC,IAAI;MACJC,UAAU,GAAG,CAAC,CAAC;MACfC,QAAQ;MACRC,KAAK;MACLC,EAAE;MACFC,MAAM;MACNC,UAAU;MACVC,MAAM;MACNf,OAAO,EAAEgB,YAAY;MACrBC,QAAQ,GAAG,KAAK;MAChBC,IAAI;MACJC;IACF;EACF,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAEd,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACvC,MAAM,CAACC,MAAM,EAAEC,SAAS,CAAC,GAAG,IAAAF,eAAQ,EAAC,CAAC;EACtC,MAAM,GAAGG,QAAQ,CAAC,GAAG,IAAAH,eAAQ,EAAC,CAAC;EAC/B,MAAM,CAACI,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAL,eAAQ,EAAC,EAAE,CAAC;EAC5C,MAAM,CAACM,MAAM,EAAEC,SAAS,CAAC,GAAG,IAAAP,eAAQ,EAAC,KAAK,CAAC;EAC3C,MAAM,CAACQ,gBAAgB,CAAC,GAAG,IAAAR,eAAQ,EAAC9B,OAAO,CAACvB,GAAG,CAAC,IAAA8D,yBAAgB,EAACvB,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;EACpF,MAAM,CAACwB,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAX,eAAQ,EAAC,KAAK,CAAC;EAE7C,IAAAY,gBAAS,EAAC,MAAM;IACd,IAAIlB,QAAQ,IAAI3C,MAAM,CAAC8D,IAAI,CAAC3B,UAAU,CAAC,CAAC4B,IAAI,CAAEC,IAAI,IAAKC,uBAAiB,CAACC,QAAQ,CAACF,IAAI,CAAC,CAAC,EAAE;IAE1F,MAAMG,UAAU,GAAGC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,GAAGC,yBAAe,CAAC3E,GAAG,CAAC,MAAM,EAAE0C,EAAE,CAAC,GAAG,CAAC,CAAC;IAC/F,IAAI,CAAC6B,UAAU,EAAE;IACjBhB,SAAS,CAACgB,UAAU,CAAC;IAErB,CAAC,YAAY;MACX,IAAI,EAAE,MAAMK,YAAY,CAAC,CAAC,CAAC,EAAE;MAC7B,MAAMC,QAAQ,GAAG,MAAMC,qBAAW,CAACC,OAAO,CAAC;QAAEC,OAAO,EAAE;UAAE1C,IAAI;UAAEG;QAAM,CAAC;QAAEE,MAAM;QAAEb;MAAQ,CAAC,CAAC,CAACmD,KAAK,CAACC,WAAW,CAAC;MAC5G,IAAIL,QAAQ,EAAE;QACZ,IAAI,CAACpB,QAAQ,CAACtC,MAAM,EAAE,OAAOgE,UAAU,CAAC;UAAE,GAAGN,QAAQ;UAAEO,SAAS,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC;QAAE,CAAC,EAAE7B,QAAQ,CAAC;QACnG7C,GAAG,CAAC;UAAE2E,IAAI,EAAE9B,QAAQ,CAACA,QAAQ,CAACtC,MAAM,GAAG,CAAC;QAAE,CAAC,CAAC;MAC9C;IACF,CAAC,EAAE,CAAC;IACJ;EACF,CAAC,EAAE,CAAC4B,QAAQ,CAAC,CAAC;EAEd,IAAAkB,gBAAS,EAAC,MAAM;IACd,IAAInB,YAAY,EAAEhB,OAAO,GAAGgB,YAAY;EAC1C,CAAC,EAAE,CAACA,YAAY,CAAC,CAAC;EAElB,IAAAmB,gBAAS,EAAC,MAAM;IACd,MAAMuB,iBAAiB,GAAG,CAAC,GAAG3B,gBAAgB,EAAE,GAAGJ,QAAQ,CAAC,CACzDgC,MAAM,CAAC;MAAA,IAAC;QAAEC,IAAI,GAAG,KAAK;QAAEC,MAAM;QAAEC;MAAK,CAAC,GAAA1E,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA2E,SAAA,GAAA3E,SAAA,MAAG,CAAC,CAAC;MAAA,OAAM,CAACwE,IAAI,IAAIE,IAAI,IAAK,CAAC,CAACD,MAAM;IAAA,EAAC,CAC5EG,KAAK,CAAC,CAAC,EAAE,CAAC,CACVC,GAAG,CAAE3B,IAAI,KAAM;MACd,GAAGA,IAAI;MACP7C,OAAO,EAAE;IACX,CAAC,CAAC,CAAC;IAELA,OAAO,CAACX,GAAG,CAAC,IAAAkD,yBAAgB,EAACvB,UAAU,CAAC,EAAEiD,iBAAiB,CAAC;IAC5D;EACF,CAAC,EAAE,CAACjD,UAAU,EAAEkB,QAAQ,CAAC,CAAC;EAE1B,IAAAQ,gBAAS,EAAC,MAAM;IACd,IAAI,CAACF,OAAO,EAAE,OAAOiC,aAAa,CAACnE,kBAAkB,CAAC;IAEtDA,kBAAkB,GAAGoE,WAAW,CAACrB,YAAY,EAAEjB,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;IACtE,OAAO,MAAMqC,aAAa,CAACnE,kBAAkB,CAAC;IAC9C;EACF,CAAC,EAAE,CAAC8B,MAAM,EAAEI,OAAO,CAAC,CAAC;EAErB,IAAImC,YAAY,GAAG;IACjB7D,QAAQ;IACRC,IAAI;IACJE,QAAQ;IACRC,KAAK;IACLgB,QAAQ,EAAEA,QAAQ,CACfgC,MAAM,CAACU,KAAA;MAAA,IAAC;QAAE5E,OAAO;QAAEoE,MAAM;QAAEC;MAAK,CAAC,GAAAO,KAAA;MAAA,OAAK,CAAC5E,OAAO,KAAKoE,MAAM,IAAIC,IAAI,CAAC;IAAA,EAAC,CACnEE,KAAK,CAAC,CAAC,CAAC,CAAC,CACTC,GAAG,CAACK,KAAA;MAAA,IAAC;QAAET,MAAM;QAAEC,IAAI;QAAEf,QAAQ,EAAE;UAAEwB;QAAK,CAAC,GAAG,CAAC;MAAE,CAAC,GAAAD,KAAA;MAAA,OAAM;QAAEC,IAAI;QAAEV,MAAM;QAAEC;MAAK,CAAC;IAAA,CAAC,CAAC;IAC/EhD,UAAU;IACVC,MAAM;IACNG,IAAI;IACJC;EACF,CAAC;EAED,MAAM2B,YAAY,GAAG,MAAAA,CAAA,KAAY;IAC/B,IAAI,EAAErC,UAAU,CAAC+D,MAAM,IAAI/D,UAAU,CAACgE,KAAK,CAAC,EAAE;IAE9C,IAAIC,IAAI,GAAG,KAAK;IAChB,MAAM3B,QAAQ,GAAG,MAAMC,qBAAW,CAAC2B,MAAM,CAAC,CAAC,CAACxB,KAAK,CAAC,MAAMrB,SAAS,CAAC4C,IAAI,CAAC,CAAC;IACxE,IAAI3B,QAAQ,IAAI,CAAClB,MAAM,EAAE;MACvB6C,IAAI,GAAG,IAAI;MACX5C,SAAS,CAAC4C,IAAI,CAAC;IACjB;IACA,OAAOA,IAAI;EACb,CAAC;EAED,MAAME,WAAW,GAAG,SAAAA,CAACC,KAAK,EAAmB;IAAA,IAAjBjB,IAAI,GAAAxE,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA2E,SAAA,GAAA3E,SAAA,MAAG,KAAK;IACtC,MAAM0F,YAAY,GAAG,CAAC,GAAGnD,QAAQ,EAAE;MAAEmC,IAAI,EAAEe,KAAK;MAAEvB,SAAS,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC;IAAE,CAAC,CAAC;IACpF5B,WAAW,CAACkD,YAAY,CAAC;IAEzBC,UAAU,CAAC,YAAY;MAAA,IAAAC,qBAAA,EAAAC,sBAAA;MACrB3D,OAAO,CAAC,IAAI,CAAC;MACb,MAAM4D,WAAW,IAAAF,qBAAA,GAAGrD,QAAQ,CAACgC,MAAM,CAACwB,KAAA;QAAA,IAAC;UAAE1F;QAAQ,CAAC,GAAA0F,KAAA;QAAA,OAAK,CAAC1F,OAAO;MAAA,EAAC,CAACuE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAAgB,qBAAA,wBAAAC,sBAAA,GAAvDD,qBAAA,CAAyDjC,QAAQ,cAAAkC,sBAAA,uBAAjEA,sBAAA,CAAmEV,IAAI;MAE3FH,YAAY,GAAG;QAAE,GAAGA,YAAY;QAAEG,IAAI,EAAEW;MAAY,CAAC;MACrD,MAAMnC,QAAQ,GAAG,MAAMC,qBAAW,CAACoC,OAAO,CAAC;QAAExB,IAAI;QAAEV,OAAO,EAAEkB,YAAY;QAAES,KAAK;QAAEhE,MAAM;QAAEb;MAAQ,CAAC,CAAC,CAACmD,KAAK,CACvGC,WACF,CAAC;MACD,IAAIL,QAAQ,EAAEM,UAAU,CAACN,QAAQ,EAAE+B,YAAY,EAAE,IAAI,CAAC;MACtDxD,OAAO,CAAC,KAAK,CAAC;IAChB,CAAC,EAAE+D,oBAAc,CAAC;EACpB,CAAC;EAED,MAAMC,YAAY,GAAG,SAAAA,CAAA,EAA0C;IAAA,IAAzC;MAAEpC,OAAO;MAAEqB,IAAI;MAAEV,MAAM;MAAEC;IAAK,CAAC,GAAA1E,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA2E,SAAA,GAAA3E,SAAA,MAAG,CAAC,CAAC;IACxDkC,OAAO,CAAC,IAAI,CAAC;IAEbyD,UAAU,CAAC,YAAY;MACrB,MAAMQ,WAAW,GAAG;QAAE,GAAGnB,YAAY;QAAE,GAAGlB,OAAO;QAAEqB;MAAK,CAAC;MACzD,MAAMO,YAAY,GAAG,CAAC,GAAGnD,QAAQ,EAAE;QAAEiC,IAAI,EAAE,KAAK;QAAEE;MAAK,CAAC,CAAC;MAEzD,MAAMf,QAAQ,GAAG,MAAMC,qBAAW,CAACwC,MAAM,CAAC;QAAEtC,OAAO,EAAEqC,WAAW;QAAE1B,MAAM;QAAEhD,MAAM;QAAEb;MAAQ,CAAC,CAAC,CAACmD,KAAK,CAACC,WAAW,CAAC;MAC/G,IAAIL,QAAQ,EAAEM,UAAU,CAACN,QAAQ,EAAE+B,YAAY,EAAE,IAAI,CAAC;MACtDxD,OAAO,CAAC,KAAK,CAAC;IAChB,CAAC,EAAE+D,oBAAc,CAAC;EACpB,CAAC;EAED,MAAMI,WAAW,GAAG,MAAAA,CAAA,KAAY;IAC9BnE,OAAO,CAAC,IAAI,CAAC;IAEb,MAAMwD,YAAY,GAAG,CAAC,GAAGnD,QAAQ,CAAC;IAClCmD,YAAY,CAACY,GAAG,CAAC,CAAC;IAElB9D,WAAW,CAACkD,YAAY,CAAC;IACzB,MAAM;MAAEhB,IAAI,EAAEe,KAAK;MAAE9B,QAAQ,EAAE;QAAEwB;MAAK,CAAC,GAAG,CAAC;IAAE,CAAC,GAAGO,YAAY,CAACA,YAAY,CAACzF,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;IAC5F+E,YAAY,GAAG;MAAE,GAAGA,YAAY;MAAEG;IAAK,CAAC;IACxC,MAAMxB,QAAQ,GAAG,MAAMC,qBAAW,CAACoC,OAAO,CAAC;MAAElC,OAAO,EAAEkB,YAAY;MAAES,KAAK;MAAEhE,MAAM;MAAEb;IAAQ,CAAC,CAAC,CAACmD,KAAK,CAACC,WAAW,CAAC;IAChH,IAAIL,QAAQ,EAAEM,UAAU,CAACN,QAAQ,EAAE+B,YAAY,EAAE,IAAI,CAAC;IACtDxD,OAAO,CAAC,KAAK,CAAC;EAChB,CAAC;EAED,MAAM8B,WAAW,GAAIuC,KAAK,IAAK;IAC7BjE,QAAQ,CAACiE,KAAK,CAAC;IACf7D,SAAS,CAAC,KAAK,CAAC;EAClB,CAAC;EAED,MAAMuB,UAAU,GAAG,SAAAA,CAAA,EAAkD;IAAA,IAAjDN,QAAQ,GAAA3D,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA2E,SAAA,GAAA3E,SAAA,MAAG,CAAC,CAAC;IAAA,IAAEuC,QAAQ,GAAAvC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA2E,SAAA,GAAA3E,SAAA,MAAG,EAAE;IAAA,IAAEwG,MAAM,GAAAxG,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA2E,SAAA,GAAA3E,SAAA,MAAG,KAAK;IAC9D,IAAI,CAAC2D,QAAQ,EAAE;IAEfjE,GAAG,CAAC;MAAE2E,IAAI,EAAEV;IAAS,CAAC,CAAC;IACvBnB,WAAW,CAAC,CAAC,GAAGD,QAAQ,EAAE;MAAEiC,IAAI,EAAE,IAAI;MAAE,GAAGb;IAAS,CAAC,CAAC,CAAC;IAEvD,IAAIA,QAAQ,CAAClC,MAAM,KAAKA,MAAM,EAAEgF,kBAAK,CAACC,OAAO,CAACC,eAAK,CAACC,aAAa,EAAE;MAAEnF,MAAM,EAAEkC,QAAQ,CAAClC;IAAO,CAAC,CAAC;IAC/F,IAAI+E,MAAM,EAAE,IAAAK,0BAAiB,EAAC,CAAC;EACjC,CAAC;EAED,MAAM;IAAElD,QAAQ,EAAE;MAAEwB;IAAK,CAAC,GAAG,CAAC;EAAE,CAAC,GAAG5C,QAAQ,CAACgC,MAAM,CAAC;IAAA,IAAC;MAAEC,IAAI,GAAG;IAAM,CAAC,GAAAxE,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAA2E,SAAA,GAAA3E,SAAA,MAAG,CAAC,CAAC;IAAA,OAAKwE,IAAI;EAAA,EAAC,CAAC8B,GAAG,CAAC,CAAC,IAAI,EAAE;EAChG,MAAM,CAACQ,cAAc,GAAG,CAAC,CAAC,EAAE,GAAGC,YAAY,CAAC,GAAGxE,QAAQ,CAACgC,MAAM,CAACyC,KAAA;IAAA,IAAC;MAAExC,IAAI;MAAEE;IAAK,CAAC,GAAAsC,KAAA;IAAA,OAAK,EAAE,CAACxC,IAAI,IAAI,CAACE,IAAI,CAAC;EAAA,EAAC;EAErG,OAAO,CAAC7C,QAAQ,IAAI,CAAC,CAACO,MAAM,gBAC1BtE,MAAA,CAAAc,OAAA,CAAAqI,aAAA,CAAAnJ,MAAA,CAAAc,OAAA,CAAAsI,QAAA,qBACEpJ,MAAA,CAAAc,OAAA,CAAAqI,aAAA,CAACtJ,GAAA,CAAAwJ,KAAK,EAAAvH,QAAA,KAAKmB,MAAM;IAAEqG,GAAG;IAACvE,OAAO,EAAEA,OAAQ;IAACwE,SAAS,EAAE,IAAAC,UAAM,EAACpJ,KAAK,CAACqJ,SAAS,EAAExG,MAAM,CAACsG,SAAS;EAAE,iBAC5FvJ,MAAA,CAAAc,OAAA,CAAAqI,aAAA,CAAC9I,WAAA,CAAAqJ,MAAM;IAACpF,MAAM,EAAEA,MAAO;IAACqF,OAAO,EAAEA,CAAA,KAAM3E,UAAU,CAAC,KAAK;EAAE,CAAE,CAAC,EAE3D,CAACiE,YAAY,CAAC9G,MAAM,gBACnBnC,MAAA,CAAAc,OAAA,CAAAqI,aAAA,CAAC9I,WAAA,CAAAuJ,OAAO,EAAA9H,QAAA,KAAKkH,cAAc,CAACnD,QAAQ;IAAEgE,OAAO,EAAEnC;EAAY,EAAE,CAAC,gBAE9D1H,MAAA,CAAAc,OAAA,CAAAqI,aAAA,CAAAnJ,MAAA,CAAAc,OAAA,CAAAsI,QAAA,qBACEpJ,MAAA,CAAAc,OAAA,CAAAqI,aAAA,CAACtJ,GAAA,CAAAiK,UAAU;IAACC,QAAQ,EAAE,IAAI1D,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC,CAAE;IAAC0D,IAAI,EAAE,KAAM;IAACT,SAAS,EAAEnJ,KAAK,CAACqE;EAAS,GAChFwE,YAAY,CAAClC,GAAG,CAAC,CAACmB,OAAO,EAAE+B,KAAK;IAAA,IAAAC,aAAA;IAAA,oBAC/BlK,MAAA,CAAAc,OAAA,CAAAqI,aAAA,CAAC9I,WAAA,CAAA8J,OAAO,EAAArI,QAAA,KACFoG,OAAO;MACX7F,GAAG,aAAA+H,MAAA,CAAaH,KAAK,CAAG;MACxBI,QAAQ,EAAElG,IAAI,IAAI8F,KAAK,GAAGhB,YAAY,CAAC9G,MAAM,GAAG,CAAE;MAClDmI,QAAQ,EAAElC,YAAa;MACvBmC,OAAO,EAAEN,KAAK,KAAKhB,YAAY,CAAC9G,MAAM,GAAG,CAAC,KAAA+H,aAAA,GAAIjB,YAAY,CAACgB,KAAK,GAAG,CAAC,CAAC,cAAAC,aAAA,eAAvBA,aAAA,CAAyBtD,IAAI,GAAG2B,WAAW,GAAG1B;IAAU,EACvG,CAAC;EAAA,CACH,CAAC,EACD1C,IAAI,iBAAInE,MAAA,CAAAc,OAAA,CAAAqI,aAAA,CAAC9I,WAAA,CAAA8J,OAAO;IAACzD,IAAI;IAACvC,IAAI;EAAA,CAAE,CACnB,CAAC,eACbnE,MAAA,CAAAc,OAAA,CAAAqI,aAAA,CAAC9I,WAAA,CAAAmK,KAAK;IAACH,QAAQ,EAAElG,IAAK;IAACkD,IAAI,EAAEA,IAAK;IAACoD,OAAO,EAAE/C,WAAY;IAAC6B,SAAS,EAAEnJ,KAAK,CAACuH;EAAM,CAAE,CAClF,CACH,eACD3H,MAAA,CAAAc,OAAA,CAAAqI,aAAA,CAACtJ,GAAA,CAAA6K,IAAI;IAACC,KAAK;IAACC,IAAI;IAACrB,SAAS,EAAEnJ,KAAK,CAACyK;EAAQ,GACvC3H,SAAS,CAAC4H,WAAI,CAACC,uBAAuB,EAAE;IAAEC,IAAI,EAAE;EAAO,CAAC,CACrD,CACD,CAAC,eAERhL,MAAA,CAAAc,OAAA,CAAAqI,aAAA,CAAC9I,WAAA,CAAA4K,gBAAgB;IACT3G,MAAM;IAAE0E,cAAc;IAC5BkC,KAAK,EAAE,CAAC,CAACzG,QAAQ,CAACtC,MAAO;IACzB4C,OAAO,EAAEA,OAAQ;IACjBoG,OAAO,EAAEA,CAAA,KAAMnG,UAAU,CAAC,IAAI;EAAE,CACjC,CACD,CAAC,GACD,IAAI;AACV,CAAC;AAACoG,OAAA,CAAArI,IAAA,GAAAA,IAAA;AAEFA,IAAI,CAACsI,WAAW,GAAG,iBAAiB;AAEpCtI,IAAI,CAACuI,SAAS,GAAG;EACfN,IAAI,EAAEO,kBAAS,CAACC;AAClB,CAAC"}
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","storage","Storage","adapter","LocalAdapter","cache","CHAT_STORAGE_CACHE","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","previousMessages","getStorageDomain","visible","setVisible","useEffect","keys","some","item","BANNED_COMPONENTS","includes","nextConfig","process","env","NODE_ENV","ServiceFeatures","handleOnline","response","ServiceLisa","welcome","context","catch","handleError","addMessage","timestamp","Date","getTime","lisa","nextStoreMessages","filter","auto","intent","text","undefined","slice","map","clearInterval","setInterval","storeContext","_ref2","_ref3","form","next","status","handleInput","input","nextMessages","setTimeout","_messages$filter$slic","_messages$filter$slic2","currentForm","_ref4","message","DELAY_RESPONSE","handleAction","nextContext","action","handleRetry","pop","error","notify","Event","publish","EVENT","INTENT_LOCALE","audioNotification","welcomeMessage","chatMessages","_ref5","createElement","Fragment","Modal","fit","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, LocalAdapter, Storage, 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, CHAT_STORAGE_CACHE, 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, getStorageDomain } from './helpers';\nimport { EVENT } from '../helpers';\n\nconst storage = new Storage({ adapter: LocalAdapter, cache: CHAT_STORAGE_CACHE });\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 [previousMessages] = useState(storage.get(getStorageDomain(components)) || []);\n const [visible, setVisible] = useState(false);\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 const response = await ServiceLisa.welcome({ context: { club, hotel }, locale, session }).catch(handleError);\n if (response) {\n if (!messages.length) return addMessage({ ...response, timestamp: new Date().getTime() }, messages);\n set({ lisa: messages[messages.length - 1] });\n }\n })();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [skeleton]);\n\n useEffect(() => {\n if (stateSession) session = stateSession;\n }, [stateSession]);\n\n useEffect(() => {\n const nextStoreMessages = [...previousMessages, ...messages]\n .filter(({ auto = false, intent, text } = {}) => (!auto && text) || !!intent)\n .slice(-32)\n .map((item) => ({\n ...item,\n storage: true,\n }));\n\n storage.set(getStorageDomain(components), nextStoreMessages);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [components, messages]);\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 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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"}
@@ -64,9 +64,11 @@ const Places = _ref => {
64
64
  onChange: setSearch,
65
65
  className: style.input
66
66
  })), results.length > 0 ? /*#__PURE__*/_react.default.createElement(_ui.ScrollView, {
67
- snap: true,
67
+ defaultScrollIndicator: true,
68
+ scrollIndicator: columns == 1,
69
+ snap: device === null || device === void 0 ? void 0 : device.isMobile,
68
70
  tag: "ul",
69
- className: (0, _ui.styles)(style.scrollview, columns && style.columns, columns && style["columns".concat(columns)]),
71
+ className: (0, _ui.styles)(style.scrollview, columns > 1 && style.columns, columns > 1 && style["columns".concat(columns)]),
70
72
  testId: testId
71
73
  }, results.map(function () {
72
74
  let item = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -1 +1 @@
1
- {"version":3,"file":"Places.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Places","style","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Places","_ref","autoColumn","dataSource","text","value","onChange","onSubmit","others","device","useDevice","translate","useLocale","columns","setColumns","useState","search","setSearch","useEffect","isMobile","calcColumns","hasSubmit","undefined","testId","results","filter","item","arguments","length","normalizeString","JSON","stringify","includes","createElement","View","role","className","styles","container","withSubmit","row","header","Icon","ICON","SEARCH","Input","placeholder","concat","L10N","ACTION_SEARCH","type","input","ScrollView","snap","tag","scrollview","map","index","id","idHotel","isHotel","level","title","itemValue","React","Pressable","key","selected","head","onPress","Text","action","bold","markdown","repeat","footer","Button","disabled","exports","displayName","propTypes","PropTypes","bool","arrayOf","shape","string","isRequired","number","func"],"sources":["../../../../../src/components/Finder/components/Places/Places.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, Icon, Input, Pressable, styles, ScrollView, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { calcColumns, normalizeString } from './helpers';\nimport { L10N } from './Places.l10n';\nimport * as style from './Places.module.css';\nimport { ICON } from '../../../helpers';\n\nconst Places = ({ autoColumn = true, dataSource = [], text, value, onChange = () => {}, onSubmit, ...others }) => {\n const device = useDevice();\n const { translate } = useLocale();\n\n const [columns, setColumns] = useState();\n const [search, setSearch] = useState();\n\n useEffect(() => {\n const { isMobile } = device;\n\n if (!isMobile && autoColumn)\n setColumns(autoColumn ? calcColumns({ dataSource, device, hasSubmit: !!onSubmit }) : undefined);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [autoColumn, device, dataSource]);\n\n const { testId } = others;\n\n const results = search\n ? dataSource.filter((item = {}) => normalizeString(JSON.stringify(item)).includes(normalizeString(search)))\n : dataSource;\n\n return (\n <View role=\"places\" className={styles(style.container, onSubmit && style.withSubmit)}>\n {dataSource.length >= 10 && (\n <View row className={style.header}>\n <Icon value={ICON.SEARCH} />\n <Input\n placeholder={`${translate(L10N.ACTION_SEARCH)}...`}\n type=\"search\"\n value={search}\n onChange={setSearch}\n className={style.input}\n />\n </View>\n )}\n\n {results.length > 0 ? (\n <ScrollView\n snap\n tag=\"ul\"\n className={styles(style.scrollview, columns && style.columns, columns && style[`columns${columns}`])}\n testId={testId}\n >\n {results.map((item = {}, index) => {\n const { id: [idHotel] = [], isHotel, level, title, value: itemValue } = item;\n\n return React.createElement(\n itemValue ? Pressable : View,\n {\n key: `place:${index}`,\n tag: 'li',\n className: styles(style.item, itemValue ? itemValue === value && style.selected : style.head),\n ...(itemValue ? { onPress: () => onChange(item) } : { row: true }),\n ...(isHotel ? { ['data-hotel-id']: idHotel } : undefined),\n testId: testId ? `${testId}-item-${index}` : undefined,\n },\n <Text action={level !== 0} bold={!isHotel} markdown={false} className={style.title}>\n {'\\u00A0'.repeat(level)}\n {title}\n </Text>,\n );\n })}\n </ScrollView>\n ) : null}\n\n {onSubmit && (\n <View className={style.footer}>\n <Button disabled={!value} onPress={onSubmit} testId={testId ? `${testId}-submit` : undefined}>\n {text || translate(L10N.ACTION_SEARCH)}\n </Button>\n </View>\n )}\n </View>\n );\n};\n\nPlaces.displayName = 'Mirai:Core:Finder:Places';\n\nPlaces.propTypes = {\n autoColumn: PropTypes.bool,\n dataSource: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.arrayOf(PropTypes.string).isRequired,\n isHotel: PropTypes.bool,\n level: PropTypes.number,\n title: PropTypes.string.isRequired,\n value: PropTypes.number.isRequired,\n }),\n ),\n text: PropTypes.string,\n value: PropTypes.number,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Places };\n"],"mappings":"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"}
1
+ {"version":3,"file":"Places.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Places","style","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","Places","_ref","autoColumn","dataSource","text","value","onChange","onSubmit","others","device","useDevice","translate","useLocale","columns","setColumns","useState","search","setSearch","useEffect","isMobile","calcColumns","hasSubmit","undefined","testId","results","filter","item","arguments","length","normalizeString","JSON","stringify","includes","createElement","View","role","className","styles","container","withSubmit","row","header","Icon","ICON","SEARCH","Input","placeholder","concat","L10N","ACTION_SEARCH","type","input","ScrollView","defaultScrollIndicator","scrollIndicator","snap","tag","scrollview","map","index","id","idHotel","isHotel","level","title","itemValue","React","Pressable","key","selected","head","onPress","Text","action","bold","markdown","repeat","footer","Button","disabled","exports","displayName","propTypes","PropTypes","bool","arrayOf","shape","string","isRequired","number","func"],"sources":["../../../../../src/components/Finder/components/Places/Places.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, Icon, Input, Pressable, styles, ScrollView, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { calcColumns, normalizeString } from './helpers';\nimport { L10N } from './Places.l10n';\nimport * as style from './Places.module.css';\nimport { ICON } from '../../../helpers';\n\nconst Places = ({ autoColumn = true, dataSource = [], text, value, onChange = () => {}, onSubmit, ...others }) => {\n const device = useDevice();\n const { translate } = useLocale();\n\n const [columns, setColumns] = useState();\n const [search, setSearch] = useState();\n\n useEffect(() => {\n const { isMobile } = device;\n\n if (!isMobile && autoColumn)\n setColumns(autoColumn ? calcColumns({ dataSource, device, hasSubmit: !!onSubmit }) : undefined);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [autoColumn, device, dataSource]);\n\n const { testId } = others;\n\n const results = search\n ? dataSource.filter((item = {}) => normalizeString(JSON.stringify(item)).includes(normalizeString(search)))\n : dataSource;\n\n return (\n <View role=\"places\" className={styles(style.container, onSubmit && style.withSubmit)}>\n {dataSource.length >= 10 && (\n <View row className={style.header}>\n <Icon value={ICON.SEARCH} />\n <Input\n placeholder={`${translate(L10N.ACTION_SEARCH)}...`}\n type=\"search\"\n value={search}\n onChange={setSearch}\n className={style.input}\n />\n </View>\n )}\n\n {results.length > 0 ? (\n <ScrollView\n defaultScrollIndicator\n scrollIndicator={columns == 1}\n snap={device?.isMobile}\n tag=\"ul\"\n className={styles(style.scrollview, columns > 1 && style.columns, columns > 1 && style[`columns${columns}`])}\n testId={testId}\n >\n {results.map((item = {}, index) => {\n const { id: [idHotel] = [], isHotel, level, title, value: itemValue } = item;\n\n return React.createElement(\n itemValue ? Pressable : View,\n {\n key: `place:${index}`,\n tag: 'li',\n className: styles(style.item, itemValue ? itemValue === value && style.selected : style.head),\n ...(itemValue ? { onPress: () => onChange(item) } : { row: true }),\n ...(isHotel ? { ['data-hotel-id']: idHotel } : undefined),\n testId: testId ? `${testId}-item-${index}` : undefined,\n },\n <Text action={level !== 0} bold={!isHotel} markdown={false} className={style.title}>\n {'\\u00A0'.repeat(level)}\n {title}\n </Text>,\n );\n })}\n </ScrollView>\n ) : null}\n\n {onSubmit && (\n <View className={style.footer}>\n <Button disabled={!value} onPress={onSubmit} testId={testId ? `${testId}-submit` : undefined}>\n {text || translate(L10N.ACTION_SEARCH)}\n </Button>\n </View>\n )}\n </View>\n );\n};\n\nPlaces.displayName = 'Mirai:Core:Finder:Places';\n\nPlaces.propTypes = {\n autoColumn: PropTypes.bool,\n dataSource: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.arrayOf(PropTypes.string).isRequired,\n isHotel: PropTypes.bool,\n level: PropTypes.number,\n title: PropTypes.string.isRequired,\n value: PropTypes.number.isRequired,\n }),\n ),\n text: PropTypes.string,\n value: PropTypes.number,\n onChange: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Places };\n"],"mappings":"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"}
@@ -28,8 +28,7 @@ const calcColumns = function () {
28
28
  } = _ui.Theme.get(THEME_KEY);
29
29
  const itemsPerColumn = Number(ItemsPerColumn);
30
30
  let columns = items > itemsPerColumn ? Math.ceil(items / itemsPerColumn) : undefined;
31
- if (columns * sanitizePx(itemWidth) > deviceWidth * 0.8) columns = Math.floor(deviceWidth / sanitizePx(itemWidth));
32
- if (columns >= MAX_COLUMNS) columns = MAX_COLUMNS;
31
+ if (columns * sanitizePx(itemWidth) > deviceWidth * 0.8 || columns > MAX_COLUMNS) columns = 1;
33
32
  return columns;
34
33
  };
35
34
  exports.calcColumns = calcColumns;
@@ -1 +1 @@
1
- {"version":3,"file":"calcColumns.js","names":["_ui","require","ITEMS_PER_COLUMN","ITEM_WIDTH","MAX_COLUMNS","THEME_KEY","sanitizePx","value","arguments","length","undefined","parseInt","replace","calcColumns","dataSource","items","device","width","deviceWidth","ItemsPerColumn","ItemWidth","itemWidth","Theme","get","itemsPerColumn","Number","columns","Math","ceil","floor","exports"],"sources":["../../../../../../src/components/Finder/components/Places/helpers/calcColumns.js"],"sourcesContent":["import { Theme } from '@mirai/ui';\n\nconst ITEMS_PER_COLUMN = 18;\nconst ITEM_WIDTH = '300px';\nconst MAX_COLUMNS = 3;\nconst THEME_KEY = '--mirai-places';\n\nconst sanitizePx = (value = '') => parseInt(value.replace('px', ''), 10);\n\nexport const calcColumns = ({ dataSource: { length: items } = [], device: { width: deviceWidth } = {} } = {}) => {\n const { ItemsPerColumn = ITEMS_PER_COLUMN, ItemWidth: itemWidth = ITEM_WIDTH } = Theme.get(THEME_KEY);\n const itemsPerColumn = Number(ItemsPerColumn);\n\n let columns = items > itemsPerColumn ? Math.ceil(items / itemsPerColumn) : undefined;\n if (columns * sanitizePx(itemWidth) > deviceWidth * 0.8) columns = Math.floor(deviceWidth / sanitizePx(itemWidth));\n if (columns >= MAX_COLUMNS) columns = MAX_COLUMNS;\n\n return columns;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAEA,MAAMC,gBAAgB,GAAG,EAAE;AAC3B,MAAMC,UAAU,GAAG,OAAO;AAC1B,MAAMC,WAAW,GAAG,CAAC;AACrB,MAAMC,SAAS,GAAG,gBAAgB;AAElC,MAAMC,UAAU,GAAG,SAAAA,CAAA;EAAA,IAACC,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAAA,OAAKG,QAAQ,CAACJ,KAAK,CAACK,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;AAAA;AAEjE,MAAMC,WAAW,GAAG,SAAAA,CAAA,EAAsF;EAAA,IAArF;IAAEC,UAAU,EAAE;MAAEL,MAAM,EAAEM;IAAM,CAAC,GAAG,EAAE;IAAEC,MAAM,EAAE;MAAEC,KAAK,EAAEC;IAAY,CAAC,GAAG,CAAC;EAAE,CAAC,GAAAV,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAC1G,MAAM;IAAEW,cAAc,GAAGjB,gBAAgB;IAAEkB,SAAS,EAAEC,SAAS,GAAGlB;EAAW,CAAC,GAAGmB,SAAK,CAACC,GAAG,CAAClB,SAAS,CAAC;EACrG,MAAMmB,cAAc,GAAGC,MAAM,CAACN,cAAc,CAAC;EAE7C,IAAIO,OAAO,GAAGX,KAAK,GAAGS,cAAc,GAAGG,IAAI,CAACC,IAAI,CAACb,KAAK,GAAGS,cAAc,CAAC,GAAGd,SAAS;EACpF,IAAIgB,OAAO,GAAGpB,UAAU,CAACe,SAAS,CAAC,GAAGH,WAAW,GAAG,GAAG,EAAEQ,OAAO,GAAGC,IAAI,CAACE,KAAK,CAACX,WAAW,GAAGZ,UAAU,CAACe,SAAS,CAAC,CAAC;EAClH,IAAIK,OAAO,IAAItB,WAAW,EAAEsB,OAAO,GAAGtB,WAAW;EAEjD,OAAOsB,OAAO;AAChB,CAAC;AAACI,OAAA,CAAAjB,WAAA,GAAAA,WAAA"}
1
+ {"version":3,"file":"calcColumns.js","names":["_ui","require","ITEMS_PER_COLUMN","ITEM_WIDTH","MAX_COLUMNS","THEME_KEY","sanitizePx","value","arguments","length","undefined","parseInt","replace","calcColumns","dataSource","items","device","width","deviceWidth","ItemsPerColumn","ItemWidth","itemWidth","Theme","get","itemsPerColumn","Number","columns","Math","ceil","exports"],"sources":["../../../../../../src/components/Finder/components/Places/helpers/calcColumns.js"],"sourcesContent":["import { Theme } from '@mirai/ui';\n\nconst ITEMS_PER_COLUMN = 18;\nconst ITEM_WIDTH = '300px';\nconst MAX_COLUMNS = 3;\nconst THEME_KEY = '--mirai-places';\n\nconst sanitizePx = (value = '') => parseInt(value.replace('px', ''), 10);\n\nexport const calcColumns = ({ dataSource: { length: items } = [], device: { width: deviceWidth } = {} } = {}) => {\n const { ItemsPerColumn = ITEMS_PER_COLUMN, ItemWidth: itemWidth = ITEM_WIDTH } = Theme.get(THEME_KEY);\n const itemsPerColumn = Number(ItemsPerColumn);\n\n let columns = items > itemsPerColumn ? Math.ceil(items / itemsPerColumn) : undefined;\n if (columns * sanitizePx(itemWidth) > deviceWidth * 0.8 || columns > MAX_COLUMNS) columns = 1;\n\n return columns;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAEA,MAAMC,gBAAgB,GAAG,EAAE;AAC3B,MAAMC,UAAU,GAAG,OAAO;AAC1B,MAAMC,WAAW,GAAG,CAAC;AACrB,MAAMC,SAAS,GAAG,gBAAgB;AAElC,MAAMC,UAAU,GAAG,SAAAA,CAAA;EAAA,IAACC,KAAK,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAAA,OAAKG,QAAQ,CAACJ,KAAK,CAACK,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;AAAA;AAEjE,MAAMC,WAAW,GAAG,SAAAA,CAAA,EAAsF;EAAA,IAArF;IAAEC,UAAU,EAAE;MAAEL,MAAM,EAAEM;IAAM,CAAC,GAAG,EAAE;IAAEC,MAAM,EAAE;MAAEC,KAAK,EAAEC;IAAY,CAAC,GAAG,CAAC;EAAE,CAAC,GAAAV,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAC1G,MAAM;IAAEW,cAAc,GAAGjB,gBAAgB;IAAEkB,SAAS,EAAEC,SAAS,GAAGlB;EAAW,CAAC,GAAGmB,SAAK,CAACC,GAAG,CAAClB,SAAS,CAAC;EACrG,MAAMmB,cAAc,GAAGC,MAAM,CAACN,cAAc,CAAC;EAE7C,IAAIO,OAAO,GAAGX,KAAK,GAAGS,cAAc,GAAGG,IAAI,CAACC,IAAI,CAACb,KAAK,GAAGS,cAAc,CAAC,GAAGd,SAAS;EACpF,IAAIgB,OAAO,GAAGpB,UAAU,CAACe,SAAS,CAAC,GAAGH,WAAW,GAAG,GAAG,IAAIQ,OAAO,GAAGtB,WAAW,EAAEsB,OAAO,GAAG,CAAC;EAE7F,OAAOA,OAAO;AAChB,CAAC;AAACG,OAAA,CAAAhB,WAAA,GAAAA,WAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.4.245",
3
+ "version": "0.4.247",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",