diff --git a/web/assets.js b/web/assets.js index 0c78e8af4..b017c189f 100644 --- a/web/assets.js +++ b/web/assets.js @@ -1,31 +1,24 @@ // @flow export const assetCacheURLPrefix = 'https://dh9fld3hutpxf.cloudfront.net'; -// Background Illustration -export const backgroundIllustrationAsset = { - fileName: 'background-illustration.svg', - height: '100px', - width: '133px', -}; - // Notifications Modal Illustration: "Focused" export const focusedNotificationsIllustrationAsset = { fileName: 'all-notifs.svg', height: '86px', width: '46px', }; // Notifications Modal Illustration: "Focused (badge only)" export const badgeOnlyNotificationsIllustrationAsset = { fileName: 'badge-notifs.svg', height: '86px', width: '46px', }; // Notifications Modal Illustration: "Background" export const backgroundNotificationsIllustrationAsset = { fileName: 'muted-notifs.svg', height: '86px', width: '46px', }; diff --git a/web/assets/background-illustration.react.js b/web/assets/background-illustration.react.js new file mode 100644 index 000000000..cff77139e --- /dev/null +++ b/web/assets/background-illustration.react.js @@ -0,0 +1,44 @@ +// @flow + +import * as React from 'react'; + +function BackgroundIllustration(): React.Node { + return ( + + + + + + + + ); +} + +export default BackgroundIllustration; diff --git a/web/chat/chat-thread-list.react.js b/web/chat/chat-thread-list.react.js index 8c7000599..b2af2a791 100644 --- a/web/chat/chat-thread-list.react.js +++ b/web/chat/chat-thread-list.react.js @@ -1,80 +1,76 @@ // @flow import invariant from 'invariant'; import * as React from 'react'; import { emptyItemText } from 'lib/shared/thread-utils'; -import { assetCacheURLPrefix, backgroundIllustrationAsset } from '../assets'; +import BackgroundIllustration from '../assets/background-illustration.react'; import Button from '../components/button.react'; import Search from '../components/search.react'; import { useSelector } from '../redux/redux-utils'; import { useOnClickNewThread } from '../selectors/nav-selectors'; import ChatThreadListItem from './chat-thread-list-item.react'; import css from './chat-thread-list.css'; import { ThreadListContext } from './thread-list-provider'; function ChatThreadList(): React.Node { const threadListContext = React.useContext(ThreadListContext); invariant( threadListContext, 'threadListContext should be set in ChatThreadList', ); const { activeTab, threadList, setSearchText, searchText, } = threadListContext; const onClickNewThread = useOnClickNewThread(); const isThreadCreation = useSelector( state => state.navInfo.chatMode === 'create', ); const isBackground = activeTab === 'Background'; const threadComponents: React.Node[] = React.useMemo(() => { const threads = threadList.map(item => ( )); if (threads.length === 0 && isBackground) { threads.push(); } return threads; }, [threadList, isBackground]); return ( <>
{threadComponents}
); } function EmptyItem() { return (
- +
{emptyItemText}
); } export default ChatThreadList;