Add i18n support: per-locale catalogs, URL-driven locale, translated core and examples
CI / full-gate (push) Successful in 2m37s

This commit is contained in:
2026-08-03 22:37:27 +02:00
parent c30cd95ebd
commit 245d1ad5b5
93 changed files with 2480 additions and 464 deletions
+155
View File
@@ -0,0 +1,155 @@
import type { CoreMessages } from "./en-US.ts";
const messages: CoreMessages = {
"auth.continue": "Fortsätt",
"auth.field.email": "E-postadress",
"auth.field.identifier": "E-postadress",
"auth.field.password": "Lösenord",
"auth.field.traits.email": "E-postadress",
"auth.forgotPassword": "Glömt lösenordet?",
"auth.login.altLabel": "Skapa ett",
"auth.login.altText": "Har du inget konto?",
"auth.login.sub": "Välkommen tillbaka. Fyll i dina uppgifter för att fortsätta.",
"auth.login.title": "Logga in",
"auth.recovery.altLabel": "Logga in",
"auth.recovery.altText": "Kom du på det?",
"auth.recovery.back": "Tillbaka till inloggningen",
"auth.recovery.sub": "Ange din e-postadress så skickar vi en återställningskod.",
"auth.recovery.title": "Återställ lösenord",
"auth.registration.altLabel": "Logga in",
"auth.registration.altText": "Har du redan ett konto?",
"auth.registration.sub": "Kom igång — det tar bara en minut.",
"auth.registration.title": "Skapa konto",
"auth.settings.sub": "Uppdatera dina kontouppgifter.",
"auth.settings.title": "Kontoinställningar",
"auth.sso.divider": "eller",
"auth.sso.label": "Alternativ för enkel inloggning",
"auth.verification.back": "Tillbaka till inloggningen",
"auth.verification.sub": "Ange koden vi skickade till dig.",
"auth.verification.title": "Verifiera din e-postadress",
"brand.sub": "Konsol",
"consent.allow": "Tillåt",
"consent.deny": "Neka",
"consent.notYou": "Inte du?",
"consent.scope.email": "Din e-postadress",
"consent.scope.offline_access": "Håll dig inloggad (offlineåtkomst)",
"consent.scope.openid": "Verifiera din identitet",
"consent.scope.profile": "Din grundläggande profil (namn)",
"consent.signedInAs": "Inloggad som",
"consent.sub": "{{client}} vill få åtkomst till ditt konto.",
"consent.title": "Godkänn {{client}}",
"dashboard.starter.browse": "Utforska exempelpluginet",
"dashboard.starter.intro":
"Detta är den inbyggda <code>/dashboard</code> — den inloggade startsidan. Den är en platshållare så att en färsk klon har något här; den innehåller inga riktiga data.",
"dashboard.starter.reference":
"Se plugin-kontraktet i <code>docs/plugin-contract.md</code> (avsnittet om startsidorna) och referensen <code>plugins/scheduling/</code>.",
"dashboard.starter.replace":
"Ersätt den från ett plugin: exportera en <code>dashboard</code>-hanterare från pluginets manifest så äger det den här sidan, renderad mot dina egna vyer med appens eget skal (samma meny du ser nu) via <code>ctx.chrome</code>.",
"dashboard.starter.title": "Startpanel",
"dashboard.title": "Panel",
"error.403.body": "Du har inte behörighet att se det här (403).",
"error.403.docTitle": "Åtkomst nekad",
"error.403.title": "Åtkomst nekad",
"error.404.body": "Vi hittade inte sidan (404).",
"error.404.docTitle": "Sidan finns inte",
"error.404.title": "Sidan hittades inte",
"error.500.body": "Ett oväntat fel uppstod hos oss (500).",
"error.500.docTitle": "Serverfel",
"error.500.title": "Något gick fel",
"error.503.body": "Vi når inte identitetstjänsten just nu (503). Försök igen om en liten stund.",
"error.503.docTitle": "Inloggning otillgänglig",
"error.503.title": "Inloggningen är tillfälligt otillgänglig",
"error.backHome": "Tillbaka till startsidan",
"error.backToSignIn": "Tillbaka till inloggningen",
"error.flow.body": "Vi kunde inte slutföra det inloggningssteget. Det kan ha gått ut eller öppnats två gånger — försök igen.",
"error.flow.docTitle": "Inloggningsfel",
"error.flow.title": "Något gick fel",
"error.reference": "Referens: {{id}}",
"error.tryAgain": "Försök igen",
"field.optional": "Frivilligt",
"filter.applied": "Aktiva",
"filter.appliedFilters": "Aktiva filter",
"filter.apply": "Använd filter",
"filter.clearAll": "Rensa alla",
"filter.dateRange": "Datumintervall",
"filter.from": "Från",
"filter.label": "Filter",
"filter.remove": "Ta bort filtret {{label}}",
"filter.reset": "Återställ",
"filter.search": "Sök",
"filter.to": "Till",
"filter.toSeparator": "till",
"kratos.1010022": "Logga in med lösenord",
"kratos.1040001": "Skapa konto",
"kratos.1060003":
"Ett mejl med en återställningskod har skickats till adressen du angav. Har du inte fått något mejl, kontrollera stavningen och att du använder adressen du registrerade dig med.",
"kratos.1070008": "Skicka koden igen",
"kratos.1070009": "Fortsätt",
"kratos.1070010": "Återställningskod",
"kratos.1070011": "Verifieringskod",
"kratos.1080003":
"Ett mejl med en verifieringskod har skickats till adressen du angav. Har du inte fått något mejl, kontrollera stavningen och att du använder adressen du registrerade dig med.",
"kratos.4000002": "Fältet är obligatoriskt.",
"kratos.4000006": "Uppgifterna stämmer inte. Kontrollera att e-postadressen och lösenordet är rätt stavade.",
"kratos.4000007": "Det finns redan ett konto med den e-postadressen.",
"kratos.4060006": "Återställningskoden är ogiltig eller redan använd. Försök igen.",
"kratos.4070006": "Verifieringskoden är ogiltig eller redan använd. Försök igen.",
"landing.dashboard": "Gå till din panel",
"landing.lead":
"{{brand}} är en självhostad grund för administrativa och operativa gränssnitt — inloggning, en konfigurationsstyrd meny och ett serverrenderat designsystem utan JavaScript. Du lägger till de verksamhetsnära skärmarna genom att släppa in plugin-mappar.",
"landing.register": "Skapa konto",
"landing.signIn": "Logga in",
"landing.title": "Operativa webbappar, utan all pannplåt.",
"locale.label": "Språk",
"nav.dashboard": "Panel",
"oauth.consentExpired": "Den här behörighetsbegäran har gått ut. Börja om från appen du skulle logga in i.",
"oauth.loginExpired": "Den här inloggningsbegäran har gått ut. Börja om från appen du skulle logga in i.",
"oauth.logoutExpired": "Den här utloggningsbegäran har gått ut. Börja om från appen du skulle logga ut från.",
"pagination.go": "Visa",
"pagination.label": "Sidnavigering",
"pagination.next": "Nästa sida",
"pagination.of": "av",
"pagination.previous": "Föregående sida",
"pagination.rows": "Rader",
"shell.breadcrumb": "Sidsökväg",
"shell.closeMenu": "Stäng menyn",
"shell.guest": "Gäst",
"shell.mainNav": "Huvudmeny",
"shell.openMenu": "Öppna menyn",
"shell.preferences": "Inställningar",
"shell.profile": "Profil",
"shell.settings": "Inställningar",
"shell.sidebar": "Primär",
"shell.signedInAs": "Inloggad som {{name}}",
"shell.signIn": "Logga in",
"shell.signOut": "Logga ut",
"shell.skipToContent": "Hoppa till innehållet",
"shell.toggleSection": "Visa eller dölj {{label}}",
"table.actions": "Åtgärder",
"table.empty": "Inget här ännu.",
"table.row": "raden",
"table.rowActions": "Radåtgärder för {{name}}",
"table.select": "Markera {{name}}",
"table.selectAll": "Markera alla rader",
"theme.auto": "Auto",
"theme.dark": "Mörkt",
"theme.label": "Färgtema",
"theme.light": "Ljust",
};
export default messages;