refactor(i18n): split locale files into per-namespace modules (Phase K) (#688)

Each src/locales/<lang>.ts (~1800 LOC) becomes a folder src/locales/<lang>/
with one module per i18n namespace (44 each) plus an index.ts barrel that
reassembles <lang>Translation in the original key order.

Mechanical, script-driven split with a JSON round-trip check: every
locale object is byte-identical to its pre-split form. i18n.ts is
unchanged — './locales/<lang>' now resolves to the folder index.

The per-namespace settings.ts files land ~440-460 LOC; a single i18n
namespace is the natural, non-arbitrary split unit for a flat string
table, so they are intentionally left whole.
This commit is contained in:
Frank Stellmacher
2026-05-14 14:06:31 +02:00
committed by GitHub
parent ec112922a2
commit 2409a1fec8
414 changed files with 17424 additions and 16624 deletions
+47
View File
@@ -0,0 +1,47 @@
export const statistics = {
title: 'Statistieken',
recentlyPlayed: 'Recent afgespeeld',
mostPlayed: 'Meest gespeelde albums',
highestRated: 'Best beoordeelde albums',
genreDistribution: 'Genreverdeling (Top 20)',
loadMore: 'Meer laden',
statArtists: 'Artiesten',
statArtistsTooltip: 'Alleen albumartiesten — artiesten die enkel als trackartiest voorkomen (featuring, gast, enz.) zonder eigen album worden niet meegeteld.',
statAlbums: 'Albums',
statSongs: 'Nummers',
statGenres: 'Genres',
statPlaytime: 'Totale speelduur',
genreInsights: 'Genre-inzichten',
formatDistribution: 'Formaatdistributie',
formatSample: 'Steekproef van {{n}} nummers',
computing: 'Berekenen…',
genreSongs: '{{count}} nummers',
genreAlbums: '{{count}} albums',
recentlyAdded: 'Recent toegevoegd',
decadeDistribution: 'Albums per decennium',
decadeAlbums_one: '{{count}} album',
decadeAlbums_other: '{{count}} albums',
decadeUnknown: 'Onbekend',
lfmTitle: 'Last.fm-statistieken',
lfmTopArtists: 'Topartiesten',
lfmTopAlbums: 'Topalbums',
lfmTopTracks: 'Topnummers',
lfmPlays: '{{count}} keer gespeeld',
lfmPeriodOverall: 'Alle tijd',
lfmPeriod7day: '7 dagen',
lfmPeriod1month: '1 maand',
lfmPeriod3month: '3 maanden',
lfmPeriod6month: '6 maanden',
lfmPeriod12month: '12 maanden',
lfmNotConnected: 'Verbind Last.fm in Instellingen om je statistieken te zien.',
lfmRecentTracks: 'Recente scrobbles',
lfmNowPlaying: 'Nu bezig',
lfmJustNow: 'zojuist',
lfmMinutesAgo: '{{n}} min geleden',
lfmHoursAgo: '{{n}} uur geleden',
lfmDaysAgo: '{{n}} dagen geleden',
topRatedSongs: 'Best beoordeelde nummers',
topRatedArtists: 'Best beoordeelde artiesten',
noRatedSongs: 'Nog geen beoordeelde nummers. Beoordeel nummers in album- of afspeellijstweergave.',
noRatedArtists: 'Nog geen beoordeelde artiesten.',
};