From e5bae9adcda4d4e6cf2659a67dcd7eee712267d1 Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Wed, 5 Jul 2023 13:14:25 +0200 Subject: [PATCH] Global Search: Remove border for first entry (#3359) --- src/components/left/search/AudioResults.tsx | 13 +++++++++++-- src/components/left/search/FileResults.tsx | 15 +++++++++++++-- src/components/left/search/LeftSearch.scss | 16 ++++++++++++---- src/components/left/search/LinkResults.tsx | 13 +++++++++++-- src/components/left/search/RecentContacts.tsx | 9 ++++++++- src/global/actions/ui/initial.ts | 1 + 6 files changed, 56 insertions(+), 11 deletions(-) diff --git a/src/components/left/search/AudioResults.tsx b/src/components/left/search/AudioResults.tsx index a666d6b99..5179bc42f 100644 --- a/src/components/left/search/AudioResults.tsx +++ b/src/components/left/search/AudioResults.tsx @@ -11,6 +11,7 @@ import { createMapStateToProps } from './helpers/createMapStateToProps'; import { formatMonthAndYear, toYearMonth } from '../../../util/dateFormat'; import { getSenderName } from './helpers/getSenderName'; import { throttle } from '../../../util/schedulers'; +import buildClassName from '../../../util/buildClassName'; import useAsyncRendering from '../../right/hooks/useAsyncRendering'; import useLang from '../../../hooks/useLang'; @@ -79,7 +80,8 @@ const AudioResults: FC = ({ function renderList() { return foundMessages.map((message, index) => { - const shouldDrawDateDivider = index === 0 + const isFirst = index === 0; + const shouldDrawDateDivider = isFirst || toYearMonth(message.date) !== toYearMonth(foundMessages[index - 1].date); return (
= ({ key={message.id} > {shouldDrawDateDivider && ( -

+

{formatMonthAndYear(lang, new Date(message.date * 1000))}

)} diff --git a/src/components/left/search/FileResults.tsx b/src/components/left/search/FileResults.tsx index f2fd1c6ee..06c1cb267 100644 --- a/src/components/left/search/FileResults.tsx +++ b/src/components/left/search/FileResults.tsx @@ -15,6 +15,7 @@ import { formatMonthAndYear, toYearMonth } from '../../../util/dateFormat'; import { getSenderName } from './helpers/getSenderName'; import { throttle } from '../../../util/schedulers'; import { getMessageDocument } from '../../../global/helpers'; +import buildClassName from '../../../util/buildClassName'; import useAsyncRendering from '../../right/hooks/useAsyncRendering'; import useLang from '../../../hooks/useLang'; @@ -88,7 +89,8 @@ const FileResults: FC = ({ function renderList() { return foundMessages.map((message, index) => { - const shouldDrawDateDivider = index === 0 + const isFirst = index === 0; + const shouldDrawDateDivider = isFirst || toYearMonth(message.date) !== toYearMonth(foundMessages[index - 1].date); return (
= ({ key={message.id} > {shouldDrawDateDivider && ( -

{formatMonthAndYear(lang, new Date(message.date * 1000))}

+

+ {formatMonthAndYear(lang, new Date(message.date * 1000))} +

)} = ({ function renderList() { return foundMessages.map((message, index) => { - const shouldDrawDateDivider = index === 0 + const isFirst = index === 0; + const shouldDrawDateDivider = isFirst || toYearMonth(message.date) !== toYearMonth(foundMessages[index - 1].date); return (
= ({ key={message.id} > {shouldDrawDateDivider && ( -

+

{formatMonthAndYear(lang, new Date(message.date * 1000))}

)} diff --git a/src/components/left/search/RecentContacts.tsx b/src/components/left/search/RecentContacts.tsx index 882312e15..ae18d97e9 100644 --- a/src/components/left/search/RecentContacts.tsx +++ b/src/components/left/search/RecentContacts.tsx @@ -9,6 +9,7 @@ import type { ApiUser } from '../../../api/types'; import { getUserFirstOrLastName } from '../../../global/helpers'; import renderText from '../../common/helpers/renderText'; import { throttle } from '../../../util/schedulers'; +import buildClassName from '../../../util/buildClassName'; import useHorizontalScroll from '../../../hooks/useHorizontalScroll'; import useLang from '../../../hooks/useLang'; @@ -92,7 +93,13 @@ const RecentContacts: FC = ({ )} {recentlyFoundChatIds && (
-

+

{lang('Recent')}