add explicit status and indicators in item detail

This commit is contained in:
jeffvli
2026-02-09 13:59:48 -08:00
parent feca53a53d
commit c7509472c1
5 changed files with 30 additions and 8 deletions
@@ -8,8 +8,10 @@ export const ImageColumn = ({ song }: ItemDetailListCellProps) => (
<ItemImage
className={styles.compactImage}
containerClassName={styles.compactContainer}
explicitStatus={song.explicitStatus}
id={song.imageId}
itemType={LibraryItem.SONG}
serverId={song._serverId}
type="table"
/>
);
@@ -1,4 +1,9 @@
import { ItemDetailListCellProps } from './types';
import { ItemDetailListCellProps } from '/@/renderer/components/item-list/item-detail-list/columns/types';
import { ExplicitIndicator } from '/@/shared/components/explicit-indicator/explicit-indicator';
export const TitleArtistColumn = ({ song }: ItemDetailListCellProps) =>
[song.name, song.artistName].filter(Boolean).join(' — ') ?? <>&nbsp;</>;
export const TitleArtistColumn = ({ song }: ItemDetailListCellProps) => (
<>
<ExplicitIndicator explicitStatus={song.explicitStatus} />
{[song.name, song.artistName].filter(Boolean).join(' — ') ?? <>&nbsp;</>}
</>
);
@@ -1,3 +1,9 @@
import { ItemDetailListCellProps } from './types';
import { ItemDetailListCellProps } from '/@/renderer/components/item-list/item-detail-list/columns/types';
import { ExplicitIndicator } from '/@/shared/components/explicit-indicator/explicit-indicator';
export const TitleColumn = ({ song }: ItemDetailListCellProps) => song.name ?? <>&nbsp;</>;
export const TitleColumn = ({ song }: ItemDetailListCellProps) => (
<>
<ExplicitIndicator explicitStatus={song.explicitStatus} />
{song.name ?? <>&nbsp;</>}
</>
);
@@ -1,4 +1,9 @@
import { ItemDetailListCellProps } from './types';
import { ItemDetailListCellProps } from '/@/renderer/components/item-list/item-detail-list/columns/types';
import { ExplicitIndicator } from '/@/shared/components/explicit-indicator/explicit-indicator';
export const TitleCombinedColumn = ({ song }: ItemDetailListCellProps) =>
[song.name, song.artistName].filter(Boolean).join(' — ') ?? <>&nbsp;</>;
export const TitleCombinedColumn = ({ song }: ItemDetailListCellProps) => (
<>
<ExplicitIndicator explicitStatus={song.explicitStatus} />
{[song.name, song.artistName].filter(Boolean).join(' — ') ?? <>&nbsp;</>}
</>
);
@@ -53,6 +53,7 @@ import { useIsMutatingDeleteFavorite } from '/@/renderer/features/shared/mutatio
import { AppRoute } from '/@/renderer/router/routes';
import { useSettingsStore, useShowRatings } from '/@/renderer/store';
import { formatDateAbsoluteUTC, formatDurationString } from '/@/renderer/utils';
import { ExplicitIndicator } from '/@/shared/components/explicit-indicator/explicit-indicator';
import { Skeleton } from '/@/shared/components/skeleton/skeleton';
import { Text } from '/@/shared/components/text/text';
import { Album, LibraryItem, Song } from '/@/shared/types/domain-types';
@@ -401,8 +402,10 @@ const MetadataSection = memo(
>
<ItemImage
className={styles.image}
explicitStatus={item.explicitStatus}
id={item.imageId}
itemType={item._itemType}
serverId={item._serverId}
type="itemCard"
/>
{isFavorite && <div className={styles.favoriteBadge} />}
@@ -428,6 +431,7 @@ const MetadataSection = memo(
albumId: item.id,
})}
>
<ExplicitIndicator explicitStatus={item.explicitStatus} />
{item.name}
</Link>
<div className={styles.artist}>