feat(ui): add missing filter for admin users in album, artist, and song lists

Signed-off-by: Deluan <deluan@navidrome.org>
This commit is contained in:
Deluan
2025-05-24 13:04:07 -04:00
parent 5ade9344ff
commit c98e4d02cb
6 changed files with 27 additions and 7 deletions
+5
View File
@@ -8,6 +8,8 @@ import {
SearchInput,
TextField,
useTranslate,
NullableBooleanInput,
usePermissions,
} from 'react-admin'
import { useMediaQuery } from '@material-ui/core'
import FavoriteIcon from '@material-ui/icons/Favorite'
@@ -67,6 +69,8 @@ const useStyles = makeStyles({
const SongFilter = (props) => {
const classes = useStyles()
const translate = useTranslate()
const { permissions } = usePermissions()
const isAdmin = permissions === 'admin'
return (
<Filter {...props} variant={'outlined'}>
<SearchInput source="title" alwaysOn />
@@ -121,6 +125,7 @@ const SongFilter = (props) => {
defaultValue={true}
/>
)}
{isAdmin && <NullableBooleanInput source="missing" />}
</Filter>
)
}
+1 -1
View File
@@ -24,6 +24,7 @@ export const SongListActions = ({
const isNotSmall = useMediaQuery((theme) => theme.breakpoints.up('sm'))
return (
<TopToolbar className={className} {...sanitizeListRestProps(rest)}>
<ShuffleAllButton filters={filterValues} />
{filters &&
cloneElement(filters, {
resource,
@@ -32,7 +33,6 @@ export const SongListActions = ({
filterValues,
context: 'button',
})}
<ShuffleAllButton filters={filterValues} />
{isNotSmall && <ToggleFieldsMenu resource="song" />}
</TopToolbar>
)