From 7618e648da8f93086e00d1feffe6e08a105e9ea4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o?= <leopold.chappuis@savoirfairelinux.com> Date: Tue, 11 Feb 2025 14:15:36 -0500 Subject: [PATCH] cleanup: move timestamp to number Change-Id: I65e822746155c9a2367d49606322ea8c61cbc723 --- client/src/components/ConversationSettingsFileItem.tsx | 2 +- client/src/components/ConversationSummaryList.tsx | 7 +------ client/src/components/MediaViewer.tsx | 4 ++-- client/src/components/Message.tsx | 8 ++++---- client/src/components/SelectConversationList.tsx | 2 +- common/src/interfaces/conversation.ts | 2 +- server/src/jamid/jamid.ts | 2 +- 7 files changed, 11 insertions(+), 16 deletions(-) diff --git a/client/src/components/ConversationSettingsFileItem.tsx b/client/src/components/ConversationSettingsFileItem.tsx index 95ebba15..fd23103c 100644 --- a/client/src/components/ConversationSettingsFileItem.tsx +++ b/client/src/components/ConversationSettingsFileItem.tsx @@ -32,7 +32,7 @@ import MediaViewer from './MediaViewer' interface ConversationSettingsFileItemProps { displayName: string - timeStamp: string + timeStamp: number totalSize: number fileId: string author: string diff --git a/client/src/components/ConversationSummaryList.tsx b/client/src/components/ConversationSummaryList.tsx index 40c44aa4..45f762d1 100644 --- a/client/src/components/ConversationSummaryList.tsx +++ b/client/src/components/ConversationSummaryList.tsx @@ -61,12 +61,7 @@ export const ConversationSummaryList = ({ conversationsSummaries }: Conversation if (conversationsSummaries.some((conversationSummary) => conversationSummary === null)) { return conversationsSummaries } - - return [...conversationsSummaries].sort((a, b) => { - const aTimestamp = a?.lastMessage?.timestamp ? Number(a.lastMessage.timestamp) : 0 - const bTimestamp = b?.lastMessage?.timestamp ? Number(b.lastMessage.timestamp) : 0 - return bTimestamp - aTimestamp - }) + return [...conversationsSummaries].sort((a, b) => b.lastMessage.timestamp - a.lastMessage.timestamp) }, [conversationsSummaries]) return ( diff --git a/client/src/components/MediaViewer.tsx b/client/src/components/MediaViewer.tsx index 26a08bc7..f71f1571 100644 --- a/client/src/components/MediaViewer.tsx +++ b/client/src/components/MediaViewer.tsx @@ -39,7 +39,7 @@ interface MediaViewerProps { member?: ConversationMember handleDownload?: () => void type?: string - timeStamp?: string + timeStamp?: number } export default function MediaViewer({ @@ -111,7 +111,7 @@ export default function MediaViewer({ } } - const displayTime = dayjs.unix(Number(timeStamp)) + const displayTime = dayjs.unix(timeStamp || 0) const formattedTime = displayTime.format('YYYY-MM-DD HH:mm') return ( diff --git a/client/src/components/Message.tsx b/client/src/components/Message.tsx index 54391360..51d3c9f6 100644 --- a/client/src/components/Message.tsx +++ b/client/src/components/Message.tsx @@ -778,8 +778,8 @@ const UserMessageRow = memo( const { t } = useTranslation() const previousIsUserMessageType = checkIsUserMessageType(previousMessage?.type) const nextIsUserMessageType = checkIsUserMessageType(nextMessage?.type) - const nextTime = dayjs.unix(Number(nextMessage?.timestamp)) - const sentTime = dayjs.unix(Number(message.timestamp)) + const nextTime = dayjs.unix(nextMessage?.timestamp || 0) + const sentTime = dayjs.unix(message.timestamp) const nextShowsTime = checkShowsTime(nextTime, sentTime) const isFirstOfGroup = showsTime || !previousIsUserMessageType || previousMessage?.author !== message.author const isLastOfGroup = nextShowsTime || !nextIsUserMessageType || message.author !== nextMessage?.author @@ -1388,8 +1388,8 @@ interface MessageProps { } export const MessageRow = memo(({ message, isAccountMessage, author, previousMessage, nextMessage }: MessageProps) => { - const time = dayjs.unix(Number(message.timestamp)) - const previousTime = dayjs.unix(Number(previousMessage?.timestamp)) + const time = dayjs.unix(message.timestamp) + const previousTime = dayjs.unix(previousMessage?.timestamp || 0) const showDate = message?.type === 'initial' || previousTime.year() !== time.year() || previousTime.dayOfYear() !== time.dayOfYear() const showTime = checkShowsTime(time, previousTime) diff --git a/client/src/components/SelectConversationList.tsx b/client/src/components/SelectConversationList.tsx index 4233b498..cbc8e614 100644 --- a/client/src/components/SelectConversationList.tsx +++ b/client/src/components/SelectConversationList.tsx @@ -51,7 +51,7 @@ export const SelectConversationList = ({ if (conversationsSummaries.some((conversationSummary) => conversationSummary === null)) { return conversationsSummaries } - return [...conversationsSummaries].sort((a, b) => Number(b.lastMessage.timestamp) - Number(a.lastMessage.timestamp)) + return [...conversationsSummaries].sort((a, b) => b.lastMessage.timestamp - a.lastMessage.timestamp) }, [conversationsSummaries]) return ( diff --git a/common/src/interfaces/conversation.ts b/common/src/interfaces/conversation.ts index 2e9c6ff8..fdf0a7ec 100644 --- a/common/src/interfaces/conversation.ts +++ b/common/src/interfaces/conversation.ts @@ -37,7 +37,7 @@ export interface Reaction { export interface Message { id: string author: string - timestamp: string + timestamp: number type: | 'application/call-history+json' | 'application/data-transfer+json' diff --git a/server/src/jamid/jamid.ts b/server/src/jamid/jamid.ts index 1b75d7b8..10770a06 100644 --- a/server/src/jamid/jamid.ts +++ b/server/src/jamid/jamid.ts @@ -96,7 +96,7 @@ export class Jamid { author: message.body.author, linearizedParent: message.linearizedParent, parents: message.body.parents, - timestamp: message.body.timestamp, + timestamp: message.body.timestamp ? Number(message.body.timestamp) : 0, duration: message.body.duration, displayName: message.body.displayName, sha3sum: message.body.sha3sum, -- GitLab