Files
ai_platform/lib/meeting-date-format.js

21 lines
760 B
JavaScript

/**
* PostgreSQL DATE 또는 날짜 전용 값을 YYYY-MM-DD로 직렬화.
* `new Date(x).toISOString().slice(0, 10)`은 UTC 기준이라
* 서버/클라이언트 TZ가 한국 등일 때 **하루 전 날짜**로 잘릴 수 있음.
*/
function formatMeetingDateOnly(val) {
if (val == null || val === "") return null;
if (typeof val === "string") {
const s = val.trim().slice(0, 10);
if (/^\d{4}-\d{2}-\d{2}$/.test(s)) return s;
}
const d = val instanceof Date ? val : new Date(val);
if (Number.isNaN(d.getTime())) return null;
const y = d.getFullYear();
const m = String(d.getMonth() + 1).padStart(2, "0");
const day = String(d.getDate()).padStart(2, "0");
return `${y}-${m}-${day}`;
}
module.exports = { formatMeetingDateOnly };