Browse Source

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

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

* feat: 增强 util-formatDate ts 类型提示
pull/6836/head^2
Utopia 3 months ago
committed by GitHub
parent
commit
6bbe523f6f
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 18
      packages/@core/base/shared/src/utils/date.ts

18
packages/@core/base/shared/src/utils/date.ts

@ -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');
} }

Loading…
Cancel
Save