mirror of
https://github.com/navidrome/navidrome.git
synced 2025-05-08 14:21:09 +03:00
Make Starred into a "QuickFilter"
This commit is contained in:
parent
442671578d
commit
290e8c4bf0
18
ui/src/common/QuickFilter.js
Normal file
18
ui/src/common/QuickFilter.js
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
import React from 'react'
|
||||||
|
import { Chip, makeStyles } from '@material-ui/core'
|
||||||
|
import { useTranslate } from 'react-admin'
|
||||||
|
|
||||||
|
const useQuickFilterStyles = makeStyles((theme) => ({
|
||||||
|
chip: {
|
||||||
|
marginBottom: theme.spacing(1),
|
||||||
|
},
|
||||||
|
}))
|
||||||
|
|
||||||
|
const QuickFilter = ({ source, label }) => {
|
||||||
|
const translate = useTranslate()
|
||||||
|
const classes = useQuickFilterStyles()
|
||||||
|
const lbl = label || `resources.song.fields.${source}`
|
||||||
|
return <Chip className={classes.chip} label={translate(lbl)} />
|
||||||
|
}
|
||||||
|
|
||||||
|
export default QuickFilter
|
@ -13,6 +13,7 @@ import List from './List'
|
|||||||
import { SongDatagrid, SongDatagridRow } from './SongDatagrid'
|
import { SongDatagrid, SongDatagridRow } from './SongDatagrid'
|
||||||
import AddToPlaylistMenu from './AddToPlaylistMenu'
|
import AddToPlaylistMenu from './AddToPlaylistMenu'
|
||||||
import SongContextMenu from './SongContextMenu'
|
import SongContextMenu from './SongContextMenu'
|
||||||
|
import QuickFilter from './QuickFilter'
|
||||||
|
|
||||||
export {
|
export {
|
||||||
Title,
|
Title,
|
||||||
@ -33,4 +34,5 @@ export {
|
|||||||
artistLink,
|
artistLink,
|
||||||
AddToPlaylistMenu,
|
AddToPlaylistMenu,
|
||||||
SongContextMenu,
|
SongContextMenu,
|
||||||
|
QuickFilter,
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,6 @@ import React from 'react'
|
|||||||
import {
|
import {
|
||||||
Filter,
|
Filter,
|
||||||
FunctionField,
|
FunctionField,
|
||||||
NullableBooleanInput,
|
|
||||||
NumberField,
|
NumberField,
|
||||||
SearchInput,
|
SearchInput,
|
||||||
TextField,
|
TextField,
|
||||||
@ -11,11 +10,12 @@ import {
|
|||||||
import { useMediaQuery } from '@material-ui/core'
|
import { useMediaQuery } from '@material-ui/core'
|
||||||
import {
|
import {
|
||||||
DurationField,
|
DurationField,
|
||||||
SimpleList,
|
|
||||||
List,
|
List,
|
||||||
SongDetails,
|
SimpleList,
|
||||||
SongDatagrid,
|
|
||||||
SongContextMenu,
|
SongContextMenu,
|
||||||
|
SongDatagrid,
|
||||||
|
SongDetails,
|
||||||
|
QuickFilter,
|
||||||
} from '../common'
|
} from '../common'
|
||||||
import { useDispatch } from 'react-redux'
|
import { useDispatch } from 'react-redux'
|
||||||
import { setTrack } from '../audioplayer'
|
import { setTrack } from '../audioplayer'
|
||||||
@ -25,7 +25,7 @@ import { AlbumLinkField } from './AlbumLinkField'
|
|||||||
const SongFilter = (props) => (
|
const SongFilter = (props) => (
|
||||||
<Filter {...props}>
|
<Filter {...props}>
|
||||||
<SearchInput source="title" alwaysOn />
|
<SearchInput source="title" alwaysOn />
|
||||||
<NullableBooleanInput source="starred" />
|
<QuickFilter source="starred" defaultValue={true} />
|
||||||
</Filter>
|
</Filter>
|
||||||
)
|
)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user