feat(orbit): show track attribution in host queue + host label in guest queue

Before: the guest queue already labelled guest-suggested tracks with
"Suggested by {user}", but host picks had no label — and the host's own
queue had no attribution at all. The host couldn't tell which upcoming
rows came from guests without checking the pending-approvals list.

- Guest queue: host-pick rows now show "Added by host" instead of hiding
  the attribution line.
- Host queue: each row (and the current track) shows "Added by you" or
  "Added by {user}" while an Orbit session is active. Lookup uses the
  existing OrbitState.queue / currentTrack addedBy field, so no new
  protocol fields.

New i18n keys (en+de+fr+nl+zh+nb+ru+es):
  orbit.queueAddedByHost · queueAddedByYou · queueAddedByUser

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Psychotoxical
2026-04-25 00:28:46 +02:00
parent 2b1124d14a
commit a84be98140
11 changed files with 79 additions and 5 deletions
+20
View File
@@ -2160,6 +2160,26 @@ html[data-platform="windows"] .player-bar.floating {
opacity: 0.8;
}
.queue-item-attribution,
.queue-current-attribution {
font-size: 10px;
color: var(--text-muted);
opacity: 0.75;
margin-top: 1px;
font-style: italic;
}
.queue-item:hover .queue-item-attribution,
.queue-item.context-active .queue-item-attribution {
color: var(--text-secondary);
opacity: 0.9;
}
.queue-item.active .queue-item-attribution {
color: inherit;
opacity: 0.7;
}
/* ═══════════════════════════════════════════════════════════════════════════
MOBILE LAYOUT (< 800px)
Controller: data-mobile attribute set by useIsMobile hook