From f2fed5c9fee3d53b7d8444d44002c928a02bc3b3 Mon Sep 17 00:00:00 2001
From: Boof2015 <75185879+Boof2015@users.noreply.github.com>
Date: Wed, 8 Jul 2026 23:28:02 -0400
Subject: [PATCH] lyrics source
---
src/components/lyrics/LyricsView.tsx | 33 +++++++++++++++++++++++++---
1 file changed, 30 insertions(+), 3 deletions(-)
diff --git a/src/components/lyrics/LyricsView.tsx b/src/components/lyrics/LyricsView.tsx
index 9f33508..8fa8394 100644
--- a/src/components/lyrics/LyricsView.tsx
+++ b/src/components/lyrics/LyricsView.tsx
@@ -15,6 +15,8 @@ import { SeekBar } from '@/components/SeekBar';
import { LyricsBand } from './LyricsBand';
import { spacing, radius } from '@/theme';
import { createThemedStyles, useColors } from '@/theme/themed';
+import { useLyricsStore } from '@/stores/lyricsStore';
+import { getLyricsPayloadSourceLabel } from '@/lyrics/presentation';
import type { Track } from '@/types/audio';
interface LyricsViewProps {
@@ -50,6 +52,8 @@ export function LyricsView({
}: LyricsViewProps) {
const styles = useStyles();
const colors = useColors();
+ const result = useLyricsStore((s) => s.byPath[track.path]?.result ?? null);
+ const sourceLabel = result?.status === 'hit' ? getLyricsPayloadSourceLabel(result.lyrics) : null;
return (
@@ -70,9 +74,16 @@ export function LyricsView({
{track.title}
-
- {track.artist}
-
+
+
+ {track.artist}
+
+ {sourceLabel ? (
+
+ {sourceLabel}
+
+ ) : null}
+
({
stripTitle: {
color: colors.textPrimary,
},
+ stripSubRow: {
+ flexDirection: 'row',
+ alignItems: 'center',
+ justifyContent: 'space-between',
+ gap: spacing.sm,
+ },
+ stripArtist: {
+ flexShrink: 1,
+ },
+ sourceTag: {
+ flexShrink: 0,
+ fontSize: 9,
+ letterSpacing: 0.6,
+ textTransform: 'uppercase',
+ color: colors.textTertiary,
+ },
controls: {
paddingTop: spacing.sm,
},