diff options
| author | joonhoekim <26rote@gmail.com> | 2025-11-26 18:43:10 +0900 |
|---|---|---|
| committer | joonhoekim <26rote@gmail.com> | 2025-11-26 18:43:10 +0900 |
| commit | 5a370de52d6947d35aa07f9545c4f6a4d83eadd7 (patch) | |
| tree | e66741491771ef941560c34e75b604c5f7dfc14f /lib/dolce/utils/date-formatter.ts | |
| parent | 8547034e6d82e4d1184f35af2dbff67180d89dc8 (diff) | |
(김준회) dolce 메모리 효율적 동기화 처리(Streaming), 로컬 건 Date 정보 formatting, Uploader 정보 네임 표시
Diffstat (limited to 'lib/dolce/utils/date-formatter.ts')
| -rw-r--r-- | lib/dolce/utils/date-formatter.ts | 18 |
1 files changed, 18 insertions, 0 deletions
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); } |
