Highlight the selected genre

This commit is contained in:
Mosh Hamedani 2023-03-02 09:34:31 -08:00
parent 2b26f7d1f4
commit 7df3a833d9
2 changed files with 4 additions and 3 deletions

View file

@ -24,7 +24,7 @@ function App() {
</GridItem>
<Show above="lg">
<GridItem area="aside" paddingX={5}>
<GenreList onSelectGenre={(genre) => setSelectedGenre(genre)} />
<GenreList selectedGenre={selectedGenre} onSelectGenre={(genre) => setSelectedGenre(genre)} />
</GridItem>
</Show>
<GridItem area="main">

View file

@ -4,9 +4,10 @@ import getCroppedImageUrl from "../services/image-url";
interface Props {
onSelectGenre: (genre: Genre) => void;
selectedGenre: Genre | null;
}
const GenreList = ({ onSelectGenre }: Props) => {
const GenreList = ({ selectedGenre, onSelectGenre }: Props) => {
const { data, isLoading, error } = useGenres();
if (error) return null;
@ -23,7 +24,7 @@ const GenreList = ({ onSelectGenre }: Props) => {
borderRadius={8}
src={getCroppedImageUrl(genre.image_background)}
/>
<Button onClick={() => onSelectGenre(genre)} fontSize='lg' variant='link'>{genre.name}</Button>
<Button fontWeight={genre.id === selectedGenre?.id ? 'bold' : 'normal'} onClick={() => onSelectGenre(genre)} fontSize='lg' variant='link'>{genre.name}</Button>
</HStack>
</ListItem>
))}