From 2ce13eb252336e9750714b241870a8a0bece8e21 Mon Sep 17 00:00:00 2001
From: 4rchim3d3s <4rchim3d3s@protonmail.com>
Date: Thu, 11 Mar 2021 18:01:31 +0100
Subject: [PATCH 1/2] update german language
---
.../src/assets/i18n/de.json | 346 ++++++++++++-----
.../src/assets/i18n/de_base.json | 352 +++++++++++++-----
2 files changed, 515 insertions(+), 183 deletions(-)
diff --git a/static/skywire-manager-src/src/assets/i18n/de.json b/static/skywire-manager-src/src/assets/i18n/de.json
index 6e066517f..62fd9f933 100644
--- a/static/skywire-manager-src/src/assets/i18n/de.json
+++ b/static/skywire-manager-src/src/assets/i18n/de.json
@@ -1,15 +1,9 @@
{
"common": {
"save": "Speichern",
- "edit": "Ändern",
"cancel": "Abbrechen",
- "node-key": "Visor Schlüssel",
- "app-key": "Anwendungs-Schlüssel",
- "discovery": "Discovery",
"downloaded": "Heruntergeladen",
"uploaded": "Hochgeladen",
- "delete": "Löschen",
- "none": "Nichts",
"loading-error": "Beim Laden der Daten ist ein Fehler aufgetreten. Versuche es erneut...",
"operation-error": "Beim Ausführen der Aktion ist ein Fehler aufgetreten.",
"no-connection-error": "Es ist keine Internetverbindung oder Verbindung zum Hypervisor vorhanden.",
@@ -17,23 +11,68 @@
"refreshed": "Daten aktualisiert.",
"options": "Optionen",
"logout": "Abmelden",
- "logout-error": "Fehler beim Abmelden."
+ "logout-error": "Fehler beim Abmelden.",
+ "logout-confirmation": "Wirklich abmelden?",
+ "time-in-ms": "{{ time }}ms",
+ "ok": "Ok",
+ "unknown": "Unbekannt",
+ "close": "Schließen"
},
- "tables": {
- "title": "Ordnen nach",
- "sorting-title": "Geordnet nach:",
- "ascending-order": "(aufsteigend)",
- "descending-order": "(absteigend)"
+ "labeled-element": {
+ "edit-label": "Bezeichnung ändern",
+ "remove-label": "Bezeichnung löschen",
+ "copy": "Kopieren",
+ "remove-label-confirmation": "Bezeichnung wirklich löschen?",
+ "unnamed-element": "unbenannt",
+ "unnamed-local-visor": "Lokaler Visor",
+ "local-element": "Lokal",
+ "tooltip": "Klicken um Eintrag zu kopieren oder Bezeichnung zu ändern",
+ "tooltip-with-text": "{{ text }} (Klicken um Eintrag zu kopieren oder Bezeichnung zu ändern)"
},
- "inputs": {
- "errors": {
- "key-required": "Schlüssel wird benötigt.",
- "key-length": "Schlüssel muss 66 Zeichen lang sein."
+ "labels": {
+ "title": "Bezeichnung",
+ "info": "Bezeichnungen, die eingegeben wurden um Visor, Transporte und andere Elemente einfach wiederzuerkennen.",
+ "list-title": "Bezeichnunen Liste",
+ "label": "Bezeichnung",
+ "id": "Element ID",
+ "type": "Typ",
+ "delete-confirmation": "Wirklich diese Bezeichnung löschen?",
+ "delete-selected-confirmation": "Wirkliche ausgewählte Bezeichnungen löschen?",
+ "delete": "Bezeichnung löschen",
+ "deleted": "Bezeichnung gelöscht.",
+ "empty": "Keine gespeicherten Bezeichnungen vorhanden.",
+ "empty-with-filter": "Keine Bezeichnung erfüllt die gewählten Filterkriterien",
+ "filter-dialog": {
+ "label": "Die Bezeichnung muss beinhalten",
+ "id": "Die ID muss beinhalten",
+ "type": "Der Typ muss sein",
+
+ "type-options": {
+ "any": "Jeder",
+ "visor": "Visor",
+ "dmsg-server": "DMSG Server",
+ "transport": "Transport"
+ }
}
},
+ "filters": {
+ "filter-action": "Filter",
+ "press-to-remove": "(Drücken um Filter zu löschen)",
+ "remove-confirmation": "Filter wirkliche löschen?"
+ },
+
+ "tables": {
+ "title": "Ordnen nach",
+ "sorting-title": "Geordnet nach:",
+ "sort-by-value": "Wert",
+ "sort-by-label": "Bezeichnung",
+ "label": "(Bezeichnung)",
+ "inverted-order": "(Umgekehrt)"
+ },
+
"start": {
"title": "Start"
},
@@ -44,6 +83,8 @@
"statuses": {
"online": "Online",
"online-tooltip": "Visor ist online",
+ "partially-online": "Online mit Problemen",
+ "partially-online-tooltip": "Visor ist online, aber nicht alle Dienste laufen. Für Informationen bitte die Details Seite öffnen und die \"Zustand Info\" überprüfen.",
"offline": "Offline",
"offline-tooltip": "Visor ist offline"
},
@@ -53,8 +94,9 @@
"label": "Bezeichnung:",
"public-key": "Öffentlicher Schlüssel:",
"port": "Port:",
+ "dmsg-server": "DMSG Server:",
+ "ping": "Ping:",
"node-version": "Visor Version:",
- "app-protocol-version": "Anwendungsprotokollversion:",
"time": {
"title": "Online seit:",
"seconds": "ein paar Sekunden",
@@ -90,22 +132,50 @@
"nodes": {
"title": "Visor Liste",
+ "dmsg-title": "DMSG",
+ "update-all": "Alle Visor aktualisieren",
+ "hypervisor": "Hypervisor",
"state": "Status",
+ "state-tooltip": "Aktueller Status",
"label": "Bezeichnung",
"key": "Schlüssel",
+ "dmsg-server": "DMSG Server",
+ "ping": "Ping",
+ "hypervisor-info": "Dieser Visor ist der aktuelle Hypervisor.",
+ "copy-key": "Schlüssel kopieren",
+ "copy-dmsg": "DMSG Server Schlüssel kopieren",
+ "copy-data": "Daten kopieren",
"view-node": "Visor betrachten",
"delete-node": "Visor löschen",
+ "delete-all-offline": "Alle offline Visor löschen",
"error-load": "Beim Aktualisieren der Visor-Liste ist ein Fehler aufgetreten.",
"empty": "Es ist kein Visor zu diesem Hypervisor verbunden.",
+ "empty-with-filter": "Kein Visor erfüllt die gewählten Filterkriterien",
"delete-node-confirmation": "Visor wirklich von der Liste löschen?",
- "deleted": "Visor gelöscht."
+ "delete-all-offline-confirmation": "Wirklich alle offline Visor von der Liste löschen?",
+ "delete-all-filtered-offline-confirmation": "Alle offline Visor, welche die Filterkriterien erfüllen werden von der Liste gelöscht. Wirklich fortfahren?",
+ "deleted": "Visor gelöscht.",
+ "deleted-singular": "Ein offline Visor gelöscht.",
+ "deleted-plural": "{{ number }} offline Visor gelöscht.",
+ "no-visors-to-update": "Kein Visor zum Aktualiseren vorhanden.",
+ "filter-dialog": {
+ "online": "Der Visor muss",
+ "label": "Der Bezeichner muss enthalten",
+ "key": "Der öffentliche Schlüssel muss enthalten",
+ "dmsg": "Der DMSG Server Schlüssel muss enthalten",
+
+ "online-options": {
+ "any": "Online oder offline",
+ "online": "Online",
+ "offline": "Offline"
+ }
+ }
},
"edit-label": {
- "title": "Bezeichnung ändern",
"label": "Bezeichnung",
"done": "Bezeichnung gespeichert.",
- "default-label-warning": "Die Standardbezeichnung wurde verwendet."
+ "label-removed-warning": "Die Bezeichnung wurde gelöscht."
},
"settings": {
@@ -134,6 +204,22 @@
"default-password": "Das Standardpasswort darf nicht verwendet werden (1234)."
}
},
+ "updater-config" : {
+ "open-link": "Aktualisierungseinstellungen anzeigen",
+ "open-confirmation": "Die Aktualisierungseinstellungen sind nur für erfahrene Benutzer. Wirklich fortfahren?",
+ "help": "Dieses Formular benutzen um Einstellungen für die Aktualisierung zu überschreiben. Alle leeren Felder werden ignoriert. Die Einstellungen werden für alle Aktualisierungen übernommen. Dies geschieht unabhängig davon, welches Element aktualisiert wird. Bitte Vorsicht wahren.",
+ "channel": "Kanal",
+ "version": "Version",
+ "archive-url": "Archiv-URL",
+ "checksum-url": "Prüfsummen-URL",
+ "not-saved": "Die Änderungen wurden noch nicht gespeichert.",
+ "save": "Änderungen speichern",
+ "remove-settings": "Einstellungen löschen",
+ "saved": "Die benutzerdefinierten Einstellungen wurden gespeichert.",
+ "removed": "Die benutzerdefinierten Einstellungen wurden gelöscht.",
+ "save-confirmation": "Wirklich die benutzerdefinierten Einstellungen anwenden?",
+ "remove-confirmation": "Wirklich die benutzerdefinierten Einstellungen löschen?"
+ },
"change-password": "Passwort ändern",
"refresh-rate": "Aktualisierungsintervall",
"refresh-rate-help": "Zeit, bis das System die Daten automatisch aktualisiert.",
@@ -158,14 +244,6 @@
"confirmation": "Den Visor wirklich neustarten?",
"done": "Der Visor wird neu gestartet."
},
- "config": {
- "title": "Discovery Konfiguration",
- "header": "Discovery Addresse",
- "remove": "Addresse entfernen",
- "add": "Addresse hinzufügen",
- "cant-store": "Konfiguration kann nicht gespeichert werden.",
- "success": "Discovery Konfiguration wird durch Neustart angewendet."
- },
"terminal-options": {
"full": "Terminal",
"simple": "Einfaches Terminal"
@@ -174,54 +252,35 @@
"title": "Terminal",
"input-start": "Skywire Terminal für {{address}}",
"error": "Bei der Ausführung des Befehls ist ein Fehler aufgetreten."
- },
- "update": {
- "title": "Update",
- "processing": "Suche nach Updates...",
- "processing-button": "Bitte warten",
- "no-update": "Kein Update vorhanden.
Installierte Version: {{ version }}.",
- "update-available": "Es ist ein Update möglich.
Installierte Version: {{ currentVersion }}
Neue Version: {{ newVersion }}.",
- "done": "Ein Update für den Visor wird installiert.",
- "update-error": "Update konnte nicht installiert werden.",
- "install": "Update installieren"
}
},
+
+ "update": {
+ "title": "Update",
+ "error-title": "Error",
+ "processing": "Suche nach Aktualisierungen...",
+ "no-update": "Keine Aktualisierung vorhanden.
Installierte Version:",
+ "no-updates": "Keine neuen Aktualisierungen gefunden.",
+ "already-updating": "Einige Visor werden schon aktualisiert:",
+ "update-available": "Folgende Aktualisierungen wurden gefunden:",
+ "update-available-singular": "Folgende Aktualisierungen wurden für einen Visor gefunden:",
+ "update-available-plural": "Folgende Aktualisierungen wurden für {{ number }} Visor gefunden:",
+ "update-available-additional-singular": "Folgende zusätzliche Aktualisierungen für einen Visor wurden gefunden:",
+ "update-available-additional-plural": "Folgende zusätzliche Aktualisierungen für {{ number }} Visor wurden gefunden:",
+ "update-instructions": "'Aktualisierungen installieren' klicken um fortzufahren.",
+ "updating": "Die Aktualisierung wurde gestartet. Das Fenster kann erneut geöffnet werden um den Fortschritt zu sehen:",
+ "version-change": "Von {{ currentVersion }} auf {{ newVersion }}",
+ "selected-channel": "Gewählter Kanal:",
+ "downloaded-file-name-prefix": "Herunterladen: ",
+ "speed-prefix": "Geschwindigkeit: ",
+ "time-downloading-prefix": "Dauer: ",
+ "time-left-prefix": "Dauert ungefähr noch: ",
+ "starting": "Aktualisierung wird vorbereitet",
+ "finished": "Status Verbindung beendet",
+ "install": "Aktualisierungen installieren"
+ },
"apps": {
- "socksc": {
- "title": "Mit Visor verbinden",
- "connect-keypair": "Schlüsselpaar eingeben",
- "connect-search": "Visor suchen",
- "connect-history": "Verlauf",
- "versions": "Versionen",
- "location": "Standort",
- "connect": "Verbinden",
- "next-page": "Nächste Seite",
- "prev-page": "Vorherige Seite",
- "auto-startup": "Automatisch mit Visor verbinden"
- },
- "sshc": {
- "title": "SSH Client",
- "connect": "Verbinde mit SSH Server",
- "auto-startup": "Starte SSH client automatisch",
- "connect-keypair": "Schlüsselpaar eingeben",
- "connect-history": "Verlauf"
- },
- "sshs": {
- "title": "SSH-Server",
- "whitelist": {
- "title": "SSH-Server Whitelist",
- "header": "Schlüssel",
- "add": "Zu Liste hinzufügen",
- "remove": "Schlüssel entfernen",
- "enter-key": "Node Schlüssel eingeben",
- "errors": {
- "cant-save": "Änderungen an der Whitelist konnten nicht gespeichert werden."
- },
- "saved-correctly": "Änderungen an der Whitelist gespeichert"
- },
- "auto-startup": "Starte SSH-Server automatisch"
- },
"log": {
"title": "Log",
"empty": "Im ausgewählten Intervall sind keine Logs vorhanden",
@@ -237,48 +296,116 @@
"all": "Zeige alle"
}
},
- "config": {
- "title": "Startup Konfiguration"
- },
- "menu": {
- "startup-config": "Startup Konfiguration",
- "log": "Log Nachrichten",
- "whitelist": "Whitelist"
- },
"apps-list": {
"title": "Anwendungen",
"list-title": "Anwendungsliste",
"app-name": "Name",
"port": "Port",
- "status": "Status",
+ "state": "Status",
+ "state-tooltip": "Aktueller Status",
"auto-start": "Auto-Start",
"empty": "Visor hat keine Anwendungen.",
+ "empty-with-filter": "Keine Anwendung erfüllt die Filterkriterien",
"disable-autostart": "Autostart ausschalten",
"enable-autostart": "Autostart einschalten",
"autostart-disabled": "Autostart aus",
- "autostart-enabled": "Autostart ein"
+ "autostart-enabled": "Autostart ein",
+ "unavailable-logs-error": "Kann Logs nicht zeigen, solange die Anwendung gestoppt ist.",
+
+ "filter-dialog": {
+ "state": "Der Status muss sein",
+ "name": "Der Name muss enthalten",
+ "port": "Der Port muss enthalten",
+ "autostart": "Autostart muss sein",
+
+ "state-options": {
+ "any": "Läuft oder gestoppt",
+ "running": "Läuft",
+ "stopped": "Gestoppt"
+ },
+
+ "autostart-options": {
+ "any": "An oder Aus",
+ "enabled": "An",
+ "disabled": "Aus"
+ }
+ }
},
- "skysocks-settings": {
- "title": "Skysocks Einstellungen",
+ "vpn-socks-server-settings": {
+ "socks-title": "Skysocks Einstellungen",
+ "vpn-title": "VPN-Server Einstellungen",
"new-password": "Neues Passwort (Um Passwort zu entfernen leer lassen)",
"repeat-password": "Passwort wiederholen",
"passwords-not-match": "Passwörter stimmen nicht überein.",
+ "secure-mode-check": "Sicherheitsmodus benutzen",
+ "secure-mode-info": "Wenn aktiv, erlaubt der Server kein Client/Server SSH und erlaubt kein Datenverkehr vom VPN-Client zum lokalen Netzwerk des Servers.",
"save": "Speichern",
"remove-passowrd-confirmation": "Kein Passwort eingegeben. Wirklich Passwort entfernen?",
"change-passowrd-confirmation": "Passwort wirklich ändern?",
"changes-made": "Änderungen wurden gespeichert."
},
- "skysocks-client-settings": {
- "title": "Skysocks-Client Einstellungen",
- "remote-visor-tab": "Remote Visor",
+ "vpn-socks-client-settings": {
+ "socks-title": "Skysocks-Client Einstellungen",
+ "vpn-title": "VPN-Client Einstellungen",
+ "discovery-tab": "Suche",
+ "remote-visor-tab": "Manuelle Eingabe",
"history-tab": "Verlauf",
+ "settings-tab": "Einstellungen",
+ "use": "Diese Daten benutzen",
+ "change-note": "Notiz ändern",
+ "remove-entry": "Eintrag löschen",
+ "note": "Notiz:",
+ "note-entered-manually": "Manuell eingegeben",
+ "note-obtained": "Von Discovery-Service erhalten",
+ "key": "Schlüssel:",
+ "port": "Port:",
+ "location": "Ort:",
+ "state-available": "Verfügbar",
+ "state-offline": "Offline",
"public-key": "Remote Visor öffentlicher Schlüssel",
+ "password": "Passwort",
+ "password-history-warning": "Achtung: Das Passwort wird nicht im Verlauf gespeichert.",
+ "copy-pk-info": "Öffentlichen Schlüssel kopieren.",
+ "copied-pk-info": "Öffentlicher Schlüssel wurde kopiert",
+ "copy-pk-error": "Beim Kopieren des öffentlichen Schlüssels ist ein Problem aufgetreten.",
+ "no-elements": "Derzeit können keine Elemente angezeigt werden. Bitte später versuchen.",
+ "no-elements-for-filters": "Keine Elemente, welche die Filterkriterien erfüllen",
+ "no-filter": "Es wurde kein Filter gewählt",
+ "click-to-change": "Zum Ändern klicken",
"remote-key-length-error": "Der öffentliche Schlüssel muss 66 Zeichen lang sein.",
"remote-key-chars-error": "Der öffentliche Schlüssel darf nur hexadezimale Zeichen enthalten.",
"save": "Speichern",
+ "remove-from-history-confirmation": "Eintrag wirklich aus dem Verlauf löschen?",
"change-key-confirmation": "Wirklich den öffentlichen Schlüssel des Remote Visors ändern?",
"changes-made": "Änderungen wurden gespeichert.",
- "no-history": "Dieser Tab zeigt die letzten {{ number }} öffentlichen Schlüssel, die benutzt wurden."
+ "no-history": "Dieser Tab zeigt die letzten {{ number }} öffentlichen Schlüssel, die benutzt wurden.",
+ "default-note-warning": "Die Standardnotiz wurde nicht benutzt.",
+ "pagination-info": "{{ currentElementsRange }} von {{ totalElements }}",
+ "killswitch-check": "Killswitch aktivieren",
+ "killswitch-info": "Wenn aktiv, werden alle Netzwerkverbindungen deaktiviert falls die Anwendung läuft aber der VPN Schutz unterbrochen wird (für temporäre Fehler oder andere Probleme).",
+ "settings-changed-alert": "Die Änderungen wurden noch nicht gespeichert.",
+ "save-settings": "Einstellungen speichern",
+
+ "change-note-dialog": {
+ "title": "Notiz ändern",
+ "note": "Notiz"
+ },
+
+ "password-dialog": {
+ "title": "Passwort eingeben",
+ "password": "Passwort",
+ "info": "Ein Passwort wird abgefragt, da bei der Erstellung des gewählten Eintrags ein Passwort gesetzt wurde, aus Sicherheitsgründen aber nicht gespeichert wurde. Das Passwort kann frei gelassen werden.",
+ "continue-button": "Fortfahren"
+ },
+
+ "filter-dialog": {
+ "title": "Filter",
+ "country": "Das Land muss sein",
+ "any-country": "Jedes",
+ "location": "Der Ort muss enthalten",
+ "pub-key": "Der öffentliche Schlüssel muss enthalten",
+ "apply": "Anwenden"
+ }
},
"stop-app": "Stopp",
"start-app": "Start",
@@ -303,7 +430,13 @@
"transports": {
"title": "Transporte",
+ "remove-all-offline": "Alle offline Transporte löschen",
+ "remove-all-offline-confirmation": "Wirkliche alle offline Transporte löschen?",
+ "remove-all-filtered-offline-confirmation": "Alle offline Transporte, welche die Filterkriterien erfüllen werden gelöscht. Wirklich fortfahren?",
+ "info": "Verbindungen mit Remote Skywire Visor, um lokalen Skywire Anwendungen zu erlauben mit diesen remote Visor zu kommunizieren.",
"list-title": "Transport-Liste",
+ "state": "Status",
+ "state-tooltip": "Aktueller Status",
"id": "ID",
"remote-node": "Remote",
"type": "Typ",
@@ -313,10 +446,18 @@
"delete": "Transport entfernen",
"deleted": "Transport erfolgreich entfernt.",
"empty": "Visor hat keine Transporte.",
+ "empty-with-filter": "Kein Transport erfüllt die gewählten Filterkriterien.",
+ "statuses": {
+ "online": "Online",
+ "online-tooltip": "Transport ist online",
+ "offline": "Offline",
+ "offline-tooltip": "Transport ist offline"
+ },
"details": {
"title": "Details",
"basic": {
"title": "Basis Info",
+ "state": "Status:",
"id": "ID:",
"local-pk": "Lokaler öffentlicher Schlüssel:",
"remote-pk": "Remote öffentlicher Schlüssel:",
@@ -330,26 +471,43 @@
},
"dialog": {
"remote-key": "Remote öffentlicher Schlüssel:",
+ "label": "Bezeichnung (optional)",
"transport-type": "Transport-Typ",
"success": "Transport erstellt.",
+ "success-without-label": "Der Transport wurde erstellt, aber die Bezeichnung konnte nicht gespeichert werden.",
"errors": {
"remote-key-length-error": "Der remote öffentliche Schlüssel muss 66 Zeichen lang sein.",
"remote-key-chars-error": "Der remote öffentliche Schlüssel darf nur hexadezimale Zeichen enthalten.",
"transport-type-error": "Ein Transport-Typ wird benötigt."
}
+ },
+ "filter-dialog": {
+ "online": "Der Transport muss sein",
+ "id": "Die ID muss enthalten",
+ "remote-node": "Der Remote Schlüssel muss enthalten",
+
+ "online-options": {
+ "any": "Online oder offline",
+ "online": "Online",
+ "offline": "Offline"
+ }
}
},
"routes": {
"title": "Routen",
+ "info": "Pfade um Remote Visor, zu denen ein Transport aufgebaut wurde zu erreichen. Routen werden bei Bedarf automatisch generiert.",
"list-title": "Routen-Liste",
"key": "Schlüssel",
- "rule": "Regel",
+ "type": "Typ",
+ "source": "Quelle",
+ "destination": "Ziel",
"delete-confirmation": "Diese Route wirklich entfernen?",
"delete-selected-confirmation": "Ausgewählte Routen wirklich entfernen?",
"delete": "Route entfernen",
"deleted": "Route erfolgreich entfernt.",
"empty": "Visor hat keine Routen.",
+ "empty-with-filter": "Keine Route erfüllt die gewählten Filterkriterien.",
"details": {
"title": "Details",
"basic": {
@@ -376,6 +534,13 @@
"destination-port": "Ziel Port:",
"source-port": "Quelle Port:"
}
+ },
+ "filter-dialog": {
+ "key": "Der Schlüssel muss enthalten",
+ "type": "Der Typ muss sein",
+ "source": "Die Quelle muss enhalten",
+ "destination": "Das Ziel muss enthalten",
+ "any-type-option": "Egal"
}
},
@@ -424,7 +589,8 @@
"confirm-button": "Ja",
"cancel-button": "Nein",
"close": "Schließen",
- "error-header-text": "Fehler"
+ "error-header-text": "Fehler",
+ "done-header-text": "Fertig"
},
"language" : {
diff --git a/static/skywire-manager-src/src/assets/i18n/de_base.json b/static/skywire-manager-src/src/assets/i18n/de_base.json
index c38c0e826..a95962415 100644
--- a/static/skywire-manager-src/src/assets/i18n/de_base.json
+++ b/static/skywire-manager-src/src/assets/i18n/de_base.json
@@ -1,15 +1,9 @@
{
"common": {
"save": "Save",
- "edit": "Edit",
"cancel": "Cancel",
- "node-key": "Node Key",
- "app-key": "App Key",
- "discovery": "Discovery",
"downloaded": "Downloaded",
"uploaded": "Uploaded",
- "delete": "Delete",
- "none": "None",
"loading-error": "There was an error getting the data. Retrying...",
"operation-error": "There was an error trying to complete the operation.",
"no-connection-error": "There is no internet connection or connection to the Hypervisor.",
@@ -17,23 +11,68 @@
"refreshed": "Data refreshed.",
"options": "Options",
"logout": "Logout",
- "logout-error": "Error logging out."
+ "logout-error": "Error logging out.",
+ "logout-confirmation": "Are you sure you want to log out?",
+ "time-in-ms": "{{ time }}ms",
+ "ok": "Ok",
+ "unknown": "Unknown",
+ "close": "Close"
},
- "tables": {
- "title": "Order by",
- "sorting-title": "Ordered by:",
- "ascending-order": "(ascending)",
- "descending-order": "(descending)"
+ "labeled-element": {
+ "edit-label": "Edit label",
+ "remove-label": "Remove label",
+ "copy": "Copy",
+ "remove-label-confirmation": "Do you really want to remove the label?",
+ "unnamed-element": "Unnamed",
+ "unnamed-local-visor": "Local visor",
+ "local-element": "Local",
+ "tooltip": "Click to copy the entry or change the label",
+ "tooltip-with-text": "{{ text }} (Click to copy the entry or change the label)"
},
- "inputs": {
- "errors": {
- "key-required": "Key is required.",
- "key-length": "Key must be 66 characters long."
+ "labels": {
+ "title": "Labels",
+ "info": "Labels you have entered to easily identify visors, transports and other elements, instead of having to read machine generated identifiers.",
+ "list-title": "Label list",
+ "label": "Label",
+ "id": "Element ID",
+ "type": "Type",
+ "delete-confirmation": "Are you sure you want to delete the label?",
+ "delete-selected-confirmation": "Are you sure you want to delete the selected labels?",
+ "delete": "Delete label",
+ "deleted": "Delete operation completed.",
+ "empty": "There aren't any saved labels.",
+ "empty-with-filter": "No label matches the selected filtering criteria.",
+ "filter-dialog": {
+ "label": "The label must contain",
+ "id": "The id must contain",
+ "type": "The type must be",
+
+ "type-options": {
+ "any": "Any",
+ "visor": "Visor",
+ "dmsg-server": "DMSG server",
+ "transport": "Transport"
+ }
}
},
+ "filters": {
+ "filter-action": "Filter",
+ "press-to-remove": "(Press to remove the filters)",
+ "remove-confirmation": "Are you sure you want to remove the filters?"
+ },
+
+ "tables": {
+ "title": "Order by",
+ "sorting-title": "Ordered by:",
+ "sort-by-value": "Value",
+ "sort-by-label": "Label",
+ "label": "(label)",
+ "inverted-order": "(inverted)"
+ },
+
"start": {
"title": "Start"
},
@@ -43,9 +82,11 @@
"not-found": "Visor not found.",
"statuses": {
"online": "Online",
- "online-tooltip": "Visor is online",
+ "online-tooltip": "Visor is online.",
+ "partially-online": "Online with problems",
+ "partially-online-tooltip": "Visor is online but not all services are working. For more information, open the details page and check the \"Health info\" section.",
"offline": "Offline",
- "offline-tooltip": "Visor is offline"
+ "offline-tooltip": "Visor is offline."
},
"details": {
"node-info": {
@@ -53,8 +94,9 @@
"label": "Label:",
"public-key": "Public key:",
"port": "Port:",
+ "dmsg-server": "DMSG server:",
+ "ping": "Ping:",
"node-version": "Visor version:",
- "app-protocol-version": "App protocol version:",
"time": {
"title": "Time online:",
"seconds": "a few seconds",
@@ -76,7 +118,7 @@
"setup-node": "Setup node:",
"uptime-tracker": "Uptime tracker:",
"address-resolver": "Address resolver:",
- "element-offline": "offline"
+ "element-offline": "Offline"
},
"node-traffic-data": "Traffic data"
},
@@ -90,22 +132,50 @@
"nodes": {
"title": "Visor list",
+ "dmsg-title": "DMSG",
+ "update-all": "Update all visors",
+ "hypervisor": "Hypervisor",
"state": "State",
+ "state-tooltip": "Current state",
"label": "Label",
"key": "Key",
+ "dmsg-server": "DMSG server",
+ "ping": "Ping",
+ "hypervisor-info": "This visor is the current Hypervisor.",
+ "copy-key": "Copy key",
+ "copy-dmsg": "Copy DMSG server key",
+ "copy-data": "Copy data",
"view-node": "View visor",
"delete-node": "Remove visor",
+ "delete-all-offline": "Remove all offline visors",
"error-load": "An error occurred while refreshing the list. Retrying...",
"empty": "There aren't any visors connected to this hypervisor.",
+ "empty-with-filter": "No visor matches the selected filtering criteria.",
"delete-node-confirmation": "Are you sure you want to remove the visor from the list?",
- "deleted": "Visor removed."
+ "delete-all-offline-confirmation": "Are you sure you want to remove all offline visors from the list?",
+ "delete-all-filtered-offline-confirmation": "All offline visors satisfying the current filtering criteria will be removed from the list. Are you sure you want to continue?",
+ "deleted": "Visor removed.",
+ "deleted-singular": "1 offline visor removed.",
+ "deleted-plural": "{{ number }} offline visors removed.",
+ "no-visors-to-update": "There are no visors to update.",
+ "filter-dialog": {
+ "online": "The visor must be",
+ "label": "The label must contain",
+ "key": "The public key must contain",
+ "dmsg": "The DMSG server key must contain",
+
+ "online-options": {
+ "any": "Online or offline",
+ "online": "Online",
+ "offline": "Offline"
+ }
+ }
},
"edit-label": {
- "title": "Edit label",
"label": "Label",
"done": "Label saved.",
- "default-label-warning": "The default label has been used."
+ "label-removed-warning": "The label was removed."
},
"settings": {
@@ -134,6 +204,22 @@
"default-password": "Don't use the default password (1234)."
}
},
+ "updater-config" : {
+ "open-link": "Show updater settings",
+ "open-confirmation": "The updater settings are for experienced users only. Are you sure you want to continue?",
+ "help": "Use this form for overriding the settings that will be used by the updater. All empty fields will be ignored. The settings will be used for all updating operations, no mater which element is being updated, so please be careful.",
+ "channel": "Channel",
+ "version": "Version",
+ "archive-url": "Archive URL",
+ "checksum-url": "Checksum URL",
+ "not-saved": "The changes have not been saved yet.",
+ "save": "Save changes",
+ "remove-settings": "Remove the settings",
+ "saved": "The custom settings have been saved.",
+ "removed": "The custom settings have been removed.",
+ "save-confirmation": "Are you sure you want to apply the custom settings?",
+ "remove-confirmation": "Are you sure you want to remove the custom settings?"
+ },
"change-password": "Change password",
"refresh-rate": "Refresh rate",
"refresh-rate-help": "Time the system waits to update the data automatically.",
@@ -158,14 +244,6 @@
"confirmation": "Are you sure you want to reboot the visor?",
"done": "The visor is restarting."
},
- "config": {
- "title": "Discovery configuration",
- "header": "Discovery address",
- "remove": "Remove address",
- "add": "Add address",
- "cant-store": "Unable to store node configuration.",
- "success": "Applying discovery configuration by restarting node process."
- },
"terminal-options": {
"full": "Full terminal",
"simple": "Simple terminal"
@@ -174,54 +252,35 @@
"title": "Terminal",
"input-start": "Skywire terminal for {{address}}",
"error": "Unexpected error while trying to execute the command."
- },
- "update": {
- "title": "Update",
- "processing": "Looking for updates...",
- "processing-button": "Please wait",
- "no-update": "Currently, there is no update for the visor. The currently installed version is {{ version }}.",
- "update-available": "There is an update available for the visor. Click the 'Install update' button to continue. The currently installed version is {{ currentVersion }} and the new version is {{ newVersion }}.",
- "done": "The visor is updated.",
- "update-error": "Could not install the update. Please, try again later.",
- "install": "Install update"
}
},
+
+ "update": {
+ "title": "Update",
+ "error-title": "Error",
+ "processing": "Looking for updates...",
+ "no-update": "There is no update for the visor. The currently installed version is:",
+ "no-updates": "No new updates were found.",
+ "already-updating": "Some visors are already being updated:",
+ "update-available": "The following updates were found:",
+ "update-available-singular": "The following updates for 1 visor were found:",
+ "update-available-plural": "The following updates for {{ number }} visors were found:",
+ "update-available-additional-singular": "The following additional updates for 1 visor were found:",
+ "update-available-additional-plural": "The following additional updates for {{ number }} visors were found:",
+ "update-instructions": "Click the 'Install updates' button to continue.",
+ "updating": "The update operation has been started, you can open this window again for checking the progress:",
+ "version-change": "From {{ currentVersion }} to {{ newVersion }}",
+ "selected-channel": "Selected channel:",
+ "downloaded-file-name-prefix": "Downloading: ",
+ "speed-prefix": "Speed: ",
+ "time-downloading-prefix": "Time downloading: ",
+ "time-left-prefix": "Aprox. time left: ",
+ "starting": "Preparing to update",
+ "finished": "Status connection finished",
+ "install": "Install updates"
+ },
"apps": {
- "socksc": {
- "title": "Connect to Node",
- "connect-keypair": "Enter keypair",
- "connect-search": "Search node",
- "connect-history": "History",
- "versions": "Versions",
- "location": "Location",
- "connect": "Connect",
- "next-page": "Next page",
- "prev-page": "Previous page",
- "auto-startup": "Automatically connect to Node"
- },
- "sshc": {
- "title": "SSH Client",
- "connect": "Connect to SSH Server",
- "auto-startup": "Automatically start SSH client",
- "connect-keypair": "Enter keypair",
- "connect-history": "History"
- },
- "sshs": {
- "title": "SSH Server",
- "whitelist": {
- "title": "SSH Server Whitelist",
- "header": "Key",
- "add": "Add to list",
- "remove": "Remove key",
- "enter-key": "Enter node key",
- "errors": {
- "cant-save": "Could not save whitelist changes."
- },
- "saved-correctly": "Whitelist changes saved successfully."
- },
- "auto-startup": "Automatically start SSH server"
- },
"log": {
"title": "Log",
"empty": "There are no log messages for the selected time range.",
@@ -237,48 +296,116 @@
"all": "Show all"
}
},
- "config": {
- "title": "Startup configuration"
- },
- "menu": {
- "startup-config": "Startup configuration",
- "log": "Log messages",
- "whitelist": "Whitelist"
- },
"apps-list": {
"title": "Applications",
"list-title": "Application list",
"app-name": "Name",
"port": "Port",
- "status": "Status",
+ "state": "State",
+ "state-tooltip": "Current state",
"auto-start": "Auto start",
"empty": "Visor doesn't have any applications.",
+ "empty-with-filter": "No app matches the selected filtering criteria.",
"disable-autostart": "Disable autostart",
"enable-autostart": "Enable autostart",
"autostart-disabled": "Autostart disabled",
- "autostart-enabled": "Autostart enabled"
+ "autostart-enabled": "Autostart enabled",
+ "unavailable-logs-error": "Unable to show the logs while the app is not running.",
+
+ "filter-dialog": {
+ "state": "The state must be",
+ "name": "The name must contain",
+ "port": "The port must contain",
+ "autostart": "The autostart must be",
+
+ "state-options": {
+ "any": "Running or stopped",
+ "running": "Running",
+ "stopped": "Stopped"
+ },
+
+ "autostart-options": {
+ "any": "Enabled or disabled",
+ "enabled": "Enabled",
+ "disabled": "Disabled"
+ }
+ }
},
- "skysocks-settings": {
- "title": "Skysocks Settings",
+ "vpn-socks-server-settings": {
+ "socks-title": "Skysocks Settings",
+ "vpn-title": "VPN-Server Settings",
"new-password": "New password (Leave empty to remove the password)",
"repeat-password": "Repeat password",
"passwords-not-match": "Passwords do not match.",
+ "secure-mode-check": "Use secure mode",
+ "secure-mode-info": "When active, the server doesn't allow client/server SSH and doesn't allow any traffic from VPN clients to the server local network.",
"save": "Save",
"remove-passowrd-confirmation": "You left the password field empty. Are you sure you want to remove the password?",
"change-passowrd-confirmation": "Are you sure you want to change the password?",
"changes-made": "The changes have been made."
},
- "skysocks-client-settings": {
- "title": "Skysocks-Client Settings",
- "remote-visor-tab": "Remote Visor",
+ "vpn-socks-client-settings": {
+ "socks-title": "Skysocks-Client Settings",
+ "vpn-title": "VPN-Client Settings",
+ "discovery-tab": "Search",
+ "remote-visor-tab": "Enter manually",
"history-tab": "History",
+ "settings-tab": "Settings",
+ "use": "Use this data",
+ "change-note": "Change note",
+ "remove-entry": "Remove entry",
+ "note": "Note:",
+ "note-entered-manually": "Entered manually",
+ "note-obtained": "Obtained from the discovery service",
+ "key": "Key:",
+ "port": "Port:",
+ "location": "Location:",
+ "state-available": "Available",
+ "state-offline": "Offline",
"public-key": "Remote visor public key",
+ "password": "Password",
+ "password-history-warning": "Note: the password will not be saved in the history.",
+ "copy-pk-info": "Copy public key.",
+ "copied-pk-info": "The public key has been copied.",
+ "copy-pk-error": "There was a problem copying the public key.",
+ "no-elements": "Currently there are no elements to show. Please try again later.",
+ "no-elements-for-filters": "There are no elements that meet the filter criteria.",
+ "no-filter": "No filter has been selected",
+ "click-to-change": "Click to change",
"remote-key-length-error": "The public key must be 66 characters long.",
"remote-key-chars-error": "The public key must only contain hexadecimal characters.",
"save": "Save",
+ "remove-from-history-confirmation": "Are you sure you want to remove the entry from the history?",
"change-key-confirmation": "Are you sure you want to change the remote visor public key?",
"changes-made": "The changes have been made.",
- "no-history": "This tab will show the last {{ number }} public keys used."
+ "no-history": "This tab will show the last {{ number }} public keys used.",
+ "default-note-warning": "The default note has been used.",
+ "pagination-info": "{{ currentElementsRange }} of {{ totalElements }}",
+ "killswitch-check": "Activate killswitch",
+ "killswitch-info": "When active, all network connections will be disabled if the app is running but the VPN protection is interrupted (for temporary errors or any other problem).",
+ "settings-changed-alert": " The changes have not been saved yet.",
+ "save-settings": "Save settings",
+
+ "change-note-dialog": {
+ "title": "Change Note",
+ "note": "Note"
+ },
+
+ "password-dialog": {
+ "title": "Enter Password",
+ "password": "Password",
+ "info": "You are being asked for a password because a password was set when the selected entry was created, but the it was not saved for security reasons. You can leave the password empty if needed.",
+ "continue-button": "Continue"
+ },
+
+ "filter-dialog": {
+ "title": "Filters",
+ "country": "The country must be",
+ "any-country": "Any",
+ "location": "The location must contain",
+ "pub-key": "The public key must contain",
+ "apply": "Apply"
+ }
},
"stop-app": "Stop",
"start-app": "Start",
@@ -303,7 +430,13 @@
"transports": {
"title": "Transports",
+ "remove-all-offline": "Remove all offline transports",
+ "remove-all-offline-confirmation": "Are you sure you want to remove all offline transports?",
+ "remove-all-filtered-offline-confirmation": "All offline transports satisfying the current filtering criteria will be removed. Are you sure you want to continue?",
+ "info": "Connections you have with remote Skywire visors, to allow local Skywire apps to communicate with apps running on those remote visors.",
"list-title": "Transport list",
+ "state": "State",
+ "state-tooltip": "Current state",
"id": "ID",
"remote-node": "Remote",
"type": "Type",
@@ -313,10 +446,18 @@
"delete": "Delete transport",
"deleted": "Delete operation completed.",
"empty": "Visor doesn't have any transports.",
+ "empty-with-filter": "No transport matches the selected filtering criteria.",
+ "statuses": {
+ "online": "Online",
+ "online-tooltip": "Transport is online",
+ "offline": "Offline",
+ "offline-tooltip": "Transport is offline"
+ },
"details": {
"title": "Details",
"basic": {
"title": "Basic info",
+ "state": "State:",
"id": "ID:",
"local-pk": "Local public key:",
"remote-pk": "Remote public key:",
@@ -330,26 +471,43 @@
},
"dialog": {
"remote-key": "Remote public key",
+ "label": "Identification name (optional)",
"transport-type": "Transport type",
"success": "Transport created.",
+ "success-without-label": "The transport was created, but it was not possible to save the label.",
"errors": {
"remote-key-length-error": "The remote public key must be 66 characters long.",
"remote-key-chars-error": "The remote public key must only contain hexadecimal characters.",
"transport-type-error": "The transport type is required."
}
+ },
+ "filter-dialog": {
+ "online": "The transport must be",
+ "id": "The id must contain",
+ "remote-node": "The remote key must contain",
+
+ "online-options": {
+ "any": "Online or offline",
+ "online": "Online",
+ "offline": "Offline"
+ }
}
},
"routes": {
"title": "Routes",
+ "info": "Paths used to reach the remote visors to which transports have been established. Routes are automatically generated as needed.",
"list-title": "Route list",
"key": "Key",
- "rule": "Rule",
+ "type": "Type",
+ "source": "Source",
+ "destination": "Destination",
"delete-confirmation": "Are you sure you want to delete the route?",
"delete-selected-confirmation": "Are you sure you want to delete the selected routes?",
"delete": "Delete route",
"deleted": "Delete operation completed.",
"empty": "Visor doesn't have any routes.",
+ "empty-with-filter": "No route matches the selected filtering criteria.",
"details": {
"title": "Details",
"basic": {
@@ -376,6 +534,13 @@
"destination-port": "Destination port:",
"source-port": "Source port:"
}
+ },
+ "filter-dialog": {
+ "key": "The key must contain",
+ "type": "The type must be",
+ "source": "The source must contain",
+ "destination": "The destination must contain",
+ "any-type-option": "Any"
}
},
@@ -424,7 +589,8 @@
"confirm-button": "Yes",
"cancel-button": "No",
"close": "Close",
- "error-header-text": "Error"
+ "error-header-text": "Error",
+ "done-header-text": "Done"
},
"language" : {
From 9b8bfdebeaeb1fd75df3cf418f59e735d219e48a Mon Sep 17 00:00:00 2001
From: 4rchim3d3s <4rchim3d3s@protonmail.com>
Date: Sat, 13 Mar 2021 16:17:50 +0100
Subject: [PATCH 2/2] edit change requests
---
.../src/assets/i18n/de.json | 24 +++++++++----------
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/static/skywire-manager-src/src/assets/i18n/de.json b/static/skywire-manager-src/src/assets/i18n/de.json
index 62fd9f933..98e754e2e 100644
--- a/static/skywire-manager-src/src/assets/i18n/de.json
+++ b/static/skywire-manager-src/src/assets/i18n/de.json
@@ -24,7 +24,7 @@
"remove-label": "Bezeichnung löschen",
"copy": "Kopieren",
"remove-label-confirmation": "Bezeichnung wirklich löschen?",
- "unnamed-element": "unbenannt",
+ "unnamed-element": "Unbenannt",
"unnamed-local-visor": "Lokaler Visor",
"local-element": "Lokal",
"tooltip": "Klicken um Eintrag zu kopieren oder Bezeichnung zu ändern",
@@ -38,12 +38,12 @@
"label": "Bezeichnung",
"id": "Element ID",
"type": "Typ",
- "delete-confirmation": "Wirklich diese Bezeichnung löschen?",
- "delete-selected-confirmation": "Wirkliche ausgewählte Bezeichnungen löschen?",
+ "delete-confirmation": "Diese Bezeichnung wirklich löschen?",
+ "delete-selected-confirmation": "Ausgewählte Bezeichnungen wirklich löschen?",
"delete": "Bezeichnung löschen",
"deleted": "Bezeichnung gelöscht.",
"empty": "Keine gespeicherten Bezeichnungen vorhanden.",
- "empty-with-filter": "Keine Bezeichnung erfüllt die gewählten Filterkriterien",
+ "empty-with-filter": "Keine Bezeichnung erfüllt die gewählten Filterkriterien.",
"filter-dialog": {
"label": "Die Bezeichnung muss beinhalten",
"id": "Die ID muss beinhalten",
@@ -206,7 +206,7 @@
},
"updater-config" : {
"open-link": "Aktualisierungseinstellungen anzeigen",
- "open-confirmation": "Die Aktualisierungseinstellungen sind nur für erfahrene Benutzer. Wirklich fortfahren?",
+ "open-confirmation": "Es wird nur erfahrenen Benutzern empfohlen, die Aktualisierungseinstellungen zu modifizieren. Wirkich fortfahren?",
"help": "Dieses Formular benutzen um Einstellungen für die Aktualisierung zu überschreiben. Alle leeren Felder werden ignoriert. Die Einstellungen werden für alle Aktualisierungen übernommen. Dies geschieht unabhängig davon, welches Element aktualisiert wird. Bitte Vorsicht wahren.",
"channel": "Kanal",
"version": "Version",
@@ -256,7 +256,7 @@
},
"update": {
- "title": "Update",
+ "title": "Aktualisierung",
"error-title": "Error",
"processing": "Suche nach Aktualisierungen...",
"no-update": "Keine Aktualisierung vorhanden.
Installierte Version:",
@@ -369,14 +369,14 @@
"copied-pk-info": "Öffentlicher Schlüssel wurde kopiert",
"copy-pk-error": "Beim Kopieren des öffentlichen Schlüssels ist ein Problem aufgetreten.",
"no-elements": "Derzeit können keine Elemente angezeigt werden. Bitte später versuchen.",
- "no-elements-for-filters": "Keine Elemente, welche die Filterkriterien erfüllen",
- "no-filter": "Es wurde kein Filter gewählt",
+ "no-elements-for-filters": "Keine Elemente, welche die Filterkriterien erfüllen.",
+ "no-filter": "Es wurde kein Filter gewählt.",
"click-to-change": "Zum Ändern klicken",
"remote-key-length-error": "Der öffentliche Schlüssel muss 66 Zeichen lang sein.",
"remote-key-chars-error": "Der öffentliche Schlüssel darf nur hexadezimale Zeichen enthalten.",
"save": "Speichern",
"remove-from-history-confirmation": "Eintrag wirklich aus dem Verlauf löschen?",
- "change-key-confirmation": "Wirklich den öffentlichen Schlüssel des Remote Visors ändern?",
+ "change-key-confirmation": "Wirklich den öffentlichen Schlüssel des remote Visors ändern?",
"changes-made": "Änderungen wurden gespeichert.",
"no-history": "Dieser Tab zeigt die letzten {{ number }} öffentlichen Schlüssel, die benutzt wurden.",
"default-note-warning": "Die Standardnotiz wurde nicht benutzt.",
@@ -433,7 +433,7 @@
"remove-all-offline": "Alle offline Transporte löschen",
"remove-all-offline-confirmation": "Wirkliche alle offline Transporte löschen?",
"remove-all-filtered-offline-confirmation": "Alle offline Transporte, welche die Filterkriterien erfüllen werden gelöscht. Wirklich fortfahren?",
- "info": "Verbindungen mit Remote Skywire Visor, um lokalen Skywire Anwendungen zu erlauben mit diesen remote Visor zu kommunizieren.",
+ "info": "Verbindungen mit remote Skywire Visor, um lokalen Skywire Anwendungen zu erlauben mit diesen remote Visor zu kommunizieren.",
"list-title": "Transport-Liste",
"state": "Status",
"state-tooltip": "Aktueller Status",
@@ -484,7 +484,7 @@
"filter-dialog": {
"online": "Der Transport muss sein",
"id": "Die ID muss enthalten",
- "remote-node": "Der Remote Schlüssel muss enthalten",
+ "remote-node": "Der remote Schlüssel muss enthalten",
"online-options": {
"any": "Online oder offline",
@@ -496,7 +496,7 @@
"routes": {
"title": "Routen",
- "info": "Pfade um Remote Visor, zu denen ein Transport aufgebaut wurde zu erreichen. Routen werden bei Bedarf automatisch generiert.",
+ "info": "Netzwerkpfade zum Erreichen von remote Visor. Routen werden bei Bedarf automatisch generiert.",
"list-title": "Routen-Liste",
"key": "Schlüssel",
"type": "Typ",