feat(ui): add mood column to Album and Song list views (#3925)

Signed-off-by: Deluan <deluan@navidrome.org>
This commit is contained in:
Deluan Quintão 2025-04-05 08:19:11 -03:00 committed by Deluan
parent 2b84c574ba
commit 73eb0e254b
3 changed files with 18 additions and 1 deletions

View File

@ -196,6 +196,7 @@ const AlbumList = (props) => {
'songCount',
'playCount',
'year',
'mood',
'duration',
'rating',
'size',

View File

@ -6,6 +6,7 @@ import {
DateField,
NumberField,
TextField,
FunctionField,
} from 'react-admin'
import { useMediaQuery } from '@material-ui/core'
import FavoriteBorderIcon from '@material-ui/icons/FavoriteBorder'
@ -107,6 +108,13 @@ const AlbumTableView = ({
year: (
<RangeField source={'year'} sortBy={'max_year'} sortByOrder={'DESC'} />
),
mood: isDesktop && (
<FunctionField
source="mood"
render={(r) => r.tags?.mood?.[0] || ''}
sortable={false}
/>
),
duration: isDesktop && <DurationField source="duration" />,
size: isDesktop && <SizeField source="size" />,
rating: config.enableStarRating && (
@ -124,7 +132,7 @@ const AlbumTableView = ({
const columns = useSelectedFields({
resource: 'album',
columns: toggleableFields,
defaultOff: ['createdAt'],
defaultOff: ['createdAt', 'size', 'mood'],
})
return isXsmall ? (

View File

@ -168,6 +168,13 @@ const SongList = (props) => {
),
bpm: isDesktop && <NumberField source="bpm" />,
genre: <TextField source="genre" />,
mood: isDesktop && (
<FunctionField
source="mood"
render={(r) => r.tags?.mood?.[0] || ''}
sortable={false}
/>
),
comment: <TextField source="comment" />,
path: <PathField source="path" />,
createdAt: <DateField source="createdAt" showTime />,
@ -183,6 +190,7 @@ const SongList = (props) => {
'playDate',
'albumArtist',
'genre',
'mood',
'comment',
'path',
'createdAt',