Distinct circular song cards with jump-to-album badge (#953)

* feat(tracks): distinct circular song cards with jump-to-album badge

Single-track cards looked identical to album tiles, so clicking the body
read as album behaviour even though it starts playback. Give them a round
vinyl-style cover (square stays album-only) via a shared .cover-circle
utility, and add a 'To album' badge under the artist that navigates to the
track's album. Card click still plays; the badge is the explicit nav path.

* i18n(tracks): add toAlbum label across 9 locales

* docs(changelog): track-card redesign + to-album badge (#953)
This commit is contained in:
Frank Stellmacher
2026-06-02 20:34:54 +02:00
committed by GitHub
parent 47832632fd
commit cc04a0c93d
13 changed files with 100 additions and 10 deletions
+1
View File
@@ -5,6 +5,7 @@ export const tracks = {
heroReroll: 'Anderen wählen',
playSong: 'Abspielen',
enqueueSong: 'Zur Warteschlange',
toAlbum: 'Zum Album',
railRandom: 'Zufallsauswahl',
railHighlyRated: 'Hoch bewertet',
browseTitle: 'Alle Titel durchstöbern',
+1
View File
@@ -5,6 +5,7 @@ export const tracks = {
heroReroll: 'Pick another',
playSong: 'Play',
enqueueSong: 'Add to queue',
toAlbum: 'To album',
railRandom: 'Random Pick',
railHighlyRated: 'Highly Rated',
browseTitle: 'Browse all tracks',
+1
View File
@@ -5,6 +5,7 @@ export const tracks = {
heroReroll: 'Elegir otra',
playSong: 'Reproducir',
enqueueSong: 'Añadir a la cola',
toAlbum: 'Ver álbum',
railRandom: 'Selección aleatoria',
railHighlyRated: 'Mejor valoradas',
browseTitle: 'Explorar todas las canciones',
+1
View File
@@ -5,6 +5,7 @@ export const tracks = {
heroReroll: 'En choisir un autre',
playSong: 'Lire',
enqueueSong: 'Ajouter à la file',
toAlbum: "Voir l'album",
railRandom: 'Sélection aléatoire',
railHighlyRated: 'Mieux notés',
browseTitle: 'Parcourir tous les titres',
+1
View File
@@ -5,6 +5,7 @@ export const tracks = {
heroReroll: 'Velg et annet',
playSong: 'Spill av',
enqueueSong: 'Legg til i kø',
toAlbum: 'Til album',
railRandom: 'Tilfeldig valg',
railHighlyRated: 'Høyt vurdert',
browseTitle: 'Bla gjennom alle spor',
+1
View File
@@ -5,6 +5,7 @@ export const tracks = {
heroReroll: 'Een ander kiezen',
playSong: 'Afspelen',
enqueueSong: 'Aan wachtrij toevoegen',
toAlbum: 'Naar album',
railRandom: 'Willekeurige selectie',
railHighlyRated: 'Hoog beoordeeld',
browseTitle: 'Alle nummers doorbladeren',
+1
View File
@@ -5,6 +5,7 @@ export const tracks = {
heroReroll: 'Alege alta',
playSong: 'Redă',
enqueueSong: 'Adaugă în coadă',
toAlbum: 'Vezi albumul',
railRandom: 'Alegere aleatorie',
railHighlyRated: 'Foarte apreciate',
browseTitle: 'Caută toate piesele',
+1
View File
@@ -5,6 +5,7 @@ export const tracks = {
heroReroll: 'Выбрать другой',
playSong: 'Воспроизвести',
enqueueSong: 'В очередь',
toAlbum: 'К альбому',
railRandom: 'Случайная подборка',
railHighlyRated: 'Высоко оценённые',
browseTitle: 'Просмотреть все треки',
+1
View File
@@ -5,6 +5,7 @@ export const tracks = {
heroReroll: '换一首',
playSong: '播放',
enqueueSong: '加入队列',
toAlbum: '前往专辑',
railRandom: '随机精选',
railHighlyRated: '高分推荐',
browseTitle: '浏览所有曲目',