Browse Source

Add german translations (#1889)

pull/1988/head
Pascal Dietrich 4 weeks ago
committed by GitHub
parent
commit
6c52301a64
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 2
      src/i18n/i18n.config.ts
  2. 237
      src/i18n/locales/de.json
  3. 5
      src/nuxt.config.ts

2
src/i18n/i18n.config.ts

@ -1,6 +1,7 @@
import en from './locales/en.json';
import uk from './locales/uk.json';
import fr from './locales/fr.json';
import de from './locales/de.json';
export default defineI18nConfig(() => ({
legacy: false,
@ -9,5 +10,6 @@ export default defineI18nConfig(() => ({
en,
uk,
fr,
de,
},
}));

237
src/i18n/locales/de.json

@ -0,0 +1,237 @@
{
"pages": {
"me": "Konto",
"clients": "Clients",
"admin": {
"panel": "Admin-Konsole",
"general": "Allgemein",
"config": "Konfiguration",
"interface": "Oberfläche",
"hooks": "Hooks"
}
},
"user": {
"email": "Email"
},
"me": {
"currentPassword": "Aktuelles Passwort",
"enable2fa": "Zwei-Faktor-Authentifizierunng aktivieren",
"enable2faDesc": "Scannen Sie den QR-Code mit ihrer Authentifizierungs-App oder geben Sie den Schlüssel manuell ein.",
"2faKey": "TOTP-Schlüssel",
"2faCodeDesc": "Geben Sie den Code aus Ihrer Authentifizierungs-App ein.",
"disable2fa": "Zwei-Faktor-Authentifizierung deaktivieren",
"disable2faDesc": "Geben Sie Ihr Passwort ein, um die Zwei-Faktor-Authentifizierung zu deaktivieren."
},
"general": {
"name": "Name",
"username": "Benutzername",
"password": "Passwort",
"newPassword": "Neues Passwort",
"updatePassword": "Passwort aktualisieren",
"mtu": "MTU",
"allowedIps": "Erlaubte IP-Adressen",
"dns": "DNS",
"persistentKeepalive": "Dauerhaftes Keepalive",
"logout": "Abmelden",
"continue": "Weiter",
"host": "Host",
"port": "Port",
"yes": "Ja",
"no": "Nein",
"confirmPassword": "Passwort bestätigen",
"loading": "Laden...",
"2fa": "Zwei-Faktor-Authentifizierung",
"2faCode": "TOTP-Code"
},
"setup": {
"welcome": "Willkommen zur Ersteinrichtung von wg-easy",
"welcomeDesc": "Das ist der einfachste Weg, um Wireguard auf jedem Linux-Server zu installieren und zu betreiben.",
"existingSetup": "Haben Sie eine bestehende Einrichtung?",
"createAdminDesc": "Bitte geben Sie zuerst einen Admin-Benutzernamen sowie ein starkes, sicheres Passwort ein. Diese Anmeldedaten benötigen Sie, um sich im Admin-Panel anzumelden.",
"setupConfigDesc": "Bitte geben Sie die Host- und Portinformationen ein. Diese werden für die Client-Konfiguration verwendet, wenn Sie WireGuard auf Ihren Geräten einrichten.",
"setupMigrationDesc": "Bitte halten Sie die Sicherungsdatei bereit, wenn Sie Ihre Daten von Ihrer vorherigen wg-easy Version auf ihre neue Einrichtung migrieren möchten.",
"upload": "Hochladen",
"migration": "Sicherung wiederherstellen:",
"createAccount": "Konto erstellen",
"successful": "Einrichtung erfolgreich",
"hostDesc": "Öffentlicher Hostname mit dem sich die Clients verbinden",
"portDesc": "Öffentlicher UDP-Port an dem sich die Clients verbinden und auf dem Wireguard läuft"
},
"update": {
"updateAvailable": "Es ist ein neue Aktualisierung verfügbar!",
"update": "Aktualisieren"
},
"theme": {
"dark": "Dunkles Thema",
"light": "Helles Thema",
"system": "System-Thema"
},
"layout": {
"toggleCharts": "Statistiken ein-/ausblenden",
"donate": "Spenden"
},
"login": {
"signIn": "Anmelden",
"rememberMe": "Angemeldet bleiben",
"rememberMeDesc": "Bleiben Sie auch nach dem Schließen des Browsers angemeldet",
"insecure": "Sie können sich nicht über eine unsichere Verbindung anmelden. Bitte benutzen Sie HTTPS.",
"2faRequired": "Zwei-Faktor-Authentifizierung wird benötigt",
"2faWrong": "Zwei-Faktor-Authentifizierung ist fehlgeschlagen"
},
"client": {
"empty": "Es gibt noch keine Clients.",
"newShort": "Neu",
"sort": "Sortieren",
"create": "Client erstellen",
"created": "Client wurde erstellt",
"new": "Neuer client",
"name": "Name",
"expireDate": "Ablaufdatum",
"expireDateDesc": "Datum, an dem der Client deaktiviert wird. Leer lassen, damit dies nie passiert.",
"deleteClient": "Client löschen",
"deleteDialog1": "Sind Sie sicher, dass Sie diesen Client löschen wollen",
"deleteDialog2": "Diese Aktion kann nicht rückgängig gemacht werden.",
"enabled": "Aktiviert",
"address": "Adresse",
"serverAllowedIps": "serverseitig erlaubte IP-Adressen",
"otlDesc": "Einen kurzen Einmal-Link erzeugen",
"permanent": "Dauerhaft",
"createdOn": "Angelegt am ",
"lastSeen": "Zuletzt verbunden am ",
"totalDownload": "Gesamt-Download: ",
"totalUpload": "Gesamt-Upload: ",
"newClient": "Neuer Client",
"disableClient": "Client deaktivieren",
"enableClient": "Client aktivieren",
"noPrivKey": "Dieser Client hat keinen bekannten privaten Schlüssel, weshalb keine Konfiguration angelegt werden kann.",
"showQR": "QR-Code anzeigen",
"downloadConfig": "Konfiguration herunterladen",
"allowedIpsDesc": "Welche IP-Adressen durch das VPN geleitet werden (überschreibt die globale Konfiguration)",
"serverAllowedIpsDesc": "Welche IP-Adressen der Server zum Client leiten wird",
"mtuDesc": "Setzt die maximale Übertragungsgröße (Paketgröße) für den VPN-Tunnel",
"persistentKeepaliveDesc": "Legt das Intervall (in Sekunden) für Keepalive-Pakete fest. 0 deaktiviert es",
"hooks": "Hooks",
"hooksDescription": "Hooks funktionieren nur mit wg-quick",
"hooksLeaveEmpty": "Nur für wg-quick. Sonst leer lassen",
"dnsDesc": "DNS-Server, den die Clients benutzen (überschreibt die globale Konfiguration)"
},
"dialog": {
"change": "Ändern",
"cancel": "Abbrechen",
"create": "Erstellen"
},
"toast": {
"success": "Erfolg",
"saved": "Gespeichert",
"error": "Fehler"
},
"form": {
"actions": "Aktionen",
"save": "Speichern",
"revert": "Rückgängig machen",
"sectionGeneral": "Allgemein",
"sectionAdvanced": "Erweitert",
"noItems": "Keine Einträge",
"nullNoItems": "Keine Einträge. Die globale Konfiguration wird benutzt",
"add": "Hinzufügen"
},
"admin": {
"general": {
"sessionTimeout": "Sitzungszeitüberschreitung",
"sessionTimeoutDesc": "Sitzungsdauer für \"Angemeldet bleiben\" (Sekunden)",
"metrics": "Statistiken",
"metricsPassword": "Passwort",
"metricsPasswordDesc": "Bearer-Passwort für den Statistik-Endpunkt (Passwort oder Argon2-Hash)",
"json": "JSON",
"jsonDesc": "Pfad zu den Statistiken als JSON",
"prometheus": "Prometheus",
"prometheusDesc": "Pfad zu den Prometheus-Statistiken"
},
"config": {
"connection": "Verbindung",
"hostDesc": "Öffentlicher Hostname mit dem sich die Clients verbinden (überschreibt die Konfiguration)",
"portDesc": "Öffentlicher UDP-Port an dem sich die Clients verbinden (überschreibt die Konfiguration, vermutlich wollen Sie ebenfalls den Port der Weboberfläche ändern)",
"allowedIpsDesc": "Erlaubte IP-Adressen, die die Clients nutzen werden (Globale Konfiguration)",
"dnsDesc": "DNS-Server, den die Clients nutzen werden (Globale Konfiguration)",
"mtuDesc": "MTU, den die Clients benutzen werden (nur für neue Clients)",
"persistentKeepaliveDesc": "Intervall in Sekunden, in dem Keepalive-Packete an den Server gesendet werden. 0 = deaktiviert (nur für neue Clients)",
"suggest": "Vorschlagen",
"suggestDesc": "Wählen Sie eine IP-Adresse oder einen Hostnamen für das Host-Feld aus"
},
"interface": {
"cidrSuccess": "CIDR wurde geändert",
"device": "Gerät",
"deviceDesc": "Ethernet-Gerät, durch das der Wireguard-Datenverkehr geleitet werden soll",
"mtuDesc": "MTU, den WireGuard benutzen wird",
"portDesc": "UDP Port, auf dem WireGuard lauschen wird (Sie wollen wahrscheinlich auch den Config-Port ändern)",
"changeCidr": "CIDR ändern",
"restart": "Interface neu starten",
"restartDesc": "Das WireGuard-Interface neu starten",
"restartWarn": "Sind Sie sicher, dass Sie das Interface neu starten wollen? Dies wird die Verbindungen aller Clients trennen.",
"restartSuccess": "Interface neu gestartet"
},
"introText": "Willkommen in der Admin-Konsole.\n\nHier können Sie die allgemeinen Einstellungen, die Konfiguration, die Schnittstelleneinstellungen und die Hooks verwalten.\n\nBeginnen Sie, indem Sie einen der Bereiche in der Seitenleiste auswählen."
},
"zod": {
"generic": {
"required": "{0} ist erforderlich",
"validNumber": "{0} muss eine Zahl sein",
"validString": "{0} muss eine Zeichenkette sein",
"validBoolean": "{0} muss ein Wahrheitswert sein",
"validArray": "{0} muss eine Liste sein",
"stringMin": "{0} muss mindestens {1} Zeichen lang sein",
"numberMin": "{0} muss mindestens {1} sein"
},
"client": {
"id": "Client-ID",
"name": "Name",
"expiresAt": "Läuft ab am",
"address4": "IPv4-Adresse",
"address6": "IPv6-Adresse",
"serverAllowedIps": "serverseitig erlaubte IP-Adressen"
},
"user": {
"username": "Benutzername",
"password": "Passwort",
"remember": "Merken",
"name": "Name",
"email": "Email",
"emailInvalid": "Die Email-Adresse muss valide sein",
"passwordMatch": "Die Passwörter müssen übereinstimmen",
"totpEnable": "TOTP aktivieren",
"totpEnableTrue": "\"TOTP aktivieren\" muss ausgewählt sein",
"totpCode": "TOTP-Code"
},
"userConfig": {
"host": "Host"
},
"general": {
"sessionTimeout": "Sitzungszeitüberschreitung",
"metricsEnabled": "Statistiken",
"metricsPassword": "Passwort für Statistiken"
},
"interface": {
"cidr": "CIDR",
"device": "Geräte",
"cidrValid": "CIDR muss valide sein"
},
"otl": "Einmal-Link",
"stringMalformed": "Zeichenkette ist fehlerhaft",
"body": "Body muss ein gültiges Objekt sein",
"hook": "Hook",
"enabled": "Aktiviert",
"mtu": "MTU",
"port": "Port",
"persistentKeepalive": "Dauerhaftes Keepalive",
"address": "IP-Adresse",
"dns": "DNS",
"allowedIps": "Erlaubte IP-Adressen",
"file": "Datei"
},
"hooks": {
"preUp": "PreUp",
"postUp": "PostUp",
"preDown": "PreDown",
"postDown": "PostDown"
}
}

5
src/nuxt.config.ts

@ -44,6 +44,11 @@ export default defineNuxtConfig({
language: 'fr-FR',
name: 'Français',
},
{
code: 'de',
language: 'de-DE',
name: 'Deutsch',
},
],
defaultLocale: 'en',
vueI18n: './i18n.config.ts',

Loading…
Cancel
Save