feat: add contacts phase 2, advanced search, vacation responder, Docker & TOTP 2FA
- Contact groups/lists, vCard import/export (RFC 6350), bulk operations - Advanced search with JMAP filter panel, search chips, cross-mailbox queries - Vacation responder with JMAP VacationResponse, settings tab, sidebar indicator - TOTP two-factor authentication support - Docker multi-stage build with standalone output and docker-compose - CSP Report-Only headers and security headers via proxy middleware - Virtual scrolling for large email lists - Structured server-side logger (text/JSON, configurable level) - 450+ tests (contacts, vCard, threads, headers, identity, components) - Playwright E2E framework setup - Updated README and ROADMAP with all new features
This commit is contained in:
+132
-4
@@ -11,14 +11,19 @@
|
||||
"error": {
|
||||
"invalid_credentials": "Ungültige E-Mail-Adresse oder Passwort",
|
||||
"connection_failed": "Verbindung zum Server fehlgeschlagen",
|
||||
"generic": "Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut."
|
||||
"generic": "Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut.",
|
||||
"totp_invalid": "Ungültiger Authentifizierungscode. Überprüfen Sie Ihre Authenticator-App."
|
||||
},
|
||||
"config_error": {
|
||||
"title": "Konfigurationsfehler",
|
||||
"fetch_failed": "Die Anwendungskonfiguration kann nicht geladen werden. Bitte versuchen Sie es später erneut.",
|
||||
"server_not_configured": "Der E-Mail-Server wurde nicht konfiguriert. Bitte kontaktieren Sie Ihren Administrator."
|
||||
},
|
||||
"remove_from_history": "Aus Verlauf entfernen"
|
||||
"remove_from_history": "Aus Verlauf entfernen",
|
||||
"totp_toggle": "Ich habe Zwei-Faktor-Authentifizierung",
|
||||
"totp_label": "Authentifizierungscode",
|
||||
"totp_placeholder": "000000",
|
||||
"totp_hide": "Zwei-Faktor-Authentifizierung ausblenden"
|
||||
},
|
||||
"sidebar": {
|
||||
"close": "Schließen",
|
||||
@@ -59,7 +64,8 @@
|
||||
"compose": "Verfassen",
|
||||
"go_back": "Zurück"
|
||||
},
|
||||
"clear_search": "Suche löschen"
|
||||
"clear_search": "Suche löschen",
|
||||
"vacation_active": "Abwesenheitsnotiz ist aktiv"
|
||||
},
|
||||
"email_list": {
|
||||
"no_emails": "Keine E-Mails",
|
||||
@@ -313,7 +319,9 @@
|
||||
"identity_update_failed": "Identität aktualisieren fehlgeschlagen: {{error}}",
|
||||
"identity_delete_failed": "Identität löschen fehlgeschlagen: {{error}}",
|
||||
"identity_unauthorized": "Sie sind nicht autorisiert, von dieser E-Mail-Adresse zu senden",
|
||||
"identity_not_found": "Identität nicht gefunden"
|
||||
"identity_not_found": "Identität nicht gefunden",
|
||||
"vacation_saved": "Abwesenheitsnotiz-Einstellungen gespeichert",
|
||||
"vacation_save_failed": "Fehler beim Speichern der Abwesenheitsnotiz-Einstellungen"
|
||||
},
|
||||
"date": {
|
||||
"today": "Heute",
|
||||
@@ -366,6 +374,7 @@
|
||||
"privacy": "Datenschutz & Sicherheit",
|
||||
"account": "Konto",
|
||||
"identities": "Identitäten",
|
||||
"vacation": "Abwesenheitsnotiz",
|
||||
"advanced": "Erweitert"
|
||||
},
|
||||
"appearance": {
|
||||
@@ -568,6 +577,49 @@
|
||||
"learn_more": "Mehr erfahren"
|
||||
}
|
||||
},
|
||||
"vacation": {
|
||||
"title": "Abwesenheitsnotiz",
|
||||
"description": "Automatisch auf eingehende E-Mails antworten, während Sie abwesend sind",
|
||||
"loading": "Abwesenheitseinstellungen werden geladen...",
|
||||
"not_supported": "Ihr Mailserver unterstützt keine Abwesenheitsantworten.",
|
||||
"fetch_error": "Fehler beim Laden der Abwesenheitseinstellungen. Bitte versuchen Sie es erneut.",
|
||||
"status": {
|
||||
"label": "Abwesenheitsnotiz",
|
||||
"description": "Senden Sie eine automatische Antwort an Personen, die Ihnen eine E-Mail senden",
|
||||
"active": "Aktiv",
|
||||
"inactive": "Inaktiv"
|
||||
},
|
||||
"date_range": {
|
||||
"title": "Zeitraum",
|
||||
"description": "Optional die automatische Antwort auf einen bestimmten Zeitraum beschränken",
|
||||
"start": "Startdatum",
|
||||
"start_description": "Leer lassen für kein Startlimit",
|
||||
"end": "Enddatum",
|
||||
"end_description": "Leer lassen für kein Endlimit"
|
||||
},
|
||||
"message": {
|
||||
"title": "Automatische Antwortnachricht",
|
||||
"description": "Die Nachricht, die als Antwort gesendet wird",
|
||||
"subject_label": "Betreff",
|
||||
"subject_description": "Betreffzeile der automatischen Antwort",
|
||||
"subject_placeholder": "Abwesenheitsnotiz",
|
||||
"body_label": "Nachrichtentext",
|
||||
"body_description": "Nur-Text-Nachrichteninhalt",
|
||||
"body_placeholder": "Vielen Dank für Ihre E-Mail. Ich bin derzeit nicht im Büro und werde nach meiner Rückkehr antworten."
|
||||
},
|
||||
"preview": {
|
||||
"title": "Vorschau",
|
||||
"show": "Vorschau anzeigen",
|
||||
"hide": "Vorschau ausblenden"
|
||||
},
|
||||
"save": "Änderungen speichern",
|
||||
"saving": "Speichern...",
|
||||
"warnings": {
|
||||
"end_before_start": "Das Enddatum muss nach dem Startdatum liegen",
|
||||
"start_in_past": "Das Startdatum liegt in der Vergangenheit",
|
||||
"empty_body": "Der Nachrichtentext ist leer — Empfänger erhalten eine leere Antwort"
|
||||
}
|
||||
},
|
||||
"advanced": {
|
||||
"title": "Erweitert",
|
||||
"description": "Erweiterte Optionen und Entwicklereinstellungen",
|
||||
@@ -753,6 +805,10 @@
|
||||
"delete_confirm": "Möchten Sie diesen Kontakt wirklich löschen?",
|
||||
"local_mode": "Kontakte werden lokal gespeichert (Server unterstützt kein JMAP Contacts)",
|
||||
"back_to_mail": "Zurück zur E-Mail",
|
||||
"tabs": {
|
||||
"all": "Alle",
|
||||
"groups": "Gruppen"
|
||||
},
|
||||
"detail": {
|
||||
"emails": "E-Mail-Adressen",
|
||||
"phones": "Telefonnummern",
|
||||
@@ -788,6 +844,55 @@
|
||||
"email_invalid": "Bitte geben Sie eine gültige E-Mail-Adresse ein",
|
||||
"save_failed": "Kontakt konnte nicht gespeichert werden"
|
||||
},
|
||||
"groups": {
|
||||
"create": "Neue Gruppe",
|
||||
"edit": "Gruppe bearbeiten",
|
||||
"empty": "Keine Gruppen",
|
||||
"delete_confirm": "Möchten Sie diese Gruppe wirklich löschen?",
|
||||
"name_label": "Gruppenname",
|
||||
"name_placeholder": "z.B. Team, Familie",
|
||||
"name_required": "Gruppenname ist erforderlich",
|
||||
"save_failed": "Gruppe konnte nicht gespeichert werden",
|
||||
"members_label": "Mitglieder",
|
||||
"search_members": "Kontakte zum Hinzufügen suchen...",
|
||||
"no_members": "Keine Mitglieder in dieser Gruppe",
|
||||
"member_count": "{count, plural, =0 {Keine Mitglieder} one {1 Mitglied} other {# Mitglieder}}"
|
||||
},
|
||||
"import": {
|
||||
"title": "Kontakte importieren",
|
||||
"drop_hint": "Klicken Sie, um eine vCard-Datei auszuwählen",
|
||||
"file_types": ".vcf- oder .vcard-Dateien",
|
||||
"no_contacts": "Keine Kontakte in der Datei gefunden",
|
||||
"parse_error": "vCard-Datei konnte nicht gelesen werden",
|
||||
"found": "{count, plural, one {1 Kontakt gefunden} other {# Kontakte gefunden}}",
|
||||
"duplicate": "Duplikat",
|
||||
"select_all": "Alle auswählen",
|
||||
"deselect_all": "Alle abwählen",
|
||||
"selected": "{count, plural, one {1 ausgewählt} other {# ausgewählt}}",
|
||||
"import_button": "Importieren",
|
||||
"importing": "Wird importiert...",
|
||||
"success": "{count, plural, one {1 Kontakt importiert} other {# Kontakte importiert}}",
|
||||
"failed": "Import fehlgeschlagen",
|
||||
"close": "Schließen",
|
||||
"file_too_large": "Datei ist zu groß (max. 5 MB)"
|
||||
},
|
||||
"export": {
|
||||
"title": "Kontakte exportieren",
|
||||
"success": "{count, plural, one {1 Kontakt exportiert} other {# Kontakte exportiert}}"
|
||||
},
|
||||
"bulk": {
|
||||
"selected": "{count, plural, one {1 ausgewählt} other {# ausgewählt}}",
|
||||
"select_all": "Alle auswählen",
|
||||
"delete": "Löschen",
|
||||
"delete_confirm": "{count, plural, one {1 Kontakt} other {# Kontakte}} löschen?",
|
||||
"deleted": "{count, plural, one {1 Kontakt gelöscht} other {# Kontakte gelöscht}}",
|
||||
"add_to_group": "Zur Gruppe hinzufügen",
|
||||
"choose_group": "Gruppe wählen",
|
||||
"adding_contacts": "{count, plural, one {1 Kontakt} other {# Kontakte}} hinzufügen",
|
||||
"added_to_group": "Kontakte zur Gruppe hinzugefügt",
|
||||
"export": "Exportieren",
|
||||
"clear": "Auswahl aufheben"
|
||||
},
|
||||
"toast": {
|
||||
"created": "Kontakt erstellt",
|
||||
"updated": "Kontakt aktualisiert",
|
||||
@@ -796,5 +901,28 @@
|
||||
"error_update": "Kontakt konnte nicht aktualisiert werden",
|
||||
"error_delete": "Kontakt konnte nicht gelöscht werden"
|
||||
}
|
||||
},
|
||||
"advanced_search": {
|
||||
"title": "Erweiterte Suche",
|
||||
"from": "Von",
|
||||
"from_placeholder": "E-Mail oder Name des Absenders",
|
||||
"to": "An",
|
||||
"to_placeholder": "E-Mail oder Name des Empfängers",
|
||||
"subject": "Betreff",
|
||||
"subject_placeholder": "Betreff enthält...",
|
||||
"body": "Nachricht",
|
||||
"has_attachment": "Anhänge",
|
||||
"date_after": "Nach dem",
|
||||
"date_before": "Vor dem",
|
||||
"starred": "Markiert",
|
||||
"unread": "Ungelesen",
|
||||
"read": "Gelesen",
|
||||
"yes": "Ja",
|
||||
"no": "Nein",
|
||||
"clear": "Löschen",
|
||||
"clear_all": "Alle löschen",
|
||||
"filters_active": "{count} Filter",
|
||||
"filters_active_plural": "{count} Filter",
|
||||
"toggle_filters": "Filter"
|
||||
}
|
||||
}
|
||||
|
||||
+133
-5
@@ -11,14 +11,19 @@
|
||||
"error": {
|
||||
"invalid_credentials": "Invalid email or password",
|
||||
"connection_failed": "Failed to connect to the server",
|
||||
"generic": "An error occurred. Please try again."
|
||||
"generic": "An error occurred. Please try again.",
|
||||
"totp_invalid": "Invalid authentication code. Please check your authenticator app."
|
||||
},
|
||||
"config_error": {
|
||||
"title": "Configuration Error",
|
||||
"fetch_failed": "Unable to load application configuration. Please try again later.",
|
||||
"server_not_configured": "The mail server has not been configured. Please contact your administrator."
|
||||
},
|
||||
"remove_from_history": "Remove from history"
|
||||
"remove_from_history": "Remove from history",
|
||||
"totp_toggle": "I have two-factor authentication",
|
||||
"totp_label": "Authentication code",
|
||||
"totp_placeholder": "000000",
|
||||
"totp_hide": "Hide two-factor authentication"
|
||||
},
|
||||
"sidebar": {
|
||||
"close": "Close",
|
||||
@@ -59,7 +64,8 @@
|
||||
"compose": "Compose",
|
||||
"go_back": "Go back"
|
||||
},
|
||||
"clear_search": "Clear search"
|
||||
"clear_search": "Clear search",
|
||||
"vacation_active": "Vacation responder is active"
|
||||
},
|
||||
"email_list": {
|
||||
"no_emails": "No emails",
|
||||
@@ -313,7 +319,9 @@
|
||||
"identity_update_failed": "Failed to update identity: {{error}}",
|
||||
"identity_delete_failed": "Failed to delete identity: {{error}}",
|
||||
"identity_unauthorized": "You are not authorized to send from this email address",
|
||||
"identity_not_found": "Identity not found"
|
||||
"identity_not_found": "Identity not found",
|
||||
"vacation_saved": "Vacation responder settings saved",
|
||||
"vacation_save_failed": "Failed to save vacation responder settings"
|
||||
},
|
||||
"date": {
|
||||
"today": "Today",
|
||||
@@ -366,6 +374,7 @@
|
||||
"privacy": "Privacy & Security",
|
||||
"account": "Account",
|
||||
"identities": "Identities",
|
||||
"vacation": "Vacation Responder",
|
||||
"advanced": "Advanced"
|
||||
},
|
||||
"appearance": {
|
||||
@@ -568,6 +577,49 @@
|
||||
"learn_more": "Learn More"
|
||||
}
|
||||
},
|
||||
"vacation": {
|
||||
"title": "Vacation Responder",
|
||||
"description": "Automatically reply to incoming emails while you're away",
|
||||
"loading": "Loading vacation settings...",
|
||||
"not_supported": "Your mail server does not support vacation responses.",
|
||||
"fetch_error": "Failed to load vacation settings. Please try again.",
|
||||
"status": {
|
||||
"label": "Vacation Responder",
|
||||
"description": "Send an automatic reply to people who email you",
|
||||
"active": "Active",
|
||||
"inactive": "Inactive"
|
||||
},
|
||||
"date_range": {
|
||||
"title": "Date Range",
|
||||
"description": "Optionally limit the auto-reply to a specific period",
|
||||
"start": "Start Date",
|
||||
"start_description": "Leave empty for no start limit",
|
||||
"end": "End Date",
|
||||
"end_description": "Leave empty for no end limit"
|
||||
},
|
||||
"message": {
|
||||
"title": "Auto-Reply Message",
|
||||
"description": "The message that will be sent as a reply",
|
||||
"subject_label": "Subject",
|
||||
"subject_description": "Subject line of the auto-reply",
|
||||
"subject_placeholder": "Out of Office",
|
||||
"body_label": "Message Body",
|
||||
"body_description": "Plain text message content",
|
||||
"body_placeholder": "Thank you for your email. I am currently out of the office and will respond when I return."
|
||||
},
|
||||
"preview": {
|
||||
"title": "Preview",
|
||||
"show": "Show preview",
|
||||
"hide": "Hide preview"
|
||||
},
|
||||
"save": "Save Changes",
|
||||
"saving": "Saving...",
|
||||
"warnings": {
|
||||
"end_before_start": "End date must be after start date",
|
||||
"start_in_past": "Start date is in the past",
|
||||
"empty_body": "Message body is empty — recipients will receive a blank reply"
|
||||
}
|
||||
},
|
||||
"advanced": {
|
||||
"title": "Advanced",
|
||||
"description": "Advanced options and developer settings",
|
||||
@@ -753,6 +805,10 @@
|
||||
"delete_confirm": "Are you sure you want to delete this contact?",
|
||||
"local_mode": "Contacts are stored locally (server does not support JMAP Contacts)",
|
||||
"back_to_mail": "Back to mail",
|
||||
"tabs": {
|
||||
"all": "All",
|
||||
"groups": "Groups"
|
||||
},
|
||||
"detail": {
|
||||
"emails": "Email Addresses",
|
||||
"phones": "Phone Numbers",
|
||||
@@ -788,6 +844,55 @@
|
||||
"email_invalid": "Please enter a valid email address",
|
||||
"save_failed": "Failed to save contact"
|
||||
},
|
||||
"groups": {
|
||||
"create": "New Group",
|
||||
"edit": "Edit Group",
|
||||
"empty": "No groups yet",
|
||||
"delete_confirm": "Are you sure you want to delete this group?",
|
||||
"name_label": "Group Name",
|
||||
"name_placeholder": "e.g., Team, Family",
|
||||
"name_required": "Group name is required",
|
||||
"save_failed": "Failed to save group",
|
||||
"members_label": "Members",
|
||||
"search_members": "Search contacts to add...",
|
||||
"no_members": "No members in this group",
|
||||
"member_count": "{count, plural, =0 {No members} one {1 member} other {# members}}"
|
||||
},
|
||||
"import": {
|
||||
"title": "Import Contacts",
|
||||
"drop_hint": "Click to select a vCard file",
|
||||
"file_types": ".vcf or .vcard files",
|
||||
"no_contacts": "No contacts found in file",
|
||||
"parse_error": "Failed to parse vCard file",
|
||||
"found": "{count, plural, one {1 contact found} other {# contacts found}}",
|
||||
"duplicate": "Duplicate",
|
||||
"select_all": "Select all",
|
||||
"deselect_all": "Deselect all",
|
||||
"selected": "{count, plural, one {1 selected} other {# selected}}",
|
||||
"import_button": "Import",
|
||||
"importing": "Importing...",
|
||||
"success": "{count, plural, one {1 contact imported} other {# contacts imported}}",
|
||||
"failed": "Import failed",
|
||||
"close": "Close",
|
||||
"file_too_large": "File is too large (max 5 MB)"
|
||||
},
|
||||
"export": {
|
||||
"title": "Export Contacts",
|
||||
"success": "{count, plural, one {1 contact exported} other {# contacts exported}}"
|
||||
},
|
||||
"bulk": {
|
||||
"selected": "{count, plural, one {1 selected} other {# selected}}",
|
||||
"select_all": "Select all",
|
||||
"delete": "Delete",
|
||||
"delete_confirm": "Delete {count, plural, one {1 contact} other {# contacts}}?",
|
||||
"deleted": "{count, plural, one {1 contact deleted} other {# contacts deleted}}",
|
||||
"add_to_group": "Add to group",
|
||||
"choose_group": "Choose a group",
|
||||
"adding_contacts": "Adding {count, plural, one {1 contact} other {# contacts}}",
|
||||
"added_to_group": "Contacts added to group",
|
||||
"export": "Export",
|
||||
"clear": "Clear selection"
|
||||
},
|
||||
"toast": {
|
||||
"created": "Contact created",
|
||||
"updated": "Contact updated",
|
||||
@@ -796,5 +901,28 @@
|
||||
"error_update": "Failed to update contact",
|
||||
"error_delete": "Failed to delete contact"
|
||||
}
|
||||
},
|
||||
"advanced_search": {
|
||||
"title": "Advanced Search",
|
||||
"from": "From",
|
||||
"from_placeholder": "Sender email or name",
|
||||
"to": "To",
|
||||
"to_placeholder": "Recipient email or name",
|
||||
"subject": "Subject",
|
||||
"subject_placeholder": "Subject contains...",
|
||||
"body": "Body",
|
||||
"has_attachment": "Attachments",
|
||||
"date_after": "After",
|
||||
"date_before": "Before",
|
||||
"starred": "Starred",
|
||||
"unread": "Unread",
|
||||
"read": "Read",
|
||||
"yes": "Yes",
|
||||
"no": "No",
|
||||
"clear": "Clear",
|
||||
"clear_all": "Clear all",
|
||||
"filters_active": "{count} filter",
|
||||
"filters_active_plural": "{count} filters",
|
||||
"toggle_filters": "Filters"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+132
-4
@@ -11,14 +11,19 @@
|
||||
"error": {
|
||||
"invalid_credentials": "Correo electrónico o contraseña inválidos",
|
||||
"connection_failed": "No se pudo conectar con el servidor",
|
||||
"generic": "Ocurrió un error. Por favor, inténtelo de nuevo."
|
||||
"generic": "Ocurrió un error. Por favor, inténtelo de nuevo.",
|
||||
"totp_invalid": "Código de autenticación inválido. Verifica tu aplicación de autenticación."
|
||||
},
|
||||
"config_error": {
|
||||
"title": "Error de Configuración",
|
||||
"fetch_failed": "No se pudo cargar la configuración de la aplicación. Por favor, inténtelo más tarde.",
|
||||
"server_not_configured": "El servidor de correo no ha sido configurado. Por favor, contacte a su administrador."
|
||||
},
|
||||
"remove_from_history": "Eliminar del historial"
|
||||
"remove_from_history": "Eliminar del historial",
|
||||
"totp_toggle": "Tengo autenticación de dos factores",
|
||||
"totp_label": "Código de autenticación",
|
||||
"totp_placeholder": "000000",
|
||||
"totp_hide": "Ocultar autenticación de dos factores"
|
||||
},
|
||||
"sidebar": {
|
||||
"close": "Cerrar",
|
||||
@@ -59,7 +64,8 @@
|
||||
"compose": "Redactar",
|
||||
"go_back": "Volver"
|
||||
},
|
||||
"clear_search": "Limpiar búsqueda"
|
||||
"clear_search": "Limpiar búsqueda",
|
||||
"vacation_active": "Respuesta automática activa"
|
||||
},
|
||||
"email_list": {
|
||||
"no_emails": "Sin correos",
|
||||
@@ -313,7 +319,9 @@
|
||||
"identity_update_failed": "Error al actualizar identidad: {{error}}",
|
||||
"identity_delete_failed": "Error al eliminar identidad: {{error}}",
|
||||
"identity_unauthorized": "No está autorizado para enviar desde esta dirección de correo",
|
||||
"identity_not_found": "Identidad no encontrada"
|
||||
"identity_not_found": "Identidad no encontrada",
|
||||
"vacation_saved": "Configuración de respuesta automática guardada",
|
||||
"vacation_save_failed": "Error al guardar la configuración de respuesta automática"
|
||||
},
|
||||
"date": {
|
||||
"today": "Hoy",
|
||||
@@ -366,6 +374,7 @@
|
||||
"privacy": "Privacidad y Seguridad",
|
||||
"account": "Cuenta",
|
||||
"identities": "Identidades",
|
||||
"vacation": "Respuesta automática",
|
||||
"advanced": "Avanzado"
|
||||
},
|
||||
"appearance": {
|
||||
@@ -568,6 +577,49 @@
|
||||
"learn_more": "Más Información"
|
||||
}
|
||||
},
|
||||
"vacation": {
|
||||
"title": "Respuesta automática",
|
||||
"description": "Responder automáticamente a los correos entrantes mientras está ausente",
|
||||
"loading": "Cargando configuración de respuesta automática...",
|
||||
"not_supported": "Su servidor de correo no admite respuestas automáticas de ausencia.",
|
||||
"fetch_error": "Error al cargar la configuración de respuesta automática. Inténtelo de nuevo.",
|
||||
"status": {
|
||||
"label": "Respuesta automática",
|
||||
"description": "Enviar una respuesta automática a quienes le envíen un correo",
|
||||
"active": "Activo",
|
||||
"inactive": "Inactivo"
|
||||
},
|
||||
"date_range": {
|
||||
"title": "Período",
|
||||
"description": "Opcionalmente limitar la respuesta automática a un período específico",
|
||||
"start": "Fecha de inicio",
|
||||
"start_description": "Dejar vacío para sin límite de inicio",
|
||||
"end": "Fecha de fin",
|
||||
"end_description": "Dejar vacío para sin límite de fin"
|
||||
},
|
||||
"message": {
|
||||
"title": "Mensaje de respuesta automática",
|
||||
"description": "El mensaje que se enviará como respuesta",
|
||||
"subject_label": "Asunto",
|
||||
"subject_description": "Línea de asunto de la respuesta automática",
|
||||
"subject_placeholder": "Fuera de la oficina",
|
||||
"body_label": "Cuerpo del mensaje",
|
||||
"body_description": "Contenido del mensaje en texto plano",
|
||||
"body_placeholder": "Gracias por su correo. Actualmente estoy fuera de la oficina y responderé cuando regrese."
|
||||
},
|
||||
"preview": {
|
||||
"title": "Vista previa",
|
||||
"show": "Mostrar vista previa",
|
||||
"hide": "Ocultar vista previa"
|
||||
},
|
||||
"save": "Guardar cambios",
|
||||
"saving": "Guardando...",
|
||||
"warnings": {
|
||||
"end_before_start": "La fecha de fin debe ser posterior a la fecha de inicio",
|
||||
"start_in_past": "La fecha de inicio está en el pasado",
|
||||
"empty_body": "El cuerpo del mensaje está vacío — los destinatarios recibirán una respuesta en blanco"
|
||||
}
|
||||
},
|
||||
"advanced": {
|
||||
"title": "Avanzado",
|
||||
"description": "Opciones avanzadas y configuración de desarrollador",
|
||||
@@ -753,6 +805,10 @@
|
||||
"delete_confirm": "¿Estás seguro de que quieres eliminar este contacto?",
|
||||
"local_mode": "Los contactos se almacenan localmente (el servidor no soporta JMAP Contacts)",
|
||||
"back_to_mail": "Volver al correo",
|
||||
"tabs": {
|
||||
"all": "Todos",
|
||||
"groups": "Grupos"
|
||||
},
|
||||
"detail": {
|
||||
"emails": "Direcciones de correo",
|
||||
"phones": "Números de teléfono",
|
||||
@@ -788,6 +844,55 @@
|
||||
"email_invalid": "Introduce una dirección de correo válida",
|
||||
"save_failed": "Error al guardar el contacto"
|
||||
},
|
||||
"groups": {
|
||||
"create": "Nuevo grupo",
|
||||
"edit": "Editar grupo",
|
||||
"empty": "No hay grupos",
|
||||
"delete_confirm": "¿Estás seguro de que quieres eliminar este grupo?",
|
||||
"name_label": "Nombre del grupo",
|
||||
"name_placeholder": "ej. Equipo, Familia",
|
||||
"name_required": "El nombre del grupo es obligatorio",
|
||||
"save_failed": "Error al guardar el grupo",
|
||||
"members_label": "Miembros",
|
||||
"search_members": "Buscar contactos para agregar...",
|
||||
"no_members": "No hay miembros en este grupo",
|
||||
"member_count": "{count, plural, =0 {Sin miembros} one {1 miembro} other {# miembros}}"
|
||||
},
|
||||
"import": {
|
||||
"title": "Importar contactos",
|
||||
"drop_hint": "Haz clic para seleccionar un archivo vCard",
|
||||
"file_types": "Archivos .vcf o .vcard",
|
||||
"no_contacts": "No se encontraron contactos en el archivo",
|
||||
"parse_error": "Error al analizar el archivo vCard",
|
||||
"found": "{count, plural, one {1 contacto encontrado} other {# contactos encontrados}}",
|
||||
"duplicate": "Duplicado",
|
||||
"select_all": "Seleccionar todo",
|
||||
"deselect_all": "Deseleccionar todo",
|
||||
"selected": "{count, plural, one {1 seleccionado} other {# seleccionados}}",
|
||||
"import_button": "Importar",
|
||||
"importing": "Importando...",
|
||||
"success": "{count, plural, one {1 contacto importado} other {# contactos importados}}",
|
||||
"failed": "Error en la importación",
|
||||
"close": "Cerrar",
|
||||
"file_too_large": "El archivo es demasiado grande (máx. 5 MB)"
|
||||
},
|
||||
"export": {
|
||||
"title": "Exportar contactos",
|
||||
"success": "{count, plural, one {1 contacto exportado} other {# contactos exportados}}"
|
||||
},
|
||||
"bulk": {
|
||||
"selected": "{count, plural, one {1 seleccionado} other {# seleccionados}}",
|
||||
"select_all": "Seleccionar todo",
|
||||
"delete": "Eliminar",
|
||||
"delete_confirm": "¿Eliminar {count, plural, one {1 contacto} other {# contactos}}?",
|
||||
"deleted": "{count, plural, one {1 contacto eliminado} other {# contactos eliminados}}",
|
||||
"add_to_group": "Agregar al grupo",
|
||||
"choose_group": "Elegir un grupo",
|
||||
"adding_contacts": "Agregando {count, plural, one {1 contacto} other {# contactos}}",
|
||||
"added_to_group": "Contactos agregados al grupo",
|
||||
"export": "Exportar",
|
||||
"clear": "Limpiar selección"
|
||||
},
|
||||
"toast": {
|
||||
"created": "Contacto creado",
|
||||
"updated": "Contacto actualizado",
|
||||
@@ -796,5 +901,28 @@
|
||||
"error_update": "Error al actualizar el contacto",
|
||||
"error_delete": "Error al eliminar el contacto"
|
||||
}
|
||||
},
|
||||
"advanced_search": {
|
||||
"title": "Búsqueda avanzada",
|
||||
"from": "De",
|
||||
"from_placeholder": "Email o nombre del remitente",
|
||||
"to": "Para",
|
||||
"to_placeholder": "Email o nombre del destinatario",
|
||||
"subject": "Asunto",
|
||||
"subject_placeholder": "El asunto contiene...",
|
||||
"body": "Cuerpo",
|
||||
"has_attachment": "Adjuntos",
|
||||
"date_after": "Después de",
|
||||
"date_before": "Antes de",
|
||||
"starred": "Destacados",
|
||||
"unread": "No leídos",
|
||||
"read": "Leídos",
|
||||
"yes": "Sí",
|
||||
"no": "No",
|
||||
"clear": "Limpiar",
|
||||
"clear_all": "Limpiar todo",
|
||||
"filters_active": "{count} filtro",
|
||||
"filters_active_plural": "{count} filtros",
|
||||
"toggle_filters": "Filtros"
|
||||
}
|
||||
}
|
||||
|
||||
+133
-5
@@ -11,14 +11,19 @@
|
||||
"error": {
|
||||
"invalid_credentials": "Email ou mot de passe invalide",
|
||||
"connection_failed": "Échec de la connexion au serveur",
|
||||
"generic": "Une erreur s'est produite. Veuillez réessayer."
|
||||
"generic": "Une erreur s'est produite. Veuillez réessayer.",
|
||||
"totp_invalid": "Code d'authentification invalide. Vérifiez votre application d'authentification."
|
||||
},
|
||||
"config_error": {
|
||||
"title": "Erreur de configuration",
|
||||
"fetch_failed": "Impossible de charger la configuration de l'application. Veuillez réessayer plus tard.",
|
||||
"server_not_configured": "Le serveur de messagerie n'a pas été configuré. Veuillez contacter votre administrateur."
|
||||
},
|
||||
"remove_from_history": "Supprimer de l'historique"
|
||||
"remove_from_history": "Supprimer de l'historique",
|
||||
"totp_toggle": "J'ai l'authentification à deux facteurs",
|
||||
"totp_label": "Code d'authentification",
|
||||
"totp_placeholder": "000000",
|
||||
"totp_hide": "Masquer l'authentification à deux facteurs"
|
||||
},
|
||||
"sidebar": {
|
||||
"close": "Fermer",
|
||||
@@ -59,7 +64,8 @@
|
||||
"compose": "Composer",
|
||||
"go_back": "Retour"
|
||||
},
|
||||
"clear_search": "Effacer la recherche"
|
||||
"clear_search": "Effacer la recherche",
|
||||
"vacation_active": "Répondeur d'absence activé"
|
||||
},
|
||||
"email_list": {
|
||||
"no_emails": "Aucun email",
|
||||
@@ -313,7 +319,9 @@
|
||||
"identity_update_failed": "Échec de la mise à jour de l'identité: {{error}}",
|
||||
"identity_delete_failed": "Échec de la suppression de l'identité: {{error}}",
|
||||
"identity_unauthorized": "Vous n'êtes pas autorisé à envoyer depuis cette adresse email",
|
||||
"identity_not_found": "Identité introuvable"
|
||||
"identity_not_found": "Identité introuvable",
|
||||
"vacation_saved": "Paramètres du répondeur d'absence enregistrés",
|
||||
"vacation_save_failed": "Échec de l'enregistrement des paramètres du répondeur d'absence"
|
||||
},
|
||||
"date": {
|
||||
"today": "Aujourd'hui",
|
||||
@@ -366,6 +374,7 @@
|
||||
"privacy": "Confidentialité et sécurité",
|
||||
"account": "Compte",
|
||||
"identities": "Identités",
|
||||
"vacation": "Répondeur d'absence",
|
||||
"advanced": "Avancé"
|
||||
},
|
||||
"appearance": {
|
||||
@@ -568,6 +577,49 @@
|
||||
"learn_more": "En savoir plus"
|
||||
}
|
||||
},
|
||||
"vacation": {
|
||||
"title": "Répondeur d'absence",
|
||||
"description": "Répondre automatiquement aux emails entrants pendant votre absence",
|
||||
"loading": "Chargement des paramètres d'absence...",
|
||||
"not_supported": "Votre serveur de messagerie ne prend pas en charge les réponses d'absence.",
|
||||
"fetch_error": "Échec du chargement des paramètres d'absence. Veuillez réessayer.",
|
||||
"status": {
|
||||
"label": "Répondeur d'absence",
|
||||
"description": "Envoyer une réponse automatique aux personnes qui vous envoient un email",
|
||||
"active": "Actif",
|
||||
"inactive": "Inactif"
|
||||
},
|
||||
"date_range": {
|
||||
"title": "Période",
|
||||
"description": "Limiter optionnellement la réponse automatique à une période spécifique",
|
||||
"start": "Date de début",
|
||||
"start_description": "Laisser vide pour aucune limite de début",
|
||||
"end": "Date de fin",
|
||||
"end_description": "Laisser vide pour aucune limite de fin"
|
||||
},
|
||||
"message": {
|
||||
"title": "Message de réponse automatique",
|
||||
"description": "Le message qui sera envoyé en réponse",
|
||||
"subject_label": "Objet",
|
||||
"subject_description": "Ligne d'objet de la réponse automatique",
|
||||
"subject_placeholder": "Absence du bureau",
|
||||
"body_label": "Corps du message",
|
||||
"body_description": "Contenu du message en texte brut",
|
||||
"body_placeholder": "Merci pour votre email. Je suis actuellement absent du bureau et vous répondrai à mon retour."
|
||||
},
|
||||
"preview": {
|
||||
"title": "Aperçu",
|
||||
"show": "Afficher l'aperçu",
|
||||
"hide": "Masquer l'aperçu"
|
||||
},
|
||||
"save": "Enregistrer les modifications",
|
||||
"saving": "Enregistrement...",
|
||||
"warnings": {
|
||||
"end_before_start": "La date de fin doit être postérieure à la date de début",
|
||||
"start_in_past": "La date de début est dans le passé",
|
||||
"empty_body": "Le corps du message est vide — les destinataires recevront une réponse vide"
|
||||
}
|
||||
},
|
||||
"advanced": {
|
||||
"title": "Avancé",
|
||||
"description": "Options avancées et paramètres développeur",
|
||||
@@ -753,6 +805,10 @@
|
||||
"delete_confirm": "Êtes-vous sûr de vouloir supprimer ce contact ?",
|
||||
"local_mode": "Les contacts sont stockés localement (le serveur ne prend pas en charge JMAP Contacts)",
|
||||
"back_to_mail": "Retour aux e-mails",
|
||||
"tabs": {
|
||||
"all": "Tous",
|
||||
"groups": "Groupes"
|
||||
},
|
||||
"detail": {
|
||||
"emails": "Adresses e-mail",
|
||||
"phones": "Numéros de téléphone",
|
||||
@@ -788,6 +844,55 @@
|
||||
"email_invalid": "Veuillez saisir une adresse e-mail valide",
|
||||
"save_failed": "Échec de l'enregistrement du contact"
|
||||
},
|
||||
"groups": {
|
||||
"create": "Nouveau groupe",
|
||||
"edit": "Modifier le groupe",
|
||||
"empty": "Aucun groupe",
|
||||
"delete_confirm": "Êtes-vous sûr de vouloir supprimer ce groupe ?",
|
||||
"name_label": "Nom du groupe",
|
||||
"name_placeholder": "ex. Équipe, Famille",
|
||||
"name_required": "Le nom du groupe est requis",
|
||||
"save_failed": "Échec de l'enregistrement du groupe",
|
||||
"members_label": "Membres",
|
||||
"search_members": "Rechercher des contacts à ajouter...",
|
||||
"no_members": "Aucun membre dans ce groupe",
|
||||
"member_count": "{count, plural, =0 {Aucun membre} one {1 membre} other {# membres}}"
|
||||
},
|
||||
"import": {
|
||||
"title": "Importer des contacts",
|
||||
"drop_hint": "Cliquez pour sélectionner un fichier vCard",
|
||||
"file_types": "Fichiers .vcf ou .vcard",
|
||||
"no_contacts": "Aucun contact trouvé dans le fichier",
|
||||
"parse_error": "Échec de l'analyse du fichier vCard",
|
||||
"found": "{count, plural, one {1 contact trouvé} other {# contacts trouvés}}",
|
||||
"duplicate": "Doublon",
|
||||
"select_all": "Tout sélectionner",
|
||||
"deselect_all": "Tout désélectionner",
|
||||
"selected": "{count, plural, one {1 sélectionné} other {# sélectionnés}}",
|
||||
"import_button": "Importer",
|
||||
"importing": "Importation...",
|
||||
"success": "{count, plural, one {1 contact importé} other {# contacts importés}}",
|
||||
"failed": "Échec de l'importation",
|
||||
"close": "Fermer",
|
||||
"file_too_large": "Fichier trop volumineux (max 5 Mo)"
|
||||
},
|
||||
"export": {
|
||||
"title": "Exporter les contacts",
|
||||
"success": "{count, plural, one {1 contact exporté} other {# contacts exportés}}"
|
||||
},
|
||||
"bulk": {
|
||||
"selected": "{count, plural, one {1 sélectionné} other {# sélectionnés}}",
|
||||
"select_all": "Tout sélectionner",
|
||||
"delete": "Supprimer",
|
||||
"delete_confirm": "Supprimer {count, plural, one {1 contact} other {# contacts}} ?",
|
||||
"deleted": "{count, plural, one {1 contact supprimé} other {# contacts supprimés}}",
|
||||
"add_to_group": "Ajouter au groupe",
|
||||
"choose_group": "Choisir un groupe",
|
||||
"adding_contacts": "Ajout de {count, plural, one {1 contact} other {# contacts}}",
|
||||
"added_to_group": "Contacts ajoutés au groupe",
|
||||
"export": "Exporter",
|
||||
"clear": "Effacer la sélection"
|
||||
},
|
||||
"toast": {
|
||||
"created": "Contact créé",
|
||||
"updated": "Contact mis à jour",
|
||||
@@ -796,5 +901,28 @@
|
||||
"error_update": "Échec de la mise à jour du contact",
|
||||
"error_delete": "Échec de la suppression du contact"
|
||||
}
|
||||
},
|
||||
"advanced_search": {
|
||||
"title": "Recherche avancée",
|
||||
"from": "De",
|
||||
"from_placeholder": "Email ou nom de l'expéditeur",
|
||||
"to": "À",
|
||||
"to_placeholder": "Email ou nom du destinataire",
|
||||
"subject": "Objet",
|
||||
"subject_placeholder": "L'objet contient...",
|
||||
"body": "Corps",
|
||||
"has_attachment": "Pièces jointes",
|
||||
"date_after": "Après le",
|
||||
"date_before": "Avant le",
|
||||
"starred": "Suivis",
|
||||
"unread": "Non lus",
|
||||
"read": "Lus",
|
||||
"yes": "Oui",
|
||||
"no": "Non",
|
||||
"clear": "Effacer",
|
||||
"clear_all": "Tout effacer",
|
||||
"filters_active": "{count} filtre",
|
||||
"filters_active_plural": "{count} filtres",
|
||||
"toggle_filters": "Filtres"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+133
-5
@@ -11,14 +11,19 @@
|
||||
"error": {
|
||||
"invalid_credentials": "Email o password non valida",
|
||||
"connection_failed": "Impossibile connettersi al server",
|
||||
"generic": "Si è verificato un errore. Riprova."
|
||||
"generic": "Si è verificato un errore. Riprova.",
|
||||
"totp_invalid": "Codice di autenticazione non valido. Controlla la tua app di autenticazione."
|
||||
},
|
||||
"config_error": {
|
||||
"title": "Errore di configurazione",
|
||||
"fetch_failed": "Impossibile caricare la configurazione dell'applicazione. Riprovare più tardi.",
|
||||
"server_not_configured": "Il server di posta non è stato configurato. Contattare l'amministratore."
|
||||
},
|
||||
"remove_from_history": "Rimuovi dalla cronologia"
|
||||
"remove_from_history": "Rimuovi dalla cronologia",
|
||||
"totp_toggle": "Ho l'autenticazione a due fattori",
|
||||
"totp_label": "Codice di autenticazione",
|
||||
"totp_placeholder": "000000",
|
||||
"totp_hide": "Nascondi autenticazione a due fattori"
|
||||
},
|
||||
"sidebar": {
|
||||
"close": "Chiudi",
|
||||
@@ -59,7 +64,8 @@
|
||||
"compose": "Scrivi",
|
||||
"go_back": "Indietro"
|
||||
},
|
||||
"clear_search": "Cancella ricerca"
|
||||
"clear_search": "Cancella ricerca",
|
||||
"vacation_active": "Risponditore automatico attivo"
|
||||
},
|
||||
"email_list": {
|
||||
"no_emails": "Nessun messaggio",
|
||||
@@ -313,7 +319,9 @@
|
||||
"identity_update_failed": "Impossibile aggiornare l'identità: {{error}}",
|
||||
"identity_delete_failed": "Impossibile eliminare l'identità: {{error}}",
|
||||
"identity_unauthorized": "Non sei autorizzato a inviare da questo indirizzo email",
|
||||
"identity_not_found": "Identità non trovata"
|
||||
"identity_not_found": "Identità non trovata",
|
||||
"vacation_saved": "Impostazioni del risponditore automatico salvate",
|
||||
"vacation_save_failed": "Impossibile salvare le impostazioni del risponditore automatico"
|
||||
},
|
||||
"date": {
|
||||
"today": "Oggi",
|
||||
@@ -366,6 +374,7 @@
|
||||
"privacy": "Privacy e sicurezza",
|
||||
"account": "Account",
|
||||
"identities": "Identità",
|
||||
"vacation": "Risponditore automatico",
|
||||
"advanced": "Avanzate"
|
||||
},
|
||||
"appearance": {
|
||||
@@ -568,6 +577,49 @@
|
||||
"learn_more": "Scopri di più"
|
||||
}
|
||||
},
|
||||
"vacation": {
|
||||
"title": "Risponditore automatico",
|
||||
"description": "Rispondi automaticamente alle email in arrivo durante la tua assenza",
|
||||
"loading": "Caricamento impostazioni di risposta automatica...",
|
||||
"not_supported": "Il server di posta non supporta le risposte automatiche di assenza.",
|
||||
"fetch_error": "Impossibile caricare le impostazioni di risposta automatica. Riprova.",
|
||||
"status": {
|
||||
"label": "Risponditore automatico",
|
||||
"description": "Invia una risposta automatica a chi ti scrive",
|
||||
"active": "Attivo",
|
||||
"inactive": "Inattivo"
|
||||
},
|
||||
"date_range": {
|
||||
"title": "Periodo",
|
||||
"description": "Limita opzionalmente la risposta automatica a un periodo specifico",
|
||||
"start": "Data di inizio",
|
||||
"start_description": "Lascia vuoto per nessun limite di inizio",
|
||||
"end": "Data di fine",
|
||||
"end_description": "Lascia vuoto per nessun limite di fine"
|
||||
},
|
||||
"message": {
|
||||
"title": "Messaggio di risposta automatica",
|
||||
"description": "Il messaggio che verrà inviato come risposta",
|
||||
"subject_label": "Oggetto",
|
||||
"subject_description": "Oggetto della risposta automatica",
|
||||
"subject_placeholder": "Fuori ufficio",
|
||||
"body_label": "Corpo del messaggio",
|
||||
"body_description": "Contenuto del messaggio in testo semplice",
|
||||
"body_placeholder": "Grazie per la tua email. Sono attualmente fuori ufficio e risponderò al mio ritorno."
|
||||
},
|
||||
"preview": {
|
||||
"title": "Anteprima",
|
||||
"show": "Mostra anteprima",
|
||||
"hide": "Nascondi anteprima"
|
||||
},
|
||||
"save": "Salva modifiche",
|
||||
"saving": "Salvataggio...",
|
||||
"warnings": {
|
||||
"end_before_start": "La data di fine deve essere successiva alla data di inizio",
|
||||
"start_in_past": "La data di inizio è nel passato",
|
||||
"empty_body": "Il corpo del messaggio è vuoto — i destinatari riceveranno una risposta vuota"
|
||||
}
|
||||
},
|
||||
"advanced": {
|
||||
"title": "Avanzate",
|
||||
"description": "Opzioni avanzate e impostazioni per sviluppatori",
|
||||
@@ -753,6 +805,10 @@
|
||||
"delete_confirm": "Sei sicuro di voler eliminare questo contatto?",
|
||||
"local_mode": "I contatti sono salvati localmente (il server non supporta JMAP Contacts)",
|
||||
"back_to_mail": "Torna alla posta",
|
||||
"tabs": {
|
||||
"all": "Tutti",
|
||||
"groups": "Gruppi"
|
||||
},
|
||||
"detail": {
|
||||
"emails": "Indirizzi email",
|
||||
"phones": "Numeri di telefono",
|
||||
@@ -788,6 +844,55 @@
|
||||
"email_invalid": "Inserisci un indirizzo email valido",
|
||||
"save_failed": "Impossibile salvare il contatto"
|
||||
},
|
||||
"groups": {
|
||||
"create": "Nuovo gruppo",
|
||||
"edit": "Modifica gruppo",
|
||||
"empty": "Nessun gruppo",
|
||||
"delete_confirm": "Sei sicuro di voler eliminare questo gruppo?",
|
||||
"name_label": "Nome del gruppo",
|
||||
"name_placeholder": "es. Team, Famiglia",
|
||||
"name_required": "Il nome del gruppo è obbligatorio",
|
||||
"save_failed": "Impossibile salvare il gruppo",
|
||||
"members_label": "Membri",
|
||||
"search_members": "Cerca contatti da aggiungere...",
|
||||
"no_members": "Nessun membro in questo gruppo",
|
||||
"member_count": "{count, plural, =0 {Nessun membro} one {1 membro} other {# membri}}"
|
||||
},
|
||||
"import": {
|
||||
"title": "Importa contatti",
|
||||
"drop_hint": "Clicca per selezionare un file vCard",
|
||||
"file_types": "File .vcf o .vcard",
|
||||
"no_contacts": "Nessun contatto trovato nel file",
|
||||
"parse_error": "Impossibile analizzare il file vCard",
|
||||
"found": "{count, plural, one {1 contatto trovato} other {# contatti trovati}}",
|
||||
"duplicate": "Duplicato",
|
||||
"select_all": "Seleziona tutto",
|
||||
"deselect_all": "Deseleziona tutto",
|
||||
"selected": "{count, plural, one {1 selezionato} other {# selezionati}}",
|
||||
"import_button": "Importa",
|
||||
"importing": "Importazione...",
|
||||
"success": "{count, plural, one {1 contatto importato} other {# contatti importati}}",
|
||||
"failed": "Importazione fallita",
|
||||
"close": "Chiudi",
|
||||
"file_too_large": "Il file è troppo grande (max 5 MB)"
|
||||
},
|
||||
"export": {
|
||||
"title": "Esporta contatti",
|
||||
"success": "{count, plural, one {1 contatto esportato} other {# contatti esportati}}"
|
||||
},
|
||||
"bulk": {
|
||||
"selected": "{count, plural, one {1 selezionato} other {# selezionati}}",
|
||||
"select_all": "Seleziona tutto",
|
||||
"delete": "Elimina",
|
||||
"delete_confirm": "Eliminare {count, plural, one {1 contatto} other {# contatti}}?",
|
||||
"deleted": "{count, plural, one {1 contatto eliminato} other {# contatti eliminati}}",
|
||||
"add_to_group": "Aggiungi al gruppo",
|
||||
"choose_group": "Scegli un gruppo",
|
||||
"adding_contacts": "Aggiunta di {count, plural, one {1 contatto} other {# contatti}}",
|
||||
"added_to_group": "Contatti aggiunti al gruppo",
|
||||
"export": "Esporta",
|
||||
"clear": "Cancella selezione"
|
||||
},
|
||||
"toast": {
|
||||
"created": "Contatto creato",
|
||||
"updated": "Contatto aggiornato",
|
||||
@@ -796,5 +901,28 @@
|
||||
"error_update": "Impossibile aggiornare il contatto",
|
||||
"error_delete": "Impossibile eliminare il contatto"
|
||||
}
|
||||
},
|
||||
"advanced_search": {
|
||||
"title": "Ricerca avanzata",
|
||||
"from": "Da",
|
||||
"from_placeholder": "Email o nome del mittente",
|
||||
"to": "A",
|
||||
"to_placeholder": "Email o nome del destinatario",
|
||||
"subject": "Oggetto",
|
||||
"subject_placeholder": "L'oggetto contiene...",
|
||||
"body": "Corpo",
|
||||
"has_attachment": "Allegati",
|
||||
"date_after": "Dopo il",
|
||||
"date_before": "Prima del",
|
||||
"starred": "Preferiti",
|
||||
"unread": "Non letti",
|
||||
"read": "Letti",
|
||||
"yes": "Sì",
|
||||
"no": "No",
|
||||
"clear": "Cancella",
|
||||
"clear_all": "Cancella tutto",
|
||||
"filters_active": "{count} filtro",
|
||||
"filters_active_plural": "{count} filtri",
|
||||
"toggle_filters": "Filtri"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+133
-5
@@ -11,14 +11,19 @@
|
||||
"error": {
|
||||
"invalid_credentials": "メールアドレスまたはパスワードが無効です",
|
||||
"connection_failed": "サーバーへの接続に失敗しました",
|
||||
"generic": "エラーが発生しました。もう一度お試しください。"
|
||||
"generic": "エラーが発生しました。もう一度お試しください。",
|
||||
"totp_invalid": "認証コードが無効です。認証アプリを確認してください。"
|
||||
},
|
||||
"config_error": {
|
||||
"title": "設定エラー",
|
||||
"fetch_failed": "アプリケーション設定を読み込めません。後でもう一度お試しください。",
|
||||
"server_not_configured": "メールサーバーが設定されていません。管理者にお問い合わせください。"
|
||||
},
|
||||
"remove_from_history": "履歴から削除"
|
||||
"remove_from_history": "履歴から削除",
|
||||
"totp_toggle": "二要素認証を使用",
|
||||
"totp_label": "認証コード",
|
||||
"totp_placeholder": "000000",
|
||||
"totp_hide": "二要素認証を非表示"
|
||||
},
|
||||
"sidebar": {
|
||||
"close": "閉じる",
|
||||
@@ -59,7 +64,8 @@
|
||||
"compose": "作成",
|
||||
"go_back": "戻る"
|
||||
},
|
||||
"clear_search": "検索をクリア"
|
||||
"clear_search": "検索をクリア",
|
||||
"vacation_active": "不在応答が有効です"
|
||||
},
|
||||
"email_list": {
|
||||
"no_emails": "メールがありません",
|
||||
@@ -313,7 +319,9 @@
|
||||
"identity_update_failed": "送信者情報の更新に失敗しました: {{error}}",
|
||||
"identity_delete_failed": "送信者情報の削除に失敗しました: {{error}}",
|
||||
"identity_unauthorized": "このメールアドレスからの送信は許可されていません",
|
||||
"identity_not_found": "送信者情報が見つかりません"
|
||||
"identity_not_found": "送信者情報が見つかりません",
|
||||
"vacation_saved": "不在応答の設定を保存しました",
|
||||
"vacation_save_failed": "不在応答の設定の保存に失敗しました"
|
||||
},
|
||||
"date": {
|
||||
"today": "今日",
|
||||
@@ -366,6 +374,7 @@
|
||||
"privacy": "プライバシーとセキュリティ",
|
||||
"account": "アカウント",
|
||||
"identities": "送信者情報",
|
||||
"vacation": "不在応答",
|
||||
"advanced": "詳細設定"
|
||||
},
|
||||
"appearance": {
|
||||
@@ -568,6 +577,49 @@
|
||||
"learn_more": "詳細"
|
||||
}
|
||||
},
|
||||
"vacation": {
|
||||
"title": "不在応答",
|
||||
"description": "不在時に受信メールへ自動返信します",
|
||||
"loading": "不在応答設定を読み込み中...",
|
||||
"not_supported": "メールサーバーは不在応答をサポートしていません。",
|
||||
"fetch_error": "不在応答設定の読み込みに失敗しました。もう一度お試しください。",
|
||||
"status": {
|
||||
"label": "不在応答",
|
||||
"description": "メールを送信してきた方に自動返信を送信します",
|
||||
"active": "有効",
|
||||
"inactive": "無効"
|
||||
},
|
||||
"date_range": {
|
||||
"title": "期間",
|
||||
"description": "オプションで自動返信を特定の期間に限定します",
|
||||
"start": "開始日",
|
||||
"start_description": "空白のままにすると開始制限なし",
|
||||
"end": "終了日",
|
||||
"end_description": "空白のままにすると終了制限なし"
|
||||
},
|
||||
"message": {
|
||||
"title": "自動返信メッセージ",
|
||||
"description": "返信として送信されるメッセージ",
|
||||
"subject_label": "件名",
|
||||
"subject_description": "自動返信の件名",
|
||||
"subject_placeholder": "不在通知",
|
||||
"body_label": "メッセージ本文",
|
||||
"body_description": "テキスト形式のメッセージ内容",
|
||||
"body_placeholder": "メールをいただきありがとうございます。現在不在にしており、戻り次第ご返信いたします。"
|
||||
},
|
||||
"preview": {
|
||||
"title": "プレビュー",
|
||||
"show": "プレビューを表示",
|
||||
"hide": "プレビューを非表示"
|
||||
},
|
||||
"save": "変更を保存",
|
||||
"saving": "保存中...",
|
||||
"warnings": {
|
||||
"end_before_start": "終了日は開始日より後に設定してください",
|
||||
"start_in_past": "開始日が過去の日付です",
|
||||
"empty_body": "メッセージ本文が空です — 受信者には空の返信が届きます"
|
||||
}
|
||||
},
|
||||
"advanced": {
|
||||
"title": "詳細設定",
|
||||
"description": "詳細オプションと開発者設定",
|
||||
@@ -753,6 +805,10 @@
|
||||
"delete_confirm": "この連絡先を削除してもよろしいですか?",
|
||||
"local_mode": "連絡先はローカルに保存されています(サーバーがJMAPコンタクトをサポートしていません)",
|
||||
"back_to_mail": "メールに戻る",
|
||||
"tabs": {
|
||||
"all": "すべて",
|
||||
"groups": "グループ"
|
||||
},
|
||||
"detail": {
|
||||
"emails": "メールアドレス",
|
||||
"phones": "電話番号",
|
||||
@@ -788,6 +844,55 @@
|
||||
"email_invalid": "有効なメールアドレスを入力してください",
|
||||
"save_failed": "連絡先の保存に失敗しました"
|
||||
},
|
||||
"groups": {
|
||||
"create": "新しいグループ",
|
||||
"edit": "グループを編集",
|
||||
"empty": "グループがありません",
|
||||
"delete_confirm": "このグループを削除してもよろしいですか?",
|
||||
"name_label": "グループ名",
|
||||
"name_placeholder": "例:チーム、家族",
|
||||
"name_required": "グループ名は必須です",
|
||||
"save_failed": "グループの保存に失敗しました",
|
||||
"members_label": "メンバー",
|
||||
"search_members": "追加する連絡先を検索...",
|
||||
"no_members": "このグループにメンバーがいません",
|
||||
"member_count": "{count, plural, =0 {メンバーなし} other {#人のメンバー}}"
|
||||
},
|
||||
"import": {
|
||||
"title": "連絡先をインポート",
|
||||
"drop_hint": "vCardファイルを選択してください",
|
||||
"file_types": ".vcf または .vcard ファイル",
|
||||
"no_contacts": "ファイルに連絡先が見つかりません",
|
||||
"parse_error": "vCardファイルの解析に失敗しました",
|
||||
"found": "{count, plural, other {#件の連絡先が見つかりました}}",
|
||||
"duplicate": "重複",
|
||||
"select_all": "すべて選択",
|
||||
"deselect_all": "すべて解除",
|
||||
"selected": "{count, plural, other {#件選択中}}",
|
||||
"import_button": "インポート",
|
||||
"importing": "インポート中...",
|
||||
"success": "{count, plural, other {#件の連絡先をインポートしました}}",
|
||||
"failed": "インポートに失敗しました",
|
||||
"close": "閉じる",
|
||||
"file_too_large": "ファイルが大きすぎます(最大5 MB)"
|
||||
},
|
||||
"export": {
|
||||
"title": "連絡先をエクスポート",
|
||||
"success": "{count, plural, other {#件の連絡先をエクスポートしました}}"
|
||||
},
|
||||
"bulk": {
|
||||
"selected": "{count, plural, other {#件選択中}}",
|
||||
"select_all": "すべて選択",
|
||||
"delete": "削除",
|
||||
"delete_confirm": "{count, plural, other {#件の連絡先}}を削除しますか?",
|
||||
"deleted": "{count, plural, other {#件の連絡先を削除しました}}",
|
||||
"add_to_group": "グループに追加",
|
||||
"choose_group": "グループを選択",
|
||||
"adding_contacts": "{count, plural, other {#件の連絡先}}を追加",
|
||||
"added_to_group": "連絡先をグループに追加しました",
|
||||
"export": "エクスポート",
|
||||
"clear": "選択を解除"
|
||||
},
|
||||
"toast": {
|
||||
"created": "連絡先を作成しました",
|
||||
"updated": "連絡先を更新しました",
|
||||
@@ -796,5 +901,28 @@
|
||||
"error_update": "連絡先の更新に失敗しました",
|
||||
"error_delete": "連絡先の削除に失敗しました"
|
||||
}
|
||||
},
|
||||
"advanced_search": {
|
||||
"title": "詳細検索",
|
||||
"from": "差出人",
|
||||
"from_placeholder": "差出人のメールまたは名前",
|
||||
"to": "宛先",
|
||||
"to_placeholder": "宛先のメールまたは名前",
|
||||
"subject": "件名",
|
||||
"subject_placeholder": "件名に含まれる...",
|
||||
"body": "本文",
|
||||
"has_attachment": "添付ファイル",
|
||||
"date_after": "以降",
|
||||
"date_before": "以前",
|
||||
"starred": "スター付き",
|
||||
"unread": "未読",
|
||||
"read": "既読",
|
||||
"yes": "はい",
|
||||
"no": "いいえ",
|
||||
"clear": "クリア",
|
||||
"clear_all": "すべてクリア",
|
||||
"filters_active": "{count}件のフィルター",
|
||||
"filters_active_plural": "{count}件のフィルター",
|
||||
"toggle_filters": "フィルター"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+132
-4
@@ -11,14 +11,19 @@
|
||||
"error": {
|
||||
"invalid_credentials": "Ongeldig e-mailadres of wachtwoord",
|
||||
"connection_failed": "Kan geen verbinding maken met de server",
|
||||
"generic": "Er is een fout opgetreden. Probeer het opnieuw."
|
||||
"generic": "Er is een fout opgetreden. Probeer het opnieuw.",
|
||||
"totp_invalid": "Ongeldige authenticatiecode. Controleer uw authenticator-app."
|
||||
},
|
||||
"config_error": {
|
||||
"title": "Configuratiefout",
|
||||
"fetch_failed": "Kan de applicatieconfiguratie niet laden. Probeer het later opnieuw.",
|
||||
"server_not_configured": "De mailserver is niet geconfigureerd. Neem contact op met je beheerder."
|
||||
},
|
||||
"remove_from_history": "Verwijder uit geschiedenis"
|
||||
"remove_from_history": "Verwijder uit geschiedenis",
|
||||
"totp_toggle": "Ik heb tweefactorauthenticatie",
|
||||
"totp_label": "Authenticatiecode",
|
||||
"totp_placeholder": "000000",
|
||||
"totp_hide": "Tweefactorauthenticatie verbergen"
|
||||
},
|
||||
"sidebar": {
|
||||
"close": "Sluiten",
|
||||
@@ -59,7 +64,8 @@
|
||||
"compose": "Opstellen",
|
||||
"go_back": "Terug"
|
||||
},
|
||||
"clear_search": "Zoekopdracht wissen"
|
||||
"clear_search": "Zoekopdracht wissen",
|
||||
"vacation_active": "Afwezigheidsmelder is actief"
|
||||
},
|
||||
"email_list": {
|
||||
"no_emails": "Geen e-mails",
|
||||
@@ -313,7 +319,9 @@
|
||||
"identity_update_failed": "Kan identiteit niet bijwerken: {{error}}",
|
||||
"identity_delete_failed": "Kan identiteit niet verwijderen: {{error}}",
|
||||
"identity_unauthorized": "Je bent niet geautoriseerd om vanaf dit e-mailadres te verzenden",
|
||||
"identity_not_found": "Identiteit niet gevonden"
|
||||
"identity_not_found": "Identiteit niet gevonden",
|
||||
"vacation_saved": "Afwezigheidsinstellingen opgeslagen",
|
||||
"vacation_save_failed": "Kan afwezigheidsinstellingen niet opslaan"
|
||||
},
|
||||
"date": {
|
||||
"today": "Vandaag",
|
||||
@@ -366,6 +374,7 @@
|
||||
"privacy": "Privacy & Beveiliging",
|
||||
"account": "Account",
|
||||
"identities": "Identiteiten",
|
||||
"vacation": "Afwezigheidsmelder",
|
||||
"advanced": "Geavanceerd"
|
||||
},
|
||||
"appearance": {
|
||||
@@ -568,6 +577,49 @@
|
||||
"learn_more": "Meer informatie"
|
||||
}
|
||||
},
|
||||
"vacation": {
|
||||
"title": "Afwezigheidsmelder",
|
||||
"description": "Automatisch antwoorden op inkomende e-mails terwijl je afwezig bent",
|
||||
"loading": "Afwezigheidsinstellingen laden...",
|
||||
"not_supported": "Je mailserver ondersteunt geen afwezigheidsantwoorden.",
|
||||
"fetch_error": "Kan afwezigheidsinstellingen niet laden. Probeer het opnieuw.",
|
||||
"status": {
|
||||
"label": "Afwezigheidsmelder",
|
||||
"description": "Stuur een automatisch antwoord naar mensen die je mailen",
|
||||
"active": "Actief",
|
||||
"inactive": "Inactief"
|
||||
},
|
||||
"date_range": {
|
||||
"title": "Periode",
|
||||
"description": "Beperk optioneel het automatische antwoord tot een specifieke periode",
|
||||
"start": "Startdatum",
|
||||
"start_description": "Leeg laten voor geen startlimiet",
|
||||
"end": "Einddatum",
|
||||
"end_description": "Leeg laten voor geen eindlimiet"
|
||||
},
|
||||
"message": {
|
||||
"title": "Automatisch antwoordbericht",
|
||||
"description": "Het bericht dat als antwoord wordt verzonden",
|
||||
"subject_label": "Onderwerp",
|
||||
"subject_description": "Onderwerpregel van het automatische antwoord",
|
||||
"subject_placeholder": "Afwezigheidsbericht",
|
||||
"body_label": "Berichttekst",
|
||||
"body_description": "Inhoud van het bericht in platte tekst",
|
||||
"body_placeholder": "Bedankt voor je e-mail. Ik ben momenteel niet aanwezig en zal reageren bij terugkomst."
|
||||
},
|
||||
"preview": {
|
||||
"title": "Voorbeeld",
|
||||
"show": "Voorbeeld tonen",
|
||||
"hide": "Voorbeeld verbergen"
|
||||
},
|
||||
"save": "Wijzigingen opslaan",
|
||||
"saving": "Opslaan...",
|
||||
"warnings": {
|
||||
"end_before_start": "De einddatum moet na de startdatum liggen",
|
||||
"start_in_past": "De startdatum ligt in het verleden",
|
||||
"empty_body": "De berichttekst is leeg — ontvangers krijgen een leeg antwoord"
|
||||
}
|
||||
},
|
||||
"advanced": {
|
||||
"title": "Geavanceerd",
|
||||
"description": "Geavanceerde opties en ontwikkelaarsinstellingen",
|
||||
@@ -753,6 +805,10 @@
|
||||
"delete_confirm": "Weet u zeker dat u dit contact wilt verwijderen?",
|
||||
"local_mode": "Contacten worden lokaal opgeslagen (server ondersteunt geen JMAP Contacts)",
|
||||
"back_to_mail": "Terug naar e-mail",
|
||||
"tabs": {
|
||||
"all": "Alle",
|
||||
"groups": "Groepen"
|
||||
},
|
||||
"detail": {
|
||||
"emails": "E-mailadressen",
|
||||
"phones": "Telefoonnummers",
|
||||
@@ -788,6 +844,55 @@
|
||||
"email_invalid": "Voer een geldig e-mailadres in",
|
||||
"save_failed": "Kon contact niet opslaan"
|
||||
},
|
||||
"groups": {
|
||||
"create": "Nieuwe groep",
|
||||
"edit": "Groep bewerken",
|
||||
"empty": "Geen groepen",
|
||||
"delete_confirm": "Weet u zeker dat u deze groep wilt verwijderen?",
|
||||
"name_label": "Groepsnaam",
|
||||
"name_placeholder": "bijv. Team, Familie",
|
||||
"name_required": "Groepsnaam is vereist",
|
||||
"save_failed": "Kon groep niet opslaan",
|
||||
"members_label": "Leden",
|
||||
"search_members": "Contacten zoeken om toe te voegen...",
|
||||
"no_members": "Geen leden in deze groep",
|
||||
"member_count": "{count, plural, =0 {Geen leden} one {1 lid} other {# leden}}"
|
||||
},
|
||||
"import": {
|
||||
"title": "Contacten importeren",
|
||||
"drop_hint": "Klik om een vCard-bestand te selecteren",
|
||||
"file_types": ".vcf- of .vcard-bestanden",
|
||||
"no_contacts": "Geen contacten gevonden in bestand",
|
||||
"parse_error": "Kon vCard-bestand niet lezen",
|
||||
"found": "{count, plural, one {1 contact gevonden} other {# contacten gevonden}}",
|
||||
"duplicate": "Duplicaat",
|
||||
"select_all": "Alles selecteren",
|
||||
"deselect_all": "Alles deselecteren",
|
||||
"selected": "{count, plural, one {1 geselecteerd} other {# geselecteerd}}",
|
||||
"import_button": "Importeren",
|
||||
"importing": "Importeren...",
|
||||
"success": "{count, plural, one {1 contact geïmporteerd} other {# contacten geïmporteerd}}",
|
||||
"failed": "Import mislukt",
|
||||
"close": "Sluiten",
|
||||
"file_too_large": "Bestand is te groot (max 5 MB)"
|
||||
},
|
||||
"export": {
|
||||
"title": "Contacten exporteren",
|
||||
"success": "{count, plural, one {1 contact geëxporteerd} other {# contacten geëxporteerd}}"
|
||||
},
|
||||
"bulk": {
|
||||
"selected": "{count, plural, one {1 geselecteerd} other {# geselecteerd}}",
|
||||
"select_all": "Alles selecteren",
|
||||
"delete": "Verwijderen",
|
||||
"delete_confirm": "{count, plural, one {1 contact} other {# contacten}} verwijderen?",
|
||||
"deleted": "{count, plural, one {1 contact verwijderd} other {# contacten verwijderd}}",
|
||||
"add_to_group": "Aan groep toevoegen",
|
||||
"choose_group": "Kies een groep",
|
||||
"adding_contacts": "{count, plural, one {1 contact} other {# contacten}} toevoegen",
|
||||
"added_to_group": "Contacten aan groep toegevoegd",
|
||||
"export": "Exporteren",
|
||||
"clear": "Selectie wissen"
|
||||
},
|
||||
"toast": {
|
||||
"created": "Contact aangemaakt",
|
||||
"updated": "Contact bijgewerkt",
|
||||
@@ -796,5 +901,28 @@
|
||||
"error_update": "Kon contact niet bijwerken",
|
||||
"error_delete": "Kon contact niet verwijderen"
|
||||
}
|
||||
},
|
||||
"advanced_search": {
|
||||
"title": "Geavanceerd zoeken",
|
||||
"from": "Van",
|
||||
"from_placeholder": "E-mail of naam afzender",
|
||||
"to": "Aan",
|
||||
"to_placeholder": "E-mail of naam ontvanger",
|
||||
"subject": "Onderwerp",
|
||||
"subject_placeholder": "Onderwerp bevat...",
|
||||
"body": "Inhoud",
|
||||
"has_attachment": "Bijlagen",
|
||||
"date_after": "Na",
|
||||
"date_before": "Voor",
|
||||
"starred": "Met ster",
|
||||
"unread": "Ongelezen",
|
||||
"read": "Gelezen",
|
||||
"yes": "Ja",
|
||||
"no": "Nee",
|
||||
"clear": "Wissen",
|
||||
"clear_all": "Alles wissen",
|
||||
"filters_active": "{count} filter",
|
||||
"filters_active_plural": "{count} filters",
|
||||
"toggle_filters": "Filters"
|
||||
}
|
||||
}
|
||||
|
||||
+133
-5
@@ -11,14 +11,19 @@
|
||||
"error": {
|
||||
"invalid_credentials": "E-mail ou senha inválidos",
|
||||
"connection_failed": "Falha ao conectar com o servidor",
|
||||
"generic": "Ocorreu um erro. Por favor, tente novamente."
|
||||
"generic": "Ocorreu um erro. Por favor, tente novamente.",
|
||||
"totp_invalid": "Código de autenticação inválido. Verifique seu aplicativo de autenticação."
|
||||
},
|
||||
"config_error": {
|
||||
"title": "Erro de Configuração",
|
||||
"fetch_failed": "Não foi possível carregar a configuração do aplicativo. Por favor, tente novamente mais tarde.",
|
||||
"server_not_configured": "O servidor de e-mail não foi configurado. Por favor, contate seu administrador."
|
||||
},
|
||||
"remove_from_history": "Remover do histórico"
|
||||
"remove_from_history": "Remover do histórico",
|
||||
"totp_toggle": "Tenho autenticação de dois fatores",
|
||||
"totp_label": "Código de autenticação",
|
||||
"totp_placeholder": "000000",
|
||||
"totp_hide": "Ocultar autenticação de dois fatores"
|
||||
},
|
||||
"sidebar": {
|
||||
"close": "Fechar",
|
||||
@@ -59,7 +64,8 @@
|
||||
"compose": "Escrever",
|
||||
"go_back": "Voltar"
|
||||
},
|
||||
"clear_search": "Limpar busca"
|
||||
"clear_search": "Limpar busca",
|
||||
"vacation_active": "Resposta automática ativa"
|
||||
},
|
||||
"email_list": {
|
||||
"no_emails": "Nenhum e-mail",
|
||||
@@ -313,7 +319,9 @@
|
||||
"identity_update_failed": "Falha ao atualizar identidade: {{error}}",
|
||||
"identity_delete_failed": "Falha ao excluir identidade: {{error}}",
|
||||
"identity_unauthorized": "Você não está autorizado a enviar deste endereço de e-mail",
|
||||
"identity_not_found": "Identidade não encontrada"
|
||||
"identity_not_found": "Identidade não encontrada",
|
||||
"vacation_saved": "Configurações de resposta automática salvas",
|
||||
"vacation_save_failed": "Falha ao salvar configurações de resposta automática"
|
||||
},
|
||||
"date": {
|
||||
"today": "Hoje",
|
||||
@@ -366,6 +374,7 @@
|
||||
"privacy": "Privacidade e Segurança",
|
||||
"account": "Conta",
|
||||
"identities": "Identidades",
|
||||
"vacation": "Resposta automática",
|
||||
"advanced": "Avançado"
|
||||
},
|
||||
"appearance": {
|
||||
@@ -568,6 +577,49 @@
|
||||
"learn_more": "Saiba Mais"
|
||||
}
|
||||
},
|
||||
"vacation": {
|
||||
"title": "Resposta automática",
|
||||
"description": "Responder automaticamente a e-mails recebidos enquanto estiver ausente",
|
||||
"loading": "Carregando configurações de resposta automática...",
|
||||
"not_supported": "Seu servidor de e-mail não suporta respostas automáticas de ausência.",
|
||||
"fetch_error": "Falha ao carregar as configurações de resposta automática. Tente novamente.",
|
||||
"status": {
|
||||
"label": "Resposta automática",
|
||||
"description": "Enviar uma resposta automática para quem lhe enviar um e-mail",
|
||||
"active": "Ativo",
|
||||
"inactive": "Inativo"
|
||||
},
|
||||
"date_range": {
|
||||
"title": "Período",
|
||||
"description": "Opcionalmente limitar a resposta automática a um período específico",
|
||||
"start": "Data de início",
|
||||
"start_description": "Deixe vazio para sem limite de início",
|
||||
"end": "Data de fim",
|
||||
"end_description": "Deixe vazio para sem limite de fim"
|
||||
},
|
||||
"message": {
|
||||
"title": "Mensagem de resposta automática",
|
||||
"description": "A mensagem que será enviada como resposta",
|
||||
"subject_label": "Assunto",
|
||||
"subject_description": "Linha de assunto da resposta automática",
|
||||
"subject_placeholder": "Fora do escritório",
|
||||
"body_label": "Corpo da mensagem",
|
||||
"body_description": "Conteúdo da mensagem em texto simples",
|
||||
"body_placeholder": "Obrigado pelo seu e-mail. Estou atualmente fora do escritório e responderei quando retornar."
|
||||
},
|
||||
"preview": {
|
||||
"title": "Pré-visualização",
|
||||
"show": "Mostrar pré-visualização",
|
||||
"hide": "Ocultar pré-visualização"
|
||||
},
|
||||
"save": "Salvar alterações",
|
||||
"saving": "Salvando...",
|
||||
"warnings": {
|
||||
"end_before_start": "A data de fim deve ser posterior à data de início",
|
||||
"start_in_past": "A data de início está no passado",
|
||||
"empty_body": "O corpo da mensagem está vazio — os destinatários receberão uma resposta em branco"
|
||||
}
|
||||
},
|
||||
"advanced": {
|
||||
"title": "Avançado",
|
||||
"description": "Opções avançadas e configurações de desenvolvedor",
|
||||
@@ -753,6 +805,10 @@
|
||||
"delete_confirm": "Tem certeza de que deseja excluir este contato?",
|
||||
"local_mode": "Os contatos são armazenados localmente (o servidor não suporta JMAP Contacts)",
|
||||
"back_to_mail": "Voltar ao e-mail",
|
||||
"tabs": {
|
||||
"all": "Todos",
|
||||
"groups": "Grupos"
|
||||
},
|
||||
"detail": {
|
||||
"emails": "Endereços de e-mail",
|
||||
"phones": "Números de telefone",
|
||||
@@ -788,6 +844,55 @@
|
||||
"email_invalid": "Por favor, insira um endereço de e-mail válido",
|
||||
"save_failed": "Falha ao salvar contato"
|
||||
},
|
||||
"groups": {
|
||||
"create": "Novo grupo",
|
||||
"edit": "Editar grupo",
|
||||
"empty": "Nenhum grupo",
|
||||
"delete_confirm": "Tem certeza de que deseja excluir este grupo?",
|
||||
"name_label": "Nome do grupo",
|
||||
"name_placeholder": "ex. Equipe, Família",
|
||||
"name_required": "O nome do grupo é obrigatório",
|
||||
"save_failed": "Falha ao salvar grupo",
|
||||
"members_label": "Membros",
|
||||
"search_members": "Pesquisar contatos para adicionar...",
|
||||
"no_members": "Nenhum membro neste grupo",
|
||||
"member_count": "{count, plural, =0 {Nenhum membro} one {1 membro} other {# membros}}"
|
||||
},
|
||||
"import": {
|
||||
"title": "Importar contatos",
|
||||
"drop_hint": "Clique para selecionar um arquivo vCard",
|
||||
"file_types": "Arquivos .vcf ou .vcard",
|
||||
"no_contacts": "Nenhum contato encontrado no arquivo",
|
||||
"parse_error": "Falha ao analisar o arquivo vCard",
|
||||
"found": "{count, plural, one {1 contato encontrado} other {# contatos encontrados}}",
|
||||
"duplicate": "Duplicado",
|
||||
"select_all": "Selecionar tudo",
|
||||
"deselect_all": "Desmarcar tudo",
|
||||
"selected": "{count, plural, one {1 selecionado} other {# selecionados}}",
|
||||
"import_button": "Importar",
|
||||
"importing": "Importando...",
|
||||
"success": "{count, plural, one {1 contato importado} other {# contatos importados}}",
|
||||
"failed": "Falha na importação",
|
||||
"close": "Fechar",
|
||||
"file_too_large": "Arquivo muito grande (máx. 5 MB)"
|
||||
},
|
||||
"export": {
|
||||
"title": "Exportar contatos",
|
||||
"success": "{count, plural, one {1 contato exportado} other {# contatos exportados}}"
|
||||
},
|
||||
"bulk": {
|
||||
"selected": "{count, plural, one {1 selecionado} other {# selecionados}}",
|
||||
"select_all": "Selecionar tudo",
|
||||
"delete": "Excluir",
|
||||
"delete_confirm": "Excluir {count, plural, one {1 contato} other {# contatos}}?",
|
||||
"deleted": "{count, plural, one {1 contato excluído} other {# contatos excluídos}}",
|
||||
"add_to_group": "Adicionar ao grupo",
|
||||
"choose_group": "Escolher um grupo",
|
||||
"adding_contacts": "Adicionando {count, plural, one {1 contato} other {# contatos}}",
|
||||
"added_to_group": "Contatos adicionados ao grupo",
|
||||
"export": "Exportar",
|
||||
"clear": "Limpar seleção"
|
||||
},
|
||||
"toast": {
|
||||
"created": "Contato criado",
|
||||
"updated": "Contato atualizado",
|
||||
@@ -796,5 +901,28 @@
|
||||
"error_update": "Falha ao atualizar contato",
|
||||
"error_delete": "Falha ao excluir contato"
|
||||
}
|
||||
},
|
||||
"advanced_search": {
|
||||
"title": "Pesquisa avançada",
|
||||
"from": "De",
|
||||
"from_placeholder": "E-mail ou nome do remetente",
|
||||
"to": "Para",
|
||||
"to_placeholder": "E-mail ou nome do destinatário",
|
||||
"subject": "Assunto",
|
||||
"subject_placeholder": "O assunto contém...",
|
||||
"body": "Corpo",
|
||||
"has_attachment": "Anexos",
|
||||
"date_after": "Após",
|
||||
"date_before": "Antes de",
|
||||
"starred": "Favoritos",
|
||||
"unread": "Não lidos",
|
||||
"read": "Lidos",
|
||||
"yes": "Sim",
|
||||
"no": "Não",
|
||||
"clear": "Limpar",
|
||||
"clear_all": "Limpar tudo",
|
||||
"filters_active": "{count} filtro",
|
||||
"filters_active_plural": "{count} filtros",
|
||||
"toggle_filters": "Filtros"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user