diff --git a/src/renderer/api/subsonic/subsonic-api.ts b/src/renderer/api/subsonic/subsonic-api.ts index 7e36d8cb..bb0dc3c1 100644 --- a/src/renderer/api/subsonic/subsonic-api.ts +++ b/src/renderer/api/subsonic/subsonic-api.ts @@ -242,7 +242,7 @@ export const ssApiClient = (args: { return { body: response?.data, - headers: response.headers as any, + headers: response?.headers as any, status: response?.status, }; } diff --git a/src/renderer/utils/format.tsx b/src/renderer/utils/format.tsx index 0f2ce226..3e983b47 100644 --- a/src/renderer/utils/format.tsx +++ b/src/renderer/utils/format.tsx @@ -8,13 +8,22 @@ import { Rating } from '/@/renderer/components/rating'; dayjs.extend(relativeTime); dayjs.extend(utc); -const DATE_FORMAT = 'MMM D, YYYY'; +const FORMATS: Record = Object.freeze({ + 0: 'YYYY', + 1: 'MMM YYYY', + 2: 'MMM D, YYYY', +}); + +const getDateFormat = (key: string): string => { + const dashes = Math.min(key.split('-').length - 1, 2); + return FORMATS[dashes]; +}; export const formatDateAbsolute = (key: string | null) => - key ? dayjs(key).format(DATE_FORMAT) : ''; + key ? dayjs(key).format(getDateFormat(key)) : ''; export const formatDateAbsoluteUTC = (key: string | null) => - key ? dayjs.utc(key).format(DATE_FORMAT) : ''; + key ? dayjs.utc(key).format(getDateFormat(key)) : ''; export const formatDateRelative = (key: string | null) => (key ? dayjs(key).fromNow() : '');