From 9780625220610772b5e0c6580f25c99301886778 Mon Sep 17 00:00:00 2001 From: lupusA Date: Sun, 17 Mar 2024 14:10:48 +0100 Subject: [PATCH] Further translating components. Adding languages requires no significant code change anymore. --- .gitignore | 2 +- .vscode/settings.json | 14 ++- public/locales/de/translation.json | 121 ++++++++++++++++--------- public/locales/en/translation.json | 121 ++++++++++++++++--------- public/locales/es/translation.json | 121 ++++++++++++++++--------- public/locales/fr/translation.json | 121 ++++++++++++++++--------- public/locales/it/translation.json | 121 ++++++++++++++++--------- public/locales/jp/translation.json | 125 +++++++++++++++++--------- public/locales/pl/translation.json | 121 ++++++++++++++++--------- public/locales/ru/translation.json | 121 ++++++++++++++++--------- src/App.jsx | 16 ++-- src/components/DirectoryItems.jsx | 13 +-- src/components/LanguageSelection.jsx | 2 +- src/components/Logs.jsx | 3 +- src/components/SetupRepository.jsx | 48 +++++----- src/contexts/UIPreferencesContext.tsx | 16 ++-- src/forms/LogDetailSelector.jsx | 11 +-- src/forms/OptionalBoolean.jsx | 5 +- src/forms/OptionalNumberField.jsx | 3 +- src/forms/RequiredDirectory.jsx | 3 +- src/forms/RequiredField.jsx | 3 +- src/forms/RequiredNumberField.jsx | 3 +- src/forms/TimesOfDayList.jsx | 3 +- src/pages/Policies.jsx | 10 +-- src/pages/Preferences.jsx | 34 +++---- src/pages/Repository.jsx | 4 +- src/pages/SnapshotHistory.jsx | 24 ++--- 27 files changed, 771 insertions(+), 418 deletions(-) diff --git a/.gitignore b/.gitignore index f2e87f4..b26bb10 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,4 @@ build/ node_modules/ coverage/ .idea/ -.vscode/settings.json +.vscode/ diff --git a/.vscode/settings.json b/.vscode/settings.json index 29b6219..561c45c 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -3,5 +3,17 @@ "public/locales" ], "i18n-ally.keystyle": "flat", - "i18n-ally.sourceLanguage": "en" + "i18n-ally.sourceLanguage": "en", + "i18n-ally.keysInUse": [ + "feedback.provider.s3-or-compatible-storage", + "feedback.provider.kopia-repository-server", + "feedback.provider.local-directory-or-nas", + "feedback.provider.google-cloud-storage", + "feedback.provider.use-repository-token", + "feedback.provider.azure-blob-storage", + "feedback.provider.rclone-remote", + "feedback.provider.webdav-server", + "feedback.provider.backblaze-b2", + "feedback.provider.sftp-server" + ] } \ No newline at end of file diff --git a/public/locales/de/translation.json b/public/locales/de/translation.json index c377782..7ea8f5d 100644 --- a/public/locales/de/translation.json +++ b/public/locales/de/translation.json @@ -1,27 +1,77 @@ { + "common.back": "Zurück", "common.cancel": "Abbrechen", "common.delete": "Löschen", - "common.delete.confirm": "Löschen bestätigen", + "common.delete-confirm": "Löschen bestätigen", "common.loading": "Wird geladen ...", + "common.next": "Weiter", "common.return": "Zurück", - "description.event.cancel": "Abbrechen", - "description.event.new": "Geben Sie eine neue Beschreibung ein", - "description.event.remove": "Beschreibung entfernen", - "description.event.update": "Beschreibung aktualisieren", - "description.feedback.description": "Beschreibung des Snapshots", + "event.description.cancel": "Abbrechen", + "event.description.new": "Geben Sie eine neue Beschreibung ein", + "event.description.remove": "Beschreibung entfernen", + "event.description.update": "Beschreibung aktualisieren", + "event.log.hide": "Hide log", + "event.log.show": "Show log", + "event.pin.add": "Pin hinzufügen", + "event.pin.cancel": "Abbrechen", + "event.pin.remove": "Pin entfernen", + "event.pin.snapshot-pin": "Snapshot anheften", + "event.pin.update": "Pin aktualisieren", + "event.repository.advanced-options-hide": "Erweiterte Optionen ausblenden", + "event.repository.advanced-options.show": "Erweiterte Optionen anzeigen", + "feedback.description.modal-title": "Beschreibung des Snapshots", + "feedback.header.actions": "Aktionen", + "feedback.header.defined": "Definiert", + "feedback.header.directories": "Verzeichnisse", + "feedback.header.files": "Dateien", + "feedback.header.host": "Host", + "feedback.header.modification-last": "Letzte Änderung", + "feedback.header.name": "Name", + "feedback.header.path": "Pfad", + "feedback.header.size": "Größe", + "feedback.header.username": "Nutzername", + "feedback.pin.name": "Name des Pins", + "feedback.pin.standard-text": "Nicht löschen", + "feedback.provider.azure-blob-storage": "Azure Blob Storage", + "feedback.provider.backblaze-b2": "Backblaze B2", + "feedback.provider.google-cloud-storage": "Google Cloud-Speicher", + "feedback.provider.kopia-repository-server": "Kopia-Repository-Server", + "feedback.provider.local-directory-or-nas": "Lokales Verzeichnis oder NAS", + "feedback.provider.rclone-remote": "Rclone Remote", + "feedback.provider.s3-or-compatible-storage": "Amazon S3 oder kompatibler Speicher", + "feedback.provider.sftp-server": "SFTP-Server", + "feedback.provider.use-repository-token": "Repository-Token", + "feedback.provider.webdav-server": "WebDAV-Server", + "feedback.repository.configuration": "Speicherkonfiguration", + "feedback.repository.kopia-server-parameters": "Kopia-Serverparameter", + "feedback.repository.name-default": "Mein Repository", + "feedback.repository.provider-selection": "Wählen Sie ein Repository aus", + "feedback.repository.provider-selection-hint": "Wählen Sie ein Repository aus, um ein neues zu erstellen oder eine Verbindung zu einem bestehenden Repository herzustellen:", + "feedback.repository.repository-token-enter": "Geben Sie das Repository-Token ein", + "feedback.tab.policies": "Richtlinien", + "feedback.tab.preferences": "Einstellungen", + "feedback.tab.repository": "Repository", + "feedback.tab.repository-is-not-connected": "Das Repository ist nicht verbunden", + "feedback.tab.snapshots": "Snapshots", + "feedback.tab.tasks": "Aufgaben", "feedback.ui.appearance": "Darstellung", "feedback.ui.appearance-help": "Gibt die Darstellung des Nutzerinterfaces an", "feedback.ui.appearance-hint": "Select font size", + "feedback.ui.byte-representation-description": "Darstellung der Speichergrößen", + "feedback.ui.byte-representation-help": "Gibt die aktuelle Darstellung von Speichergrößen an", + "feedback.ui.byte-representation-select": "Darstellung der Speichgröße auswählen", + "feedback.ui.pagesize-description": "Anzahl an Einträgen", + "feedback.ui.pagesize-help": "Gibt die Anzahl der Einträge in Listen an", + "feedback.ui.pagesize-hint": "Anzahl Einträge", + "feedback.ui.theme-description": "Design", + "feedback.ui.theme-help": "Das aktuell ausgewählte Design", "feedback.ui.theme-select": "Select theme", - "log.event.hide": "Hide log", - "log.event.show": "Show log", - "pin.event.add": "Pin hinzufügen", - "pin.event.cancel": "Abbrechen", - "pin.event.remove": "Pin entfernen", - "pin.event.snapshot.pin": "Snapshot anheften", - "pin.event.update": "Pin aktualisieren", - "pin.feedback.name": "Name des Pins", - "pin.feedback.standard-text": "Nicht löschen", + "feedback.validation.invalid-times-of-day": "Ungültige Tageszeiten", + "feedback.validation.optional.valid-number-or-empty": "Muss eine gültige Zahl sein oder leer sein", + "feedback.validation.passwords-dont-match": "Passwörter stimmen nicht überein", + "feedback.validation.required.directory": "Pflichtfeld", + "feedback.validation.required.field": "Pflichtfeld", + "feedback.validation.required.valid-number-or-empty": "Muss eine gültige Zahl oder leer sein", "policies.feedback.find.count_one": "{{count}} Richtlinie gefunden, die den Kriterien entspricht", "policies.feedback.find.count_other": "{{count}} Richtlinien gefunden, die den Kriterien entsprechen", "policies.feedback.find.none": "Keine Richtlinien gefunden.", @@ -29,11 +79,6 @@ "policies.feedback.loading": "Wird geladen ...", "policies.feedback.path.absolute": "Richtlinien können nur für absolute Pfade definiert werden.", "policies.feedback.policy.find": "Geben Sie das Verzeichnis ein, um die Richtlinie zu finden oder festzulegen", - "policies.header.actions": "Aktionen", - "policies.header.defined": "Definiert", - "policies.header.host": "Host", - "policies.header.path": "Pfad", - "policies.header.username": "Nutzername", "policies.kind.all": "Alle Richtlinien", "policies.kind.applicable": "Anwendbare Richtlinien", "policies.kind.global": "Globale Richtlinien", @@ -126,11 +171,6 @@ "snapshot.history.header.selected": "Ausgewählt", "snapshot.history.header.size": "Größe", "snapshot.history.header.time.start": "Startzeit", - "tab.policies": "Richtlinien", - "tab.preferences": "Einstellungen", - "tab.repository": "Repository", - "tab.snapshots": "Snapshots", - "tab.tasks": "Aufgaben", "task.all": "Alle", "task.event.stop": "Stop", "task.failed": "Fehlgeschlagen", @@ -152,19 +192,20 @@ "task.status.running.for": "Task running for", "task.status.started": "Gestartet", "task.status.succeed.after": "Task succeeded after", - "ui.feedback.byte-representation-description": "Darstellung der Speichergrößen", - "ui.feedback.byte-representation-help": "Gibt die aktuelle Darstellung von Speichergrößen an", - "ui.feedback.byte-representation-select": "Darstellung der Speichgröße auswählen", - "ui.feedback.pagesize-description": "Anzahl an Einträgen", - "ui.feedback.pagesize-help": "Gibt die Anzahl der Einträge in Listen an", - "ui.feedback.pagesize-hint": "Anzahl Einträge", - "ui.feedback.theme-description": "Design", - "ui.feedback.theme-help": "Das aktuell ausgewählte Design", - "ui.value.appearance-large": "groß", - "ui.value.appearance-medium": "mittel", - "ui.value.appearance-small": "klein", - "ui.value.theme-dark": "dunkel", - "ui.value.theme-light": "hell", - "ui.value.theme-ocean": "ozeanisch", - "ui.value.theme-pastel": "pastelfarbend" + "value.log.details-0-no-output": "0 - keine Ausgabe", + "value.log.details-1-minimal-details": "1 – minimale Details", + "value.log.details-10-maximum-details": "10 - maximale Details", + "value.log.details-5-normal-details": "5 - normale Details", + "value.log.details-inherit-from-parent": "(vom übergeordneten Element erben)", + "value.ui.appearance-large": "groß", + "value.ui.appearance-medium": "mittel", + "value.ui.appearance-small": "klein", + "value.ui.byte-representation-base10": "Basis-10 (KB, MB, GB, TB)", + "value.ui.byte-representation-base2": "Basis-2 (KiB, MiB, GiB, TiB)", + "value.ui.theme-dark": "dunkel", + "value.ui.theme-light": "hell", + "value.ui.theme-ocean": "ozeanisch", + "value.ui.theme-pastel": "pastelfarbend", + "value.validation.optional-no": "NEIN", + "value.validation.optional-yes": "Ja" } diff --git a/public/locales/en/translation.json b/public/locales/en/translation.json index 281f7da..5db7031 100644 --- a/public/locales/en/translation.json +++ b/public/locales/en/translation.json @@ -1,27 +1,77 @@ { + "common.back": "Back", "common.cancel": "Cancel", "common.delete": "Delete", - "common.delete.confirm": "Confirm Delete", + "common.delete-confirm": "Confirm Delete", "common.loading": "Loading ...", + "common.next": "Next", "common.return": "Return", - "description.event.cancel": "Cancel", - "description.event.new": "Enter new description", - "description.event.remove": "Remove Description", - "description.event.update": "Update Description", - "description.feedback.description": "Snapshot Description", + "event.description.cancel": "Cancel", + "event.description.new": "Enter new description", + "event.description.remove": "Remove Description", + "event.description.update": "Update Description", + "event.log.hide": "Hide log", + "event.log.show": "Show log", + "event.pin.add": "Add Pin", + "event.pin.cancel": "Cancel", + "event.pin.remove": "Remove Pin", + "event.pin.snapshot-pin": "Pin Snapshot", + "event.pin.update": "Update Pin", + "event.repository.advanced-options-hide": "Hide Advanced Options", + "event.repository.advanced-options.show": "Show Advanced Options", + "feedback.description.modal-title": "Snapshot Description", + "feedback.header.actions": "Actions", + "feedback.header.defined": "Defined", + "feedback.header.directories": "Directories", + "feedback.header.files": "Files", + "feedback.header.host": "Host", + "feedback.header.modification-last": "Last Modification", + "feedback.header.name": "Name", + "feedback.header.path": "Path", + "feedback.header.size": "Size", + "feedback.header.username": "Username", + "feedback.pin.name": "Name of the pin", + "feedback.pin.standard-text": "do-not-delete", + "feedback.provider.azure-blob-storage": "Azure Blob Storage", + "feedback.provider.backblaze-b2": "Backblaze B2", + "feedback.provider.google-cloud-storage": "Google Cloud Storage", + "feedback.provider.kopia-repository-server": "Kopia Repository Server", + "feedback.provider.local-directory-or-nas": "Local Directory or NAS", + "feedback.provider.rclone-remote": "Rclone Remote", + "feedback.provider.s3-or-compatible-storage": "Amazon S3 or Compatible Storage", + "feedback.provider.sftp-server": "SFTP Server", + "feedback.provider.use-repository-token": "Use Repository Token", + "feedback.provider.webdav-server": "WebDAV Server", + "feedback.repository.configuration": "Storage Configuration", + "feedback.repository.kopia-server-parameters": "Kopia Server Parameters", + "feedback.repository.name-default": "My Repository", + "feedback.repository.provider-selection": "Select Storage Type", + "feedback.repository.provider-selection-hint": "To connect to a repository or create one, select the preferred storage type:", + "feedback.repository.repository-token-enter": "Enter Repository Token", + "feedback.tab.policies": "Policies", + "feedback.tab.preferences": "Preferences", + "feedback.tab.repository": "Repository", + "feedback.tab.repository-is-not-connected": "Repository is not connected", + "feedback.tab.snapshots": "Snapshots", + "feedback.tab.tasks": "Tasks", "feedback.ui.appearance": "Appearance", "feedback.ui.appearance-help": "Specifies the appearance of the user interface", "feedback.ui.appearance-hint": "Select font size", + "feedback.ui.byte-representation-description": "Select byte representation", + "feedback.ui.byte-representation-help": "Specifies the representation of bytes", + "feedback.ui.byte-representation-select": "Select byte representation", + "feedback.ui.pagesize-description": "Page size", + "feedback.ui.pagesize-help": "Specifies the pagination size in tables", + "feedback.ui.pagesize-hint": "Page size", + "feedback.ui.theme-description": "Theme", + "feedback.ui.theme-help": "The current active theme", "feedback.ui.theme-select": "Select theme", - "log.event.hide": "Hide log", - "log.event.show": "Show log", - "pin.event.add": "Add Pin", - "pin.event.cancel": "Cancel", - "pin.event.remove": "Remove Pin", - "pin.event.snapshot.pin": "Pin Snapshot", - "pin.event.update": "Update Pin", - "pin.feedback.name": "Name of the pin", - "pin.feedback.standard-text": "do-not-delete", + "feedback.validation.invalid-times-of-day": "Invalid Times of Day", + "feedback.validation.optional.valid-number-or-empty": "Must be a valid number or empty", + "feedback.validation.passwords-dont-match": "Passwords don't match", + "feedback.validation.required.directory": "Required field", + "feedback.validation.required.field": "Required field", + "feedback.validation.required.valid-number-or-empty": "Must be a valid number or empty", "policies.feedback.find.count_one": "Found {{count}} policy matching the criteria", "policies.feedback.find.count_other": "Found {{count}} policies matching the criteria", "policies.feedback.find.none": "No policies found.", @@ -29,11 +79,6 @@ "policies.feedback.loading": "Loading ...", "policies.feedback.path.absolute": "Policies can only be defined for absolute paths.", "policies.feedback.policy.find": "Enter directory to find or set policy", - "policies.header.actions": "Actions", - "policies.header.defined": "Defined", - "policies.header.host": "Host", - "policies.header.path": "Path", - "policies.header.username": "Username", "policies.kind.all": "All policies", "policies.kind.applicable": "Applicable policies", "policies.kind.global": "Global policies", @@ -126,11 +171,6 @@ "snapshot.history.header.selected": "Selected", "snapshot.history.header.size": "Size", "snapshot.history.header.time.start": "Start time", - "tab.policies": "Policies", - "tab.preferences": "Preferences", - "tab.repository": "Repository", - "tab.snapshots": "Snapshots", - "tab.tasks": "Tasks", "task.all": "All", "task.event.stop": "Stop", "task.failed": "Failed", @@ -152,19 +192,20 @@ "task.status.running.for": "Task running for", "task.status.started": "Started", "task.status.succeed.after": "Task succeeded after", - "ui.feedback.byte-representation-description": "Select byte representation", - "ui.feedback.byte-representation-help": "Specifies the representation of bytes", - "ui.feedback.byte-representation-select": "Select byte representation", - "ui.feedback.pagesize-description": "Page size", - "ui.feedback.pagesize-help": "Specifies the pagination size in tables", - "ui.feedback.pagesize-hint": "Page size", - "ui.feedback.theme-description": "Theme", - "ui.feedback.theme-help": "The current active theme", - "ui.value.appearance-large": "large", - "ui.value.appearance-medium": "medium", - "ui.value.appearance-small": "small", - "ui.value.theme-dark": "dark", - "ui.value.theme-light": "light", - "ui.value.theme-ocean": "ocean", - "ui.value.theme-pastel": "pastel" + "value.log.details-0-no-output": "0 - no output", + "value.log.details-1-minimal-details": "1 - minimal details", + "value.log.details-10-maximum-details": "10 - maximum details", + "value.log.details-5-normal-details": "5 - normal details", + "value.log.details-inherit-from-parent": "(inherit from parent)", + "value.ui.appearance-large": "large", + "value.ui.appearance-medium": "medium", + "value.ui.appearance-small": "small", + "value.ui.byte-representation-base10": "Base-10 (KB, MB, GB, TB)", + "value.ui.byte-representation-base2": "Base-2 (KiB, MiB, GiB, TiB)", + "value.ui.theme-dark": "dark", + "value.ui.theme-light": "light", + "value.ui.theme-ocean": "ocean", + "value.ui.theme-pastel": "pastel", + "value.validation.optional-no": "no", + "value.validation.optional-yes": "yes" } diff --git a/public/locales/es/translation.json b/public/locales/es/translation.json index 17d79b7..95a0ada 100644 --- a/public/locales/es/translation.json +++ b/public/locales/es/translation.json @@ -1,27 +1,77 @@ { + "common.back": "Atrás", "common.cancel": "Cancelar", "common.delete": "Borrar", - "common.delete.confirm": "Confirmar eliminación", + "common.delete-confirm": "Confirmar eliminación", "common.loading": "Cargando ...", + "common.next": "Próximo", "common.return": "Volver", - "description.event.cancel": "Cancelar", - "description.event.new": "Ingrese una nueva descripción", - "description.event.remove": "Eliminar descripción", - "description.event.update": "Descripción de la actualización", - "description.feedback.description": "Descripción de la instantánea", + "event.description.cancel": "Cancelar", + "event.description.new": "Ingrese una nueva descripción", + "event.description.remove": "Eliminar descripción", + "event.description.update": "Descripción de la actualización", + "event.log.hide": "Ocultar registro", + "event.log.show": "Mostrar registro", + "event.pin.add": "Agregar PIN", + "event.pin.cancel": "Cancelar", + "event.pin.remove": "Quitar pin", + "event.pin.snapshot-pin": "Instantánea de pin", + "event.pin.update": "Actualizar PIN", + "event.repository.advanced-options-hide": "Ocultar opciones avanzadas", + "event.repository.advanced-options.show": "Mostrar opciones avanzadas", + "feedback.description.modal-title": "Descripción de la instantánea", + "feedback.header.actions": "Comportamiento", + "feedback.header.defined": "Definido", + "feedback.header.directories": "Directorios", + "feedback.header.files": "Archivos", + "feedback.header.host": "Anfitrión", + "feedback.header.modification-last": "Última modificación", + "feedback.header.name": "Nombre", + "feedback.header.path": "Camino", + "feedback.header.size": "Tamaño", + "feedback.header.username": "Nombre de usuario", + "feedback.pin.name": "nombre del pin", + "feedback.pin.standard-text": "no borres", + "feedback.provider.azure-blob-storage": "Almacenamiento de blobs de Azure", + "feedback.provider.backblaze-b2": "Resplandor B2", + "feedback.provider.google-cloud-storage": "Almacenamiento en la nube de Google", + "feedback.provider.kopia-repository-server": "Servidor de repositorio de Kopia", + "feedback.provider.local-directory-or-nas": "Directorio local o NAS", + "feedback.provider.rclone-remote": "Clon remoto", + "feedback.provider.s3-or-compatible-storage": "Amazon S3 o almacenamiento compatible", + "feedback.provider.sftp-server": "Servidor SFTP", + "feedback.provider.use-repository-token": "Usar token de repositorio", + "feedback.provider.webdav-server": "Servidor WebDAV", + "feedback.repository.configuration": "Configuración de almacenamiento", + "feedback.repository.kopia-server-parameters": "Parámetros del servidor Kopia", + "feedback.repository.name-default": "Mi repositorio", + "feedback.repository.provider-selection": "Seleccione el tipo de almacenamiento", + "feedback.repository.provider-selection-hint": "Para conectarse a un repositorio o crear uno, seleccione el tipo de almacenamiento preferido:", + "feedback.repository.repository-token-enter": "Ingrese el token del repositorio", + "feedback.tab.policies": "Políticas", + "feedback.tab.preferences": "Preferencias", + "feedback.tab.repository": "Depósito", + "feedback.tab.repository-is-not-connected": "El repositorio no está conectado", + "feedback.tab.snapshots": "Copias de respaldo", + "feedback.tab.tasks": "Tareas", "feedback.ui.appearance": "Apariencia", "feedback.ui.appearance-help": "Especifica la apariencia de la interfaz de usuario", "feedback.ui.appearance-hint": "Selecciona el tamaño de letra", + "feedback.ui.byte-representation-description": "Selecciona la representación de bytes", + "feedback.ui.byte-representation-help": "Especifica la representación de bytes", + "feedback.ui.byte-representation-select": "Selecciona la representación de bytes", + "feedback.ui.pagesize-description": "Tamaño de página", + "feedback.ui.pagesize-help": "Especifica el tamaño de paginación en las tablas", + "feedback.ui.pagesize-hint": "Tamaño de página", + "feedback.ui.theme-description": "Tema", + "feedback.ui.theme-help": "El tema activo actual", "feedback.ui.theme-select": "Seleccionar tema", - "log.event.hide": "Ocultar registro", - "log.event.show": "Mostrar registro", - "pin.event.add": "Agregar PIN", - "pin.event.cancel": "Cancelar", - "pin.event.remove": "Quitar pin", - "pin.event.snapshot.pin": "Instantánea de pin", - "pin.event.update": "Actualizar PIN", - "pin.feedback.name": "nombre del pin", - "pin.feedback.standard-text": "no borres", + "feedback.validation.invalid-times-of-day": "Horas del día no válidas", + "feedback.validation.optional.valid-number-or-empty": "Debe ser un número válido o vacío.", + "feedback.validation.passwords-dont-match": "Las contraseñas no coinciden", + "feedback.validation.required.directory": "Campo requerido", + "feedback.validation.required.field": "Campo requerido", + "feedback.validation.required.valid-number-or-empty": "Debe ser un número válido o vacío.", "policies.feedback.find.count_one": "Se encontró {{count}} política que coincide con los criterios", "policies.feedback.find.count_other": "Se encontraron {{count}} políticas que coinciden con los criterios", "policies.feedback.find.none": "No se encontraron políticas.", @@ -29,11 +79,6 @@ "policies.feedback.loading": "Cargando ...", "policies.feedback.path.absolute": "Las políticas sólo se pueden definir para rutas absolutas.", "policies.feedback.policy.find": "Ingrese al directorio para buscar o establecer una política", - "policies.header.actions": "Comportamiento", - "policies.header.defined": "Definido", - "policies.header.host": "Anfitrión", - "policies.header.path": "Camino", - "policies.header.username": "Nombre de usuario", "policies.kind.all": "Todas las pólizas", "policies.kind.applicable": "Políticas aplicables", "policies.kind.global": "Políticas globales", @@ -126,11 +171,6 @@ "snapshot.history.header.selected": "Seleccionado", "snapshot.history.header.size": "Tamaño", "snapshot.history.header.time.start": "Hora de inicio", - "tab.policies": "Políticas", - "tab.preferences": "Preferencias", - "tab.repository": "Depósito", - "tab.snapshots": "Copias de respaldo", - "tab.tasks": "Tareas", "task.all": "Todas", "task.event.stop": "Detener", "task.failed": "Fallidas", @@ -152,19 +192,20 @@ "task.status.running.for": "Tarea en ejecución durante", "task.status.started": "Iniciada", "task.status.succeed.after": "La tarea se completó con éxito después de", - "ui.feedback.byte-representation-description": "Selecciona la representación de bytes", - "ui.feedback.byte-representation-help": "Especifica la representación de bytes", - "ui.feedback.byte-representation-select": "Selecciona la representación de bytes", - "ui.feedback.pagesize-description": "Tamaño de página", - "ui.feedback.pagesize-help": "Especifica el tamaño de paginación en las tablas", - "ui.feedback.pagesize-hint": "Tamaño de página", - "ui.feedback.theme-description": "Tema", - "ui.feedback.theme-help": "El tema activo actual", - "ui.value.appearance-large": "grande", - "ui.value.appearance-medium": "mediano", - "ui.value.appearance-small": "pequeño", - "ui.value.theme-dark": "oscuro", - "ui.value.theme-light": "claro", - "ui.value.theme-ocean": "oceánico", - "ui.value.theme-pastel": "pastel" + "value.log.details-0-no-output": "0 - sin salida", + "value.log.details-1-minimal-details": "1 - detalles mínimos", + "value.log.details-10-maximum-details": "10 - detalles máximos", + "value.log.details-5-normal-details": "5 - detalles normales", + "value.log.details-inherit-from-parent": "(heredado de los padres)", + "value.ui.appearance-large": "grande", + "value.ui.appearance-medium": "mediano", + "value.ui.appearance-small": "pequeño", + "value.ui.byte-representation-base10": "Base-10 (KB, MB, GB, TB)", + "value.ui.byte-representation-base2": "Base-2 (KiB, MiB, GiB, TiB)", + "value.ui.theme-dark": "oscuro", + "value.ui.theme-light": "claro", + "value.ui.theme-ocean": "oceánico", + "value.ui.theme-pastel": "pastel", + "value.validation.optional-no": "No", + "value.validation.optional-yes": "Sí" } diff --git a/public/locales/fr/translation.json b/public/locales/fr/translation.json index 6e14bb7..0f72e94 100644 --- a/public/locales/fr/translation.json +++ b/public/locales/fr/translation.json @@ -1,27 +1,77 @@ { + "common.back": "Dos", "common.cancel": "Annuler", "common.delete": "Supprimer", - "common.delete.confirm": "Confirmation de la suppression", + "common.delete-confirm": "Confirmation de la suppression", "common.loading": "Chargement ...", + "common.next": "Suivant", "common.return": "Retour", - "description.event.cancel": "Annuler", - "description.event.new": "Entrez une nouvelle description", - "description.event.remove": "Supprimer la description", - "description.event.update": "Description de la mise à jour", - "description.feedback.description": "Description de l'instantané", + "event.description.cancel": "Annuler", + "event.description.new": "Entrez une nouvelle description", + "event.description.remove": "Supprimer la description", + "event.description.update": "Description de la mise à jour", + "event.log.hide": "Masquer le journal", + "event.log.show": "Afficher le journal", + "event.pin.add": "Ajouter une épingle", + "event.pin.cancel": "Annuler", + "event.pin.remove": "Supprimer l'épingle", + "event.pin.snapshot-pin": "Épingler un instantané", + "event.pin.update": "Mettre à jour l'épingle", + "event.repository.advanced-options-hide": "Masquer les options avancées", + "event.repository.advanced-options.show": "Montrer les options avancées", + "feedback.description.modal-title": "Description de l'instantané", + "feedback.header.actions": "Actions", + "feedback.header.defined": "Défini", + "feedback.header.directories": "Annuaires", + "feedback.header.files": "Des dossiers", + "feedback.header.host": "Hôte", + "feedback.header.modification-last": "Dernière modification", + "feedback.header.name": "Nom", + "feedback.header.path": "Chemin", + "feedback.header.size": "Taille", + "feedback.header.username": "Nom d'utilisateur", + "feedback.pin.name": "Nom de la broche", + "feedback.pin.standard-text": "ne pas supprimer", + "feedback.provider.azure-blob-storage": "Stockage Blob Azure", + "feedback.provider.backblaze-b2": "Backblaze B2", + "feedback.provider.google-cloud-storage": "Stockage Google Cloud", + "feedback.provider.kopia-repository-server": "Serveur de référentiel Kopia", + "feedback.provider.local-directory-or-nas": "Répertoire local ou NAS", + "feedback.provider.rclone-remote": "Rclone à distance", + "feedback.provider.s3-or-compatible-storage": "Amazon S3 ou stockage compatible", + "feedback.provider.sftp-server": "Serveur SFTP", + "feedback.provider.use-repository-token": "Utiliser le jeton de référentiel", + "feedback.provider.webdav-server": "Serveur WebDAV", + "feedback.repository.configuration": "Configuration du stockage", + "feedback.repository.kopia-server-parameters": "Paramètres du serveur Kopia", + "feedback.repository.name-default": "Mon référentiel", + "feedback.repository.provider-selection": "Sélectionnez le type de stockage", + "feedback.repository.provider-selection-hint": "Pour vous connecter à un référentiel ou en créer un, sélectionnez le type de stockage préféré :", + "feedback.repository.repository-token-enter": "Entrez le jeton de référentiel", + "feedback.tab.policies": "Politiques", + "feedback.tab.preferences": "Préférences", + "feedback.tab.repository": "Répertoire", + "feedback.tab.repository-is-not-connected": "Le référentiel n'est pas connecté", + "feedback.tab.snapshots": "Instantanés", + "feedback.tab.tasks": "Tâches", "feedback.ui.appearance": "Apparence", "feedback.ui.appearance-help": "Spécifie l'apparence de l'interface utilisateur", "feedback.ui.appearance-hint": "Sélectionnez la taille de police", + "feedback.ui.byte-representation-description": "Sélectionnez la représentation des octets", + "feedback.ui.byte-representation-help": "Spécifie la représentation des octets", + "feedback.ui.byte-representation-select": "Sélectionnez la représentation des octets", + "feedback.ui.pagesize-description": "Taille de la page", + "feedback.ui.pagesize-help": "Spécifie la taille de pagination dans les tableaux", + "feedback.ui.pagesize-hint": "Taille de la page", + "feedback.ui.theme-description": "Thème", + "feedback.ui.theme-help": "Le thème actif actuel", "feedback.ui.theme-select": "Sélectionnez un thème", - "log.event.hide": "Masquer le journal", - "log.event.show": "Afficher le journal", - "pin.event.add": "Ajouter une épingle", - "pin.event.cancel": "Annuler", - "pin.event.remove": "Supprimer l'épingle", - "pin.event.snapshot.pin": "Épingler un instantané", - "pin.event.update": "Mettre à jour l'épingle", - "pin.feedback.name": "Nom de la broche", - "pin.feedback.standard-text": "ne pas supprimer", + "feedback.validation.invalid-times-of-day": "Heures de la journée invalides", + "feedback.validation.optional.valid-number-or-empty": "Doit être un numéro valide ou vide", + "feedback.validation.passwords-dont-match": "Les mots de passe ne correspondent pas", + "feedback.validation.required.directory": "champs requis", + "feedback.validation.required.field": "champs requis", + "feedback.validation.required.valid-number-or-empty": "Doit être un numéro valide ou vide", "policies.feedback.find.count_one": "{{count}} politiques correspondant aux critères ont été trouvées", "policies.feedback.find.count_other": "{{count}} politiques correspondant aux critères ont été trouvées", "policies.feedback.find.none": "Aucune politique trouvée.", @@ -29,11 +79,6 @@ "policies.feedback.loading": "Chargement ...", "policies.feedback.path.absolute": "Les stratégies ne peuvent être définies que pour des chemins absolus.", "policies.feedback.policy.find": "Entrez dans le répertoire pour rechercher ou définir une politique", - "policies.header.actions": "Actions", - "policies.header.defined": "Défini", - "policies.header.host": "Hôte", - "policies.header.path": "Chemin", - "policies.header.username": "Nom d'utilisateur", "policies.kind.all": "Toutes les politiques", "policies.kind.applicable": "Politiques applicables", "policies.kind.global": "Politiques mondiales", @@ -126,11 +171,6 @@ "snapshot.history.header.selected": "Choisi", "snapshot.history.header.size": "Taille", "snapshot.history.header.time.start": "Heure de début", - "tab.policies": "Politiques", - "tab.preferences": "Préférences", - "tab.repository": "Répertoire", - "tab.snapshots": "Instantanés", - "tab.tasks": "Tâches", "task.all": "Tous", "task.event.stop": "Arrêter", "task.failed": "Échoué", @@ -152,19 +192,20 @@ "task.status.running.for": "Tâche en cours depuis", "task.status.started": "Démarré", "task.status.succeed.after": "Tâche réussie après", - "ui.feedback.byte-representation-description": "Sélectionnez la représentation des octets", - "ui.feedback.byte-representation-help": "Spécifie la représentation des octets", - "ui.feedback.byte-representation-select": "Sélectionnez la représentation des octets", - "ui.feedback.pagesize-description": "Taille de la page", - "ui.feedback.pagesize-help": "Spécifie la taille de pagination dans les tableaux", - "ui.feedback.pagesize-hint": "Taille de la page", - "ui.feedback.theme-description": "Thème", - "ui.feedback.theme-help": "Le thème actif actuel", - "ui.value.appearance-large": "grande", - "ui.value.appearance-medium": "moyenne", - "ui.value.appearance-small": "petite", - "ui.value.theme-dark": "sombre", - "ui.value.theme-light": "clair", - "ui.value.theme-ocean": "océan", - "ui.value.theme-pastel": "pastel" + "value.log.details-0-no-output": "0 - aucune sortie", + "value.log.details-1-minimal-details": "1 - détails minimes", + "value.log.details-10-maximum-details": "10 - détails maximum", + "value.log.details-5-normal-details": "5 - détails normaux", + "value.log.details-inherit-from-parent": "(hériter du parent)", + "value.ui.appearance-large": "grande", + "value.ui.appearance-medium": "moyenne", + "value.ui.appearance-small": "petite", + "value.ui.byte-representation-base10": "Base-10 (Ko, Mo, Go, To)", + "value.ui.byte-representation-base2": "Base-2 (Kio, MiB, GiB, TiB)", + "value.ui.theme-dark": "sombre", + "value.ui.theme-light": "clair", + "value.ui.theme-ocean": "océan", + "value.ui.theme-pastel": "pastel", + "value.validation.optional-no": "Non", + "value.validation.optional-yes": "Oui" } diff --git a/public/locales/it/translation.json b/public/locales/it/translation.json index b3912bc..4cdcb1a 100644 --- a/public/locales/it/translation.json +++ b/public/locales/it/translation.json @@ -1,27 +1,77 @@ { + "common.back": "Indietro", "common.cancel": "Annulla", "common.delete": "Eliminare", - "common.delete.confirm": "Conferma cancellazione", + "common.delete-confirm": "Conferma cancellazione", "common.loading": "Caricamento ...", + "common.next": "Prossimo", "common.return": "Ritorno", - "description.event.cancel": "Annulla", - "description.event.new": "Inserisci una nuova descrizione", - "description.event.remove": "Rimuovi descrizione", - "description.event.update": "Descrizione dell'aggiornamento", - "description.feedback.description": "Descrizione dell'istantanea", + "event.description.cancel": "Annulla", + "event.description.new": "Inserisci una nuova descrizione", + "event.description.remove": "Rimuovi descrizione", + "event.description.update": "Descrizione dell'aggiornamento", + "event.log.hide": "Nascondi log", + "event.log.show": "Mostra log", + "event.pin.add": "Aggiungi puntina", + "event.pin.cancel": "Annulla", + "event.pin.remove": "Rimuovi perno", + "event.pin.snapshot-pin": "Pin istantanea", + "event.pin.update": "Aggiorna perno", + "event.repository.advanced-options-hide": "Nascondi opzioni avanzate", + "event.repository.advanced-options.show": "Mostra opzioni avanzate", + "feedback.description.modal-title": "Descrizione dell'istantanea", + "feedback.header.actions": "Azioni", + "feedback.header.defined": "Definito", + "feedback.header.directories": "Directory", + "feedback.header.files": "File", + "feedback.header.host": "Ospite", + "feedback.header.modification-last": "Ultima modifica", + "feedback.header.name": "Nome", + "feedback.header.path": "Sentiero", + "feedback.header.size": "Misurare", + "feedback.header.username": "Nome utente", + "feedback.pin.name": "Nome del perno", + "feedback.pin.standard-text": "non cancellare", + "feedback.provider.azure-blob-storage": "Archiviazione BLOB di Azure", + "feedback.provider.backblaze-b2": "Backblaze B2", + "feedback.provider.google-cloud-storage": "Archiviazione Google Cloud", + "feedback.provider.kopia-repository-server": "Server di archivio Kopia", + "feedback.provider.local-directory-or-nas": "Directory locale o NAS", + "feedback.provider.rclone-remote": "RClone remoto", + "feedback.provider.s3-or-compatible-storage": "Amazon S3 o spazio di archiviazione compatibile", + "feedback.provider.sftp-server": "Server SFTP", + "feedback.provider.use-repository-token": "Utilizza token di archivio", + "feedback.provider.webdav-server": "Server WebDAV", + "feedback.repository.configuration": "Configurazione di archiviazione", + "feedback.repository.kopia-server-parameters": "Parametri del server Copia", + "feedback.repository.name-default": "Il mio deposito", + "feedback.repository.provider-selection": "Seleziona il tipo di archiviazione", + "feedback.repository.provider-selection-hint": "Per connettersi a un repository o crearne uno, selezionare il tipo di archiviazione preferito:", + "feedback.repository.repository-token-enter": "Inserisci il token del repository", + "feedback.tab.policies": "Politiche", + "feedback.tab.preferences": "Preferenze", + "feedback.tab.repository": "Repository", + "feedback.tab.repository-is-not-connected": "Il repository non è connesso", + "feedback.tab.snapshots": "Istantanee", + "feedback.tab.tasks": "Attività", "feedback.ui.appearance": "Aspetto", "feedback.ui.appearance-help": "Specifica l'aspetto dell'interfaccia utente", "feedback.ui.appearance-hint": "Seleziona la dimensione del carattere", + "feedback.ui.byte-representation-description": "Seleziona la rappresentazione dei byte", + "feedback.ui.byte-representation-help": "Specifica la rappresentazione dei byte", + "feedback.ui.byte-representation-select": "Seleziona la rappresentazione dei byte", + "feedback.ui.pagesize-description": "Dimensione pagina", + "feedback.ui.pagesize-help": "Specifica la dimensione di paginazione nelle tabelle", + "feedback.ui.pagesize-hint": "Dimensione pagina", + "feedback.ui.theme-description": "Tema", + "feedback.ui.theme-help": "Il tema attivo corrente", "feedback.ui.theme-select": "Seleziona il tema", - "log.event.hide": "Nascondi log", - "log.event.show": "Mostra log", - "pin.event.add": "Aggiungi puntina", - "pin.event.cancel": "Annulla", - "pin.event.remove": "Rimuovi perno", - "pin.event.snapshot.pin": "Pin istantanea", - "pin.event.update": "Aggiorna perno", - "pin.feedback.name": "Nome del perno", - "pin.feedback.standard-text": "non cancellare", + "feedback.validation.invalid-times-of-day": "Orari del giorno non validi", + "feedback.validation.optional.valid-number-or-empty": "Deve essere un numero valido o vuoto", + "feedback.validation.passwords-dont-match": "Le password non corrispondono", + "feedback.validation.required.directory": "campo obbligatorio", + "feedback.validation.required.field": "campo obbligatorio", + "feedback.validation.required.valid-number-or-empty": "Deve essere un numero valido o vuoto", "policies.feedback.find.count_one": "Trovata {{count}} policy corrispondente ai criteri", "policies.feedback.find.count_other": "Trovate {{count}} politiche che corrispondono ai criteri", "policies.feedback.find.none": "Nessuna politica trovata.", @@ -29,11 +79,6 @@ "policies.feedback.loading": "Caricamento ...", "policies.feedback.path.absolute": "Le policy possono essere definite solo per percorsi assoluti.", "policies.feedback.policy.find": "Inserisci la directory per trovare o impostare la policy", - "policies.header.actions": "Azioni", - "policies.header.defined": "Definito", - "policies.header.host": "Ospite", - "policies.header.path": "Sentiero", - "policies.header.username": "Nome utente", "policies.kind.all": "Tutte le politiche", "policies.kind.applicable": "Politiche applicabili", "policies.kind.global": "Politiche globali", @@ -126,11 +171,6 @@ "snapshot.history.header.selected": "Selezionato", "snapshot.history.header.size": "Misurare", "snapshot.history.header.time.start": "Ora di inizio", - "tab.policies": "Politiche", - "tab.preferences": "Preferenze", - "tab.repository": "Repository", - "tab.snapshots": "Istantanee", - "tab.tasks": "Attività", "task.all": "Tutte", "task.event.stop": "Arresta", "task.failed": "Fallite", @@ -152,19 +192,20 @@ "task.status.running.for": "Attività in esecuzione da", "task.status.started": "Avviata", "task.status.succeed.after": "Attività completata dopo", - "ui.feedback.byte-representation-description": "Seleziona la rappresentazione dei byte", - "ui.feedback.byte-representation-help": "Specifica la rappresentazione dei byte", - "ui.feedback.byte-representation-select": "Seleziona la rappresentazione dei byte", - "ui.feedback.pagesize-description": "Dimensione pagina", - "ui.feedback.pagesize-help": "Specifica la dimensione di paginazione nelle tabelle", - "ui.feedback.pagesize-hint": "Dimensione pagina", - "ui.feedback.theme-description": "Tema", - "ui.feedback.theme-help": "Il tema attivo corrente", - "ui.value.appearance-large": "grande", - "ui.value.appearance-medium": "medio", - "ui.value.appearance-small": "piccolo", - "ui.value.theme-dark": "scuro", - "ui.value.theme-light": "chiaro", - "ui.value.theme-ocean": "oceano", - "ui.value.theme-pastel": "pastello" + "value.log.details-0-no-output": "0 - nessuna uscita", + "value.log.details-1-minimal-details": "1 - dettagli minimi", + "value.log.details-10-maximum-details": "10 - dettagli massimi", + "value.log.details-5-normal-details": "5 - dettagli normali", + "value.log.details-inherit-from-parent": "(eredita dal genitore)", + "value.ui.appearance-large": "grande", + "value.ui.appearance-medium": "medio", + "value.ui.appearance-small": "piccolo", + "value.ui.byte-representation-base10": "Base 10 (KB, MB, GB, TB)", + "value.ui.byte-representation-base2": "Base-2 (KiB, MiB, GiB, TiB)", + "value.ui.theme-dark": "scuro", + "value.ui.theme-light": "chiaro", + "value.ui.theme-ocean": "oceano", + "value.ui.theme-pastel": "pastello", + "value.validation.optional-no": "NO", + "value.validation.optional-yes": "SÌ" } diff --git a/public/locales/jp/translation.json b/public/locales/jp/translation.json index f970004..4d2e366 100644 --- a/public/locales/jp/translation.json +++ b/public/locales/jp/translation.json @@ -1,27 +1,77 @@ { - "common.cancel": "Cancel", - "common.delete": "Delete", - "common.delete.confirm": "Confirm Delete", + "common.back": "Back", + "common.cancel": "キャンセル", + "common.delete": "削除", + "common.delete-confirm": "Confirm Delete", "common.loading": "Loading ...", + "common.next": "Next", "common.return": "戻る", - "description.event.cancel": "Cancel", - "description.event.new": "Enter new description", - "description.event.remove": "Remove Description", - "description.event.update": "Update Description", - "description.feedback.description": "Snapshot Description", + "event.description.cancel": "Cancel", + "event.description.new": "Enter new description", + "event.description.remove": "Remove Description", + "event.description.update": "Update Description", + "event.log.hide": "ログを非表示", + "event.log.show": "ログを表示", + "event.pin.add": "Add Pin", + "event.pin.cancel": "Cancel", + "event.pin.remove": "Remove Pin", + "event.pin.snapshot-pin": "Pin Snapshot", + "event.pin.update": "Update Pin", + "event.repository.advanced-options-hide": "Hide Advanced Options", + "event.repository.advanced-options.show": "Show Advanced Options", + "feedback.description.modal-title": "Snapshot Description", + "feedback.header.actions": "Actions", + "feedback.header.defined": "Defined", + "feedback.header.directories": "Directories", + "feedback.header.files": "Files", + "feedback.header.host": "Host", + "feedback.header.modification-last": "Last Modification", + "feedback.header.name": "Name", + "feedback.header.path": "Path", + "feedback.header.size": "Size", + "feedback.header.username": "Username", + "feedback.pin.name": "Name of the pin", + "feedback.pin.standard-text": "do-not-delete", + "feedback.provider.azure-blob-storage": "Azure Blob Storage", + "feedback.provider.backblaze-b2": "Backblaze B2", + "feedback.provider.google-cloud-storage": "Google Cloud Storage", + "feedback.provider.kopia-repository-server": "Kopia Repository Server", + "feedback.provider.local-directory-or-nas": "Local Directory or NAS", + "feedback.provider.rclone-remote": "Rclone Remote", + "feedback.provider.s3-or-compatible-storage": "Amazon S3 or Compatible Storage", + "feedback.provider.sftp-server": "SFTP Server", + "feedback.provider.use-repository-token": "Use Repository Token", + "feedback.provider.webdav-server": "WebDAV Server", + "feedback.repository.configuration": "Storage Configuration", + "feedback.repository.kopia-server-parameters": "Kopia Server Parameters", + "feedback.repository.name-default": "My Repository", + "feedback.repository.provider-selection": "Select Storage Type", + "feedback.repository.provider-selection-hint": "To connect to a repository or create one, select the preferred storage type:", + "feedback.repository.repository-token-enter": "Enter Repository Token", + "feedback.tab.policies": "ポリシー", + "feedback.tab.preferences": "設定", + "feedback.tab.repository": "リポジトリ", + "feedback.tab.repository-is-not-connected": "Repository is not connected", + "feedback.tab.snapshots": "スナップショット", + "feedback.tab.tasks": "タスク", "feedback.ui.appearance": "外観", "feedback.ui.appearance-help": "ユーザーインターフェースの外観を指定します", "feedback.ui.appearance-hint": "フォントサイズを選択", + "feedback.ui.byte-representation-description": "バイトの表現を選択", + "feedback.ui.byte-representation-help": "バイトの表現を指定します", + "feedback.ui.byte-representation-select": "バイトの表現を選択", + "feedback.ui.pagesize-description": "ページサイズ", + "feedback.ui.pagesize-help": "テーブルのページネーションサイズを指定します", + "feedback.ui.pagesize-hint": "ページサイズ", + "feedback.ui.theme-description": "テーマ", + "feedback.ui.theme-help": "現在のアクティブなテーマ", "feedback.ui.theme-select": "テーマを選択", - "log.event.hide": "ログを非表示", - "log.event.show": "ログを表示", - "pin.event.add": "Add Pin", - "pin.event.cancel": "Cancel", - "pin.event.remove": "Remove Pin", - "pin.event.snapshot.pin": "Pin Snapshot", - "pin.event.update": "Update Pin", - "pin.feedback.name": "Name of the pin", - "pin.feedback.standard-text": "do-not-delete", + "feedback.validation.invalid-times-of-day": "Invalid Times of Day", + "feedback.validation.optional.valid-number-or-empty": "Must be a valid number or empty", + "feedback.validation.passwords-dont-match": "Passwords don't match", + "feedback.validation.required.directory": "Required field", + "feedback.validation.required.field": "Required field", + "feedback.validation.required.valid-number-or-empty": "Must be a valid number or empty", "policies.feedback.find.count_one": "Found {{count}} policy matching the criteria", "policies.feedback.find.count_other": "Found {{count}} policies matching the criteria", "policies.feedback.find.none": "No policies found.", @@ -29,11 +79,6 @@ "policies.feedback.loading": "Loading ...", "policies.feedback.path.absolute": "Policies can only be defined for absolute paths.", "policies.feedback.policy.find": "Enter directory to find or set policy", - "policies.header.actions": "Actions", - "policies.header.defined": "Defined", - "policies.header.host": "Host", - "policies.header.path": "Path", - "policies.header.username": "Username", "policies.kind.all": "All policies", "policies.kind.applicable": "Applicable policies", "policies.kind.global": "Global policies", @@ -126,11 +171,6 @@ "snapshot.history.header.selected": "Selected", "snapshot.history.header.size": "Size", "snapshot.history.header.time.start": "Start time", - "tab.policies": "ポリシー", - "tab.preferences": "設定", - "tab.repository": "リポジトリ", - "tab.snapshots": "スナップショット", - "tab.tasks": "タスク", "task.all": "すべて", "task.event.stop": "停止", "task.failed": "失敗", @@ -152,19 +192,20 @@ "task.status.running.for": "タスク実行中", "task.status.started": "開始済み", "task.status.succeed.after": "タスクは成功しました。", - "ui.feedback.byte-representation-description": "バイトの表現を選択", - "ui.feedback.byte-representation-help": "バイトの表現を指定します", - "ui.feedback.byte-representation-select": "バイトの表現を選択", - "ui.feedback.pagesize-description": "ページサイズ", - "ui.feedback.pagesize-help": "テーブルのページネーションサイズを指定します", - "ui.feedback.pagesize-hint": "ページサイズ", - "ui.feedback.theme-description": "テーマ", - "ui.feedback.theme-help": "現在のアクティブなテーマ", - "ui.value.appearance-large": "大", - "ui.value.appearance-medium": "中", - "ui.value.appearance-small": "小", - "ui.value.theme-dark": "ダーク", - "ui.value.theme-light": "ライト", - "ui.value.theme-ocean": "オーシャン", - "ui.value.theme-pastel": "パステル" + "value.log.details-0-no-output": "0 - no output", + "value.log.details-1-minimal-details": "1 - minimal details", + "value.log.details-10-maximum-details": "10 - maximum details", + "value.log.details-5-normal-details": "5 - normal details", + "value.log.details-inherit-from-parent": "(inherit from parent)", + "value.ui.appearance-large": "大", + "value.ui.appearance-medium": "中", + "value.ui.appearance-small": "小", + "value.ui.byte-representation-base10": "Base-10 (KB, MB, GB, TB)", + "value.ui.byte-representation-base2": "Base-2 (KiB, MiB, GiB, TiB)", + "value.ui.theme-dark": "ダーク", + "value.ui.theme-light": "ライト", + "value.ui.theme-ocean": "オーシャン", + "value.ui.theme-pastel": "パステル", + "value.validation.optional-no": "no", + "value.validation.optional-yes": "yes" } diff --git a/public/locales/pl/translation.json b/public/locales/pl/translation.json index 593a972..8cb6506 100644 --- a/public/locales/pl/translation.json +++ b/public/locales/pl/translation.json @@ -1,27 +1,77 @@ { + "common.back": "Z powrotem", "common.cancel": "Anulować", "common.delete": "Usuwać", - "common.delete.confirm": "Potwierdź usunięcie", + "common.delete-confirm": "Potwierdź usunięcie", "common.loading": "Ładowanie ...", + "common.next": "Następny", "common.return": "Wróć", - "description.event.cancel": "Anulować", - "description.event.new": "Wprowadź nowy opis", - "description.event.remove": "Usuń opis", - "description.event.update": "Aktualizuj opis", - "description.feedback.description": "Opis migawki", + "event.description.cancel": "Anulować", + "event.description.new": "Wprowadź nowy opis", + "event.description.remove": "Usuń opis", + "event.description.update": "Aktualizuj opis", + "event.log.hide": "Schowaj log", + "event.log.show": "Pokaż log", + "event.pin.add": "Dodaj Pin", + "event.pin.cancel": "Anulować", + "event.pin.remove": "Usuń pinezkę", + "event.pin.snapshot-pin": "Przypnij migawkę", + "event.pin.update": "Zaktualizuj Pin", + "event.repository.advanced-options-hide": "Ukryj opcje zaawansowane", + "event.repository.advanced-options.show": "Pokaż ustawienia zaawansowane", + "feedback.description.modal-title": "Opis migawki", + "feedback.header.actions": "działania", + "feedback.header.defined": "Zdefiniowane", + "feedback.header.directories": "Katalogi", + "feedback.header.files": "Akta", + "feedback.header.host": "Gospodarz", + "feedback.header.modification-last": "Ostatnia modyfikacja", + "feedback.header.name": "Nazwa", + "feedback.header.path": "Ścieżka", + "feedback.header.size": "Rozmiar", + "feedback.header.username": "Nazwa użytkownika", + "feedback.pin.name": "Nazwa pinu", + "feedback.pin.standard-text": "nie kasuj", + "feedback.provider.azure-blob-storage": "Magazyn obiektów Blob platformy Azure", + "feedback.provider.backblaze-b2": "Blask wsteczny B2", + "feedback.provider.google-cloud-storage": "Magazyn w chmurze Google", + "feedback.provider.kopia-repository-server": "Serwer repozytorium Kopia", + "feedback.provider.local-directory-or-nas": "Katalog lokalny lub NAS", + "feedback.provider.rclone-remote": "Pilot zdalnego sterowania", + "feedback.provider.s3-or-compatible-storage": "Amazon S3 lub kompatybilna pamięć masowa", + "feedback.provider.sftp-server": "Serwer SFTP", + "feedback.provider.use-repository-token": "Użyj tokena repozytorium", + "feedback.provider.webdav-server": "Serwer WebDAV", + "feedback.repository.configuration": "Konfiguracja pamięci", + "feedback.repository.kopia-server-parameters": "Parametry serwera Kopia", + "feedback.repository.name-default": "Moje repozytorium", + "feedback.repository.provider-selection": "Wybierz Typ przechowywania", + "feedback.repository.provider-selection-hint": "Aby połączyć się z repozytorium lub je utworzyć, wybierz preferowany typ magazynu:", + "feedback.repository.repository-token-enter": "Wprowadź token repozytorium", + "feedback.tab.policies": "Konfiguracje", + "feedback.tab.preferences": "Ustawienia", + "feedback.tab.repository": "Repozytorium", + "feedback.tab.repository-is-not-connected": "Repozytorium nie jest połączone", + "feedback.tab.snapshots": "Kopie", + "feedback.tab.tasks": "Zadania", "feedback.ui.appearance": "Wielkość tekstu", "feedback.ui.appearance-help": "Wybierz rodzaj czcionki", "feedback.ui.appearance-hint": "Rozmiar czcionki", + "feedback.ui.byte-representation-description": "Formatowanie rozmiarów plików", + "feedback.ui.byte-representation-help": "Określa w jaki sposób będą wyświetlane rozmiary plików", + "feedback.ui.byte-representation-select": "Wybierz sposób formatowania rozmiarów plików", + "feedback.ui.pagesize-description": "Rozmiar strony wyników", + "feedback.ui.pagesize-help": "Określa liczbę elementów na stronie wyników", + "feedback.ui.pagesize-hint": "Rozmiar strony", + "feedback.ui.theme-description": "Kolorystyka", + "feedback.ui.theme-help": "Aktywny schemat kolorów", "feedback.ui.theme-select": "Wybierz schemat kolorów", - "log.event.hide": "Schowaj log", - "log.event.show": "Pokaż log", - "pin.event.add": "Dodaj Pin", - "pin.event.cancel": "Anulować", - "pin.event.remove": "Usuń pinezkę", - "pin.event.snapshot.pin": "Przypnij migawkę", - "pin.event.update": "Zaktualizuj Pin", - "pin.feedback.name": "Nazwa pinu", - "pin.feedback.standard-text": "nie kasuj", + "feedback.validation.invalid-times-of-day": "Nieprawidłowe pory dnia", + "feedback.validation.optional.valid-number-or-empty": "Musi to być prawidłowy numer lub pusty", + "feedback.validation.passwords-dont-match": "Hasła nie pasują", + "feedback.validation.required.directory": "Pole wymagane", + "feedback.validation.required.field": "Pole wymagane", + "feedback.validation.required.valid-number-or-empty": "Musi to być prawidłowy numer lub pusty", "policies.feedback.find.count_one": "Znaleziono {{count}} zasad spełniających kryteria", "policies.feedback.find.count_other": "Znaleziono {{count}} zasad spełniających kryteria", "policies.feedback.find.none": "Nie znaleziono zasad.", @@ -29,11 +79,6 @@ "policies.feedback.loading": "Ładowanie ...", "policies.feedback.path.absolute": "Zasady można definiować tylko dla ścieżek bezwzględnych.", "policies.feedback.policy.find": "Wejdź do katalogu, aby znaleźć lub ustawić politykę", - "policies.header.actions": "działania", - "policies.header.defined": "Zdefiniowane", - "policies.header.host": "Gospodarz", - "policies.header.path": "Ścieżka", - "policies.header.username": "Nazwa użytkownika", "policies.kind.all": "Wszystkie zasady", "policies.kind.applicable": "Obowiązujące zasady", "policies.kind.global": "Polityka globalna", @@ -126,11 +171,6 @@ "snapshot.history.header.selected": "Wybrany", "snapshot.history.header.size": "Rozmiar", "snapshot.history.header.time.start": "Czas rozpoczęcia", - "tab.policies": "Konfiguracje", - "tab.preferences": "Ustawienia", - "tab.repository": "Repozytorium", - "tab.snapshots": "Kopie", - "tab.tasks": "Zadania", "task.all": "wszystkie", "task.event.stop": "Zatrzymaj", "task.failed": "nieudane", @@ -152,19 +192,20 @@ "task.status.running.for": "Zadanie w toku od", "task.status.started": "Rozpoczęte", "task.status.succeed.after": "Zadanie zakończone po", - "ui.feedback.byte-representation-description": "Formatowanie rozmiarów plików", - "ui.feedback.byte-representation-help": "Określa w jaki sposób będą wyświetlane rozmiary plików", - "ui.feedback.byte-representation-select": "Wybierz sposób formatowania rozmiarów plików", - "ui.feedback.pagesize-description": "Rozmiar strony wyników", - "ui.feedback.pagesize-help": "Określa liczbę elementów na stronie wyników", - "ui.feedback.pagesize-hint": "Rozmiar strony", - "ui.feedback.theme-description": "Kolorystyka", - "ui.feedback.theme-help": "Aktywny schemat kolorów", - "ui.value.appearance-large": "duża", - "ui.value.appearance-medium": "średnia", - "ui.value.appearance-small": "mała", - "ui.value.theme-dark": "ciemna", - "ui.value.theme-light": "jasna", - "ui.value.theme-ocean": "oceaniczna", - "ui.value.theme-pastel": "pastelowa" + "value.log.details-0-no-output": "0 - brak wyjścia", + "value.log.details-1-minimal-details": "1 - minimalne szczegóły", + "value.log.details-10-maximum-details": "10 - maksimum szczegółów", + "value.log.details-5-normal-details": "5 - normalne szczegóły", + "value.log.details-inherit-from-parent": "(dziedzicz po rodzicu)", + "value.ui.appearance-large": "duża", + "value.ui.appearance-medium": "średnia", + "value.ui.appearance-small": "mała", + "value.ui.byte-representation-base10": "Base-10 (KB, MB, GB, TB)", + "value.ui.byte-representation-base2": "Base-2 (KiB, MiB, GiB, TiB)", + "value.ui.theme-dark": "ciemna", + "value.ui.theme-light": "jasna", + "value.ui.theme-ocean": "oceaniczna", + "value.ui.theme-pastel": "pastelowa", + "value.validation.optional-no": "NIE", + "value.validation.optional-yes": "Tak" } diff --git a/public/locales/ru/translation.json b/public/locales/ru/translation.json index b147e61..4a100c8 100644 --- a/public/locales/ru/translation.json +++ b/public/locales/ru/translation.json @@ -1,27 +1,77 @@ { + "common.back": "Назад", "common.cancel": "Отмена", "common.delete": "Удалить", - "common.delete.confirm": "Подтвердите удаление", + "common.delete-confirm": "Подтвердите удаление", "common.loading": "Загрузка...", + "common.next": "Следующий", "common.return": "Возврат", - "description.event.cancel": "Отмена", - "description.event.new": "Введите новое описание", - "description.event.remove": "Удалить описание", - "description.event.update": "Описание обновления", - "description.feedback.description": "Описание снимка", + "event.description.cancel": "Отмена", + "event.description.new": "Введите новое описание", + "event.description.remove": "Удалить описание", + "event.description.update": "Описание обновления", + "event.log.hide": "Скрыть лог", + "event.log.show": "Показать лог", + "event.pin.add": "Добавить пин", + "event.pin.cancel": "Отмена", + "event.pin.remove": "Удалить булавку", + "event.pin.snapshot-pin": "Снимок закрепления", + "event.pin.update": "Обновить пин-код", + "event.repository.advanced-options-hide": "Скрыть дополнительные параметры", + "event.repository.advanced-options.show": "Показать дополнительные параметры", + "feedback.description.modal-title": "Описание снимка", + "feedback.header.actions": "Действия", + "feedback.header.defined": "Определенный", + "feedback.header.directories": "Каталоги", + "feedback.header.files": "Файлы", + "feedback.header.host": "Хозяин", + "feedback.header.modification-last": "Последнее изменение", + "feedback.header.name": "Имя", + "feedback.header.path": "Путь", + "feedback.header.size": "Размер", + "feedback.header.username": "Имя пользователя", + "feedback.pin.name": "Название контакта", + "feedback.pin.standard-text": "не удалять", + "feedback.provider.azure-blob-storage": "Хранилище BLOB-объектов Azure", + "feedback.provider.backblaze-b2": "Бэкблэйз Б2", + "feedback.provider.google-cloud-storage": "Облачное хранилище Google", + "feedback.provider.kopia-repository-server": "Сервер репозитория Копиа", + "feedback.provider.local-directory-or-nas": "Локальный каталог или NAS", + "feedback.provider.rclone-remote": "Rclone удаленный", + "feedback.provider.s3-or-compatible-storage": "Amazon S3 или совместимое хранилище", + "feedback.provider.sftp-server": "SFTP-сервер", + "feedback.provider.use-repository-token": "Использовать токен репозитория", + "feedback.provider.webdav-server": "ВебДАВ-сервер", + "feedback.repository.configuration": "Конфигурация хранилища", + "feedback.repository.kopia-server-parameters": "Параметры сервера Копия", + "feedback.repository.name-default": "Мой репозиторий", + "feedback.repository.provider-selection": "Выберите тип хранилища", + "feedback.repository.provider-selection-hint": "Чтобы подключиться к репозиторию или создать его, выберите предпочитаемый тип хранилища:", + "feedback.repository.repository-token-enter": "Введите токен репозитория", + "feedback.tab.policies": "Политики", + "feedback.tab.preferences": "Настройки", + "feedback.tab.repository": "Репозиторий", + "feedback.tab.repository-is-not-connected": "Репозиторий не подключен", + "feedback.tab.snapshots": "Снимки", + "feedback.tab.tasks": "Задачи", "feedback.ui.appearance": "Внешний вид", "feedback.ui.appearance-help": "Определяет внешний вид пользовательского интерфейса", "feedback.ui.appearance-hint": "Выберите размер шрифта", + "feedback.ui.byte-representation-description": "Выберите представление байта", + "feedback.ui.byte-representation-help": "Определяет представление байтов", + "feedback.ui.byte-representation-select": "Выберите представление байта", + "feedback.ui.pagesize-description": "Размер страницы", + "feedback.ui.pagesize-help": "Определяет размер страницы в таблицах", + "feedback.ui.pagesize-hint": "Размер страницы", + "feedback.ui.theme-description": "Тема", + "feedback.ui.theme-help": "Текущая активная тема", "feedback.ui.theme-select": "Выберите тему", - "log.event.hide": "Скрыть лог", - "log.event.show": "Показать лог", - "pin.event.add": "Добавить пин", - "pin.event.cancel": "Отмена", - "pin.event.remove": "Удалить булавку", - "pin.event.snapshot.pin": "Снимок закрепления", - "pin.event.update": "Обновить пин-код", - "pin.feedback.name": "Название контакта", - "pin.feedback.standard-text": "не удалять", + "feedback.validation.invalid-times-of-day": "Неверное время суток", + "feedback.validation.optional.valid-number-or-empty": "Должно быть действительным числом или пустым.", + "feedback.validation.passwords-dont-match": "Пароли не совпадают", + "feedback.validation.required.directory": "Обязательное поле", + "feedback.validation.required.field": "Обязательное поле", + "feedback.validation.required.valid-number-or-empty": "Должно быть действительным числом или пустым.", "policies.feedback.find.count_one": "Найдено {{count}} политики, соответствующей критериям.", "policies.feedback.find.count_other": "Найдено {{count}} политик, соответствующих критериям.", "policies.feedback.find.none": "Политики не найдены.", @@ -29,11 +79,6 @@ "policies.feedback.loading": "Загрузка...", "policies.feedback.path.absolute": "Политики могут быть определены только для абсолютных путей.", "policies.feedback.policy.find": "Введите каталог, чтобы найти или установить политику", - "policies.header.actions": "Действия", - "policies.header.defined": "Определенный", - "policies.header.host": "Хозяин", - "policies.header.path": "Путь", - "policies.header.username": "Имя пользователя", "policies.kind.all": "Все политики", "policies.kind.applicable": "Применимые политики", "policies.kind.global": "Глобальная политика", @@ -126,11 +171,6 @@ "snapshot.history.header.selected": "Выбрано", "snapshot.history.header.size": "Размер", "snapshot.history.header.time.start": "Время начала", - "tab.policies": "Политики", - "tab.preferences": "Настройки", - "tab.repository": "Репозиторий", - "tab.snapshots": "Снимки", - "tab.tasks": "Задачи", "task.all": "Все", "task.event.stop": "Остановить", "task.failed": "Не удалось", @@ -152,19 +192,20 @@ "task.status.running.for": "Задача выполняется в течение", "task.status.started": "Начало", "task.status.succeed.after": "Задача успешно завершена после", - "ui.feedback.byte-representation-description": "Выберите представление байта", - "ui.feedback.byte-representation-help": "Определяет представление байтов", - "ui.feedback.byte-representation-select": "Выберите представление байта", - "ui.feedback.pagesize-description": "Размер страницы", - "ui.feedback.pagesize-help": "Определяет размер страницы в таблицах", - "ui.feedback.pagesize-hint": "Размер страницы", - "ui.feedback.theme-description": "Тема", - "ui.feedback.theme-help": "Текущая активная тема", - "ui.value.appearance-large": "большой", - "ui.value.appearance-medium": "средний", - "ui.value.appearance-small": "маленький", - "ui.value.theme-dark": "темная", - "ui.value.theme-light": "светлая", - "ui.value.theme-ocean": "морская", - "ui.value.theme-pastel": "пастельная" + "value.log.details-0-no-output": "0 - нет вывода", + "value.log.details-1-minimal-details": "1 - минимум деталей", + "value.log.details-10-maximum-details": "10 - максимум деталей", + "value.log.details-5-normal-details": "5 - нормальные детали", + "value.log.details-inherit-from-parent": "(наследовать от родителя)", + "value.ui.appearance-large": "большой", + "value.ui.appearance-medium": "средний", + "value.ui.appearance-small": "маленький", + "value.ui.byte-representation-base10": "Base-10 (КБ, МБ, ГБ, ТБ)", + "value.ui.byte-representation-base2": "Base-2 (КиБ, МиБ, ГиБ, ТиБ)", + "value.ui.theme-dark": "темная", + "value.ui.theme-light": "светлая", + "value.ui.theme-ocean": "морская", + "value.ui.theme-pastel": "пастельная", + "value.validation.optional-no": "нет", + "value.validation.optional-yes": "да" } diff --git a/src/App.jsx b/src/App.jsx index cd159c1..01f6cfe 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -110,19 +110,19 @@ export default class App extends Component {