@mirai/core 0.4.255 → 0.4.257
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/components/Chat/Chat.js +0 -20
- package/build/components/Chat/Chat.js.map +1 -1
- package/build/components/Chat/components/ButtonDispatcher/ButtonDispatcher.js +11 -15
- package/build/components/Chat/components/ButtonDispatcher/ButtonDispatcher.js.map +1 -1
- package/build/components/Chat/components/ButtonDispatcher/helpers/determinePosition.js +41 -0
- package/build/components/Chat/components/ButtonDispatcher/helpers/determinePosition.js.map +1 -0
- package/build/components/Chat/components/ButtonDispatcher/helpers/index.js +17 -0
- package/build/components/Chat/components/ButtonDispatcher/helpers/index.js.map +1 -0
- package/build/components/Chat/components/Message/Message.Requirement.js +6 -10
- package/build/components/Chat/components/Message/Message.Requirement.js.map +1 -1
- package/build/components/Chat/components/Message/Message.constants.js +3 -1
- package/build/components/Chat/components/Message/Message.constants.js.map +1 -1
- package/build/components/Chat/components/Message/Message.module.css +30 -5
- package/build/components/Chat/components/Message/components/Card.module.css +0 -1
- package/build/components/Chat/components/Message/components/List/List.Room.js +110 -0
- package/build/components/Chat/components/Message/components/List/List.Room.js.map +1 -0
- package/build/components/Chat/components/Message/components/List/List.Room.module.css +70 -0
- package/build/components/Chat/components/Message/components/List/List.l10n.js +12 -0
- package/build/components/Chat/components/Message/components/List/List.l10n.js.map +1 -0
- package/build/theme.css +8 -1
- package/package.json +1 -1
|
@@ -20,10 +20,6 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
|
|
|
20
20
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
21
21
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
22
22
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
23
|
-
const storage = new _dataSources.Storage({
|
|
24
|
-
adapter: _dataSources.LocalAdapter,
|
|
25
|
-
cache: _Chat.CHAT_STORAGE_CACHE
|
|
26
|
-
});
|
|
27
23
|
let connectionInterval;
|
|
28
24
|
let session;
|
|
29
25
|
const Chat = _ref => {
|
|
@@ -56,7 +52,6 @@ const Chat = _ref => {
|
|
|
56
52
|
const [, setError] = (0, _react.useState)();
|
|
57
53
|
const [messages, setMessages] = (0, _react.useState)([]);
|
|
58
54
|
const [online, setOnline] = (0, _react.useState)(false);
|
|
59
|
-
const [previousMessages] = (0, _react.useState)(storage.get((0, _helpers.getStorageDomain)(components)) || []);
|
|
60
55
|
const [visible, setVisible] = (0, _react.useState)(false);
|
|
61
56
|
(0, _react.useEffect)(() => {
|
|
62
57
|
if (skeleton || Object.keys(components).some(item => _Chat.BANNED_COMPONENTS.includes(item))) return;
|
|
@@ -88,21 +83,6 @@ const Chat = _ref => {
|
|
|
88
83
|
(0, _react.useEffect)(() => {
|
|
89
84
|
if (stateSession) session = stateSession;
|
|
90
85
|
}, [stateSession]);
|
|
91
|
-
(0, _react.useEffect)(() => {
|
|
92
|
-
const nextStoreMessages = [...previousMessages, ...messages].filter(function () {
|
|
93
|
-
let {
|
|
94
|
-
auto = false,
|
|
95
|
-
intent,
|
|
96
|
-
text
|
|
97
|
-
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
98
|
-
return !auto && text || !!intent;
|
|
99
|
-
}).slice(-32).map(item => ({
|
|
100
|
-
...item,
|
|
101
|
-
storage: true
|
|
102
|
-
}));
|
|
103
|
-
storage.set((0, _helpers.getStorageDomain)(components), nextStoreMessages);
|
|
104
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
105
|
-
}, [components, messages]);
|
|
106
86
|
(0, _react.useEffect)(() => {
|
|
107
87
|
if (!visible) return clearInterval(connectionInterval);
|
|
108
88
|
connectionInterval = setInterval(handleOnline, online ? 60000 : 10000);
|
|
@@ -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","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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"}
|
|
1
|
+
{"version":3,"file":"Chat.js","names":["_dataSources","require","_locale","_services","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Chat","_Chat2","style","_components","_helpers","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","connectionInterval","session","Chat","_ref","others","translate","useLocale","value","calendar","club","components","currency","hotel","id","locale","occupation","origin","stateSession","skeleton","tags","type","useStore","busy","setBusy","useState","config","setConfig","setError","messages","setMessages","online","setOnline","visible","setVisible","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","clearInterval","setInterval","storeContext","filter","_ref2","storage","intent","text","slice","map","_ref3","form","next","status","handleInput","input","auto","undefined","nextMessages","setTimeout","_messages$filter$slic","_messages$filter$slic2","currentForm","_ref4","message","DELAY_RESPONSE","handleAction","nextContext","action","handleRetry","pop","error","notify","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, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { ServiceFeatures, ServiceLisa } from '@mirai/services';\nimport { Modal, ScrollView, styles, Text } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { BANNED_COMPONENTS, DELAY_RESPONSE } from './Chat.constants';\nimport { L10N } from './Chat.l10n';\nimport * as style from './Chat.module.css';\nimport { ButtonDispatcher, Header, Input, Message, Welcome } from './components';\nimport { audioNotification } from './helpers';\nimport { EVENT } from '../helpers';\n\nlet connectionInterval;\nlet session;\n\nconst Chat = ({ ...others }) => {\n const { translate } = useLocale();\n const {\n set,\n value: {\n calendar,\n club,\n components = {},\n currency,\n hotel,\n id,\n locale,\n occupation,\n origin,\n session: stateSession,\n skeleton = false,\n tags,\n type,\n },\n } = useStore();\n\n const [busy, setBusy] = useState(false);\n const [config, setConfig] = useState();\n const [, setError] = useState();\n const [messages, setMessages] = useState([]);\n const [online, setOnline] = useState(false);\n const [visible, setVisible] = useState(false);\n\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 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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"}
|
|
@@ -11,7 +11,8 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
11
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
12
|
var _ButtonDispatcher = require("./ButtonDispatcher.l10n");
|
|
13
13
|
var style = _interopRequireWildcard(require("./ButtonDispatcher.module.css"));
|
|
14
|
-
var _helpers = require("
|
|
14
|
+
var _helpers = require("./helpers");
|
|
15
|
+
var _helpers2 = require("../../../helpers");
|
|
15
16
|
var _Chat = require("../../Chat.constants");
|
|
16
17
|
var _Avatar = require("../Avatar");
|
|
17
18
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
@@ -22,12 +23,9 @@ let focused = false;
|
|
|
22
23
|
const ButtonDispatcher = _ref => {
|
|
23
24
|
let {
|
|
24
25
|
config: {
|
|
25
|
-
bottom,
|
|
26
26
|
image,
|
|
27
|
-
left = false,
|
|
28
27
|
name = _Chat.DEFAULT_NAME,
|
|
29
|
-
|
|
30
|
-
top = false
|
|
28
|
+
...config
|
|
31
29
|
} = {},
|
|
32
30
|
ready = false,
|
|
33
31
|
visible,
|
|
@@ -55,8 +53,8 @@ const ButtonDispatcher = _ref => {
|
|
|
55
53
|
} = _ref2;
|
|
56
54
|
setHide(modalVisible);
|
|
57
55
|
};
|
|
58
|
-
_dataSources.Event.subscribe(
|
|
59
|
-
return () => _dataSources.Event.unsubscribe(
|
|
56
|
+
_dataSources.Event.subscribe(_helpers2.EVENT.MODAL_VISIBLE, callback);
|
|
57
|
+
return () => _dataSources.Event.unsubscribe(_helpers2.EVENT.MODAL_VISIBLE, callback);
|
|
60
58
|
}, []);
|
|
61
59
|
(0, _react.useEffect)(() => {
|
|
62
60
|
if (!ready || focused) return;
|
|
@@ -81,14 +79,12 @@ const ButtonDispatcher = _ref => {
|
|
|
81
79
|
(0, _react.useEffect)(() => {
|
|
82
80
|
if (focus) focused = true;
|
|
83
81
|
}, [focus]);
|
|
82
|
+
const position = (0, _helpers.determinePosition)(config, {
|
|
83
|
+
isMobile
|
|
84
|
+
});
|
|
84
85
|
return /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
85
|
-
className: (0, _ui.styles)(style.buttonDispatcher,
|
|
86
|
-
style:
|
|
87
|
-
top: top >= 1 ? top : undefined,
|
|
88
|
-
bottom: bottom >= 1 ? bottom : undefined,
|
|
89
|
-
left: left >= 1 ? left : undefined,
|
|
90
|
-
right: right >= 1 ? right : undefined
|
|
91
|
-
}
|
|
86
|
+
className: (0, _ui.styles)(style.buttonDispatcher, ready && !visible && !hide && style.visible, ...position.className),
|
|
87
|
+
style: position.style
|
|
92
88
|
}, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
93
89
|
row: true,
|
|
94
90
|
className: (0, _ui.styles)(style.welcome, focus && !visible && style.visible)
|
|
@@ -109,7 +105,7 @@ const ButtonDispatcher = _ref => {
|
|
|
109
105
|
transparent: true,
|
|
110
106
|
onPress: () => setFocus(false)
|
|
111
107
|
}, /*#__PURE__*/_react.default.createElement(_ui.Icon, {
|
|
112
|
-
value:
|
|
108
|
+
value: _helpers2.ICON.CLOSE
|
|
113
109
|
}))), /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
|
|
114
110
|
onEnter: () => setFocus(true),
|
|
115
111
|
onLeave: () => setFocus(false),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonDispatcher.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_ButtonDispatcher","style","_helpers","_Chat","_Avatar","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","DELAY_WELCOME","focused","ButtonDispatcher","_ref","config","bottom","image","left","name","DEFAULT_NAME","right","top","ready","visible","onPress","isMobile","useDevice","translate","useLocale","value","session","firstName","useStore","focus","setFocus","useState","hide","setHide","useEffect","callback","_ref2","modalVisible","Event","subscribe","EVENT","MODAL_VISIBLE","unsubscribe","inactivityTimer","resetTimer","clearTimeout","setTimeout","document","addEventListener","current","removeEventListener","createElement","View","className","styles","buttonDispatcher","undefined","row","welcome","Text","bold","brand","headline","hi","concat","L10N","LABEL_HI","markdown","medium","LABEL_GREETINGS","Button","icon","small","squared","transparent","Icon","ICON","CLOSE","Pressable","onEnter","onLeave","Avatar","disabled","avatar","exports","displayName","propTypes","PropTypes","shape","oneOfType","bool","number","string","func"],"sources":["../../../../../src/components/Chat/components/ButtonDispatcher/ButtonDispatcher.js"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Icon, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './ButtonDispatcher.l10n';\nimport * as style from './ButtonDispatcher.module.css';\nimport { EVENT, ICON } from '../../../helpers';\nimport { DEFAULT_NAME } from '../../Chat.constants';\nimport { Avatar } from '../Avatar';\n\nconst DELAY_WELCOME = 10000;\nlet focused = false;\n\nconst ButtonDispatcher = ({\n config: { bottom, image, left = false, name = DEFAULT_NAME, right, top = false } = {},\n ready = false,\n visible,\n onPress,\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { session: { firstName } = {} },\n } = useStore();\n\n const [focus, setFocus] = useState(false);\n const [hide, setHide] = useState(false);\n\n useEffect(() => {\n const callback = ({ visible: modalVisible }) => {\n setHide(modalVisible);\n };\n\n Event.subscribe(EVENT.MODAL_VISIBLE, callback);\n return () => Event.unsubscribe(EVENT.MODAL_VISIBLE, callback);\n }, []);\n\n useEffect(() => {\n if (!ready || focused) return;\n let inactivityTimer;\n\n const resetTimer = () => {\n clearTimeout(inactivityTimer);\n if (focused) return;\n inactivityTimer = setTimeout(() => {\n setFocus(true);\n clearTimeout(inactivityTimer);\n }, DELAY_WELCOME);\n };\n\n document.addEventListener('mousemove', resetTimer);\n document.addEventListener('scroll', resetTimer);\n\n resetTimer();\n\n return () => {\n clearTimeout(inactivityTimer.current);\n document.removeEventListener('mousemove', resetTimer);\n document.removeEventListener('scroll', resetTimer);\n };\n }, [ready]);\n\n useEffect(() => {\n if (focus) focused = true;\n }, [focus]);\n\n return (\n <View\n className={styles(\n style.buttonDispatcher,\n left ? style.left : style.right,\n top ? style.top : style.bottom,\n ready && !visible && !hide && style.visible,\n )}\n style={{\n top: top >= 1 ? top : undefined,\n bottom: bottom >= 1 ? bottom : undefined,\n left: left >= 1 ? left : undefined,\n right: right >= 1 ? right : undefined,\n }}\n >\n <View row className={styles(style.welcome, focus && !visible && style.visible)}>\n <View>\n <Text bold brand headline className={style.hi}>\n {`✦ ${translate(L10N.LABEL_HI)}${firstName ? `, ${firstName}` : ''}`}\n </Text>\n <Text markdown={false} medium>\n {translate(L10N.LABEL_GREETINGS, { name })}\n </Text>\n </View>\n {isMobile && (\n <Button icon=\"close\" small squared transparent onPress={() => setFocus(false)}>\n <Icon value={ICON.CLOSE} />\n </Button>\n )}\n </View>\n\n <Pressable onEnter={() => setFocus(true)} onLeave={() => setFocus(false)} onPress={onPress}>\n <Avatar disabled={visible} image={image} className={style.avatar} />\n </Pressable>\n </View>\n );\n};\n\nButtonDispatcher.displayName = 'Mirai:Core:Chat:ButtonDispatcher';\n\nButtonDispatcher.propTypes = {\n config: PropTypes.shape({\n bottom: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n image: PropTypes.string,\n left: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n name: PropTypes.string,\n right: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n top: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n }),\n ready: PropTypes.bool,\n visible: PropTypes.bool,\n onPress: PropTypes.func,\n};\n\nexport { ButtonDispatcher };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ButtonDispatcher.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_ButtonDispatcher","style","_helpers","_helpers2","_Chat","_Avatar","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","DELAY_WELCOME","focused","ButtonDispatcher","_ref","config","image","name","DEFAULT_NAME","ready","visible","onPress","isMobile","useDevice","translate","useLocale","value","session","firstName","useStore","focus","setFocus","useState","hide","setHide","useEffect","callback","_ref2","modalVisible","Event","subscribe","EVENT","MODAL_VISIBLE","unsubscribe","inactivityTimer","resetTimer","clearTimeout","setTimeout","document","addEventListener","current","removeEventListener","position","determinePosition","createElement","View","className","styles","buttonDispatcher","row","welcome","Text","bold","brand","headline","hi","concat","L10N","LABEL_HI","markdown","medium","LABEL_GREETINGS","Button","icon","small","squared","transparent","Icon","ICON","CLOSE","Pressable","onEnter","onLeave","Avatar","disabled","avatar","exports","displayName","propTypes","PropTypes","shape","bottom","oneOfType","bool","number","string","left","right","top","func"],"sources":["../../../../../src/components/Chat/components/ButtonDispatcher/ButtonDispatcher.js"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, Icon, Pressable, styles, Text, useDevice, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { L10N } from './ButtonDispatcher.l10n';\nimport * as style from './ButtonDispatcher.module.css';\nimport { determinePosition } from './helpers';\nimport { EVENT, ICON } from '../../../helpers';\nimport { DEFAULT_NAME } from '../../Chat.constants';\nimport { Avatar } from '../Avatar';\n\nconst DELAY_WELCOME = 10000;\nlet focused = false;\n\nconst ButtonDispatcher = ({\n config: { image, name = DEFAULT_NAME, ...config } = {},\n ready = false,\n visible,\n onPress,\n}) => {\n const { isMobile } = useDevice();\n const { translate } = useLocale();\n const {\n value: { session: { firstName } = {} },\n } = useStore();\n\n const [focus, setFocus] = useState(false);\n const [hide, setHide] = useState(false);\n\n useEffect(() => {\n const callback = ({ visible: modalVisible }) => {\n setHide(modalVisible);\n };\n\n Event.subscribe(EVENT.MODAL_VISIBLE, callback);\n return () => Event.unsubscribe(EVENT.MODAL_VISIBLE, callback);\n }, []);\n\n useEffect(() => {\n if (!ready || focused) return;\n let inactivityTimer;\n\n const resetTimer = () => {\n clearTimeout(inactivityTimer);\n if (focused) return;\n inactivityTimer = setTimeout(() => {\n setFocus(true);\n clearTimeout(inactivityTimer);\n }, DELAY_WELCOME);\n };\n\n document.addEventListener('mousemove', resetTimer);\n document.addEventListener('scroll', resetTimer);\n\n resetTimer();\n\n return () => {\n clearTimeout(inactivityTimer.current);\n document.removeEventListener('mousemove', resetTimer);\n document.removeEventListener('scroll', resetTimer);\n };\n }, [ready]);\n\n useEffect(() => {\n if (focus) focused = true;\n }, [focus]);\n\n const position = determinePosition(config, { isMobile });\n\n return (\n <View\n className={styles(style.buttonDispatcher, ready && !visible && !hide && style.visible, ...position.className)}\n style={position.style}\n >\n <View row className={styles(style.welcome, focus && !visible && style.visible)}>\n <View>\n <Text bold brand headline className={style.hi}>\n {`✦ ${translate(L10N.LABEL_HI)}${firstName ? `, ${firstName}` : ''}`}\n </Text>\n <Text markdown={false} medium>\n {translate(L10N.LABEL_GREETINGS, { name })}\n </Text>\n </View>\n {isMobile && (\n <Button icon=\"close\" small squared transparent onPress={() => setFocus(false)}>\n <Icon value={ICON.CLOSE} />\n </Button>\n )}\n </View>\n\n <Pressable onEnter={() => setFocus(true)} onLeave={() => setFocus(false)} onPress={onPress}>\n <Avatar disabled={visible} image={image} className={style.avatar} />\n </Pressable>\n </View>\n );\n};\n\nButtonDispatcher.displayName = 'Mirai:Core:Chat:ButtonDispatcher';\n\nButtonDispatcher.propTypes = {\n config: PropTypes.shape({\n bottom: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n image: PropTypes.string,\n left: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n name: PropTypes.string,\n right: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n top: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),\n }),\n ready: PropTypes.bool,\n visible: PropTypes.bool,\n onPress: PropTypes.func,\n};\n\nexport { ButtonDispatcher };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.determinePosition = void 0;
|
|
7
|
+
var style = _interopRequireWildcard(require("../ButtonDispatcher.module.css"));
|
|
8
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
9
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
10
|
+
const determinePosition = (_ref, isMobile) => {
|
|
11
|
+
let {
|
|
12
|
+
mobile,
|
|
13
|
+
desktop,
|
|
14
|
+
...config
|
|
15
|
+
} = _ref;
|
|
16
|
+
let base = {
|
|
17
|
+
...config
|
|
18
|
+
};
|
|
19
|
+
if (isMobile && mobile) base = {
|
|
20
|
+
...mobile
|
|
21
|
+
};else if (!isMobile && desktop) base = {
|
|
22
|
+
...desktop
|
|
23
|
+
};
|
|
24
|
+
const {
|
|
25
|
+
bottom,
|
|
26
|
+
left = false,
|
|
27
|
+
right,
|
|
28
|
+
top = false
|
|
29
|
+
} = base;
|
|
30
|
+
return {
|
|
31
|
+
className: [left ? style.left : style.right, top ? style.top : style.bottom],
|
|
32
|
+
style: {
|
|
33
|
+
top: top >= 1 ? top : undefined,
|
|
34
|
+
bottom: bottom >= 1 ? bottom : undefined,
|
|
35
|
+
left: left >= 1 ? left : undefined,
|
|
36
|
+
right: right >= 1 ? right : undefined
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
exports.determinePosition = determinePosition;
|
|
41
|
+
//# sourceMappingURL=determinePosition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"determinePosition.js","names":["style","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","determinePosition","_ref","isMobile","mobile","desktop","config","base","bottom","left","right","top","className","undefined","exports"],"sources":["../../../../../../src/components/Chat/components/ButtonDispatcher/helpers/determinePosition.js"],"sourcesContent":["import * as style from '../ButtonDispatcher.module.css';\n\nexport const determinePosition = ({ mobile, desktop, ...config }, isMobile) => {\n let base = { ...config };\n\n if (isMobile && mobile) base = { ...mobile };\n else if (!isMobile && desktop) base = { ...desktop };\n\n const { bottom, left = false, right, top = false } = base;\n\n return {\n className: [left ? style.left : style.right, top ? style.top : style.bottom],\n style: {\n top: top >= 1 ? top : undefined,\n bottom: bottom >= 1 ? bottom : undefined,\n left: left >= 1 ? left : undefined,\n right: right >= 1 ? right : undefined,\n },\n };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAwD,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEjD,MAAMY,iBAAiB,GAAGA,CAAAC,IAAA,EAAiCC,QAAQ,KAAK;EAAA,IAA7C;IAAEC,MAAM;IAAEC,OAAO;IAAE,GAAGC;EAAO,CAAC,GAAAJ,IAAA;EAC9D,IAAIK,IAAI,GAAG;IAAE,GAAGD;EAAO,CAAC;EAExB,IAAIH,QAAQ,IAAIC,MAAM,EAAEG,IAAI,GAAG;IAAE,GAAGH;EAAO,CAAC,CAAC,KACxC,IAAI,CAACD,QAAQ,IAAIE,OAAO,EAAEE,IAAI,GAAG;IAAE,GAAGF;EAAQ,CAAC;EAEpD,MAAM;IAAEG,MAAM;IAAEC,IAAI,GAAG,KAAK;IAAEC,KAAK;IAAEC,GAAG,GAAG;EAAM,CAAC,GAAGJ,IAAI;EAEzD,OAAO;IACLK,SAAS,EAAE,CAACH,IAAI,GAAGhC,KAAK,CAACgC,IAAI,GAAGhC,KAAK,CAACiC,KAAK,EAAEC,GAAG,GAAGlC,KAAK,CAACkC,GAAG,GAAGlC,KAAK,CAAC+B,MAAM,CAAC;IAC5E/B,KAAK,EAAE;MACLkC,GAAG,EAAEA,GAAG,IAAI,CAAC,GAAGA,GAAG,GAAGE,SAAS;MAC/BL,MAAM,EAAEA,MAAM,IAAI,CAAC,GAAGA,MAAM,GAAGK,SAAS;MACxCJ,IAAI,EAAEA,IAAI,IAAI,CAAC,GAAGA,IAAI,GAAGI,SAAS;MAClCH,KAAK,EAAEA,KAAK,IAAI,CAAC,GAAGA,KAAK,GAAGG;IAC9B;EACF,CAAC;AACH,CAAC;AAACC,OAAA,CAAAb,iBAAA,GAAAA,iBAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _determinePosition = require("./determinePosition");
|
|
7
|
+
Object.keys(_determinePosition).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _determinePosition[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _determinePosition[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["_determinePosition","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../../../../src/components/Chat/components/ButtonDispatcher/helpers/index.js"],"sourcesContent":["export * from './determinePosition';\n"],"mappings":";;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,kBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,kBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,kBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
|
|
@@ -9,7 +9,6 @@ var _locale = require("@mirai/locale");
|
|
|
9
9
|
var _ui = require("@mirai/ui");
|
|
10
10
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
-
var _components = require("./components");
|
|
13
12
|
var _Message = require("./Message.constants");
|
|
14
13
|
var _Message2 = require("./Message.l10n");
|
|
15
14
|
var style = _interopRequireWildcard(require("./Message.module.css"));
|
|
@@ -18,7 +17,8 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
|
|
|
18
17
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
20
19
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
21
|
-
const HIDE_SUBMIT_TYPES = ['occupation', '
|
|
20
|
+
const HIDE_SUBMIT_TYPES = ['login', 'occupation', 'profile', 'room', 'signup'];
|
|
21
|
+
const FORM_TYPES = ['calendar', 'login', 'occupation', 'profile', 'signup', 'text', 'password', 'email', 'number'];
|
|
22
22
|
const Requirement = _ref => {
|
|
23
23
|
let {
|
|
24
24
|
disabled = false,
|
|
@@ -95,13 +95,9 @@ const Requirement = _ref => {
|
|
|
95
95
|
text: value
|
|
96
96
|
});
|
|
97
97
|
};
|
|
98
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
className: style.requirement
|
|
102
|
-
}), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
103
|
-
className: (0, _ui.styles)(style.component, is.text && style.inputText, disabled && style.disabled)
|
|
104
|
-
}, /*#__PURE__*/_react.default.createElement(_Message.REQUIREMENT_COMPONENT[type] || _ui.InputText, {
|
|
98
|
+
return /*#__PURE__*/_react.default.createElement(_ui.View, _extends({}, others, {
|
|
99
|
+
className: (0, _ui.styles)(style.requirement, FORM_TYPES.includes(type) && style.form, is.calendar && style.calendar, disabled && style.disabled, others.className)
|
|
100
|
+
}), /*#__PURE__*/_react.default.createElement(_Message.REQUIREMENT_COMPONENT[type] || _ui.InputText, {
|
|
105
101
|
...component,
|
|
106
102
|
...(is.calendar ? {
|
|
107
103
|
format: 'DD/MM/YYYY',
|
|
@@ -118,7 +114,7 @@ const Requirement = _ref => {
|
|
|
118
114
|
onKeyPress: !disabled && is.text ? handleKeyPress : undefined,
|
|
119
115
|
onSubmit: !disabled ? handleSubmit : undefined,
|
|
120
116
|
onValid: () => setValid(true)
|
|
121
|
-
})
|
|
117
|
+
}), !HIDE_SUBMIT_TYPES.includes(type) && !disabled && /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
122
118
|
row: true,
|
|
123
119
|
wide: true,
|
|
124
120
|
className: style.footer
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Message.Requirement.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_components","_Message","_Message2","style","_helpers","_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","HIDE_SUBMIT_TYPES","Requirement","_ref","disabled","requirement","defaultValue","name","required","type","component","onResponse","onRetry","onSubmit","others","dateFormat","translate","useLocale","value","lisa","locale","useStore","setValue","useState","valid","setValid","useEffect","Event","subscribe","EVENT","LOGGED","unsubscribe","is","text","INPUT_TEXT_TYPES","includes","handleChange","next","calendar","from","to","format","undefined","handleKeyPress","event","KEY_ENTER","handleSubmit","intent","response","form","context","L10N","NOTIFICATION_UPDATE_SUCCESS","createElement","Card","offset","className","View","styles","inputText","React","REQUIREMENT_COMPONENT","InputText","range","hint","promocode","LABEL_PROMOCODE_HINT","placeholder","LABEL_TYPE_HERE","ACTION_CONTINUE","onChange","onError","errors","onKeyPress","onValid","row","wide","footer","Button","onPress","exports","propTypes","PropTypes","bool","shape","func"],"sources":["../../../../../src/components/Chat/components/Message/Message.Requirement.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, InputText, styles, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { Card } from './components';\nimport { INPUT_TEXT_TYPES, KEY_ENTER, REQUIREMENT_COMPONENT } from './Message.constants';\nimport {} from './Message.constants';\nimport { L10N } from './Message.l10n';\nimport * as style from './Message.module.css';\nimport { EVENT } from '../../../helpers';\n\nconst HIDE_SUBMIT_TYPES = ['occupation', 'signup', 'login', 'profile'];\n\nconst Requirement = ({\n disabled = false,\n requirement: { defaultValue, name, required, type, ...component } = {},\n onResponse = () => {},\n onRetry = () => {},\n onSubmit = () => {},\n ...others\n}) => {\n const { dateFormat, translate } = useLocale();\n const { value: { lisa, locale } = {} } = useStore();\n\n const [value, setValue] = useState();\n const [valid, setValid] = useState();\n\n useEffect(() => {\n if (type !== 'login') return;\n Event.subscribe(EVENT.LOGGED, onRetry);\n return () => Event.unsubscribe(EVENT.LOGGED, onRetry);\n }, [onRetry, type]);\n\n const is = { [type]: !!type, text: INPUT_TEXT_TYPES.includes(type) };\n\n const handleChange = (value) => {\n let next = value;\n\n if (is.calendar) {\n const [from, to] = value || [];\n const format = 'DD/MM/YYYY';\n next = [from ? dateFormat(from, { format }) : undefined, to ? dateFormat(to, { format }) : undefined];\n setValid(!!from && !!to);\n }\n\n setValue(next);\n };\n\n const handleKeyPress = (event) => {\n if (event.key === KEY_ENTER) handleSubmit();\n };\n\n const handleSubmit = () => {\n const { intent, response: { form = {}, value: context = {} } = {} } = lisa;\n if (intent === 'PROFILE') return onResponse({ text: translate(L10N.NOTIFICATION_UPDATE_SUCCESS) });\n\n onSubmit({\n intent,\n context,\n form: { ...form, [name]: is.text && !required && !value ? ' ' : value },\n });\n\n if (is.text) onResponse({ text: value });\n };\n\n return (\n <Card {...others} disabled={disabled} offset={false} className={style.requirement}>\n <View className={styles(style.component, is.text && style.inputText, disabled && style.disabled)}>\n {React.createElement(REQUIREMENT_COMPONENT[type] || InputText, {\n ...component,\n ...(is.calendar ? { format: 'DD/MM/YYYY', range: true } : {}),\n lisa: true,\n hint: is.promocode ? translate(L10N.LABEL_PROMOCODE_HINT) : undefined,\n locale,\n placeholder: is.text ? translate(L10N.LABEL_TYPE_HERE) : undefined,\n text: translate(L10N.ACTION_CONTINUE),\n value: value || defaultValue,\n onChange: handleChange,\n onError: (errors) => setValid(!errors),\n onKeyPress: !disabled && is.text ? handleKeyPress : undefined,\n onSubmit: !disabled ? handleSubmit : undefined,\n onValid: () => setValid(true),\n })}\n </View>\n\n {!HIDE_SUBMIT_TYPES.includes(type) && !disabled && (\n <View row wide className={style.footer}>\n <Button disabled={disabled || (required && !valid)} onPress={handleSubmit}>\n {translate(L10N.ACTION_CONTINUE)}\n </Button>\n </View>\n )}\n </Card>\n );\n};\n\nRequirement.propTypes = {\n disabled: PropTypes.bool,\n requirement: PropTypes.shape({}),\n onResponse: PropTypes.func,\n onRetry: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Requirement };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Message.Requirement.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_Message","_Message2","style","_helpers","_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","HIDE_SUBMIT_TYPES","FORM_TYPES","Requirement","_ref","disabled","requirement","defaultValue","name","required","type","component","onResponse","onRetry","onSubmit","others","dateFormat","translate","useLocale","value","lisa","locale","useStore","setValue","useState","valid","setValid","useEffect","Event","subscribe","EVENT","LOGGED","unsubscribe","is","text","INPUT_TEXT_TYPES","includes","handleChange","next","calendar","from","to","format","undefined","handleKeyPress","event","KEY_ENTER","handleSubmit","intent","response","form","context","L10N","NOTIFICATION_UPDATE_SUCCESS","createElement","View","className","styles","React","REQUIREMENT_COMPONENT","InputText","range","hint","promocode","LABEL_PROMOCODE_HINT","placeholder","LABEL_TYPE_HERE","ACTION_CONTINUE","onChange","onError","errors","onKeyPress","onValid","row","wide","footer","Button","onPress","exports","propTypes","PropTypes","bool","shape","func"],"sources":["../../../../../src/components/Chat/components/Message/Message.Requirement.jsx"],"sourcesContent":["import { Event, useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Button, InputText, styles, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useState } from 'react';\n\nimport { INPUT_TEXT_TYPES, KEY_ENTER, REQUIREMENT_COMPONENT } from './Message.constants';\nimport {} from './Message.constants';\nimport { L10N } from './Message.l10n';\nimport * as style from './Message.module.css';\nimport { EVENT } from '../../../helpers';\n\nconst HIDE_SUBMIT_TYPES = ['login', 'occupation', 'profile', 'room', 'signup'];\nconst FORM_TYPES = ['calendar', 'login', 'occupation', 'profile', 'signup', 'text', 'password', 'email', 'number'];\n\nconst Requirement = ({\n disabled = false,\n requirement: { defaultValue, name, required, type, ...component } = {},\n onResponse = () => {},\n onRetry = () => {},\n onSubmit = () => {},\n ...others\n}) => {\n const { dateFormat, translate } = useLocale();\n const { value: { lisa, locale } = {} } = useStore();\n\n const [value, setValue] = useState();\n const [valid, setValid] = useState();\n\n useEffect(() => {\n if (type !== 'login') return;\n Event.subscribe(EVENT.LOGGED, onRetry);\n return () => Event.unsubscribe(EVENT.LOGGED, onRetry);\n }, [onRetry, type]);\n\n const is = { [type]: !!type, text: INPUT_TEXT_TYPES.includes(type) };\n\n const handleChange = (value) => {\n let next = value;\n\n if (is.calendar) {\n const [from, to] = value || [];\n const format = 'DD/MM/YYYY';\n next = [from ? dateFormat(from, { format }) : undefined, to ? dateFormat(to, { format }) : undefined];\n setValid(!!from && !!to);\n }\n\n setValue(next);\n };\n\n const handleKeyPress = (event) => {\n if (event.key === KEY_ENTER) handleSubmit();\n };\n\n const handleSubmit = () => {\n const { intent, response: { form = {}, value: context = {} } = {} } = lisa;\n if (intent === 'PROFILE') return onResponse({ text: translate(L10N.NOTIFICATION_UPDATE_SUCCESS) });\n\n onSubmit({\n intent,\n context,\n form: { ...form, [name]: is.text && !required && !value ? ' ' : value },\n });\n\n if (is.text) onResponse({ text: value });\n };\n\n return (\n <View\n {...others}\n className={styles(\n style.requirement,\n FORM_TYPES.includes(type) && style.form,\n is.calendar && style.calendar,\n disabled && style.disabled,\n others.className,\n )}\n >\n {React.createElement(REQUIREMENT_COMPONENT[type] || InputText, {\n ...component,\n ...(is.calendar ? { format: 'DD/MM/YYYY', range: true } : {}),\n lisa: true,\n hint: is.promocode ? translate(L10N.LABEL_PROMOCODE_HINT) : undefined,\n locale,\n placeholder: is.text ? translate(L10N.LABEL_TYPE_HERE) : undefined,\n text: translate(L10N.ACTION_CONTINUE),\n value: value || defaultValue,\n onChange: handleChange,\n onError: (errors) => setValid(!errors),\n onKeyPress: !disabled && is.text ? handleKeyPress : undefined,\n onSubmit: !disabled ? handleSubmit : undefined,\n onValid: () => setValid(true),\n })}\n\n {!HIDE_SUBMIT_TYPES.includes(type) && !disabled && (\n <View row wide className={style.footer}>\n <Button disabled={disabled || (required && !valid)} onPress={handleSubmit}>\n {translate(L10N.ACTION_CONTINUE)}\n </Button>\n </View>\n )}\n </View>\n );\n};\n\nRequirement.propTypes = {\n disabled: PropTypes.bool,\n requirement: PropTypes.shape({}),\n onResponse: PropTypes.func,\n onRetry: PropTypes.func,\n onSubmit: PropTypes.func,\n};\n\nexport { Requirement };\n"],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.REQUIREMENT_COMPONENT = exports.KEY_ENTER = exports.INTENT_COMPONENT = exports.INPUT_TEXT_TYPES = void 0;
|
|
7
7
|
var _ui = require("@mirai/ui");
|
|
8
8
|
var _components = require("./components");
|
|
9
|
+
var _List = require("./components/List/List.Room");
|
|
9
10
|
var _intents = require("./intents");
|
|
10
11
|
var _shared__ = require("../../../__shared__");
|
|
11
12
|
var _Settings = require("../../../Profile/components/Settings/Settings.Account");
|
|
@@ -30,6 +31,7 @@ const REQUIREMENT_COMPONENT = exports.REQUIREMENT_COMPONENT = {
|
|
|
30
31
|
list: _components.List,
|
|
31
32
|
signup: _Signup.Signup,
|
|
32
33
|
login: _intents.Login,
|
|
33
|
-
profile: _Settings.Account
|
|
34
|
+
profile: _Settings.Account,
|
|
35
|
+
room: _List.ListRoom
|
|
34
36
|
};
|
|
35
37
|
//# sourceMappingURL=Message.constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Message.constants.js","names":["_ui","require","_components","_intents","_shared__","_Settings","_Signup","INPUT_TEXT_TYPES","exports","INTENT_COMPONENT","BOOKING_CREATE","undefined","BOOKING_CANCEL","BOOKING_UPDATE","BOOKING_QUERY","BookingQuery","FAREWELLS","GREETINGS","HOTEL_INFO","HotelInfo","KEY_ENTER","REQUIREMENT_COMPONENT","default","InputText","calendar","Calendar","occupation","Occupation","list","List","signup","Signup","login","Login","profile","Account"],"sources":["../../../../../src/components/Chat/components/Message/Message.constants.js"],"sourcesContent":["import { Calendar, InputText } from '@mirai/ui';\n\nimport { List } from './components';\nimport { BookingQuery, HotelInfo } from './intents';\nimport { Login } from './intents';\nimport { Occupation } from '../../../__shared__';\nimport { Account } from '../../../Profile/components/Settings/Settings.Account';\nimport { Signup } from '../../../Signup';\n\nconst INPUT_TEXT_TYPES = ['text', 'password', 'email', 'number'];\n\nconst INTENT_COMPONENT = {\n BOOKING_CREATE: undefined,\n BOOKING_CANCEL: undefined,\n BOOKING_UPDATE: undefined,\n BOOKING_QUERY: BookingQuery,\n FAREWELLS: undefined,\n GREETINGS: undefined,\n HOTEL_INFO: HotelInfo,\n // ! TODO: Disabled for now\n // SIGNUP: Signup,\n};\n\nconst KEY_ENTER = 'Enter';\n\nconst REQUIREMENT_COMPONENT = {\n default: InputText,\n calendar: Calendar,\n occupation: Occupation,\n list: List,\n signup: Signup,\n login: Login,\n profile: Account,\n};\n\nexport { INPUT_TEXT_TYPES, INTENT_COMPONENT, KEY_ENTER, REQUIREMENT_COMPONENT };\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,
|
|
1
|
+
{"version":3,"file":"Message.constants.js","names":["_ui","require","_components","_List","_intents","_shared__","_Settings","_Signup","INPUT_TEXT_TYPES","exports","INTENT_COMPONENT","BOOKING_CREATE","undefined","BOOKING_CANCEL","BOOKING_UPDATE","BOOKING_QUERY","BookingQuery","FAREWELLS","GREETINGS","HOTEL_INFO","HotelInfo","KEY_ENTER","REQUIREMENT_COMPONENT","default","InputText","calendar","Calendar","occupation","Occupation","list","List","signup","Signup","login","Login","profile","Account","room","ListRoom"],"sources":["../../../../../src/components/Chat/components/Message/Message.constants.js"],"sourcesContent":["import { Calendar, InputText } from '@mirai/ui';\n\nimport { List } from './components';\nimport { ListRoom } from './components/List/List.Room';\nimport { BookingQuery, HotelInfo } from './intents';\nimport { Login } from './intents';\nimport { Occupation } from '../../../__shared__';\nimport { Account } from '../../../Profile/components/Settings/Settings.Account';\nimport { Signup } from '../../../Signup';\n\nconst INPUT_TEXT_TYPES = ['text', 'password', 'email', 'number'];\n\nconst INTENT_COMPONENT = {\n BOOKING_CREATE: undefined,\n BOOKING_CANCEL: undefined,\n BOOKING_UPDATE: undefined,\n BOOKING_QUERY: BookingQuery,\n FAREWELLS: undefined,\n GREETINGS: undefined,\n HOTEL_INFO: HotelInfo,\n // ! TODO: Disabled for now\n // SIGNUP: Signup,\n};\n\nconst KEY_ENTER = 'Enter';\n\nconst REQUIREMENT_COMPONENT = {\n default: InputText,\n calendar: Calendar,\n occupation: Occupation,\n list: List,\n signup: Signup,\n login: Login,\n profile: Account,\n room: ListRoom,\n};\n\nexport { INPUT_TEXT_TYPES, INTENT_COMPONENT, KEY_ENTER, REQUIREMENT_COMPONENT };\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAEA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AAEA,MAAMO,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC;AAEhE,MAAME,gBAAgB,GAAAD,OAAA,CAAAC,gBAAA,GAAG;EACvBC,cAAc,EAAEC,SAAS;EACzBC,cAAc,EAAED,SAAS;EACzBE,cAAc,EAAEF,SAAS;EACzBG,aAAa,EAAEC,qBAAY;EAC3BC,SAAS,EAAEL,SAAS;EACpBM,SAAS,EAAEN,SAAS;EACpBO,UAAU,EAAEC;EACZ;EACA;AACF,CAAC;AAED,MAAMC,SAAS,GAAAZ,OAAA,CAAAY,SAAA,GAAG,OAAO;AAEzB,MAAMC,qBAAqB,GAAAb,OAAA,CAAAa,qBAAA,GAAG;EAC5BC,OAAO,EAAEC,aAAS;EAClBC,QAAQ,EAAEC,YAAQ;EAClBC,UAAU,EAAEC,oBAAU;EACtBC,IAAI,EAAEC,gBAAI;EACVC,MAAM,EAAEC,cAAM;EACdC,KAAK,EAAEC,cAAK;EACZC,OAAO,EAAEC,iBAAO;EAChBC,IAAI,EAAEC;AACR,CAAC"}
|
|
@@ -79,23 +79,37 @@
|
|
|
79
79
|
padding: var(--mirai-chat-message-offset);
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
.requirement
|
|
82
|
+
.requirement {
|
|
83
|
+
width: 100%;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.requirement.disabled {
|
|
83
87
|
filter: grayscale(1);
|
|
84
88
|
pointer-events: none;
|
|
85
89
|
}
|
|
86
90
|
|
|
87
|
-
.requirement
|
|
91
|
+
.requirement.form {
|
|
92
|
+
border: solid var(--mirai-chat-border-size) var(--mirai-ui-content-border);
|
|
93
|
+
border-radius: var(--mirai-chat-border-radius);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.requirement > ui-input-text {
|
|
88
97
|
padding: var(--mirai-chat-space) var(--mirai-chat-space) 0 var(--mirai-chat-space);
|
|
89
98
|
}
|
|
90
99
|
|
|
91
|
-
.requirement
|
|
100
|
+
.requirement > *:not(ui-form) {
|
|
92
101
|
width: 100%;
|
|
93
102
|
}
|
|
94
103
|
|
|
95
104
|
.requirement .footer {
|
|
105
|
+
border-top: solid var(--mirai-chat-border-size) var(--mirai-ui-content-border);
|
|
96
106
|
gap: var(--mirai-chat-space);
|
|
97
107
|
justify-content: flex-end;
|
|
98
|
-
padding:
|
|
108
|
+
padding: var(--mirai-chat-space);
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.requirement + ui-pressable {
|
|
112
|
+
margin-top: var(--mirai-chat-space);
|
|
99
113
|
}
|
|
100
114
|
|
|
101
115
|
.spinner {
|
|
@@ -149,7 +163,18 @@
|
|
|
149
163
|
/* M & L */
|
|
150
164
|
@media only screen and (min-width: 481px) {
|
|
151
165
|
.content {
|
|
152
|
-
max-width:
|
|
166
|
+
max-width: 100%;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
.requirement.form:not(.calendar) {
|
|
170
|
+
max-width: calc(
|
|
171
|
+
calc(var(--mirai-chat-content-max-width) / 2) -
|
|
172
|
+
calc(calc(var(--mirai-chat-space) / 2) + calc(var(--mirai-chat-border-size) * 2))
|
|
173
|
+
);
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
.requirement.form.calendar {
|
|
177
|
+
max-width: fit-content;
|
|
153
178
|
}
|
|
154
179
|
}
|
|
155
180
|
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ListRoom = void 0;
|
|
7
|
+
var _dataSources = require("@mirai/data-sources");
|
|
8
|
+
var _locale = require("@mirai/locale");
|
|
9
|
+
var _ui = require("@mirai/ui");
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _List = require("./List.l10n");
|
|
13
|
+
var style = _interopRequireWildcard(require("./List.Room.module.css"));
|
|
14
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
15
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
18
|
+
const ListRoom = _ref => {
|
|
19
|
+
let {
|
|
20
|
+
options = [],
|
|
21
|
+
url,
|
|
22
|
+
...others
|
|
23
|
+
} = _ref;
|
|
24
|
+
const [selected, setSelected] = (0, _react.useState)();
|
|
25
|
+
const {
|
|
26
|
+
currencyFormat,
|
|
27
|
+
translate
|
|
28
|
+
} = (0, _locale.useLocale)();
|
|
29
|
+
const {
|
|
30
|
+
value: {
|
|
31
|
+
currency
|
|
32
|
+
} = {}
|
|
33
|
+
} = (0, _dataSources.useStore)();
|
|
34
|
+
const handlePress = id => {
|
|
35
|
+
setSelected(id);
|
|
36
|
+
window.location = "".concat(url, "&roomTypeId=").concat(id);
|
|
37
|
+
};
|
|
38
|
+
const currencyFormatProps = {
|
|
39
|
+
currency,
|
|
40
|
+
maximumFractionDigits: 0,
|
|
41
|
+
minimumFractionDigits: 0
|
|
42
|
+
};
|
|
43
|
+
return /*#__PURE__*/_react.default.createElement(_ui.View, _extends({}, others, {
|
|
44
|
+
className: (0, _ui.styles)(style.list, others.className)
|
|
45
|
+
}), options.filter(item => selected ? item.id === selected : true).map(item => {
|
|
46
|
+
var _images$;
|
|
47
|
+
const {
|
|
48
|
+
id,
|
|
49
|
+
name,
|
|
50
|
+
description,
|
|
51
|
+
boards: [{
|
|
52
|
+
dayPrice,
|
|
53
|
+
price,
|
|
54
|
+
originalPrice
|
|
55
|
+
} = {}] = [],
|
|
56
|
+
images = []
|
|
57
|
+
} = item;
|
|
58
|
+
return /*#__PURE__*/_react.default.createElement(_ui.Pressable, {
|
|
59
|
+
key: id,
|
|
60
|
+
onPress: id ? () => handlePress(id) : undefined,
|
|
61
|
+
className: style.item
|
|
62
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
63
|
+
className: style.image,
|
|
64
|
+
style: {
|
|
65
|
+
backgroundImage: "url(".concat((_images$ = images[0]) === null || _images$ === void 0 ? void 0 : _images$.thumbnail, ")")
|
|
66
|
+
}
|
|
67
|
+
}), /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
68
|
+
className: style.content
|
|
69
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.View, null, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
70
|
+
bold: true,
|
|
71
|
+
brand: true,
|
|
72
|
+
headline: true
|
|
73
|
+
}, name), /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
74
|
+
light: true,
|
|
75
|
+
small: true
|
|
76
|
+
}, description.length > 56 ? "".concat(description.substr(0, 56), "...") : description)), /*#__PURE__*/_react.default.createElement(_ui.View, null, /*#__PURE__*/_react.default.createElement(_ui.View, {
|
|
77
|
+
row: true,
|
|
78
|
+
className: style.price
|
|
79
|
+
}, /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
80
|
+
bold: true,
|
|
81
|
+
headline: true,
|
|
82
|
+
level: price >= 10000 ? 3 : 2
|
|
83
|
+
}, currencyFormat({
|
|
84
|
+
...currencyFormatProps,
|
|
85
|
+
value: price
|
|
86
|
+
})), price !== originalPrice && /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
87
|
+
action: true,
|
|
88
|
+
light: true,
|
|
89
|
+
className: style.lineThrough
|
|
90
|
+
}, currencyFormat({
|
|
91
|
+
...currencyFormatProps,
|
|
92
|
+
value: originalPrice
|
|
93
|
+
}))), /*#__PURE__*/_react.default.createElement(_ui.Text, {
|
|
94
|
+
light: true,
|
|
95
|
+
small: true
|
|
96
|
+
}, "".concat(currencyFormat({
|
|
97
|
+
...currencyFormatProps,
|
|
98
|
+
value: dayPrice
|
|
99
|
+
}), " ").concat(translate(_List.L10N.LABEL_PER_NIGHT))))));
|
|
100
|
+
}));
|
|
101
|
+
};
|
|
102
|
+
exports.ListRoom = ListRoom;
|
|
103
|
+
ListRoom.propTypes = {
|
|
104
|
+
options: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
105
|
+
id: _propTypes.default.string,
|
|
106
|
+
label: _propTypes.default.label
|
|
107
|
+
})),
|
|
108
|
+
url: _propTypes.default.string
|
|
109
|
+
};
|
|
110
|
+
//# sourceMappingURL=List.Room.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"List.Room.js","names":["_dataSources","require","_locale","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_List","style","_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","ListRoom","_ref","options","url","others","selected","setSelected","useState","currencyFormat","translate","useLocale","value","currency","useStore","handlePress","id","window","location","concat","currencyFormatProps","maximumFractionDigits","minimumFractionDigits","createElement","View","className","styles","list","filter","item","map","_images$","name","description","boards","dayPrice","price","originalPrice","images","Pressable","onPress","undefined","image","backgroundImage","thumbnail","content","Text","bold","brand","headline","light","small","substr","row","level","action","lineThrough","L10N","LABEL_PER_NIGHT","exports","propTypes","PropTypes","arrayOf","shape","string","label"],"sources":["../../../../../../../src/components/Chat/components/Message/components/List/List.Room.jsx"],"sourcesContent":["import { useStore } from '@mirai/data-sources';\nimport { useLocale } from '@mirai/locale';\nimport { Pressable, styles, Text, View } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useState } from 'react';\n\nimport { L10N } from './List.l10n';\nimport * as style from './List.Room.module.css';\n\nconst ListRoom = ({ options = [], url, ...others }) => {\n const [selected, setSelected] = useState();\n const { currencyFormat, translate } = useLocale();\n const { value: { currency } = {} } = useStore();\n\n const handlePress = (id) => {\n setSelected(id);\n window.location = `${url}&roomTypeId=${id}`;\n };\n\n const currencyFormatProps = { currency, maximumFractionDigits: 0, minimumFractionDigits: 0 };\n\n return (\n <View {...others} className={styles(style.list, others.className)}>\n {options\n .filter((item) => (selected ? item.id === selected : true))\n .map((item) => {\n const { id, name, description, boards: [{ dayPrice, price, originalPrice } = {}] = [], images = [] } = item;\n\n return (\n <Pressable key={id} onPress={id ? () => handlePress(id) : undefined} className={style.item}>\n <View className={style.image} style={{ backgroundImage: `url(${images[0]?.thumbnail})` }} />\n <View className={style.content}>\n <View>\n <Text bold brand headline>\n {name}\n </Text>\n <Text light small>\n {description.length > 56 ? `${description.substr(0, 56)}...` : description}\n </Text>\n </View>\n\n <View>\n <View row className={style.price}>\n <Text bold headline level={price >= 10000 ? 3 : 2}>\n {currencyFormat({ ...currencyFormatProps, value: price })}\n </Text>\n\n {price !== originalPrice && (\n <Text action light className={style.lineThrough}>\n {currencyFormat({ ...currencyFormatProps, value: originalPrice })}\n </Text>\n )}\n </View>\n\n <Text light small>\n {`${currencyFormat({ ...currencyFormatProps, value: dayPrice })} ${translate(\n L10N.LABEL_PER_NIGHT,\n )}`}\n </Text>\n </View>\n </View>\n </Pressable>\n );\n })}\n </View>\n );\n};\n\nListRoom.propTypes = {\n options: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string,\n label: PropTypes.label,\n }),\n ),\n url: PropTypes.string,\n};\n\nexport { ListRoom };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
.list {
|
|
2
|
+
gap: var(--mirai-chat-space);
|
|
3
|
+
width: 100%;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.item {
|
|
7
|
+
border: solid var(--mirai-chat-border-size) var(--mirai-ui-content-border);
|
|
8
|
+
border-radius: var(--mirai-chat-border-radius);
|
|
9
|
+
display: flex;
|
|
10
|
+
flex-direction: row;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.image {
|
|
14
|
+
background-color: var(--mirai-ui-content-background);
|
|
15
|
+
background-position: center;
|
|
16
|
+
background-size: cover;
|
|
17
|
+
border-top-left-radius: var(--mirai-chat-border-radius);
|
|
18
|
+
border-bottom-left-radius: var(--mirai-chat-border-radius);
|
|
19
|
+
height: calc(var(--mirai-ui-space-XL) * 3);
|
|
20
|
+
min-height: calc(var(--mirai-ui-space-XL) * 3);
|
|
21
|
+
min-width: calc(var(--mirai-ui-space-XL) * 3);
|
|
22
|
+
width: calc(var(--mirai-ui-space-XL) * 3);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.content {
|
|
26
|
+
padding: var(--mirai-ui-space-S) var(--mirai-ui-space-M);
|
|
27
|
+
justify-content: space-between;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.price {
|
|
31
|
+
align-items: center;
|
|
32
|
+
gap: var(--mirai-ui-space-XS);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.lineThrough {
|
|
36
|
+
text-decoration: line-through;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/* S */
|
|
40
|
+
@media only screen and (max-width: 480px) {
|
|
41
|
+
.item {
|
|
42
|
+
flex-basis: 100%;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/* M & L */
|
|
47
|
+
@media only screen and (min-width: 481px) {
|
|
48
|
+
.list {
|
|
49
|
+
flex-wrap: wrap;
|
|
50
|
+
flex-direction: row;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.item {
|
|
54
|
+
flex-basis: calc(50% - calc(calc(var(--mirai-chat-space) / 2) + calc(var(--mirai-chat-border-size) * 2)));
|
|
55
|
+
flex-grow: 1;
|
|
56
|
+
max-width: calc(
|
|
57
|
+
calc(var(--mirai-chat-content-max-width) / 2) -
|
|
58
|
+
calc(calc(var(--mirai-chat-space) / 2) + calc(var(--mirai-chat-border-size) * 2))
|
|
59
|
+
);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.item:hover {
|
|
63
|
+
background-color: var(--mirai-ui-content);
|
|
64
|
+
cursor: pointer;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.item:hover ui-text {
|
|
68
|
+
color: var(--mirai-ui-base);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"List.l10n.js","names":["L10N","exports","LABEL_PER_NIGHT","id"],"sources":["../../../../../../../src/components/Chat/components/Message/components/List/List.l10n.js"],"sourcesContent":["export const L10N = {\n LABEL_PER_NIGHT: { id: 'finder.label.per_night' },\n};\n"],"mappings":";;;;;;AAAO,MAAMA,IAAI,GAAAC,OAAA,CAAAD,IAAA,GAAG;EAClBE,eAAe,EAAE;IAAEC,EAAE,EAAE;EAAyB;AAClD,CAAC"}
|
package/build/theme.css
CHANGED
|
@@ -31,7 +31,6 @@
|
|
|
31
31
|
--mirai-chat-border-radius: var(--mirai-ui-space-S);
|
|
32
32
|
--mirai-chat-border-size: 1px;
|
|
33
33
|
--mirai-chat-box-shadow: var(--mirai-ui-shadow);
|
|
34
|
-
--mirai-chat-content-max-width: 768px;
|
|
35
34
|
--mirai-chat-layer: var(--mirai-ui-layer-XL);
|
|
36
35
|
--mirai-chat-space: var(--mirai-ui-space-M);
|
|
37
36
|
--mirai-chat-text-font: var(--mirai-ui-font-medium);
|
|
@@ -40,6 +39,7 @@
|
|
|
40
39
|
--mirai-chat-text-line-height: var(--mirai-ui-line-height-paragraph);
|
|
41
40
|
--mirai-chat-input-background: var(--mirai-ui-content-background);
|
|
42
41
|
--mirai-chat-message-offset: calc(var(--mirai-chat-space) / 1.5) var(--mirai-chat-space);
|
|
42
|
+
--mirai-chat-content-max-width: calc(820px - calc(var(--mirai-chat-space) * 2));
|
|
43
43
|
|
|
44
44
|
/* Deals */
|
|
45
45
|
/* ?? */
|
|
@@ -114,3 +114,10 @@
|
|
|
114
114
|
--mirai-session-icon-color: var(--mirai-session-color);
|
|
115
115
|
--mirai-session-icon-color-active: var(--mirai-session-color-active);
|
|
116
116
|
}
|
|
117
|
+
|
|
118
|
+
/* M */
|
|
119
|
+
@media only screen and (min-width: 481px) and (max-width: 1179px) {
|
|
120
|
+
:root {
|
|
121
|
+
--mirai-chat-content-max-width: calc(768px - calc(var(--mirai-chat-space) * 2));
|
|
122
|
+
}
|
|
123
|
+
}
|