Files
psysonic/src/locales/nb/albumDetail.ts
T
Frank Stellmacher efd85ffde3 feat(tracklist): play count, last played, BPM columns + Song Info rows (#730)
* feat(tracklist): play count, last played, and BPM columns (#516)

Adds three opt-in columns to Album / Playlist / Favorites tracklists,
plus the same fields in the Song Info modal. Picks up Navidrome's
existing `playCount` / `played` / `bpm` from the Subsonic response — no
new API calls.

- `SubsonicSong` gains `playCount`, `played`, `bpm` (already populated
  by Navidrome's Subsonic API, just unmapped in the TS model).
- `albumTrackListHelpers.COLUMNS`, `PL_COLUMNS` (PlaylistDetail), and
  `FAV_COLUMNS` (Favorites) get the three new entries. Genre also added
  to the playlist column set for parity with the other two lists.
- Render uses `.track-duration` (12px tabular, centered, muted) for the
  numeric stats and `.track-genre` (11px text, muted) for the relative
  last-played timestamp via the existing `formatLastSeen` helper.
- Sort logic extended in `playlistDisplayedSongs`,
  `useAlbumDetailSort`, and `useFavoritesSongFiltering` for the three
  new keys.
- `SongInfoModal` gets matching rows (BPM / Play count / Last played).
- `useTracklistColumns.gridTemplate` / `gridMinWidth` fall back to the
  ColDef's `defaultWidth` when a visible column has no saved width
  (newly added column on an old prefs blob would otherwise emit
  `undefinedpx` and collapse the row layout until reset-to-defaults).
- BPM cells skip the rendering when Navidrome returns 0 (default for
  untagged files) — show `—` instead of `0`.
- i18n: `albumDetail.trackPlayCount / trackLastPlayed / trackBpm` and
  `songInfo.playCount / lastPlayed / bpm` in all 9 locales.

Suggested by jbigginswyl (#516).

* docs(changelog): tracklist Plays / Last played / BPM columns (#730)
2026-05-15 22:01:05 +02:00

51 lines
1.8 KiB
TypeScript

export const albumDetail = {
back: 'Tilbake',
orbitDoubleClickHint: 'Dobbeltklikk for å legge dette sporet til Orbit-køen',
playAll: 'Spill alt',
shareAlbum: 'Del album',
enqueue: 'Legg i kø',
enqueueTooltip: 'Legg hele albumet i kø',
artistBio: 'Artistbiografi',
download: 'Last ned (ZIP)',
downloading: 'Laster…',
cacheOffline: 'Gjør tilgjengelig som frakoblet',
offlineCached: 'Tilgjengelig frakoblet',
offlineDownloading: 'Bufrer… ({{n}}/{{total}})',
removeOffline: 'Fjern frakoblet hurtigbuffer',
offlineStorageFull: 'Frakoblet lagring er full (lagringsgrense: {{mb}} MB). Frigjør plass, ved å slette et album fra ditt frakoblede bibliotek, eller øk lagringsgrensen i Innstillinger.',
offlineStorageGoToLibrary: 'Frakoblet bibliotek',
offlineStorageGoToSettings: 'Innstillinger',
favoriteAdd: 'Legg til i favoritter',
favoriteRemove: 'Fjern fra favoritter',
favorite: 'Favoritt',
noBio: 'Ingen biografi er tilgjengelig.',
moreByArtist: 'Mer av {{artist}}',
tracksCount: '{{n}} spor',
goToArtist: 'Gå til {{artist}}',
moreLabelAlbums: 'Flere album på {{label}}',
trackTitle: 'Tittel',
trackAlbum: 'Album',
trackArtist: 'Artist',
trackGenre: 'Sjanger',
trackPlayCount: 'Avspillinger',
trackLastPlayed: 'Sist spilt',
trackBpm: 'BPM',
trackFormat: 'Format',
trackFavorite: 'Favoritt',
trackRating: 'Vurdering',
trackDuration: 'Varighet',
trackTotal: 'Totalt',
columns: 'Kolonner',
resetColumns: 'Tilbakestill',
notFound: 'Album ble ikke funnet.',
bioModal: 'Artistbiografi',
bioClose: 'Lukk',
ratingLabel: 'Vurdering',
enlargeCover: 'Forstørr',
filterSongs: 'Filtrer sanger…',
sortNatural: 'Naturlig',
sortByTitle: 'A–Å (Tittel)',
sortByArtist: 'A–Å (Artist)',
sortByAlbum: 'A–Å (Album)',
};