From 3e699e54767fc743ffef84674936daf795d603b5 Mon Sep 17 00:00:00 2001 From: Debanjum Date: Mon, 1 Sep 2025 07:09:32 -0700 Subject: [PATCH] Fix date time rendering when print conversation on web app --- .../allConversations/allConversations.tsx | 2 +- .../app/components/chatMessage/chatMessage.tsx | 17 ++++++++++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/interface/web/app/components/allConversations/allConversations.tsx b/src/interface/web/app/components/allConversations/allConversations.tsx index a8ff3702..117bbcbd 100644 --- a/src/interface/web/app/components/allConversations/allConversations.tsx +++ b/src/interface/web/app/components/allConversations/allConversations.tsx @@ -946,7 +946,7 @@ export default function AllConversations(props: SidePanelProps) { const currentDate = new Date(); - chatSessions.forEach((chatSessionMetadata) => { + chatSessions?.forEach((chatSessionMetadata) => { const chatDate = new Date(chatSessionMetadata.updated); const diffTime = Math.abs(currentDate.getTime() - chatDate.getTime()); const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24)); diff --git a/src/interface/web/app/components/chatMessage/chatMessage.tsx b/src/interface/web/app/components/chatMessage/chatMessage.tsx index ec8a90cc..e6c08ea0 100644 --- a/src/interface/web/app/components/chatMessage/chatMessage.tsx +++ b/src/interface/web/app/components/chatMessage/chatMessage.tsx @@ -721,7 +721,22 @@ const ChatMessage = forwardRef((props, ref) => function formatDate(timestamp: string) { // Format date in HH:MM, DD MMM YYYY format - let date = new Date(timestamp + "Z"); + // Handle timestamps in "YYYY-MM-DD HH:MM:SS" format from backend + let date: Date; + if (timestamp.includes(" ") && !timestamp.includes("T")) { + // Convert "YYYY-MM-DD HH:MM:SS" to ISO format + date = new Date(timestamp.replace(" ", "T") + "Z"); + } else if (!timestamp.endsWith("Z")) { + date = new Date(timestamp + "Z"); + } else { + date = new Date(timestamp); + } + + // Check if date is valid + if (isNaN(date.getTime())) { + return "Invalid Date"; + } + let time_string = date .toLocaleTimeString("en-US", { hour: "2-digit", minute: "2-digit", hour12: true }) .toUpperCase();