@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.
Files changed (21) hide show
  1. package/build/components/Chat/Chat.js +0 -20
  2. package/build/components/Chat/Chat.js.map +1 -1
  3. package/build/components/Chat/components/ButtonDispatcher/ButtonDispatcher.js +11 -15
  4. package/build/components/Chat/components/ButtonDispatcher/ButtonDispatcher.js.map +1 -1
  5. package/build/components/Chat/components/ButtonDispatcher/helpers/determinePosition.js +41 -0
  6. package/build/components/Chat/components/ButtonDispatcher/helpers/determinePosition.js.map +1 -0
  7. package/build/components/Chat/components/ButtonDispatcher/helpers/index.js +17 -0
  8. package/build/components/Chat/components/ButtonDispatcher/helpers/index.js.map +1 -0
  9. package/build/components/Chat/components/Message/Message.Requirement.js +6 -10
  10. package/build/components/Chat/components/Message/Message.Requirement.js.map +1 -1
  11. package/build/components/Chat/components/Message/Message.constants.js +3 -1
  12. package/build/components/Chat/components/Message/Message.constants.js.map +1 -1
  13. package/build/components/Chat/components/Message/Message.module.css +30 -5
  14. package/build/components/Chat/components/Message/components/Card.module.css +0 -1
  15. package/build/components/Chat/components/Message/components/List/List.Room.js +110 -0
  16. package/build/components/Chat/components/Message/components/List/List.Room.js.map +1 -0
  17. package/build/components/Chat/components/Message/components/List/List.Room.module.css +70 -0
  18. package/build/components/Chat/components/Message/components/List/List.l10n.js +12 -0
  19. package/build/components/Chat/components/Message/components/List/List.l10n.js.map +1 -0
  20. package/build/theme.css +8 -1
  21. 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("../../../helpers");
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
- right,
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(_helpers.EVENT.MODAL_VISIBLE, callback);
59
- return () => _dataSources.Event.unsubscribe(_helpers.EVENT.MODAL_VISIBLE, callback);
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, left ? style.left : style.right, top ? style.top : style.bottom, ready && !visible && !hide && style.visible),
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: _helpers.ICON.CLOSE
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', 'signup', 'login', 'profile'];
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(_components.Card, _extends({}, others, {
99
- disabled: disabled,
100
- offset: false,
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
- })), !HIDE_SUBMIT_TYPES.includes(type) && !disabled && /*#__PURE__*/_react.default.createElement(_ui.View, {
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,QAAA,GAAAF,OAAA;AAEA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AAEA,MAAMM,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;AACX,CAAC"}
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 .component.disabled {
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 .component.inputText {
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 .component > *:not(ui-form) {
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: calc(var(--mirai-chat-space) / 2) var(--mirai-chat-space) var(--mirai-chat-space) var(--mirai-chat-space);
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: 90%;
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
 
@@ -50,7 +50,6 @@
50
50
  /* M & L */
51
51
  @media only screen and (min-width: 481px) {
52
52
  .card {
53
- min-width: calc(var(--mirai-chat-content-max-width) / 2);
54
53
  width: fit-content;
55
54
  }
56
55
  }
@@ -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":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,GAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAC,uBAAA,CAAAN,OAAA;AAEA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,KAAA,GAAAF,uBAAA,CAAAN,OAAA;AAAgD,SAAAS,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,SAAAJ,wBAAAI,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,SAAAd,uBAAA0B,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;AAEhD,MAAMK,QAAQ,GAAGC,IAAA,IAAsC;EAAA,IAArC;IAAEC,OAAO,GAAG,EAAE;IAAEC,GAAG;IAAE,GAAGC;EAAO,CAAC,GAAAH,IAAA;EAChD,MAAM,CAACI,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC;EAC1C,MAAM;IAAEC,cAAc;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,EAAC,CAAC;EACjD,MAAM;IAAEC,KAAK,EAAE;MAAEC;IAAS,CAAC,GAAG,CAAC;EAAE,CAAC,GAAG,IAAAC,qBAAQ,EAAC,CAAC;EAE/C,MAAMC,WAAW,GAAIC,EAAE,IAAK;IAC1BT,WAAW,CAACS,EAAE,CAAC;IACfC,MAAM,CAACC,QAAQ,MAAAC,MAAA,CAAMf,GAAG,kBAAAe,MAAA,CAAeH,EAAE,CAAE;EAC7C,CAAC;EAED,MAAMI,mBAAmB,GAAG;IAAEP,QAAQ;IAAEQ,qBAAqB,EAAE,CAAC;IAAEC,qBAAqB,EAAE;EAAE,CAAC;EAE5F,oBACExD,MAAA,CAAAU,OAAA,CAAA+C,aAAA,CAAC5D,GAAA,CAAA6D,IAAI,EAAAhC,QAAA,KAAKa,MAAM;IAAEoB,SAAS,EAAE,IAAAC,UAAM,EAACzD,KAAK,CAAC0D,IAAI,EAAEtB,MAAM,CAACoB,SAAS;EAAE,IAC/DtB,OAAO,CACLyB,MAAM,CAAEC,IAAI,IAAMvB,QAAQ,GAAGuB,IAAI,CAACb,EAAE,KAAKV,QAAQ,GAAG,IAAK,CAAC,CAC1DwB,GAAG,CAAED,IAAI,IAAK;IAAA,IAAAE,QAAA;IACb,MAAM;MAAEf,EAAE;MAAEgB,IAAI;MAAEC,WAAW;MAAEC,MAAM,EAAE,CAAC;QAAEC,QAAQ;QAAEC,KAAK;QAAEC;MAAc,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE;MAAEC,MAAM,GAAG;IAAG,CAAC,GAAGT,IAAI;IAE3G,oBACE/D,MAAA,CAAAU,OAAA,CAAA+C,aAAA,CAAC5D,GAAA,CAAA4E,SAAS;MAACxC,GAAG,EAAEiB,EAAG;MAACwB,OAAO,EAAExB,EAAE,GAAG,MAAMD,WAAW,CAACC,EAAE,CAAC,GAAGyB,SAAU;MAAChB,SAAS,EAAExD,KAAK,CAAC4D;IAAK,gBACzF/D,MAAA,CAAAU,OAAA,CAAA+C,aAAA,CAAC5D,GAAA,CAAA6D,IAAI;MAACC,SAAS,EAAExD,KAAK,CAACyE,KAAM;MAACzE,KAAK,EAAE;QAAE0E,eAAe,SAAAxB,MAAA,EAAAY,QAAA,GAASO,MAAM,CAAC,CAAC,CAAC,cAAAP,QAAA,uBAATA,QAAA,CAAWa,SAAS;MAAI;IAAE,CAAE,CAAC,eAC5F9E,MAAA,CAAAU,OAAA,CAAA+C,aAAA,CAAC5D,GAAA,CAAA6D,IAAI;MAACC,SAAS,EAAExD,KAAK,CAAC4E;IAAQ,gBAC7B/E,MAAA,CAAAU,OAAA,CAAA+C,aAAA,CAAC5D,GAAA,CAAA6D,IAAI,qBACH1D,MAAA,CAAAU,OAAA,CAAA+C,aAAA,CAAC5D,GAAA,CAAAmF,IAAI;MAACC,IAAI;MAACC,KAAK;MAACC,QAAQ;IAAA,GACtBjB,IACG,CAAC,eACPlE,MAAA,CAAAU,OAAA,CAAA+C,aAAA,CAAC5D,GAAA,CAAAmF,IAAI;MAACI,KAAK;MAACC,KAAK;IAAA,GACdlB,WAAW,CAACpC,MAAM,GAAG,EAAE,MAAAsB,MAAA,CAAMc,WAAW,CAACmB,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,WAAQnB,WAC3D,CACF,CAAC,eAEPnE,MAAA,CAAAU,OAAA,CAAA+C,aAAA,CAAC5D,GAAA,CAAA6D,IAAI,qBACH1D,MAAA,CAAAU,OAAA,CAAA+C,aAAA,CAAC5D,GAAA,CAAA6D,IAAI;MAAC6B,GAAG;MAAC5B,SAAS,EAAExD,KAAK,CAACmE;IAAM,gBAC/BtE,MAAA,CAAAU,OAAA,CAAA+C,aAAA,CAAC5D,GAAA,CAAAmF,IAAI;MAACC,IAAI;MAACE,QAAQ;MAACK,KAAK,EAAElB,KAAK,IAAI,KAAK,GAAG,CAAC,GAAG;IAAE,GAC/C3B,cAAc,CAAC;MAAE,GAAGW,mBAAmB;MAAER,KAAK,EAAEwB;IAAM,CAAC,CACpD,CAAC,EAENA,KAAK,KAAKC,aAAa,iBACtBvE,MAAA,CAAAU,OAAA,CAAA+C,aAAA,CAAC5D,GAAA,CAAAmF,IAAI;MAACS,MAAM;MAACL,KAAK;MAACzB,SAAS,EAAExD,KAAK,CAACuF;IAAY,GAC7C/C,cAAc,CAAC;MAAE,GAAGW,mBAAmB;MAAER,KAAK,EAAEyB;IAAc,CAAC,CAC5D,CAEJ,CAAC,eAEPvE,MAAA,CAAAU,OAAA,CAAA+C,aAAA,CAAC5D,GAAA,CAAAmF,IAAI;MAACI,KAAK;MAACC,KAAK;IAAA,MAAAhC,MAAA,CACXV,cAAc,CAAC;MAAE,GAAGW,mBAAmB;MAAER,KAAK,EAAEuB;IAAS,CAAC,CAAC,OAAAhB,MAAA,CAAIT,SAAS,CAC1E+C,UAAI,CAACC,eACP,CAAC,CACG,CACF,CACF,CACG,CAAC;EAEhB,CAAC,CACC,CAAC;AAEX,CAAC;AAACC,OAAA,CAAA1D,QAAA,GAAAA,QAAA;AAEFA,QAAQ,CAAC2D,SAAS,GAAG;EACnBzD,OAAO,EAAE0D,kBAAS,CAACC,OAAO,CACxBD,kBAAS,CAACE,KAAK,CAAC;IACd/C,EAAE,EAAE6C,kBAAS,CAACG,MAAM;IACpBC,KAAK,EAAEJ,kBAAS,CAACI;EACnB,CAAC,CACH,CAAC;EACD7D,GAAG,EAAEyD,kBAAS,CAACG;AACjB,CAAC"}
@@ -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,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.L10N = void 0;
7
+ const L10N = exports.L10N = {
8
+ LABEL_PER_NIGHT: {
9
+ id: 'finder.label.per_night'
10
+ }
11
+ };
12
+ //# sourceMappingURL=List.l10n.js.map
@@ -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
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mirai/core",
3
- "version": "0.4.255",
3
+ "version": "0.4.257",
4
4
  "source": "src/index.js",
5
5
  "repository": "https://gitlab.com/miraicorp/dev/frontend/core",
6
6
  "author": "JΛVI <hello@soyjavi.com>",