fix: use compilation release type label on album details (#2236)

This commit is contained in:
York
2026-07-16 13:16:32 +08:00
committed by GitHub
parent 4de9b21ff7
commit 763e7d5638
@@ -105,7 +105,17 @@ const AlbumMetadataTags = ({ album }: AlbumMetadataTagsProps) => {
const defaultTagItems = useMemo(() => { const defaultTagItems = useMemo(() => {
if (!album) return []; if (!album) return [];
const releaseTypes = normalizeReleaseTypes(album.releaseTypes ?? [], t).map((type) => ({ const releaseTypes = [...(album.releaseTypes ?? [])];
const hasCompilationReleaseType = releaseTypes.some(
(type) => type.toLowerCase() === 'compilation',
);
if (album.isCompilation && !hasCompilationReleaseType) {
releaseTypes.push('compilation');
}
const releaseTypeItems = normalizeReleaseTypes(releaseTypes, t).map((type) => ({
id: type, id: type,
value: titleCase(type), value: titleCase(type),
})); }));
@@ -124,15 +134,7 @@ const AlbumMetadataTags = ({ album }: AlbumMetadataTagsProps) => {
const items: Array<{ id: string; value: ReactNode | string | undefined }> = []; const items: Array<{ id: string; value: ReactNode | string | undefined }> = [];
items.push( items.push(...releaseTypeItems, ...releaseCountries, ...releaseStatuses, {
...releaseTypes,
{
id: 'isCompilation',
value: album?.isCompilation ? t('filter.isCompilation') : undefined,
},
...releaseCountries,
...releaseStatuses,
{
id: 'explicitStatus', id: 'explicitStatus',
value: value:
album.explicitStatus === ExplicitStatus.EXPLICIT album.explicitStatus === ExplicitStatus.EXPLICIT
@@ -140,8 +142,7 @@ const AlbumMetadataTags = ({ album }: AlbumMetadataTagsProps) => {
: album.explicitStatus === ExplicitStatus.CLEAN : album.explicitStatus === ExplicitStatus.CLEAN
? t('common.clean') ? t('common.clean')
: undefined, : undefined,
}, });
);
return items.filter((item) => item.value); return items.filter((item) => item.value);
}, [album, t]); }, [album, t]);