From e27d59bff7039473e566090fa0f825f7e462aa4e Mon Sep 17 00:00:00 2001 From: Priscila Oliveira Date: Thu, 12 Mar 2020 11:40:12 +0100 Subject: [PATCH] feat(de-translations): added de-DE translations to the UI (#441) --- i18n/config.ts | 6 +- i18n/translations/de-DE.json | 138 ++++++++++++++++++++++++++++++ i18n/translations/en-US.json | 2 +- i18n/translations/es-ES.json | 2 +- i18n/translations/pt-BR.json | 2 +- src/App/load-dayjs-locale.ts | 12 +++ tools/webpack.dev.config.babel.js | 1 - 7 files changed, 158 insertions(+), 5 deletions(-) create mode 100644 i18n/translations/de-DE.json diff --git a/i18n/config.ts b/i18n/config.ts index 29eb422..e89c4e3 100644 --- a/i18n/config.ts +++ b/i18n/config.ts @@ -4,6 +4,7 @@ import { initReactI18next } from 'react-i18next'; import translationEN from './translations/en-US.json'; import translationPT from './translations/pt-BR.json'; import translationES from './translations/es-ES.json'; +import translationDE from './translations/de-DE.json'; i18n // pass the i18n instance to react-i18next. @@ -14,7 +15,7 @@ i18n // in case window.VEDACCIO_LANGUAGE is undefined,it will fall back to 'en-US' lng: window?.__VERDACCIO_BASENAME_UI_OPTIONS?.language, fallbackLng: 'en-US', - whitelist: ['en-US', 'pt-BR', 'es-ES'], + whitelist: ['en-US', 'pt-BR', 'es-ES', 'de-DE'], load: 'currentOnly', resources: { 'en-US': { @@ -26,6 +27,9 @@ i18n 'es-ES': { translation: translationES, }, + 'de-DE': { + translation: translationDE, + }, }, debug: false, interpolation: { diff --git a/i18n/translations/de-DE.json b/i18n/translations/de-DE.json new file mode 100644 index 0000000..040ac67 --- /dev/null +++ b/i18n/translations/de-DE.json @@ -0,0 +1,138 @@ +{ + "copy-to-clipboard": "In die Zwischenablage kopieren", + "author-anonymous": "Anonymus", + "action-bar-action": { + "visit-home-page": "Zur Homepage", + "open-an-issue": "Einen Fehler melden", + "download-tarball": "Archiv (Tarball) herunterladen" + }, + "dialog": { + "registry-info": { + "title": "Registrierungsinformationen" + } + }, + "header": { + "documentation": "Dokumentation", + "registry-info": "Registrierungsinformationen", + "greetings": "Hallo " + }, + "search": { + "packages": "Pakete suchen" + }, + "auto-complete": { + "loading": "wird geladen...", + "no-results-found": "Kein Ergebnis gefunden" + }, + "tab": { + "uplinks": "Uplinks", + "versions": "Versionen", + "dependencies": "Abhängigkeiten", + "readme": "Liesmich" + }, + "uplinks": { + "title": "Uplinks", + "no-items": "{{name}} hat keine Uplinks." + }, + "versions": { + "current-tags": "Aktuelle Tags", + "version-history": "Versionsgeschichte", + "not-available": "Nicht verfügbar" + }, + "package": { + "published-on": "Veröffentlicht am {{time}} •", + "version": "v{{version}}", + "visit-home-page": "Zur Homepage", + "homepage": "Homepage", + "open-an-issue": "Einen Fehler melden", + "bugs": "Fehler", + "download": "{{what}} herunterladen", + "the-tar-file": "die tar-Datei", + "tarball": "Archiv (Tarball)" + }, + "dependencies": { + "has-no-dependencies": "{{package}} hat keine Abhängigkeiten", + "dependency-block": "{{package}}@{{version}}" + }, + "form": { + "username": "Benutzername", + "password": "Passwort" + }, + "form-placeholder": { + "username": "Dein Benutzername", + "password": "Dein sicheres Passwort" + }, + "form-validation": { + "required-field": "Dieses Feld ist erforderlich", + "required-min-length": "Dieses Feld erfordert eine Mindestlänge von {{length}}", + "unable-to-sign-in": "Anmeldung nicht möglich", + "username-or-password-cant-be-empty": "Benutzername und Passwort dürfen nicht leer sein!" + }, + "help": { + "title": "Noch kein Paket publiziert.", + "sub-title": "Um dein erstes Paket einfach zu publizieren:", + "first-step": "1. Einloggen", + "first-step-command-line": "npm adduser --registry {{registryUrl}}", + "second-step": "2. Publizieren", + "second-step-command-line": "npm publish --registry {{registryUrl}}", + "third-step": "3. Diese Seite aktualisieren." + }, + "sidebar": { + "detail": { + "latest-version": "Letzte v{{version}}", + "version": "v{{version}}" + }, + "installation": { + "title": "Installierung", + "install-using-yarn": "Mit yarn installieren", + "install-using-yarn-command": "yarn add {{packageName}}", + "install-using-npm": "Mit npm installieren", + "install-using-npm-command": "npm install {{packageName}}", + "install-using-pnpm": "Mit pnpm installieren", + "install-using-pnpm-command": "pnpm install {{packageName}}" + }, + "repository": { + "title": "Repository" + }, + "author": { + "title": "Autor(in)" + }, + "distribution": { + "title": "Neueste Distribution", + "license": "Lizenz", + "size": "Größe", + "file-count": "Anzahl der Dateien" + }, + "maintainers": { + "title": "Maintainer" + }, + "contributors": { + "title": "Contributor" + }, + "engines": { + "npm-version": "NPM Version", + "node-js": "NODE JS" + } + }, + "footer": { + "powered-by": "Unterstützt von", + "made-with-love-on": "Gemacht mit <0>♥ in" + }, + "button": { + "close": "Schließen", + "cancel": "Abbrechen", + "login": "Einloggen", + "logout": "Ausloggen", + "go-to-the-home-page": "Zur Homepage", + "learn-more": "Mehr erfahren", + "fund-this-package": "Dieses Paket <0>finanzieren" + }, + "error": { + "unspecific": "Etwas ist schief gelaufen.", + "404": { + "page-not-found": "404 - Seite nicht gefunden", + "sorry-we-could-not-find-it": "Entschuldigung, wir konnten es nicht finden..." + }, + "app-context-not-correct-used": "Der App-Kontext wurde nicht korrekt verwendet", + "package-meta-is-required-at-detail-context": "packageMeta wird bei DetailContext benötigt" + } +} diff --git a/i18n/translations/en-US.json b/i18n/translations/en-US.json index 4720cc3..d3f8df7 100644 --- a/i18n/translations/en-US.json +++ b/i18n/translations/en-US.json @@ -21,7 +21,7 @@ }, "auto-complete": { "loading": "Loading...", - "no-results-found": "No results found." + "no-results-found": "No results found" }, "tab": { "uplinks": "Uplinks", diff --git a/i18n/translations/es-ES.json b/i18n/translations/es-ES.json index 9672479..8258789 100644 --- a/i18n/translations/es-ES.json +++ b/i18n/translations/es-ES.json @@ -21,7 +21,7 @@ }, "auto-complete": { "loading": "Cargando...", - "no-results-found": "Sin resultados encontrados." + "no-results-found": "Sin resultados encontrados" }, "tab": { "uplinks": "Remoto", diff --git a/i18n/translations/pt-BR.json b/i18n/translations/pt-BR.json index 8434f1c..2b1c3a0 100644 --- a/i18n/translations/pt-BR.json +++ b/i18n/translations/pt-BR.json @@ -21,7 +21,7 @@ }, "auto-complete": { "loading": "Carregando...", - "no-results-found": "Nenhum resultado encontrado." + "no-results-found": "Nenhum resultado encontrado" }, "tab": { "uplinks": "Uplinks", diff --git a/src/App/load-dayjs-locale.ts b/src/App/load-dayjs-locale.ts index 3a20136..4eceac3 100644 --- a/src/App/load-dayjs-locale.ts +++ b/src/App/load-dayjs-locale.ts @@ -32,6 +32,18 @@ function loadDayJSLocale() { dayjs.locale('pt-br'); } break; + case 'de': + { + require('dayjs/locale/de'); + dayjs.locale('de'); + } + break; + case 'es-es': + { + require('dayjs/locale/es'); + dayjs.locale('es'); + } + break; default: break; } diff --git a/tools/webpack.dev.config.babel.js b/tools/webpack.dev.config.babel.js index 86ca728..726bb84 100644 --- a/tools/webpack.dev.config.babel.js +++ b/tools/webpack.dev.config.babel.js @@ -38,7 +38,6 @@ export default { new HTMLWebpackPlugin({ __UI_OPTIONS: JSON.stringify({ base: new URL('/', 'https://localhost:4872'), - language: 'es-ES', }), title: 'Verdaccio Dev UI', scope: '',