Skip to content

Commit 8137b54

Browse files
authored
fix: Prevent displaying unread count with empty unread since (#652)
### Description Of Changes * fix: Do not display the UnreadCount comp when unreadSince is null [UIKIT-4189](https://sendbird.atlassian.net/browse/UIKIT-4189)
1 parent 042e5e5 commit 8137b54

File tree

2 files changed

+26
-20
lines changed

2 files changed

+26
-20
lines changed

src/modules/Channel/components/MessageList/index.tsx

+22-20
Original file line numberDiff line numberDiff line change
@@ -208,26 +208,28 @@ const MessageList: React.FC<MessageListProps> = ({
208208
{currentGroupChannel?.isFrozen && (
209209
<FrozenNotification className="sendbird-conversation__messages__notification" />
210210
)}
211-
<UnreadCount
212-
className="sendbird-conversation__messages__notification"
213-
count={currentGroupChannel?.unreadMessageCount}
214-
time={unreadSince}
215-
onClick={() => {
216-
if (scrollRef?.current?.scrollTop) {
217-
scrollRef.current.scrollTop = (scrollRef?.current?.scrollHeight ?? 0) - (scrollRef?.current?.offsetHeight ?? 0);
218-
}
219-
if (!disableMarkAsRead && !!currentGroupChannel) {
220-
markAsReadScheduler.push(currentGroupChannel);
221-
messagesDispatcher({
222-
type: messageActionTypes.MARK_AS_READ,
223-
payload: { channel: currentGroupChannel },
224-
});
225-
}
226-
setInitialTimeStamp(null);
227-
setAnimatedMessageId(null);
228-
setHighLightedMessageId(null);
229-
}}
230-
/>
211+
{unreadSince && (
212+
<UnreadCount
213+
className="sendbird-conversation__messages__notification"
214+
count={currentGroupChannel?.unreadMessageCount}
215+
time={unreadSince}
216+
onClick={() => {
217+
if (scrollRef?.current?.scrollTop) {
218+
scrollRef.current.scrollTop = (scrollRef?.current?.scrollHeight ?? 0) - (scrollRef?.current?.offsetHeight ?? 0);
219+
}
220+
if (!disableMarkAsRead && !!currentGroupChannel) {
221+
markAsReadScheduler.push(currentGroupChannel);
222+
messagesDispatcher({
223+
type: messageActionTypes.MARK_AS_READ,
224+
payload: { channel: currentGroupChannel },
225+
});
226+
}
227+
setInitialTimeStamp(null);
228+
setAnimatedMessageId(null);
229+
setHighLightedMessageId(null);
230+
}}
231+
/>
232+
)}
231233
{
232234
// This flag is an unmatched variable
233235
scrollBottom > SCROLL_BOTTOM_PADDING && (

src/modules/Channel/context/dux/initialState.js

+4
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@ export default {
1414
latestMessageTimeStamp: 0,
1515
emojiContainer: {},
1616
unreadSince: null,
17+
/**
18+
* unreadSince is a formatted date information string
19+
* It's used only for the {unreadSince && <UnreadCount time={unreadSince} />}
20+
*/
1721
isInvalid: false,
1822
messageListParams: null,
1923
};

0 commit comments

Comments
 (0)