From 1d5f6b404e9c26bd967589c27b217de03b7fffb2 Mon Sep 17 00:00:00 2001 From: William Grant Date: Wed, 28 Feb 2024 14:52:52 +1100 Subject: [PATCH] feat: update logic for showing the empty convo text --- ts/components/EmptyMessageView.tsx | 22 ++++++++++++++-------- ts/state/selectors/conversations.ts | 7 +++++++ 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/ts/components/EmptyMessageView.tsx b/ts/components/EmptyMessageView.tsx index 585f3f2b8..2421bc1c1 100644 --- a/ts/components/EmptyMessageView.tsx +++ b/ts/components/EmptyMessageView.tsx @@ -1,6 +1,8 @@ import { useState } from 'react'; +import { useSelector } from 'react-redux'; import { useMount } from 'react-use'; import styled from 'styled-components'; +import { getLeftPaneConversationIdsCount } from '../state/selectors/conversations'; import { Flex } from './basic/Flex'; import { Spacer2XL, SpacerXS } from './basic/Text'; @@ -65,12 +67,12 @@ const StyledNoConversations = styled(StyledP)` `; export const EmptyMessageView = () => { - const [newAccountCreated, setNewAccountCreated] = useState(true); + const conversationCount = useSelector(getLeftPaneConversationIdsCount); + + const [newAccountCreated, setNewAccountCreated] = useState(false); useMount(() => { const launchCount = window.getSettingValue('launch-count'); - window.log.debug(`WIP: [launch-count] ${launchCount}`); - if (!launchCount || launchCount < 1) { setNewAccountCreated(true); } @@ -101,16 +103,20 @@ export const EmptyMessageView = () => { flexDirection="column" justifyContent="center" alignItems="center" - margin="auto" + margin="0 auto" > full-brand-logo full-brand-text )} - - {window.i18n('conversationsNone')} - - {window.i18n('onboardingHitThePlusButton')} + {!conversationCount ? ( + <> + + {window.i18n('conversationsNone')} + + {window.i18n('onboardingHitThePlusButton')} + + ) : null} ); }; diff --git a/ts/state/selectors/conversations.ts b/ts/state/selectors/conversations.ts index 981e426e3..10032749e 100644 --- a/ts/state/selectors/conversations.ts +++ b/ts/state/selectors/conversations.ts @@ -445,6 +445,13 @@ export const getLeftPaneConversationIds = createSelector( _getLeftPaneConversationIds ); +export const getLeftPaneConversationIdsCount = createSelector( + getLeftPaneConversationIds, + (convoIds: Array) => { + return convoIds.length; + } +); + const getDirectContacts = createSelector(getSortedConversations, _getPrivateFriendsConversations); export const getPrivateContactsPubkeys = createSelector(getDirectContacts, state =>