feat: explicit metadata, lyrics embedding, E badge in global search
Backend: - fetchLyrics() queries LRCLIB for plain + synced lyrics - Synced lyrics saved as .lrc file (Navidrome reads these) - Plain lyrics embedded via ffmpeg -metadata lyrics= - ITUNESADVISORY=1 written for explicit tracks - explicit flag passed through album/track download chain - fetchItunesTracks + searchItunesAlbumTracks use country=us&explicit=Yes Frontend: - explicit:true sent in download payload from iTunes track data - "E" badge shown on explicit tracks in global search track list Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
3c5048f017
commit
93b859bf0e
4 files changed
+41
-10
No files matched your search
+2
-1
@@ -123,7 +123,8 @@ nav{flex:1;overflow-y:auto;padding:4px 10px}
|
||||
.gtrack-item:hover{background:var(--surface)}
|
||||
.gtrack-art{width:52px;height:52px;border-radius:6px;overflow:hidden;background:var(--surface2);flex-shrink:0}
|
||||
.gtrack-art img{width:100%;height:100%;object-fit:cover}
|
||||
.gtrack-info .gtrack-title{font-size:14px;font-weight:600}
|
||||
.gtrack-info .gtrack-title{font-size:14px;font-weight:600;display:flex;align-items:center;gap:5px}
|
||||
.explicit-badge{display:inline-flex;align-items:center;justify-content:center;font-size:8px;font-weight:800;width:13px;height:13px;border-radius:2px;background:var(--text3);color:var(--bg);flex-shrink:0;letter-spacing:0}
|
||||
.gtrack-info .gtrack-sub{font-size:12px;color:var(--text2);margin-top:2px}
|
||||
.gtrack-actions{display:flex;align-items:center;gap:6px;opacity:0;transition:opacity .15s}
|
||||
.gtrack-item:hover .gtrack-actions{opacity:1}
|
||||
|
||||
Reference in new issue
Block a user