diff --git a/ui/src/song/AlbumLinkField.js b/ui/src/song/AlbumLinkField.js index 17fceca75..786370b74 100644 --- a/ui/src/song/AlbumLinkField.js +++ b/ui/src/song/AlbumLinkField.js @@ -1,5 +1,6 @@ -import { Link } from 'react-admin' import React from 'react' +import PropTypes from 'prop-types' +import { Link } from 'react-admin' export const AlbumLinkField = (props) => ( <Link @@ -10,6 +11,11 @@ export const AlbumLinkField = (props) => ( </Link> ) +AlbumLinkField.propTypes = { + sortBy: PropTypes.string, + sortByOrder: PropTypes.oneOf(['ASC', 'DESC']), +} + AlbumLinkField.defaultProps = { addLabel: true, } diff --git a/ui/src/song/SongList.js b/ui/src/song/SongList.js index 2a602df09..f4c8b32a3 100644 --- a/ui/src/song/SongList.js +++ b/ui/src/song/SongList.js @@ -98,7 +98,15 @@ const SongList = (props) => { classes={{ row: classes.row }} > <SongTitleField source="title" showTrackNumbers={false} /> - {isDesktop && <AlbumLinkField source="album" />} + {isDesktop && ( + <AlbumLinkField + source="album" + sortBy={ + 'album, order_album_artist_name, disc_number, track_number, title' + } + sortByOrder={'ASC'} + /> + )} <TextField source="artist" /> {isDesktop && <NumberField source="trackNumber" />} {isDesktop && (