Some checks are pending
Bidi Control Character Guard / bidi-control-guard (push) Waiting to run
Circular Dependency Check / Check for new circular dependencies (push) Waiting to run
Citus Migration Smoke / Combined migrations on single-node Citus (push) Waiting to run
E2E Fresh Install Tests / fresh-install-e2e (push) Waiting to run
ext-v2 guardrails / Run ext-v2 guard and ESLint (push) Waiting to run
Integration Tests / Check for relevant changes (push) Waiting to run
Integration Tests / ${{ (github.event_name == 'schedule' || github.event.inputs.suite == 'full') && 'Full integration suite' || 'Tier-1 integration subset' }} (push) Blocked by required conditions
Mobile checks / Mobile lint + typecheck (push) Waiting to run
Mobile checks / Mobile unit tests (push) Waiting to run
Mobile checks / Mobile dependency audit (report) (push) Waiting to run
Mobile checks / Mobile reproducibility checks (push) Waiting to run
Secrets guard (env backups) / Ensure no tracked env backup files (push) Waiting to run
Temporal Readiness / fast-readiness (push) Waiting to run
Temporal Readiness / docker-parity (push) Waiting to run
TypeScript Type Check / Nx affected typecheck (push) Waiting to run
Unit Tests / Skipped-test budget (push) Waiting to run
Unit Tests / Nx affected unit tests (push) Waiting to run
Unit Tests / Server unit coverage (informational) (push) Waiting to run
Validate Tenant Management Schema / Check for relevant changes (push) Waiting to run
Validate Tenant Management Schema / Validate Tenant Management Schema (push) Blocked by required conditions
EE Workflows Build Guard / ee-workflows-build-guard (push) Waiting to run
Excluded: .git, node_modules, secrets/, compose.env, assemblyscript tgz Source: /opt/alga-psa on psa.joliet.tech
655 lines
27 KiB
JSON
655 lines
27 KiB
JSON
{
|
|
"common": {
|
|
"actions": {
|
|
"add": "Añadir",
|
|
"back": "Atrás",
|
|
"cancel": "Cancelar",
|
|
"close": "Cerrar",
|
|
"create": "Crear",
|
|
"delete": "Eliminar",
|
|
"downloadCsv": "Descargar CSV",
|
|
"edit": "Editar",
|
|
"import": "Importar",
|
|
"reactivate": "Reactivar",
|
|
"remove": "Quitar",
|
|
"retry": "Reintentar",
|
|
"save": "Guardar",
|
|
"saving": "Guardando...",
|
|
"search": "Buscar",
|
|
"select": "Seleccionar",
|
|
"update": "Actualizar",
|
|
"uploadCsv": "Subir CSV",
|
|
"view": "Ver"
|
|
},
|
|
"states": {
|
|
"active": "Activo",
|
|
"inactive": "Inactivo",
|
|
"loading": "Cargando...",
|
|
"na": "N/D",
|
|
"none": "Ninguno"
|
|
},
|
|
"no": "No",
|
|
"yes": "Sí"
|
|
},
|
|
"contactsPage": {
|
|
"title": "Contactos",
|
|
"description": "Página principal de gestión de contactos con búsqueda, filtros, vista de lista y acciones masivas",
|
|
"heading": "Contactos",
|
|
"addContact": "+ Añadir contacto",
|
|
"actions": "Acciones",
|
|
"searchPlaceholder": "Buscar contactos, notas e interacciones",
|
|
"resetFilters": "Restablecer",
|
|
"unknownClient": "Cliente desconocido",
|
|
"noClient": "Sin cliente",
|
|
"thisContact": "este contacto",
|
|
"actionsMenuSrOnly": "Abrir menú",
|
|
"quickView": "Vista rápida",
|
|
"deleteValidationError": "No se pudo validar la eliminación. Inténtelo de nuevo.",
|
|
"deleteSuccess": "{{name}} se ha eliminado correctamente.",
|
|
"deleteError": "No se pudo eliminar el contacto. Inténtelo de nuevo.",
|
|
"markInactiveSuccess": "{{name}} se ha marcado como inactivo correctamente.",
|
|
"markInactiveError": "Se produjo un error al marcar el contacto como inactivo. Inténtelo de nuevo.",
|
|
"statusOptions": {
|
|
"all": "Todos los contactos",
|
|
"active": "Contactos activos",
|
|
"inactive": "Contactos inactivos"
|
|
},
|
|
"table": {
|
|
"name": "Nombre",
|
|
"created": "Creado",
|
|
"email": "Correo electrónico",
|
|
"phoneNumber": "Número de teléfono",
|
|
"client": "Cliente",
|
|
"tags": "Etiquetas",
|
|
"actions": "Acciones"
|
|
},
|
|
"lastPhoneTypeUsage": {
|
|
"title": "Último uso del tipo de teléfono",
|
|
"message_one": "El siguiente tipo de teléfono personalizado ya no lo usa ningún contacto: {{labels}}. ¿Eliminar la definición del tipo o conservarla para uso futuro?",
|
|
"message_other": "Los siguientes tipos de teléfono personalizados ya no los usa ningún contacto: {{labels}}. ¿Eliminar las definiciones de los tipos o conservarlas para uso futuro?",
|
|
"deleteType": "Eliminar tipo",
|
|
"keepType": "Conservar tipo"
|
|
},
|
|
"print": {
|
|
"title": "Contactos",
|
|
"subtitle": "{{count}} contactos",
|
|
"noContacts": "No hay contactos para imprimir",
|
|
"emptyValue": "-",
|
|
"columns": {
|
|
"name": "Nombre",
|
|
"email": "Correo electrónico",
|
|
"phone": "Teléfono",
|
|
"client": "Cliente",
|
|
"status": "Estado"
|
|
},
|
|
"optionsDialog": {
|
|
"title": "Opciones de impresión",
|
|
"description": "Elige qué columnas incluir al imprimir los contactos."
|
|
}
|
|
},
|
|
"shareTooltip": "Imprimir, importar y exportar"
|
|
},
|
|
"contactDetails": {
|
|
"title": "Detalles del contacto",
|
|
"description": "Vista detallada del contacto con pestañas, edición en línea, acceso al portal, etiquetas y notas",
|
|
"backToContacts": "Volver a contactos",
|
|
"inactiveBadge": "inactivo",
|
|
"actions": {
|
|
"goToContact": "Ir al contacto",
|
|
"saveChanges": "Guardar cambios"
|
|
},
|
|
"tabs": {
|
|
"details": "Detalles",
|
|
"tickets": "Tickets",
|
|
"documents": "Documentos",
|
|
"interactions": "Interacciones",
|
|
"notes": "Notas",
|
|
"portal": "Portal"
|
|
},
|
|
"fields": {
|
|
"fullName": "Nombre completo",
|
|
"client": "Cliente",
|
|
"email": "Correo electrónico",
|
|
"role": "Cargo",
|
|
"inboundTicketDestinationOverride": "Sobrescribir destino del ticket entrante",
|
|
"useClientDestination": "Usar destino del cliente",
|
|
"inboundTicketDestinationHelp": "Si se establece, esto sobrescribe el destino del cliente para este contacto remitente exacto. Prioridad: sobrescritura del contacto -> destino del cliente -> valor predeterminado del proveedor.",
|
|
"tags": "Etiquetas",
|
|
"notes": "Notas",
|
|
"status": "Estado",
|
|
"phone": "Teléfono"
|
|
},
|
|
"status": {
|
|
"label": "Estado",
|
|
"helper": "Establecer el estado del contacto como activo o inactivo",
|
|
"active": "Activo",
|
|
"inactive": "Inactivo"
|
|
},
|
|
"loading": {
|
|
"destinations": "Cargando destinos...",
|
|
"ticketFilters": "Cargando filtros de tickets..."
|
|
},
|
|
"empty": {
|
|
"notSet": "No establecido",
|
|
"unknownClient": "Cliente desconocido"
|
|
},
|
|
"client": {
|
|
"noClientAssigned": "Sin cliente asignado"
|
|
},
|
|
"delete": {
|
|
"successTitle": "Contacto eliminado",
|
|
"successDescription": "El contacto se ha eliminado correctamente.",
|
|
"validationFailed": "No se pudo validar la eliminación. Inténtelo de nuevo.",
|
|
"failed": "No se pudo eliminar el contacto. Inténtelo de nuevo."
|
|
},
|
|
"deactivate": {
|
|
"successTitle": "Contacto desactivado",
|
|
"successDescription": "El contacto se ha marcado como inactivo correctamente."
|
|
},
|
|
"reactivate": {
|
|
"successTitle": "Contacto reactivado",
|
|
"successDescription": "El contacto se ha reactivado correctamente."
|
|
},
|
|
"update": {
|
|
"successTitle": "Contacto actualizado",
|
|
"successDescription": "Los datos del contacto se han guardado correctamente."
|
|
},
|
|
"saveFailed": {
|
|
"title": "Error al guardar",
|
|
"description": "No se pudieron guardar los datos del contacto. Inténtelo de nuevo."
|
|
},
|
|
"error": {
|
|
"title": "Error"
|
|
},
|
|
"errors": {
|
|
"permissionDenied": "Permiso denegado. Póngase en contacto con su administrador si necesita acceso adicional.",
|
|
"markInactiveFailed": "Se produjo un error al marcar el contacto como inactivo. Inténtelo de nuevo.",
|
|
"reactivateFailed": "Se produjo un error al reactivar el contacto. Inténtelo de nuevo."
|
|
}
|
|
},
|
|
"contactsImportDialog": {
|
|
"title": "Importar contactos",
|
|
"description": "Diálogo de importación CSV para asignación, vista previa, validación y resultados",
|
|
"fields": {
|
|
"name": "Nombre *",
|
|
"email": "Correo electrónico *",
|
|
"defaultPhoneNumber": "Número de teléfono predeterminado",
|
|
"client": "Cliente",
|
|
"tags": "Etiquetas",
|
|
"role": "Cargo",
|
|
"notes": "Notas",
|
|
"primaryEmailLabel": "Etiqueta del correo principal",
|
|
"additionalEmails": "Direcciones de correo adicionales"
|
|
},
|
|
"unassigned": "Seleccionar campo",
|
|
"errors": {
|
|
"emptyCsv": "El archivo CSV está vacío o no es válido",
|
|
"readingCsv": "Error al leer el archivo CSV: {{message}}",
|
|
"unknownError": "Error desconocido",
|
|
"requiredFieldNotMapped": "El campo obligatorio \"{{field}}\" no está asignado",
|
|
"nameRequired": "El nombre es obligatorio",
|
|
"emailRequired": "El correo electrónico es obligatorio",
|
|
"invalidEmail": "Formato de correo electrónico no válido",
|
|
"processingCsv": "Error al procesar los datos CSV",
|
|
"importFailed": "La importación ha fallado"
|
|
},
|
|
"importOptions": {
|
|
"updateExisting": {
|
|
"title": "Actualizar contactos existentes",
|
|
"description": "Reemplazar los datos de los contactos existentes"
|
|
},
|
|
"skipInvalid": {
|
|
"title": "Omitir registros no válidos",
|
|
"description": "Continuar la importación aunque algunos registros tengan errores de validación"
|
|
}
|
|
},
|
|
"results": {
|
|
"title": "Resultados de la importación",
|
|
"downloadFailedRecords": "Descargar registros fallidos"
|
|
},
|
|
"table": {
|
|
"status": "Estado",
|
|
"name": "Nombre",
|
|
"email": "Correo electrónico",
|
|
"message": "Mensaje",
|
|
"exists": "Existe",
|
|
"issues": "Problemas"
|
|
},
|
|
"tooltips": {
|
|
"importSuccessful": "Importación correcta",
|
|
"importFailed": "Importación fallida",
|
|
"validReady": "Válido - listo para importar",
|
|
"invalidHasErrors": "No válido - tiene errores"
|
|
},
|
|
"upload": {
|
|
"help": "Suba un archivo CSV con datos de contactos",
|
|
"requiredLabel": "Obligatorio:",
|
|
"contactFieldsLabel": "Campos de contacto:",
|
|
"contactFieldsDescription": "phone_number (se importa como el teléfono de trabajo predeterminado), role, notes, tags",
|
|
"clientFieldLabel": "Campo de cliente:",
|
|
"clientFieldDescription": "client (coincide con clientes existentes por nombre)",
|
|
"noteLabel": "Nota:",
|
|
"noteDescription": "La importación/exportación CSV en la versión 1 maneja un número de teléfono predeterminado por contacto. Las etiquetas deben ser valores separados por comas.",
|
|
"downloadTemplate": "Descargar plantilla CSV",
|
|
"emailFieldsLabel": "Campos de correo:",
|
|
"emailFieldsDescription": "primary_email_type (work/personal/billing/other o una etiqueta personalizada), additional_email_addresses (use `label:email@example.com | label:email@example.com`)",
|
|
"hybridEmailNote": "La importación/exportación CSV conserva `email` como el correo de contacto principal/predeterminado. Las etiquetas deben ser valores separados por comas."
|
|
},
|
|
"mapping": {
|
|
"title": "Asignar campos de contacto a columnas CSV",
|
|
"description": "Seleccione qué columna CSV contiene los datos de cada campo de contacto. Los campos marcados con * son obligatorios.",
|
|
"contactFieldHeader": "Campo de contacto",
|
|
"csvColumnHeader": "Seleccionar columna CSV",
|
|
"notMapped": "Sin asignar",
|
|
"requiredFieldsNote": "* Los campos obligatorios deben estar asignados para continuar con la importación",
|
|
"largeImportWarning": "Está importando {{count}} registros. El procesamiento puede tardar un momento.",
|
|
"processing": "Procesando...",
|
|
"preview": "Vista previa"
|
|
},
|
|
"preview": {
|
|
"title": "Vista previa de la importación",
|
|
"totalRecords": "Registros totales:",
|
|
"valid": "Válidos:",
|
|
"invalid": "No válidos:"
|
|
},
|
|
"importing": {
|
|
"title": "Importando contactos",
|
|
"processing": "Procesando: {{current}} de {{total}}",
|
|
"currentItem": "Procesando actualmente: {{item}}"
|
|
},
|
|
"complete": {
|
|
"title": "Importación completa",
|
|
"successMessage": "Se importaron correctamente {{count}} contactos"
|
|
},
|
|
"confirmUpdate": {
|
|
"title": "Actualizar contactos existentes",
|
|
"message": "{{count}} contactos ya existen. ¿Desea actualizarlos con los nuevos datos?"
|
|
}
|
|
},
|
|
"contactPhoneNumbersEditor": {
|
|
"title": "Números de teléfono",
|
|
"description": "Editor de números de teléfono con gestión de tipos, validación, valores predeterminados y compatibilidad con extensiones",
|
|
"actions": {
|
|
"addPhone": "Añadir teléfono"
|
|
},
|
|
"empty": "Todavía no hay números de teléfono.",
|
|
"phoneTypes": {
|
|
"work": "Trabajo",
|
|
"mobile": "Móvil",
|
|
"home": "Casa",
|
|
"fax": "Fax",
|
|
"other": "Otro",
|
|
"custom": "Personalizado"
|
|
},
|
|
"row": {
|
|
"title": "Teléfono {{number}}",
|
|
"defaultDescription": "Número de teléfono predeterminado",
|
|
"secondaryDescription": "Número de teléfono secundario",
|
|
"defaultLabel": "Predeterminado",
|
|
"moveUp": "Mover el teléfono {{number}} hacia arriba",
|
|
"moveDown": "Mover el teléfono {{number}} hacia abajo",
|
|
"remove": "Eliminar el teléfono {{number}}"
|
|
},
|
|
"fields": {
|
|
"phoneNumber": "Número de teléfono",
|
|
"phoneType": "Tipo de teléfono",
|
|
"customPhoneType": "Tipo de teléfono personalizado",
|
|
"customTypePlaceholder": "Seleccione o escriba un tipo de teléfono personalizado",
|
|
"customTypeSearchPlaceholder": "Busque o escriba un tipo de teléfono personalizado...",
|
|
"customTypeEmpty": "No hay tipos de teléfono personalizados que coincidan.",
|
|
"customTypeUseValue": "Usar \"{{value}}\""
|
|
},
|
|
"validation": {
|
|
"selectExactlyOneDefault": "Seleccione exactamente un número de teléfono predeterminado.",
|
|
"phoneRow": "Teléfono {{number}}",
|
|
"enterCompletePhoneNumber": "Introduzca un número de teléfono completo.",
|
|
"enterCustomPhoneType": "Introduzca un tipo de teléfono personalizado.",
|
|
"customTypesUnique": "Las etiquetas de tipo de teléfono personalizado deben ser únicas."
|
|
},
|
|
"lastTypeUsage": {
|
|
"title": "Último uso del tipo de teléfono",
|
|
"message": "Este es el último uso del tipo de teléfono personalizado \"{{label}}\". ¿Eliminar la definición del tipo o conservarla para usarla más adelante?",
|
|
"removeAndDelete": "Quitar y eliminar tipo",
|
|
"removeAndKeep": "Quitar y conservar tipo"
|
|
}
|
|
},
|
|
"contactPortalTab": {
|
|
"boardCount_one": "{{count}} tablero",
|
|
"boardCount_other": "{{count}} tableros",
|
|
"title": "Acceso al portal",
|
|
"description": "Gestión del acceso al portal del cliente para un contacto, incluidas invitaciones y actualizaciones de roles",
|
|
"loadingDescription": "Cargando información del portal...",
|
|
"information": "Los correos de invitación se enviarán desde el sistema de correo electrónico de su organización. Las respuestas se enviarán a la dirección de correo electrónico predeterminada de la ubicación del cliente.",
|
|
"activeAccess": "Acceso al portal activo",
|
|
"noAccess": {
|
|
"title": "Sin acceso al portal",
|
|
"description": "Este contacto aún no tiene acceso al portal del cliente"
|
|
},
|
|
"portalAdmin": {
|
|
"label": "Administrador del portal",
|
|
"helper": "Cuando está habilitado, el usuario se creará con el rol Administrador del cliente. Cuando está deshabilitado, obtendrá el rol Usuario del cliente."
|
|
},
|
|
"roles": {
|
|
"label": "Roles del portal",
|
|
"none": "Sin roles asignados",
|
|
"placeholder": "Seleccione un rol para añadir",
|
|
"addButton": "Añadir rol"
|
|
},
|
|
"userStatus": {
|
|
"label": "Estado del usuario",
|
|
"active": "El usuario está activo actualmente",
|
|
"inactive": "El usuario está inactivo actualmente"
|
|
},
|
|
"lastLogin": {
|
|
"label": "Último inicio de sesión",
|
|
"via": "mediante {{method}}"
|
|
},
|
|
"history": {
|
|
"title": "Historial de invitaciones",
|
|
"description": "Invitaciones recientes del portal enviadas a este contacto",
|
|
"empty": "Todavía no se han enviado invitaciones del portal a este contacto.",
|
|
"sentPrefix": "Enviado:",
|
|
"expiresPrefix": "Caduca:",
|
|
"usedPrefix": "Usado:",
|
|
"status": {
|
|
"pending": "Pendiente",
|
|
"used": "Usado",
|
|
"expired": "Caducado",
|
|
"revoked": "Revocado"
|
|
}
|
|
},
|
|
"actions": {
|
|
"sendInvitation": "Enviar invitación al portal",
|
|
"sending": "Enviando...",
|
|
"refresh": "Actualizar",
|
|
"refreshing": "Actualizando...",
|
|
"resend": "Reenviar",
|
|
"resending": "Reenviando...",
|
|
"revoke": "Revocar"
|
|
},
|
|
"toast": {
|
|
"successTitle": "Éxito",
|
|
"errorTitle": "Error",
|
|
"permissionDeniedTitle": "Permiso denegado",
|
|
"loadError": "No se pudo cargar la información del portal",
|
|
"refreshHistoryError": "No se pudo actualizar el historial de invitaciones",
|
|
"sendInvitePermissionDenied": "No tiene permiso para enviar invitaciones",
|
|
"sendInviteSuccess": "¡La invitación al portal se ha enviado correctamente!",
|
|
"sendInviteFailed": "No se pudo enviar la invitación",
|
|
"revokeInviteSuccess": "La invitación se ha revocado correctamente",
|
|
"revokeInviteFailed": "No se pudo revocar la invitación",
|
|
"resendInviteSuccess": "¡La invitación al portal se ha reenviado correctamente!",
|
|
"resendInviteFailed": "No se pudo reenviar la invitación",
|
|
"updatePortalSettingsPermissionDenied": "No tiene permiso para actualizar la configuración del cliente",
|
|
"portalAdminEnabled": "Contacto marcado como administrador del portal del cliente",
|
|
"portalAdminDisabled": "Contacto desmarcado como administrador del portal del cliente",
|
|
"updatePortalAdminFailed": "No se pudo actualizar el estado",
|
|
"updateAdminFailed": "No se pudo actualizar la marca de administrador",
|
|
"updateRolesPermissionDenied": "No tiene permiso para actualizar los roles de usuario",
|
|
"roleAdded": "Rol añadido correctamente",
|
|
"addRoleFailed": "No se pudo añadir el rol",
|
|
"roleRemoved": "Rol eliminado correctamente",
|
|
"removeRoleFailed": "No se pudo eliminar el rol",
|
|
"updateStatusPermissionDenied": "No tiene permiso para actualizar el estado del usuario",
|
|
"userActivated": "Usuario activado correctamente",
|
|
"userDeactivated": "Usuario desactivado correctamente",
|
|
"updateUserStatusFailed": "No se pudo actualizar el estado del usuario",
|
|
"errors": {
|
|
"permissionDeniedInvite": "No tienes permiso para invitar usuarios.",
|
|
"emailNotConfigured": "El servicio de correo electrónico está deshabilitado o no está configurado.",
|
|
"contactNotFound": "Contacto no encontrado.",
|
|
"contactMissingEmail": "El contacto no tiene dirección de correo electrónico. Agrega una dirección de correo al contacto antes de enviar una invitación.",
|
|
"contactInvalidEmail": "El contacto tiene una dirección de correo electrónico no válida. Actualiza el contacto con una dirección válida antes de enviar una invitación.",
|
|
"userExistsForContact": "Ya existe una cuenta de usuario para este contacto. Usa el restablecimiento de contraseña en lugar de enviar una invitación.",
|
|
"noDefaultClient": "No hay un cliente predeterminado configurado para este tenant. Configura un cliente predeterminado en Configuración General.",
|
|
"noDefaultLocation": "El cliente predeterminado debe tener una ubicación predeterminada configurada para enviar invitaciones al portal.",
|
|
"noLocationEmail": "La ubicación del cliente predeterminado debe tener un correo electrónico de contacto configurado.",
|
|
"noBaseUrl": "La URL base no está configurada para las invitaciones al portal.",
|
|
"invitationNotFound": "Invitación no encontrada o ya utilizada."
|
|
}
|
|
}
|
|
},
|
|
"quickAddContact": {
|
|
"title": "Añadir contacto nuevo",
|
|
"description": "Formulario rápido para crear un contacto con campos de cliente, cargo, teléfono y etiquetas",
|
|
"dialog": {
|
|
"title": "Añadir contacto nuevo"
|
|
},
|
|
"errorFallback": {
|
|
"title": "Algo ha salido mal:",
|
|
"tryAgain": "Intentar de nuevo"
|
|
},
|
|
"actions": {
|
|
"submit": "Añadir contacto"
|
|
},
|
|
"fields": {
|
|
"fullName": "Nombre completo *",
|
|
"email": "Correo electrónico *",
|
|
"clientOptional": "Cliente (opcional)",
|
|
"role": "Cargo",
|
|
"rolePlaceholder": "p. ej., gerente, desarrollador, etc.",
|
|
"notes": "Notas",
|
|
"notesPlaceholder": "Añada notas adicionales sobre el contacto..."
|
|
},
|
|
"status": {
|
|
"label": "Estado",
|
|
"active": "Activo",
|
|
"inactive": "Inactivo"
|
|
},
|
|
"validation": {
|
|
"alertIntro": "Corrija los siguientes errores:",
|
|
"fullNameRequired": "El nombre completo es obligatorio",
|
|
"fullNameEmpty": "El nombre completo no puede estar vacío",
|
|
"fullNameSpaces": "El nombre completo no puede contener solo espacios",
|
|
"emailRequired": "El correo electrónico es obligatorio",
|
|
"emailSpaces": "El correo electrónico no puede contener solo espacios",
|
|
"roleSpaces": "El cargo no puede contener solo espacios",
|
|
"roleLength": "El cargo debe tener 100 caracteres o menos",
|
|
"roleCharacters": "El cargo debe contener letras o números",
|
|
"notesSpaces": "Las notas no pueden contener solo espacios"
|
|
},
|
|
"toasts": {
|
|
"warningTitle": "Advertencia",
|
|
"tagsFailed": "{{count}} etiqueta(s) no se pudieron crear",
|
|
"contactCreated": "Contacto creado",
|
|
"contactAdded": "{{name}} se ha añadido correctamente."
|
|
},
|
|
"errors": {
|
|
"createContactTitle": "Error al crear el contacto",
|
|
"unexpected": "Se produjo un error inesperado. Inténtelo de nuevo.",
|
|
"validationTitle": "Error de validación",
|
|
"emailExistsTitle": "El correo electrónico ya existe",
|
|
"invalidReferenceTitle": "Referencia no válida",
|
|
"systemTitle": "Error del sistema",
|
|
"genericTitle": "Error",
|
|
"closeMessage": "Cerrar mensaje de error",
|
|
"createContactHeading": "Error al crear el contacto:",
|
|
"validationPrefix": "Corrija lo siguiente:",
|
|
"emailExistsPrefix": "El correo electrónico ya existe:",
|
|
"invalidReferencePrefix": "Referencia no válida:",
|
|
"systemPrefix": "Error del sistema:"
|
|
}
|
|
},
|
|
"contactDetailsEdit": {
|
|
"title": "Editar contacto - {{name}}",
|
|
"heading": "Editar contacto: {{name}}",
|
|
"inactiveBadge": "inactivo",
|
|
"description": "Formulario editable de contacto usado desde la vista de detalle y los flujos de panel lateral",
|
|
"validation": {
|
|
"fullNameRequired": "El nombre completo es obligatorio",
|
|
"emailRequired": "El correo electrónico es obligatorio",
|
|
"invalidEmail": "Introduzca una dirección de correo electrónico válida"
|
|
},
|
|
"errors": {
|
|
"validationPrefix": "Corrija lo siguiente:",
|
|
"emailExists": "El correo electrónico ya existe: ya existe en el sistema un contacto con esta dirección",
|
|
"invalidReferencePrefix": "Referencia no válida:",
|
|
"systemPrefix": "Error del sistema:",
|
|
"saveFailed": "Se produjo un error al guardar. Inténtelo de nuevo.",
|
|
"unexpected": "Se produjo un error inesperado. Inténtelo de nuevo."
|
|
},
|
|
"fields": {
|
|
"fullName": "Nombre completo",
|
|
"email": "Correo electrónico",
|
|
"role": "Cargo",
|
|
"rolePlaceholder": "p. ej., gerente, desarrollador, etc.",
|
|
"phoneNumbers": "Números de teléfono:",
|
|
"inboundTicketDestinationOverride": "Sobrescribir destino del ticket entrante:",
|
|
"inboundTicketDestinationHelp": "Prioridad: sobrescritura del contacto -> destino del cliente -> valor predeterminado del proveedor.",
|
|
"useClientDestination": "Usar destino del cliente",
|
|
"client": "Cliente:",
|
|
"status": "Estado:",
|
|
"notes": "Notas:",
|
|
"notesPlaceholder": "Añada notas adicionales sobre el contacto...",
|
|
"tags": "Etiquetas:",
|
|
"emailAddresses": "Direcciones de correo:"
|
|
},
|
|
"loading": {
|
|
"destinations": "Cargando destinos..."
|
|
},
|
|
"status": {
|
|
"active": "Activo",
|
|
"inactive": "Inactivo"
|
|
}
|
|
},
|
|
"contactDetailsView": {
|
|
"title": "Detalles del contacto - {{name}}",
|
|
"description": "Resumen de contacto de solo lectura con cliente asociado, teléfonos y metadatos",
|
|
"actions": {
|
|
"goToContact": "Ir al contacto"
|
|
},
|
|
"empty": {
|
|
"notSet": "No establecido",
|
|
"unknownClient": "Cliente desconocido"
|
|
},
|
|
"phoneTypes": {
|
|
"work": "Trabajo",
|
|
"mobile": "Móvil",
|
|
"home": "Casa",
|
|
"fax": "Fax",
|
|
"other": "Otro"
|
|
},
|
|
"fields": {
|
|
"fullName": "Nombre completo",
|
|
"email": "Correo electrónico",
|
|
"phone": "Teléfono:",
|
|
"defaultPhone": "Predeterminado",
|
|
"client": "Cliente:",
|
|
"noClientAssigned": "Sin cliente asignado",
|
|
"role": "Cargo",
|
|
"status": "Estado",
|
|
"createdAt": "Creado el",
|
|
"updatedAt": "Actualizado el",
|
|
"notes": "Notas:",
|
|
"tags": "Etiquetas:",
|
|
"emailAddresses": "Direcciones de correo:",
|
|
"defaultEmail": "Predeterminado"
|
|
},
|
|
"status": {
|
|
"active": "Activo",
|
|
"inactive": "Inactivo"
|
|
},
|
|
"sections": {
|
|
"documents": "Documentos"
|
|
},
|
|
"errors": {
|
|
"loadTagsSystem": "Se produjo un error inesperado al cargar las etiquetas. Inténtelo de nuevo o póngase en contacto con soporte.",
|
|
"loadTagsFailed": "No se pudieron cargar las etiquetas. Intente actualizar la página.",
|
|
"unexpected": "Se produjo un error inesperado. Inténtelo de nuevo.",
|
|
"clientNotFound": "No se encontró el cliente. Es posible que se haya eliminado.",
|
|
"loadClientSystem": "Se produjo un error inesperado al cargar los datos del cliente. Inténtelo de nuevo o póngase en contacto con soporte.",
|
|
"clientMissing": "El cliente ya no existe en el sistema.",
|
|
"loadClientFailed": "No se pudieron cargar los datos del cliente. Inténtelo de nuevo.",
|
|
"updateClientFailedWithMessage": "No se pudo actualizar el cliente: {{message}}",
|
|
"updateClientFailed": "No se pudo actualizar el cliente. Inténtelo de nuevo."
|
|
}
|
|
},
|
|
"clientContactsList": {
|
|
"title": "Contactos del cliente",
|
|
"description": "Lista de contactos específica del cliente incrustada con filtros y acciones por fila",
|
|
"table": {
|
|
"name": "Nombre",
|
|
"email": "Correo electrónico",
|
|
"phoneNumber": "Número de teléfono",
|
|
"actions": "Acciones"
|
|
},
|
|
"filter": {
|
|
"show": "Mostrar:",
|
|
"active": "Contactos activos",
|
|
"inactive": "Contactos inactivos",
|
|
"all": "Todos los contactos"
|
|
},
|
|
"actions": {
|
|
"openMenu": "Abrir menú",
|
|
"quickView": "Vista rápida",
|
|
"addNewContact": "Añadir nuevo contacto"
|
|
},
|
|
"errors": {
|
|
"loadFailed": "No se pudieron cargar los contactos.",
|
|
"loadingTitle": "Error al cargar los contactos",
|
|
"retryFailed": "No se pudieron cargar los contactos. Inténtelo de nuevo."
|
|
}
|
|
},
|
|
"contactsLayout": {
|
|
"title": "Diseño de contactos",
|
|
"description": "Marco y estructura de página de la ruta de contactos"
|
|
},
|
|
"contactsSkeleton": {
|
|
"title": "Estado de carga de contactos",
|
|
"description": "Marcadores de posición de carga para las vistas de lista y detalle de contactos"
|
|
},
|
|
"contactAvatarUpload": {
|
|
"title": "Carga de avatar de contacto",
|
|
"description": "Área de carga para imágenes de perfil de contactos"
|
|
},
|
|
"contactNotesPanel": {
|
|
"title": "Notas e información rápida",
|
|
"description": "Panel de notas enriquecidas con visualización de la nota heredada y acciones de guardar/reintentar",
|
|
"legacy": {
|
|
"initialNote": "Nota inicial"
|
|
},
|
|
"errors": {
|
|
"loadTitle": "No se pudieron cargar las notas",
|
|
"unknown": "Error desconocido"
|
|
},
|
|
"lastUpdated": "Última actualización: {{date}}"
|
|
},
|
|
"notes": {
|
|
"messages": {
|
|
"saveSuccess": "Notas guardadas",
|
|
"saveFailed": "No se pudieron guardar las notas"
|
|
}
|
|
},
|
|
"actions": {
|
|
"print": "Imprimir",
|
|
"printOptions": "Opciones de impresión"
|
|
},
|
|
"contactTabs": {
|
|
"tickets": {
|
|
"addTicket": "Agregar ticket",
|
|
"empty": "No se encontraron tickets para este contacto",
|
|
"filters": {
|
|
"allAssignees": "Todos los asignados",
|
|
"allPriorities": "Todas las prioridades",
|
|
"categoryPlaceholder": "Filtrar por categoría",
|
|
"reset": "Restablecer",
|
|
"searchPlaceholder": "Buscar tickets...",
|
|
"statusPlaceholder": "Seleccionar estado"
|
|
},
|
|
"loadMore": {
|
|
"label": "Cargar más tickets",
|
|
"loading": "Cargando..."
|
|
},
|
|
"loading": "Cargando...",
|
|
"title": "Tickets del contacto",
|
|
"toasts": {
|
|
"clientNotFound": "Cliente no encontrado",
|
|
"loadClientFailed": "No se pudieron cargar los detalles del cliente",
|
|
"loadTicketFailed": "No se pudo cargar el ticket",
|
|
"openTicketFailed": "No se pudo abrir el ticket",
|
|
"userNotAuthenticated": "Usuario no autenticado"
|
|
}
|
|
}
|
|
}
|
|
}
|