mirror of
https://github.com/jeffvli/feishin.git
synced 2026-05-07 04:20:12 +02:00
add explicit status and indicators in item detail
This commit is contained in:
@@ -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(' — ') ?? <> </>;
|
||||
export const TitleArtistColumn = ({ song }: ItemDetailListCellProps) => (
|
||||
<>
|
||||
<ExplicitIndicator explicitStatus={song.explicitStatus} />
|
||||
{[song.name, song.artistName].filter(Boolean).join(' — ') ?? <> </>}
|
||||
</>
|
||||
);
|
||||
|
||||
@@ -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 ?? <> </>;
|
||||
export const TitleColumn = ({ song }: ItemDetailListCellProps) => (
|
||||
<>
|
||||
<ExplicitIndicator explicitStatus={song.explicitStatus} />
|
||||
{song.name ?? <> </>}
|
||||
</>
|
||||
);
|
||||
|
||||
+8
-3
@@ -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(' — ') ?? <> </>;
|
||||
export const TitleCombinedColumn = ({ song }: ItemDetailListCellProps) => (
|
||||
<>
|
||||
<ExplicitIndicator explicitStatus={song.explicitStatus} />
|
||||
{[song.name, song.artistName].filter(Boolean).join(' — ') ?? <> </>}
|
||||
</>
|
||||
);
|
||||
|
||||
@@ -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}>
|
||||
|
||||
Reference in New Issue
Block a user