chore: Translate the strings missing from every locale

Thirty-three locales were short the same sixty-six keys and had been since
2.2.1. Fifty-six of them are the two-factor setup and the auto-logout
preference; six are the two-factor challenge itself; the rest are the promo
strings the banner rotates through.

The six in `login.js` were the urgent ones. They render during sign-in, before
`core.js` is fetched, so a user with two-factor enabled met the whole challenge
in English — on the one screen they cannot get past without understanding it.
Three of those six exist in `core.js` as well and now read identically in both
files, which nothing checks and which two translators working from two files
would otherwise have got subtly different.

Plural forms follow each language rather than the English pair: Arabic carries
all six CLDR categories with the agreement its counting requires, Czech,
Polish, Russian, Slovak and Ukrainian four with the right case in each, and
Chinese, Japanese, Korean, Vietnamese and Indonesian only `other`, since a
`_one` variant would be a form i18next never reads.

Every file is additions only — no existing line was moved, reworded or
reformatted, so the diff shows what was missing and nothing else. Several
existing mistranslations turned up along the way and were left alone; they are
a separate concern from filling the gaps.
This commit is contained in:
Daniel Hiller
2026-09-08 19:54:41 +02:00
parent 9069b24cfb
commit 26b512193a
66 changed files with 2687 additions and 0 deletions
+74
View File
@@ -98,6 +98,15 @@ export default {
attachment: 'Bilaga',
attachments: 'Bilagor',
authentication: 'Autentisering',
autoLogout: 'Automatisk utloggning',
autoLogout_10m: 'Efter 10 minuter',
autoLogout_12h: 'Efter 12 timmar',
autoLogout_2m: 'Efter 2 minuter',
autoLogout_30m: 'Efter 30 minuter',
autoLogout_5m: 'Efter 5 minuter',
autoLogout_never: 'Aldrig',
autoLogoutWarning_body: 'Du loggas ut om {{seconds}}s på grund av inaktivitet.',
autoLogoutWarning_title: 'Du loggas ut snart',
background: 'Bakgrund',
baseCustomFields_title: 'Grundläggande anpassade fält',
baseGroup: 'Basgrupp',
@@ -130,6 +139,8 @@ export default {
closed: 'Stängd',
color: 'Färg',
comments: 'Kommentarer',
confirmCodesSaved: 'Jag har sparat de här koderna på ett säkert ställe.',
confirmPassword: 'Bekräfta lösenord',
contentExceedsLimit: 'Innehållet överskrider {{limit}}',
contentOfThisAttachmentIsTooBigToDisplay:
'Innehållet i den här bilagan är för stort för att visas.',
@@ -153,9 +164,59 @@ export default {
proFeatureCalendar: '✨ Kalendervy för dina bräden',
proFeatureRecurringCards: '✨ Återkommande kort och automatisering',
proFeatureGuestRoles: '✨ Gästroller och externt samarbete',
proFeatureDashboard: '✨ En dashboard för alla projekt',
proFeatureExport: '✨ Kort som PDF för din rapportering',
proFeatureMobile: '✨ PLANKA på mobil och surfplatta',
proFeatureSso: '✨ Logga in med företagets katalogtjänst (SSO)',
proFeatureThemes: '✨ Fem teman och din egen accentfärg',
proFeatureTimeline: '✨ Tidslinje: hela året på en axel',
proTrialSelfHosted: '✨ Testa PLANKA Pro i 30 dagar på din egen server',
dismissProBannerFor30Days: 'Stäng i 30 dagar',
customerPanel_title: 'Kundpanel',
dangerZone_title: 'Farozon',
disable2fa_title: 'Inaktivera tvåfaktorsautentisering',
disable2faWarning:
'Du måste bekräfta ditt nuvarande lösenord och en TOTP-kod. Befintliga sessioner förblir inloggade.',
enable2fa_title: 'Aktivera tvåfaktorsautentisering',
enabledOn: 'Aktiverad {{date}}',
enterCodeFromApp: 'Ange den 6-siffriga koden från din autentiseringsapp.',
enterPasswordToContinue: 'Bekräfta ditt nuvarande lösenord för att fortsätta.',
enterTotpOrRecoveryCode:
'Ange den 6-siffriga koden från din autentiseringsapp, eller en av dina återställningskoder (xxxxx-xxxxx).',
expires: 'Går ut',
invalidTotpCode: 'Ogiltig TOTP- eller återställningskod',
lastUsed: 'Senast använd',
never: 'Aldrig',
noTrustedDevices: 'Inga betrodda enheter.',
orEnterSecretManually: 'Eller ange denna hemliga nyckel manuellt:',
recoveryCodesExhausted:
'Alla återställningskoder har använts. Generera en ny uppsättning för att ha en reserv om du förlorar din autentiseringsapp.',
recoveryCodesIntro:
'Förvara de här koderna på ett säkert ställe — varje kod kan användas en gång om du förlorar åtkomsten till din autentiseringsapp.',
recoveryCodesLow_one:
'Endast {{count}} återställningskod kvar. Överväg att generera nya snart.',
recoveryCodesLow_other:
'Endast {{count}} återställningskoder kvar. Överväg att generera nya snart.',
regenerateRecoveryCodes_title: 'Regenerera återställningskoder',
regenerateRecoveryCodesIntro:
'Att generera nya koder gör alla befintliga återställningskoder ogiltiga.',
reset2fa_title: 'Återställ 2FA',
reset2faWarning:
'Att återställa 2FA loggar ut användaren från alla sessioner och tar bort användarens TOTP-konfiguration. Användaren måste ställa in den på nytt vid nästa inloggning.',
saveTheseCodes_title: 'Spara dessa återställningskoder',
scanQrCodeWithApp:
'Skanna den här QR-koden med en autentiseringsapp som Google Authenticator eller Authy.',
security_title: 'Säkerhet',
totpCode: 'TOTP-kod',
totpOrRecoveryCode: 'TOTP- eller återställningskod',
trustedDevices_title: 'Betrodda webbläsare',
trustedDevicesHint:
'Webbläsare som har markerats som betrodda hoppar över den andra faktorn i 30 dagar. Återkalla de som du inte längre känner igen.',
twoFactor_enabled: 'Tvåfaktorsautentisering är aktiverad.',
twoFactor_intro:
'Lägg till ett extra säkerhetslager på ditt konto med en tidsbaserad engångskod från en autentiseringsapp.',
twoFactorAuthentication: 'Tvåfaktorsautentisering',
unknownDevice: 'Okänd enhet',
date: 'Datum',
deactivateUser_title: 'Inaktivera användare',
defaultCardType_title: 'Standardkorttyp',
@@ -412,8 +473,11 @@ export default {
archiveCards: 'Arkivera kort',
archiveCards_title: 'Arkivera kort',
assignAsOwner: 'Tilldela som ägare',
back: 'Tillbaka',
cancel: 'Avbryt',
changePassword: 'Ändra lösenord',
copy: 'Kopiera',
copyAll: 'Kopiera alla',
copyCard_title: 'Kopiera kort',
createApiKey: 'Skapa API-nyckel',
createBoard: 'Skapa tavla',
@@ -453,7 +517,9 @@ export default {
deleteUser: 'Ta bort användare',
deleteUser_title: 'Ta bort användare',
deleteWebhook: 'Ta bort webhook',
disable2fa: 'Inaktivera 2FA',
dismissAll: 'Avvisa alla',
done: 'Klar',
download: 'Ladda ner',
duplicateCard_title: 'Duplicera kort',
edit: 'Redigera',
@@ -473,12 +539,14 @@ export default {
editUsername_title: 'Redigera användarnamn',
emptyTrash: 'Töm papperskorg',
emptyTrash_title: 'Töm papperskorg',
enable2fa: 'Aktivera 2FA',
import: 'Importera',
join: 'Gå med',
leave: 'Lämna',
leaveBoard: 'Lämna tavla',
leaveProject: 'Lämna projekt',
logOut_title: 'Logga ut',
logOutNow: 'Logga ut nu',
makeCover_title: 'Skapa omslagsbild',
makeProjectPrivate: 'Gör projekt privat',
makeProjectPrivate_title: 'Gör projekt privat',
@@ -487,7 +555,9 @@ export default {
move: 'Flytta',
moveCard_title: 'Flytta kort',
moveList_title: 'Flytta lista',
regenerate: 'Regenerera',
regenerateApiKey: 'Regenerera API-nyckel',
regenerateRecoveryCodes: 'Regenerera återställningskoder',
remove: 'Ta bort',
removeAssignee: 'Ta bort tilldelad',
removeColor: 'Ta bort färg',
@@ -496,8 +566,10 @@ export default {
removeFromProject: 'Ta bort from projekt',
removeManager: 'Ta bort projektledare',
removeMember: 'Ta bort medlem',
reset2fa: 'Återställ 2FA',
restoreToList: 'Återställ till {{list}}',
returnToBoard: 'Återgå till tavla',
revoke: 'Återkalla',
save: 'Spara',
sendTestEmail: 'Skicka test-e-post',
showActive: 'Visa aktiva',
@@ -509,11 +581,13 @@ export default {
showMore: 'Visa mer',
sortList_title: 'Sortera lista',
start: 'Starta',
stayLoggedIn: 'Förbli inloggad',
stop: 'Stoppa',
subscribe: 'Prenumerera',
unsubscribe: 'Avprenumerera',
uploadNewAvatar: 'Ladda upp ny avatar',
uploadNewImage: 'Ladda upp ny bild',
verify: 'Verifiera',
},
},
};