mirror of
https://github.com/Psychotoxical/psysonic.git
synced 2026-07-21 14:55:43 +00:00
c1403f8bd6
* feat(now-playing): liveness indicator dot in the listening popover Replace the raw "Nm ago" line in the "Who is listening?" popover with a derived presence dot (green playing / amber paused / dim idle). The presence is computed in one tested helper that unifies the playbackReport transport state with the legacy getNowPlaying recency, instead of formatting a raw timestamp inline. The dot carries the localized status as an aria-label and tooltip so it is not conveyed by colour alone. * feat(radio): gate station create/edit/delete behind Navidrome admin role Navidrome >= 0.62 restricts internet-radio management to admins (GHSA-jw24-qqrj-633c); non-admin requests fail. Hide Add Station, Search Directory, the per-card edit chip and delete button for confirmed standard Navidrome users via a canManageNavidromeRadio() helper on the existing useNavidromeAdminRole framework. Admins, non-Navidrome servers and transient states stay unrestricted; playback and favourites remain available to all. * docs(changelog): now-playing status dot + admin-gated radio (#1086)
49 lines
1.5 KiB
TypeScript
49 lines
1.5 KiB
TypeScript
export const nowPlaying = {
|
||
tooltip: 'Who is listening?',
|
||
title: 'Who is listening?',
|
||
loading: 'Loading…',
|
||
nobody: 'Nobody is currently listening.',
|
||
presence: {
|
||
playing: 'Playing',
|
||
paused: 'Paused',
|
||
idle: 'Idle',
|
||
},
|
||
nothingPlaying: 'Nothing playing yet. Start a track!',
|
||
aboutArtist: 'About the Artist',
|
||
fromAlbum: 'From this Album',
|
||
viewAlbum: 'View Album',
|
||
goToArtist: 'Go to Artist',
|
||
readMore: 'Read more',
|
||
showLess: 'Show less',
|
||
genreInfo: 'Genre',
|
||
trackInfo: 'Track Info',
|
||
topSongs: 'Most played by this artist',
|
||
topSongsCredit: 'Top tracks from {{name}}',
|
||
trackPosition: 'Track {{pos}}',
|
||
playsCount_one: '{{count}} play',
|
||
playsCount_other: '{{count}} plays',
|
||
releasedYearsAgo_one: '{{count}} year ago',
|
||
releasedYearsAgo_other: '{{count}} years ago',
|
||
discography: 'Discography',
|
||
thisTrack: 'This track',
|
||
thisArtist: 'This artist',
|
||
listeners: 'listeners',
|
||
scrobbles: 'scrobbles',
|
||
yourScrobbles: 'by you',
|
||
listenersN: '{{n}} listeners',
|
||
scrobblesN: '{{n}} scrobbles',
|
||
playsByYouN: 'played {{n}}× by you',
|
||
rgTrackTooltip: 'ReplayGain (track)',
|
||
rgAlbumTooltip: 'ReplayGain (album)',
|
||
rgAutoTooltip: 'ReplayGain (auto)',
|
||
showMoreTracks: 'Show {{count}} more',
|
||
showLessTracks: 'Show less',
|
||
hideCard: 'Hide card',
|
||
layoutMenu: 'Layout',
|
||
visibleCards: 'Visible cards',
|
||
hiddenCards: 'Hidden cards',
|
||
noHiddenCards: 'No hidden cards',
|
||
resetLayout: 'Reset layout',
|
||
emptyColumn: 'Drop cards here',
|
||
};
|