chore: 增强 util-formatDate ts 类型提示 (#6886)

* feat: 为 auth layout 添加 slot: logo, 提升组件的灵活性和可复用性

* feat: 增强 util-formatDate ts 类型提示
This commit is contained in:
Utopia 2025-11-09 12:00:49 +08:00 committed by GitHub
parent fef1e35c54
commit 6bbe523f6f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -7,7 +7,19 @@ dayjs.extend(timezone);
type FormatDate = Date | dayjs.Dayjs | number | string; type FormatDate = Date | dayjs.Dayjs | number | string;
export function formatDate(time: FormatDate, format = 'YYYY-MM-DD') { type Format =
| 'HH'
| 'HH:mm'
| 'HH:mm:ss'
| 'YYYY'
| 'YYYY-MM'
| 'YYYY-MM-DD'
| 'YYYY-MM-DD HH'
| 'YYYY-MM-DD HH:mm'
| 'YYYY-MM-DD HH:mm:ss'
| (string & {});
export function formatDate(time?: FormatDate, format: Format = 'YYYY-MM-DD') {
try { try {
const date = dayjs.isDayjs(time) ? time : dayjs(time); const date = dayjs.isDayjs(time) ? time : dayjs(time);
if (!date.isValid()) { if (!date.isValid()) {
@ -16,11 +28,11 @@ export function formatDate(time: FormatDate, format = 'YYYY-MM-DD') {
return date.tz().format(format); return date.tz().format(format);
} catch (error) { } catch (error) {
console.error(`Error formatting date: ${error}`); console.error(`Error formatting date: ${error}`);
return String(time); return String(time ?? '');
} }
} }
export function formatDateTime(time: FormatDate) { export function formatDateTime(time?: FormatDate) {
return formatDate(time, 'YYYY-MM-DD HH:mm:ss'); return formatDate(time, 'YYYY-MM-DD HH:mm:ss');
} }