From c6e27f9fb97cc19d156e152410abe7daced0cca7 Mon Sep 17 00:00:00 2001 From: Fiona Scheibler Date: Mon, 13 Aug 2018 21:01:06 +0800 Subject: [PATCH] feat(i18n): add german language --- package-lock.json | 28 ++++++-- src/app/app.component.ts | 2 +- .../settings/settings/settings.component.ts | 6 +- src/assets/i18n/de.json | 68 +++++++++++++++++++ src/assets/i18n/en.json | 1 + src/assets/i18n/examples/de.json | 67 ++++++++++++++++++ src/assets/i18n/examples/en.json | 2 +- src/assets/i18n/sk.json | 1 + 8 files changed, 165 insertions(+), 10 deletions(-) create mode 100755 src/assets/i18n/de.json create mode 100755 src/assets/i18n/examples/de.json diff --git a/package-lock.json b/package-lock.json index cfd9b3241..bc1784b8d 100755 --- a/package-lock.json +++ b/package-lock.json @@ -5212,12 +5212,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -5232,17 +5234,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -5359,7 +5364,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -5371,6 +5377,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -5385,6 +5392,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -5392,12 +5400,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -5416,6 +5426,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -5496,7 +5507,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -5508,6 +5520,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -5629,6 +5642,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", diff --git a/src/app/app.component.ts b/src/app/app.component.ts index 11e8ae661..53a74311b 100755 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -42,7 +42,7 @@ export class AppComponent implements OnInit, OnDestroy { version = env.versions.app; year = new Date().getFullYear(); logo = require('../assets/logo.png'); - languages = ['en', 'sk']; + languages = ['en', 'de', 'sk']; navigation = [ { link: 'about', label: 'anms.menu.about' }, { link: 'features', label: 'anms.menu.features' }, diff --git a/src/app/settings/settings/settings.component.ts b/src/app/settings/settings/settings.component.ts index 7f7ff854f..62a4d829a 100755 --- a/src/app/settings/settings/settings.component.ts +++ b/src/app/settings/settings/settings.component.ts @@ -30,7 +30,11 @@ export class SettingsComponent implements OnInit, OnDestroy { { value: 'BLACK-THEME', label: 'dark' } ]; - languages = [{ value: 'en', label: 'en' }, { value: 'sk', label: 'sk' }]; + languages = [ + { value: 'en', label: 'en' }, + { value: 'de', label: 'de' }, + { value: 'sk', label: 'sk' } + ]; constructor(private store: Store<{}>) { store diff --git a/src/assets/i18n/de.json b/src/assets/i18n/de.json new file mode 100755 index 000000000..202d12722 --- /dev/null +++ b/src/assets/i18n/de.json @@ -0,0 +1,68 @@ +{ + "anms.title": "Angular NgRx Material Vorlage", + "anms.title.short": "Angular Vorlage", + "anms.header.github": "Projekt Github-Repository", + "anms.footer.changelog": "Changelog anzeigen", + "anms.menu.about": "Über", + "anms.menu.features": "Eigenschaften", + "anms.menu.examples": "Beispiele", + "anms.menu.settings": "Einstellungen", + "anms.menu.login": "Anmelden", + "anms.menu.logout": "Abmelden", + "anms.about.change-theme": "Thema ändern", + "anms.about.check-blogs": "oder lese weitere Blogs darüber", + "anms.about.get-started": "Leg los!", + "anms.about.get-notified": "Werde über neue Versionen informiert", + "anms.about.get-notified.follow": "Folge", + "anms.about.get-notified.description": + "ein Twitterbot, der dich über die neusten Versionen deiner Lieblingsframeworks & -bibliotheken informiert!", + "anms.about.contributors": "Beitragende", + "anms.about.contributors.description1": + "Möchtest du auch zu einem Open Source Projekt mit Angular beitragen?", + "anms.about.contributors.description2": + "Hinterlasse deine Spuren und werde Teil eines wachsenden Teams!", + "anms.about.contributors.description3": "Werfe einen ersten Blick auf", + "anms.about.contributors.description4": " und ", + "anms.about.contributors.issues": "offene Probleme", + "anms.about.contributors.guide": "die Anleitung für Beitragende", + "anms.features.title": "Features", + "anms.features.documentation": "Doku", + "anms.features.guide": "Anleitung", + "anms.features.angular": "Modernes und leistungsfähiges Framework", + "anms.features.angular-material": "Material Design-Komponente", + "anms.features.angular-cli": "Eine Befehlszeilenschnittstelle für Angular", + "anms.features.ngrx": "Einweg-Datenfluss unterstützt von RxJS Observables", + "anms.features.ngxtranslate": + "Eine Internationalisierungsbibliothek für Angular", + "anms.features.rxjs": + "Reaktive Programmierung mit Async-Sammlungen unter Verwendung von Observablen", + "anms.features.bootstrap": + "Responsives Layout von der weltbekannten UI-Bibliothek", + "anms.features.typescript": + "Überlegene Entwickler Erfahrung, Code-Vervollständigung, Refaktorierung und weniger Bugs", + "anms.features.fontawesome": + "Einfach zu bedienende Vektor-Icons und soziale Logos", + "anms.features.themes": + "Flexible Theming-Unterstützung für bereitgestellte und benutzerdefinierte Komponenten.", + "anms.features.themes.title": "Themen", + "anms.features.lazyloading": + "Schnellere Startzeit mit Lazy Loaded Feature-Modulen", + "anms.features.lazyloading.title": "Lazy Loading", + "anms.settings.title": "Einstellungen", + "anms.settings.general": "Haupteinstellungen", + "anms.settings.general.placeholder": "Sprache", + "anms.settings.general.language.en": "Englisch", + "anms.settings.general.language.sk": "Slovakisch", + "anms.settings.general.language.de": "Deutsch", + "anms.settings.themes": "Thema", + "anms.settings.themes.placeholder": "Farbthema", + "anms.settings.themes.blue": "Blau", + "anms.settings.themes.light": "Hell", + "anms.settings.themes.nature": "Natur", + "anms.settings.themes.dark": "Dunkel", + "anms.settings.themes.night-mode": "Auto Nachtmodus (von 21:00 bis 7:00)", + "anms.settings.animations": "Animationen", + "anms.settings.animations.page": "Navigation ganzer Seitenübergang", + "anms.settings.animations.elements": + "Navigation Seitenelemente nach oben schieben" +} diff --git a/src/assets/i18n/en.json b/src/assets/i18n/en.json index 219d7fce5..7d4e2620d 100755 --- a/src/assets/i18n/en.json +++ b/src/assets/i18n/en.json @@ -51,6 +51,7 @@ "anms.settings.general.placeholder": "Language", "anms.settings.general.language.en": "English", "anms.settings.general.language.sk": "Slovak", + "anms.settings.general.language.de": "German", "anms.settings.themes": "Themes", "anms.settings.themes.placeholder": "Color Theme", "anms.settings.themes.blue": "Blue", diff --git a/src/assets/i18n/examples/de.json b/src/assets/i18n/examples/de.json new file mode 100755 index 000000000..14690a6ec --- /dev/null +++ b/src/assets/i18n/examples/de.json @@ -0,0 +1,67 @@ +{ + "anms.examples.menu.todos": "Aufgabenliste", + "anms.examples.menu.stocks": "Börse", + "anms.examples.menu.theming": "Theming", + "anms.examples.menu.auth": "Auth.", + "anms.examples.todos.input": "Ich werde...", + "anms.examples.todos.tooltip.add": "Eine neue Aufgabe hinzufügen", + "anms.examples.todos.tooltip.remove": "Erledigte Aufgaben entfernen", + "anms.examples.todos.list": "Aufgabenliste", + "anms.examples.todos.example": "Aufgabenbeispiel", + "anms.examples.todos.text1": "Das ist eine klassische", + "anms.examples.todos.text2": "Aufgabenliste.", + "anms.examples.todos.text3": + "Beispiel zum Hinzufügen, Umschalten, Entfernen und Filtern einer Aufgabenliste.", + "anms.examples.todos.text4": "Die Statusbehandlung wir mithilfe von", + "anms.examples.todos.text5": + "Modulen und mit Unterstützung von Lazy Loaded Reducer implementiert (das ist ein Lazy Loaded Feature-Modul).", + "anms.examples.todos.text6": + "Aufgaben bleiben im lokalen Speicher erhalten, so dass du deine Aufgaben auch bei späteren Besuchen sehen solltest, ...vorausgesetzt du verwendest denselben Browser.", + "anms.examples.todos.filter.all": "Alle", + "anms.examples.todos.filter.done": "Erledigt", + "anms.examples.todos.filter.active": "Aktiv", + "anms.examples.todos.filter.description": "Anzeigen", + "anms.examples.todos.filter.items": "Aufgaben", + "anms.examples.todos.filter.item": "Aufgabe", + "anms.examples.stocks.title": "Börse", + "anms.examples.stocks.symbol": "Aktiensymbol", + "anms.examples.stocks.description": + "Hier ist ein gültiges Aktiensymbol anzugeben:", + "anms.examples.stocks.text1": "Das Börsenbeispiel zeigt, wie", + "anms.examples.stocks.text2": "Aufrufe mithilfe eines", + "anms.examples.stocks.text3": "Modules implementiert werden.", + "anms.examples.stocks.text4": + "Durch die Aktualisierung der Symbolabfrage mit einem anderen Symbol wird eine Aktion ausgelöst, die den Status mit Ladekennzeichen (Reduzierer) aktualisiert und den Effekt zum Abrufen des ausgewählten Aktienbestands auslöst.", + "anms.examples.stocks.text5": + "Aktionen werden entprellt und jede nachfolgende Anfrage wird die Vorherige löschen", + "anms.examples.stocks.text6": + "Nach Abschluss des Aufrufs werden Erfolgs- oder Fehleraktionen ausgegeben. Das Lade-Spinner wird entfernt und die Aktieninfo oder die Fehlermeldung wird angezeigt.", + "anms.examples.stocks.error1": "Aktienbestand", + "anms.examples.stocks.error2": "nicht gefunden", + "anms.examples.theming.parent.title": + "Thema beschränken mit verschachtelten Komponenten", + "anms.examples.theming.parent.description": "Eltern funktionieren!", + "anms.examples.theming.parent.text1": + "Themenstile werden nicht in der Eigenschaft", + "anms.examples.theming.parent.text2": "des Dekorators", + "anms.examples.theming.parent.text3": "sondern in der Hauptdatei", + "anms.examples.theming.parent.text4": + "der Komponente importiert. Aus diesem Grund werden Designstile", + "anms.examples.theming.parent.text5": "NICHT", + "anms.examples.theming.parent.text6": + "automatisch auf die Komponente beschränkt.", + "anms.examples.theming.parent.text7": "Wir müssen", + "anms.examples.theming.parent.text8": "spezifische", + "anms.examples.theming.parent.text9": + "Selektoren verwenden um zu verhindern, dass Stile ins Kind gelangen. Dies kann durch Verwendung von", + "anms.examples.theming.parent.text10": + "in CSS-Regeln erreicht werden, um ihre Spezifität zu erhöhen. Schau dir zum Beispiel die Themendatei dieser Komponente an:", + "anms.examples.theming.child.title": "h1 des Kindes", + "anms.examples.theming.child.subtitle": "sollte ohne Stil sein", + "anms.examples.theming.child.description": "Kind funktioniert!", + "anms.examples.auth.title": "Authentifizierte Komponente", + "anms.examples.auth.description1": + "Diese Komponente ist nur für authentifizierte Benutzer zugänglich", + "anms.examples.auth.description2": + "Das Abmelden führt dazu, dass der Benutzer zum Startbildschirm weitergeleitet wird, wenn die Route nur für authentifizierte Benutzer zugänglich ist" +} diff --git a/src/assets/i18n/examples/en.json b/src/assets/i18n/examples/en.json index 7f0a8272c..f9951ba7e 100755 --- a/src/assets/i18n/examples/en.json +++ b/src/assets/i18n/examples/en.json @@ -55,7 +55,7 @@ "selectors to prevent styles from leaking into child components. This can be achieved by using", "anms.examples.theming.parent.text10": "in css rules to enhance their specificity. For example checkout theme file of this component:", - "anms.examples.theming.child.title": "child's h1", + "anms.examples.theming.child.title": "childs h1", "anms.examples.theming.child.subtitle": "should be without style", "anms.examples.theming.child.description": "child works!", "anms.examples.auth.title": "Authenticated component", diff --git a/src/assets/i18n/sk.json b/src/assets/i18n/sk.json index bac42162f..90fe64c36 100755 --- a/src/assets/i18n/sk.json +++ b/src/assets/i18n/sk.json @@ -54,6 +54,7 @@ "anms.settings.general.placeholder": "Jazyk", "anms.settings.general.language.en": "Angličtina", "anms.settings.general.language.sk": "Slovenčina", + "anms.settings.general.language.de": "Nemčina", "anms.settings.themes": "Témy", "anms.settings.themes.placeholder": "Téma", "anms.settings.themes.blue": "Modrá",