From 5a370de52d6947d35aa07f9545c4f6a4d83eadd7 Mon Sep 17 00:00:00 2001 From: joonhoekim <26rote@gmail.com> Date: Wed, 26 Nov 2025 18:43:10 +0900 Subject: (김준회) dolce 메모리 효율적 동기화 처리(Streaming), 로컬 건 Date 정보 formatting, Uploader 정보 네임 표시 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/dolce/utils/date-formatter.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'lib/dolce/utils') diff --git a/lib/dolce/utils/date-formatter.ts b/lib/dolce/utils/date-formatter.ts index 83e78b0d..ebf9653a 100644 --- a/lib/dolce/utils/date-formatter.ts +++ b/lib/dolce/utils/date-formatter.ts @@ -6,12 +6,30 @@ */ import { formatSwpDate } from "@/lib/swp/utils"; +import { format, parseISO, isValid } from "date-fns"; /** * SWP와 동일한 방식 + * Postgres Date 타입(ISO String) 처리 추가 */ export function formatDolceDateTime(dateStr: string | null): string { if (!dateStr) return "-"; + + // ISO string check (e.g. "2023-11-27T10:20:30.000Z" or similar) + if (dateStr.includes("-") && (dateStr.includes("T") || dateStr.includes(":"))) { + try { + const date = parseISO(dateStr); + if (isValid(date)) { + // Requested format: YYYY-MM-DD AM/PM HH:mm:ss + // date-fns format: yyyy-MM-dd a hh:mm:ss + return format(date, "yyyy-MM-dd a hh:mm:ss"); + } + } catch (e) { + // ignore parse error, fallback to default + console.error("Date parse error", e); + } + } + return formatSwpDate(dateStr); } -- cgit v1.2.3