feat(artist): sort albums by year on artist detail (#877)

* feat(artist): year sort for albums section on artist detail

Add a sort dropdown next to "Albums by …" with release-type grouping (default),
newest-first, and oldest-first by album year.

* chore: note PR #877 in CHANGELOG and settings credits

* fix(artist): toggle year sort inside release groups, session per server

Replace dropdown with a click-to-toggle newest/oldest button. Keep release-type
blocks; sort albums by year within each group. Persist order in session store.
This commit is contained in:
cucadmuh
2026-05-27 13:04:00 +03:00
committed by GitHub
parent 06da15caf3
commit ee5068c98c
16 changed files with 193 additions and 11 deletions
+3
View File
@@ -10,6 +10,9 @@ export const artistDetail = {
noRadio: 'Keine ähnlichen Titel für diesen Künstler gefunden.',
notFound: 'Künstler nicht gefunden.',
albumsBy: 'Alben von {{name}}',
sortYearToggleAria: 'Jahressortierung innerhalb jedes Veröffentlichungstyps umschalten',
sortYearDesc: 'Jahr, neueste zuerst',
sortYearAsc: 'Jahr, älteste zuerst',
topTracks: 'Beliebteste Titel',
noAlbums: 'Keine Alben gefunden.',
trackTitle: 'Titel',
+3
View File
@@ -11,6 +11,9 @@ export const artistDetail = {
notFound: 'Artist not found.',
albumsBy: 'Albums by {{name}}',
albumsByLossless: 'Lossless albums by {{name}}',
sortYearToggleAria: 'Toggle album year sort within each release type',
sortYearDesc: 'Year, newest first',
sortYearAsc: 'Year, oldest first',
topTracks: 'Top Tracks',
topTracksLossless: 'Lossless Tracks',
noAlbums: 'No albums found.',
+3
View File
@@ -10,6 +10,9 @@ export const artistDetail = {
noRadio: 'No se encontraron pistas similares para este artista.',
notFound: 'Artista no encontrado.',
albumsBy: 'Álbumes de {{name}}',
sortYearToggleAria: 'Alternar orden por año dentro de cada tipo de lanzamiento',
sortYearDesc: 'Año, más recientes',
sortYearAsc: 'Año, más antiguos',
topTracks: 'Mejores Pistas',
noAlbums: 'No se encontraron álbumes.',
trackTitle: 'Título',
+3
View File
@@ -10,6 +10,9 @@ export const artistDetail = {
noRadio: 'Aucun morceau similaire trouvé pour cet artiste.',
notFound: 'Artiste introuvable.',
albumsBy: 'Albums de {{name}}',
sortYearToggleAria: 'Inverser le tri par année dans chaque type de sortie',
sortYearDesc: 'Année, plus récents',
sortYearAsc: 'Année, plus anciens',
topTracks: 'Morceaux populaires',
noAlbums: 'Aucun album trouvé.',
trackTitle: 'Titre',
+3
View File
@@ -10,6 +10,9 @@ export const artistDetail = {
noRadio: 'Ingen lignende spor funnet for denne artisten.',
notFound: 'Artisten ble ikke funnet.',
albumsBy: 'Album fra {{name}}',
sortYearToggleAria: 'Bytt årssortering innen hver utgivelsestype',
sortYearDesc: 'År, nyeste først',
sortYearAsc: 'År, eldste først',
topTracks: 'Toppspor',
noAlbums: 'Ingen album funnet.',
trackTitle: 'Tittel',
+3
View File
@@ -10,6 +10,9 @@ export const artistDetail = {
noRadio: 'Geen vergelijkbare nummers gevonden voor deze artiest.',
notFound: 'Artiest niet gevonden.',
albumsBy: 'Albums van {{name}}',
sortYearToggleAria: 'Sorteervolgorde op jaar binnen elk uitgavetype wisselen',
sortYearDesc: 'Jaar, nieuwste eerst',
sortYearAsc: 'Jaar, oudste eerst',
topTracks: 'Populaire nummers',
noAlbums: 'Geen albums gevonden.',
trackTitle: 'Titel',
+3
View File
@@ -10,6 +10,9 @@ export const artistDetail = {
noRadio: 'Nicio piesă similară găsită pentru acest artist.',
notFound: 'Artistul nu a fost găsit.',
albumsBy: 'Albume de {{name}}',
sortYearToggleAria: 'Comută sortarea după an în fiecare tip de lansare',
sortYearDesc: 'An, cele mai noi',
sortYearAsc: 'An, cele mai vechi',
topTracks: 'Top Piese',
noAlbums: 'Niciun album găsit.',
trackTitle: 'Titlu',
+3
View File
@@ -11,6 +11,9 @@ export const artistDetail = {
notFound: 'Исполнитель не найден.',
albumsBy: 'Альбомы — {{name}}',
albumsByLossless: 'Lossless-альбомы — {{name}}',
sortYearToggleAria: 'Переключить порядок альбомов по году внутри каждого типа релиза',
sortYearDesc: 'По году, сначала новые',
sortYearAsc: 'По году, сначала старые',
topTracks: 'Популярные треки',
topTracksLossless: 'Lossless-треки',
noAlbums: 'Альбомов нет.',
+3
View File
@@ -10,6 +10,9 @@ export const artistDetail = {
noRadio: '未找到该艺术家的相似曲目。',
notFound: '未找到艺术家。',
albumsBy: '{{name}} 的专辑',
sortYearToggleAria: '在各发行类型内切换按年份排序',
sortYearDesc: '年份,从新到旧',
sortYearAsc: '年份,从旧到新',
topTracks: '热门曲目',
noAlbums: '未找到专辑。',
trackTitle: '标题',