Add missing translation keys to list filters

This commit is contained in:
jeffvli 2023-11-01 03:32:28 -07:00
parent 364f53e124
commit fd851714ae
6 changed files with 347 additions and 73 deletions

View file

@ -155,11 +155,15 @@
"systemFontError": "an error occurred when trying to get system fonts" "systemFontError": "an error occurred when trying to get system fonts"
}, },
"filter": { "filter": {
"album": "$t(entity.album_one)",
"albumArtist": "$t(entity.albumArtist_one)", "albumArtist": "$t(entity.albumArtist_one)",
"albumCount": "$t(entity.album_other) count",
"artist": "$t(entity.artist_one)", "artist": "$t(entity.artist_one)",
"biography": "biography", "biography": "biography",
"bitrate": "bitrate", "bitrate": "bitrate",
"bpm": "bpm", "bpm": "bpm",
"channels": "$t(common.channel_other)",
"comment": "comment",
"communityRating": "community rating", "communityRating": "community rating",
"criticRating": "critic rating", "criticRating": "critic rating",
"dateAdded": "date added", "dateAdded": "date added",
@ -167,20 +171,25 @@
"duration": "duration", "duration": "duration",
"favorited": "favorited", "favorited": "favorited",
"fromYear": "from year", "fromYear": "from year",
"genre": "$t(entity.genre_one)",
"id": "id",
"isCompilation": "is compilation", "isCompilation": "is compilation",
"isFavorited": "is favorited", "isFavorited": "is favorited",
"isPublic": "is public",
"isRated": "is rated", "isRated": "is rated",
"isRecentlyPlayed": "is recently played", "isRecentlyPlayed": "is recently played",
"lastPlayed": "last played", "lastPlayed": "last played",
"mostPlayed": "most played", "mostPlayed": "most played",
"name": "name", "name": "name",
"note": "note", "note": "note",
"owner": "$t(common.owner)",
"path": "path", "path": "path",
"playCount": "play count", "playCount": "play count",
"random": "random", "random": "random",
"rating": "rating", "rating": "rating",
"recentlyAdded": "recently added", "recentlyAdded": "recently added",
"recentlyPlayed": "recently played", "recentlyPlayed": "recently played",
"recentlyUpdated": "recently updated",
"releaseDate": "release date", "releaseDate": "release date",
"releaseYear": "release year", "releaseYear": "release year",
"search": "search", "search": "search",

View file

@ -22,16 +22,33 @@ import {
useListStoreByKey, useListStoreByKey,
} from '/@/renderer/store'; } from '/@/renderer/store';
import { ListDisplayType, ServerType, TableColumn } from '/@/renderer/types'; import { ListDisplayType, ServerType, TableColumn } from '/@/renderer/types';
import i18n from '/@/i18n/i18n';
const FILTERS = { const FILTERS = {
jellyfin: [ jellyfin: [
{ defaultOrder: SortOrder.ASC, name: 'Album', value: AlbumArtistListSort.ALBUM }, {
{ defaultOrder: SortOrder.DESC, name: 'Duration', value: AlbumArtistListSort.DURATION }, defaultOrder: SortOrder.ASC,
{ defaultOrder: SortOrder.ASC, name: 'Name', value: AlbumArtistListSort.NAME }, name: i18n.t('filter.album', { postProcess: 'titleCase' }),
{ defaultOrder: SortOrder.ASC, name: 'Random', value: AlbumArtistListSort.RANDOM }, value: AlbumArtistListSort.ALBUM,
},
{ {
defaultOrder: SortOrder.DESC, defaultOrder: SortOrder.DESC,
name: 'Recently Added', name: i18n.t('filter.duration', { postProcess: 'titleCase' }),
value: AlbumArtistListSort.DURATION,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.name', { postProcess: 'titleCase' }),
value: AlbumArtistListSort.NAME,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.random', { postProcess: 'titleCase' }),
value: AlbumArtistListSort.RANDOM,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.recentlyAdded', { postProcess: 'titleCase' }),
value: AlbumArtistListSort.RECENTLY_ADDED, value: AlbumArtistListSort.RECENTLY_ADDED,
}, },
// { defaultOrder: SortOrder.DESC, name: 'Release Date', value: AlbumArtistListSort.RELEASE_DATE }, // { defaultOrder: SortOrder.DESC, name: 'Release Date', value: AlbumArtistListSort.RELEASE_DATE },
@ -39,18 +56,34 @@ const FILTERS = {
navidrome: [ navidrome: [
{ {
defaultOrder: SortOrder.DESC, defaultOrder: SortOrder.DESC,
name: 'Album Count', name: i18n.t('filter.albumCount', { postProcess: 'titleCase' }),
value: AlbumArtistListSort.ALBUM_COUNT, value: AlbumArtistListSort.ALBUM_COUNT,
}, },
{ defaultOrder: SortOrder.DESC, name: 'Favorited', value: AlbumArtistListSort.FAVORITED },
{ {
defaultOrder: SortOrder.DESC, defaultOrder: SortOrder.DESC,
name: 'Most Played', name: i18n.t('filter.isFavorited', { postProcess: 'titleCase' }),
value: AlbumArtistListSort.FAVORITED,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.mostPlayed', { postProcess: 'titleCase' }),
value: AlbumArtistListSort.PLAY_COUNT, value: AlbumArtistListSort.PLAY_COUNT,
}, },
{ defaultOrder: SortOrder.ASC, name: 'Name', value: AlbumArtistListSort.NAME }, {
{ defaultOrder: SortOrder.DESC, name: 'Rating', value: AlbumArtistListSort.RATING }, defaultOrder: SortOrder.ASC,
{ defaultOrder: SortOrder.DESC, name: 'Song Count', value: AlbumArtistListSort.SONG_COUNT }, name: i18n.t('filter.name', { postProcess: 'titleCase' }),
value: AlbumArtistListSort.NAME,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.rating', { postProcess: 'titleCase' }),
value: AlbumArtistListSort.RATING,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.songCount', { postProcess: 'titleCase' }),
value: AlbumArtistListSort.SONG_COUNT,
},
], ],
}; };

View file

@ -20,10 +20,23 @@ import {
useListStoreByKey, useListStoreByKey,
} from '/@/renderer/store'; } from '/@/renderer/store';
import { ListDisplayType, ServerType, TableColumn } from '/@/renderer/types'; import { ListDisplayType, ServerType, TableColumn } from '/@/renderer/types';
import i18n from '/@/i18n/i18n';
const FILTERS = { const FILTERS = {
jellyfin: [{ defaultOrder: SortOrder.ASC, name: 'Name', value: GenreListSort.NAME }], jellyfin: [
navidrome: [{ defaultOrder: SortOrder.ASC, name: 'Name', value: GenreListSort.NAME }], {
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.name', { postProcess: 'titleCase' }),
value: GenreListSort.NAME,
},
],
navidrome: [
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.name', { postProcess: 'titleCase' }),
value: GenreListSort.NAME,
},
],
}; };
interface GenreListHeaderFiltersProps { interface GenreListHeaderFiltersProps {

View file

@ -47,49 +47,142 @@ import { openUpdatePlaylistModal } from '/@/renderer/features/playlists/componen
import { useDeletePlaylist } from '/@/renderer/features/playlists/mutations/delete-playlist-mutation'; import { useDeletePlaylist } from '/@/renderer/features/playlists/mutations/delete-playlist-mutation';
import { AppRoute } from '/@/renderer/router/routes'; import { AppRoute } from '/@/renderer/router/routes';
import { OrderToggleButton } from '/@/renderer/features/shared'; import { OrderToggleButton } from '/@/renderer/features/shared';
import i18n from '/@/i18n/i18n';
const FILTERS = { const FILTERS = {
jellyfin: [ jellyfin: [
{ defaultOrder: SortOrder.ASC, name: 'Album', value: SongListSort.ALBUM },
{ defaultOrder: SortOrder.ASC, name: 'Album Artist', value: SongListSort.ALBUM_ARTIST },
{ defaultOrder: SortOrder.ASC, name: 'Artist', value: SongListSort.ARTIST },
{ defaultOrder: SortOrder.ASC, name: 'Duration', value: SongListSort.DURATION },
{ defaultOrder: SortOrder.ASC, name: 'Most Played', value: SongListSort.PLAY_COUNT },
{ defaultOrder: SortOrder.ASC, name: 'Name', value: SongListSort.NAME },
{ defaultOrder: SortOrder.ASC, name: 'Random', value: SongListSort.RANDOM },
{ defaultOrder: SortOrder.ASC, name: 'Recently Added', value: SongListSort.RECENTLY_ADDED },
{ {
defaultOrder: SortOrder.ASC, defaultOrder: SortOrder.ASC,
name: 'Recently Played', name: i18n.t('filter.album', { postProcess: 'titleCase' }),
value: SongListSort.ALBUM,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.albumArtist', { postProcess: 'titleCase' }),
value: SongListSort.ALBUM_ARTIST,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.artist', { postProcess: 'titleCase' }),
value: SongListSort.ARTIST,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.duration', { postProcess: 'titleCase' }),
value: SongListSort.DURATION,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.playCount', { postProcess: 'titleCase' }),
value: SongListSort.PLAY_COUNT,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.name', { postProcess: 'titleCase' }),
value: SongListSort.NAME,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.random', { postProcess: 'titleCase' }),
value: SongListSort.RANDOM,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.recentlyAdded', { postProcess: 'titleCase' }),
value: SongListSort.RECENTLY_ADDED,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.recentlyPlayed', { postProcess: 'titleCase' }),
value: SongListSort.RECENTLY_PLAYED, value: SongListSort.RECENTLY_PLAYED,
}, },
{ defaultOrder: SortOrder.ASC, name: 'Release Date', value: SongListSort.RELEASE_DATE }, {
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.releaseDate', { postProcess: 'titleCase' }),
value: SongListSort.RELEASE_DATE,
},
], ],
navidrome: [ navidrome: [
{ defaultOrder: SortOrder.ASC, name: 'Album', value: SongListSort.ALBUM }, {
{ defaultOrder: SortOrder.ASC, name: 'Album Artist', value: SongListSort.ALBUM_ARTIST }, defaultOrder: SortOrder.ASC,
{ defaultOrder: SortOrder.ASC, name: 'Artist', value: SongListSort.ARTIST }, name: i18n.t('filter.id', { postProcess: 'titleCase' }),
{ defaultOrder: SortOrder.DESC, name: 'BPM', value: SongListSort.BPM }, value: SongListSort.ID,
{ defaultOrder: SortOrder.ASC, name: 'Channels', value: SongListSort.CHANNELS }, },
{ defaultOrder: SortOrder.ASC, name: 'Comment', value: SongListSort.COMMENT }, {
{ defaultOrder: SortOrder.DESC, name: 'Duration', value: SongListSort.DURATION }, defaultOrder: SortOrder.ASC,
{ defaultOrder: SortOrder.DESC, name: 'Favorited', value: SongListSort.FAVORITED }, name: i18n.t('filter.album', { postProcess: 'titleCase' }),
{ defaultOrder: SortOrder.ASC, name: 'Genre', value: SongListSort.GENRE }, value: SongListSort.ALBUM,
{ defaultOrder: SortOrder.ASC, name: 'Id', value: SongListSort.ID }, },
{ defaultOrder: SortOrder.ASC, name: 'Name', value: SongListSort.NAME }, {
{ defaultOrder: SortOrder.DESC, name: 'Play Count', value: SongListSort.PLAY_COUNT }, defaultOrder: SortOrder.ASC,
{ defaultOrder: SortOrder.DESC, name: 'Rating', value: SongListSort.RATING }, name: i18n.t('filter.albumArtist', { postProcess: 'titleCase' }),
value: SongListSort.ALBUM_ARTIST,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.artist', { postProcess: 'titleCase' }),
value: SongListSort.ARTIST,
},
{ {
defaultOrder: SortOrder.DESC, defaultOrder: SortOrder.DESC,
name: 'Recently Added', name: i18n.t('filter.bpm', { postProcess: 'titleCase' }),
value: SongListSort.BPM,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('common.channel', { count: 2, postProcess: 'titleCase' }),
value: SongListSort.CHANNELS,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.comment', { postProcess: 'titleCase' }),
value: SongListSort.COMMENT,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.duration', { postProcess: 'titleCase' }),
value: SongListSort.DURATION,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.isFavorited', { postProcess: 'titleCase' }),
value: SongListSort.FAVORITED,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.playCount', { postProcess: 'titleCase' }),
value: SongListSort.GENRE,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.name', { postProcess: 'titleCase' }),
value: SongListSort.NAME,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.playCount', { postProcess: 'titleCase' }),
value: SongListSort.PLAY_COUNT,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.rating', { postProcess: 'titleCase' }),
value: SongListSort.RATING,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.recentlyAdded', { postProcess: 'titleCase' }),
value: SongListSort.RECENTLY_ADDED, value: SongListSort.RECENTLY_ADDED,
}, },
{ {
defaultOrder: SortOrder.DESC, defaultOrder: SortOrder.DESC,
name: 'Recently Played', name: i18n.t('filter.recentlyPlayed', { postProcess: 'titleCase' }),
value: SongListSort.RECENTLY_PLAYED, value: SongListSort.RECENTLY_PLAYED,
}, },
{ defaultOrder: SortOrder.DESC, name: 'Year', value: SongListSort.YEAR }, {
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.releaseYear', { postProcess: 'titleCase' }),
value: SongListSort.YEAR,
},
], ],
}; };

View file

@ -17,20 +17,57 @@ import { OrderToggleButton } from '/@/renderer/features/shared';
import { useContainerQuery } from '/@/renderer/hooks'; import { useContainerQuery } from '/@/renderer/hooks';
import { PlaylistListFilter, useCurrentServer, useListStoreActions } from '/@/renderer/store'; import { PlaylistListFilter, useCurrentServer, useListStoreActions } from '/@/renderer/store';
import { ListDisplayType, TableColumn } from '/@/renderer/types'; import { ListDisplayType, TableColumn } from '/@/renderer/types';
import i18n from '/@/i18n/i18n';
const FILTERS = { const FILTERS = {
jellyfin: [ jellyfin: [
{ defaultOrder: SortOrder.DESC, name: 'Duration', value: PlaylistListSort.DURATION }, {
{ defaultOrder: SortOrder.ASC, name: 'Name', value: PlaylistListSort.NAME }, defaultOrder: SortOrder.DESC,
{ defaultOrder: SortOrder.DESC, name: 'Song Count', value: PlaylistListSort.SONG_COUNT }, name: i18n.t('filter.duration', { postProcess: 'titleCase' }),
value: PlaylistListSort.DURATION,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.name', { postProcess: 'titleCase' }),
value: PlaylistListSort.NAME,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.songCount', { postProcess: 'titleCase' }),
value: PlaylistListSort.SONG_COUNT,
},
], ],
navidrome: [ navidrome: [
{ defaultOrder: SortOrder.DESC, name: 'Duration', value: PlaylistListSort.DURATION }, {
{ defaultOrder: SortOrder.ASC, name: 'Name', value: PlaylistListSort.NAME }, defaultOrder: SortOrder.DESC,
{ defaultOrder: SortOrder.ASC, name: 'Owner', value: PlaylistListSort.OWNER }, name: i18n.t('filter.duration', { postProcess: 'titleCase' }),
{ defaultOrder: SortOrder.DESC, name: 'Public', value: PlaylistListSort.PUBLIC }, value: PlaylistListSort.DURATION,
{ defaultOrder: SortOrder.DESC, name: 'Song Count', value: PlaylistListSort.SONG_COUNT }, },
{ defaultOrder: SortOrder.DESC, name: 'Updated At', value: PlaylistListSort.UPDATED_AT }, {
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.name', { postProcess: 'titleCase' }),
value: PlaylistListSort.NAME,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.owner', { postProcess: 'titleCase' }),
value: PlaylistListSort.OWNER,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.isPublic', { postProcess: 'titleCase' }),
value: PlaylistListSort.PUBLIC,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.songCount', { postProcess: 'titleCase' }),
value: PlaylistListSort.SONG_COUNT,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.recentlyUpdated', { postProcess: 'titleCase' }),
value: PlaylistListSort.UPDATED_AT,
},
], ],
}; };

View file

@ -28,48 +28,137 @@ import { useListFilterRefresh } from '/@/renderer/hooks/use-list-filter-refresh'
import { queryClient } from '/@/renderer/lib/react-query'; import { queryClient } from '/@/renderer/lib/react-query';
import { SongListFilter, useCurrentServer, useListStoreActions } from '/@/renderer/store'; import { SongListFilter, useCurrentServer, useListStoreActions } from '/@/renderer/store';
import { ListDisplayType, Play, ServerType, TableColumn } from '/@/renderer/types'; import { ListDisplayType, Play, ServerType, TableColumn } from '/@/renderer/types';
import i18n from '/@/i18n/i18n';
const FILTERS = { const FILTERS = {
jellyfin: [ jellyfin: [
{ defaultOrder: SortOrder.ASC, name: 'Album', value: SongListSort.ALBUM },
{ defaultOrder: SortOrder.ASC, name: 'Album Artist', value: SongListSort.ALBUM_ARTIST },
{ defaultOrder: SortOrder.ASC, name: 'Artist', value: SongListSort.ARTIST },
{ defaultOrder: SortOrder.ASC, name: 'Duration', value: SongListSort.DURATION },
{ defaultOrder: SortOrder.ASC, name: 'Most Played', value: SongListSort.PLAY_COUNT },
{ defaultOrder: SortOrder.ASC, name: 'Name', value: SongListSort.NAME },
{ defaultOrder: SortOrder.ASC, name: 'Random', value: SongListSort.RANDOM },
{ defaultOrder: SortOrder.ASC, name: 'Recently Added', value: SongListSort.RECENTLY_ADDED },
{ {
defaultOrder: SortOrder.ASC, defaultOrder: SortOrder.ASC,
name: 'Recently Played', name: i18n.t('filter.album', { postProcess: 'titleCase' }),
value: SongListSort.ALBUM,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.albumArtist', { postProcess: 'titleCase' }),
value: SongListSort.ALBUM_ARTIST,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.artist', { postProcess: 'titleCase' }),
value: SongListSort.ARTIST,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.duration', { postProcess: 'titleCase' }),
value: SongListSort.DURATION,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.playCount', { postProcess: 'titleCase' }),
value: SongListSort.PLAY_COUNT,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.name', { postProcess: 'titleCase' }),
value: SongListSort.NAME,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.random', { postProcess: 'titleCase' }),
value: SongListSort.RANDOM,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.recentlyAdded', { postProcess: 'titleCase' }),
value: SongListSort.RECENTLY_ADDED,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.recentlyPlayed', { postProcess: 'titleCase' }),
value: SongListSort.RECENTLY_PLAYED, value: SongListSort.RECENTLY_PLAYED,
}, },
{ defaultOrder: SortOrder.ASC, name: 'Release Date', value: SongListSort.RELEASE_DATE }, {
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.releaseDate', { postProcess: 'titleCase' }),
value: SongListSort.RELEASE_DATE,
},
], ],
navidrome: [ navidrome: [
{ defaultOrder: SortOrder.ASC, name: 'Album', value: SongListSort.ALBUM }, {
{ defaultOrder: SortOrder.ASC, name: 'Album Artist', value: SongListSort.ALBUM_ARTIST }, defaultOrder: SortOrder.ASC,
{ defaultOrder: SortOrder.ASC, name: 'Artist', value: SongListSort.ARTIST }, name: i18n.t('filter.album', { postProcess: 'titleCase' }),
{ defaultOrder: SortOrder.DESC, name: 'BPM', value: SongListSort.BPM }, value: SongListSort.ALBUM,
{ defaultOrder: SortOrder.ASC, name: 'Channels', value: SongListSort.CHANNELS }, },
{ defaultOrder: SortOrder.ASC, name: 'Comment', value: SongListSort.COMMENT }, {
{ defaultOrder: SortOrder.DESC, name: 'Duration', value: SongListSort.DURATION }, defaultOrder: SortOrder.ASC,
{ defaultOrder: SortOrder.DESC, name: 'Favorited', value: SongListSort.FAVORITED }, name: i18n.t('filter.albumArtist', { postProcess: 'titleCase' }),
{ defaultOrder: SortOrder.ASC, name: 'Genre', value: SongListSort.GENRE }, value: SongListSort.ALBUM_ARTIST,
{ defaultOrder: SortOrder.ASC, name: 'Name', value: SongListSort.NAME }, },
{ defaultOrder: SortOrder.DESC, name: 'Play Count', value: SongListSort.PLAY_COUNT }, {
{ defaultOrder: SortOrder.DESC, name: 'Rating', value: SongListSort.RATING }, defaultOrder: SortOrder.ASC,
name: i18n.t('filter.artist', { postProcess: 'titleCase' }),
value: SongListSort.ARTIST,
},
{ {
defaultOrder: SortOrder.DESC, defaultOrder: SortOrder.DESC,
name: 'Recently Added', name: i18n.t('filter.bpm', { postProcess: 'titleCase' }),
value: SongListSort.BPM,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('common.channel', { count: 2, postProcess: 'titleCase' }),
value: SongListSort.CHANNELS,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.comment', { postProcess: 'titleCase' }),
value: SongListSort.COMMENT,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.duration', { postProcess: 'titleCase' }),
value: SongListSort.DURATION,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.isFavorited', { postProcess: 'titleCase' }),
value: SongListSort.FAVORITED,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.playCount', { postProcess: 'titleCase' }),
value: SongListSort.GENRE,
},
{
defaultOrder: SortOrder.ASC,
name: i18n.t('filter.name', { postProcess: 'titleCase' }),
value: SongListSort.NAME,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.playCount', { postProcess: 'titleCase' }),
value: SongListSort.PLAY_COUNT,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.rating', { postProcess: 'titleCase' }),
value: SongListSort.RATING,
},
{
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.recentlyAdded', { postProcess: 'titleCase' }),
value: SongListSort.RECENTLY_ADDED, value: SongListSort.RECENTLY_ADDED,
}, },
{ {
defaultOrder: SortOrder.DESC, defaultOrder: SortOrder.DESC,
name: 'Recently Played', name: i18n.t('filter.recentlyPlayed', { postProcess: 'titleCase' }),
value: SongListSort.RECENTLY_PLAYED, value: SongListSort.RECENTLY_PLAYED,
}, },
{ defaultOrder: SortOrder.DESC, name: 'Year', value: SongListSort.YEAR }, {
defaultOrder: SortOrder.DESC,
name: i18n.t('filter.releaseYear', { postProcess: 'titleCase' }),
value: SongListSort.YEAR,
},
], ],
}; };