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
667 lines
26 KiB
JSON
667 lines
26 KiB
JSON
{
|
|
"profile": {
|
|
"tabs": {
|
|
"profile": "Perfil",
|
|
"security": "Seguridad",
|
|
"sso": "Inicio de sesión único",
|
|
"apiKeys": "Claves API",
|
|
"notifications": "Notificaciones",
|
|
"calendar": "Calendario",
|
|
"keyboardShortcuts": "Keyboard Shortcuts"
|
|
},
|
|
"basicInfo": {
|
|
"title": "Información básica"
|
|
},
|
|
"fields": {
|
|
"firstName": {
|
|
"label": "Nombre *"
|
|
},
|
|
"lastName": {
|
|
"label": "Apellido *"
|
|
},
|
|
"email": {
|
|
"label": "Correo electrónico *"
|
|
},
|
|
"phoneNumber": {
|
|
"label": "Número de teléfono"
|
|
},
|
|
"timeZone": {
|
|
"label": "Zona horaria"
|
|
}
|
|
},
|
|
"actions": {
|
|
"saveChanges": "Guardar cambios"
|
|
},
|
|
"notifications": {
|
|
"title": "Preferencias de notificaciones",
|
|
"viewSwitcher": {
|
|
"email": "Correo electrónico",
|
|
"internal": "Internas"
|
|
}
|
|
},
|
|
"loading": "Cargando perfil...",
|
|
"messages": {
|
|
"success": {
|
|
"profileUpdated": "Perfil actualizado correctamente"
|
|
},
|
|
"error": {
|
|
"userNotFound": "Usuario no encontrado",
|
|
"fillRequiredFields": "Complete todos los campos obligatorios",
|
|
"loadFailed": "No se pudo cargar el perfil",
|
|
"saveFailed": "No se pudo guardar el perfil",
|
|
"errorPrefix": "Error: {{error}}"
|
|
}
|
|
},
|
|
"validation": {
|
|
"firstNameRequired": "El nombre es obligatorio",
|
|
"lastNameRequired": "El apellido es obligatorio"
|
|
},
|
|
"pageTitle": "Su perfil",
|
|
"changePassword": {
|
|
"title": "Cambiar contraseña",
|
|
"current": "Contraseña actual",
|
|
"new": "Nueva contraseña",
|
|
"confirm": "Confirmar nueva contraseña",
|
|
"requirements": "La contraseña debe tener al menos 8 caracteres",
|
|
"submit": "Cambiar contraseña",
|
|
"success": "Contraseña cambiada correctamente",
|
|
"error": "No se pudo cambiar la contraseña",
|
|
"passwordMismatch": "Las nuevas contraseñas no coinciden",
|
|
"unknownError": "Se produjo un error al cambiar la contraseña",
|
|
"validationFailed": "La contraseña no cumple todos los requisitos"
|
|
},
|
|
"loadingStates": {
|
|
"sso": {
|
|
"title": "Inicio de sesión único",
|
|
"description": "Cargando configuración de SSO..."
|
|
},
|
|
"calendar": {
|
|
"title": "Calendario",
|
|
"description": "Cargando configuración del calendario..."
|
|
}
|
|
}
|
|
},
|
|
"security": {
|
|
"title": "Configuración de seguridad",
|
|
"tabs": {
|
|
"roles": "Roles",
|
|
"sessions": "Sesiones",
|
|
"sso": "Inicio de sesión único",
|
|
"permissions": "Permisos",
|
|
"userRoles": "Roles de usuario",
|
|
"policies": "Políticas",
|
|
"apiKeys": "Claves API",
|
|
"webhooks": "Webhooks"
|
|
},
|
|
"loading": {
|
|
"roles": "Cargando configuración de roles...",
|
|
"permissions": "Cargando configuración de permisos...",
|
|
"userRoles": "Cargando configuración de roles de usuario...",
|
|
"policies": "Cargando configuración de políticas...",
|
|
"apiKeys": "Cargando configuración de claves API...",
|
|
"webhooks": "Cargando configuración de webhooks...",
|
|
"sso": "Cargando herramientas de gestión de SSO...",
|
|
"sessions": "Cargando sesiones activas..."
|
|
},
|
|
"userRoles": {
|
|
"title": "Asignar roles a usuarios",
|
|
"description": {
|
|
"msp": "Administrar asignaciones de roles de usuario para usuarios de MSP",
|
|
"client": "Administrar asignaciones de roles de usuario para usuarios del portal del cliente"
|
|
},
|
|
"viewSwitcher": {
|
|
"msp": "MSP",
|
|
"clientPortal": "Portal de clientes"
|
|
},
|
|
"showInactive": "Mostrar usuarios inactivos",
|
|
"fields": {
|
|
"selectUser": "Seleccionar usuario",
|
|
"selectRole": "Seleccionar rol"
|
|
},
|
|
"actions": {
|
|
"assignRole": "Asignar rol"
|
|
},
|
|
"table": {
|
|
"user": "Usuario",
|
|
"email": "Correo electrónico",
|
|
"roles": "Roles",
|
|
"actions": "Acciones"
|
|
},
|
|
"noRolesAssigned": "No hay roles asignados",
|
|
"removeRole": "Eliminar {{role}}",
|
|
"emptyState": {
|
|
"noUsers": "No se encontraron usuarios de tipo {{type}}",
|
|
"inactiveHidden": "(usuarios inactivos ocultos)"
|
|
},
|
|
"inactiveTag": "(Inactivo)",
|
|
"unnamedUser": "Usuario sin nombre",
|
|
"messages": {
|
|
"success": {
|
|
"roleAssigned": "Rol asignado correctamente",
|
|
"roleRemoved": "Rol eliminado correctamente"
|
|
},
|
|
"error": {
|
|
"assignFailed": "No se pudo asignar el rol. Inténtalo de nuevo.",
|
|
"removeFailed": "No se pudo eliminar el rol. Inténtalo de nuevo.",
|
|
"permissionDenied": "No tienes permiso para cambiar los roles de usuario."
|
|
}
|
|
}
|
|
},
|
|
"sessions": {
|
|
"title": "Todas las sesiones de usuarios",
|
|
"filters": {
|
|
"search": "Buscar",
|
|
"searchPlaceholder": "Buscar por nombre, correo electrónico, dispositivo o IP...",
|
|
"user": "Usuario",
|
|
"allUsers": "Todos los usuarios",
|
|
"loginMethod": "Método de inicio de sesión",
|
|
"allMethods": "Todos los métodos",
|
|
"userType": "Tipo de usuario",
|
|
"allTypes": "Todos los tipos",
|
|
"from": "Desde",
|
|
"to": "Hasta",
|
|
"selectDate": "Seleccionar fecha",
|
|
"reset": "Restablecer"
|
|
},
|
|
"loginMethods": {
|
|
"password": "Contraseña",
|
|
"google": "OAuth de Google",
|
|
"microsoft": "OAuth de Microsoft",
|
|
"keycloak": "Keycloak"
|
|
},
|
|
"userTypes": {
|
|
"internal": "Interno",
|
|
"client": "Cliente"
|
|
},
|
|
"session": {
|
|
"yourSession": "Su sesión",
|
|
"unknownDevice": "Dispositivo desconocido",
|
|
"lastActive": "Última actividad {{time}}",
|
|
"logout": "Cerrar sesión",
|
|
"revoke": "Revocar",
|
|
"revoking": "Revocando..."
|
|
},
|
|
"oauthWarning": "Revocar esta sesión no revocará el acceso de OAuth de {{provider}}. Revoque el acceso desde la configuración de su cuenta de {{provider}}.",
|
|
"confirmLogout": "¿Está seguro de que desea cerrar sesión en este dispositivo?",
|
|
"messages": {
|
|
"loggingOut": "Cerrando sesión...",
|
|
"revoked": "Sesión revocada correctamente",
|
|
"loadFailed": "No se pudieron cargar las sesiones",
|
|
"revokeFailed": "No se pudo revocar la sesión"
|
|
},
|
|
"emptyState": {
|
|
"loading": "Cargando sesiones...",
|
|
"noMatch": "Ninguna sesión coincide con su búsqueda",
|
|
"noSessions": "No se encontraron sesiones activas"
|
|
},
|
|
"subtitle_one": "{{sessionCount}} sesión activa en {{userCount}} usuario",
|
|
"subtitle_other": "{{sessionCount}} sesiones activas en {{userCount}} usuarios"
|
|
},
|
|
"webhooks": {
|
|
"title": "Webhooks salientes",
|
|
"description": "Cree suscripciones firmadas al ciclo de vida de tickets, fíltrelas por IDs de ticket específicos, inspeccione el historial de entregas y rote secretos sin salir de la configuración.",
|
|
"newWebhook": "Nuevo webhook",
|
|
"tabs": {
|
|
"configuration": "Configuración",
|
|
"deliveries": "Entregas",
|
|
"inbound": "Entrantes",
|
|
"outbound": "Salientes"
|
|
},
|
|
"inbound": {
|
|
"title": "Webhooks entrantes",
|
|
"description": "Acepta solicitudes autenticadas de sistemas externos y despáchalas a acciones directas o flujos de trabajo.",
|
|
"placeholder": "Configura endpoints de webhooks entrantes que verifican solicitudes, deduplican entregas y despachan a acciones o flujos.",
|
|
"newWebhook": "Nuevo webhook",
|
|
"list": {
|
|
"title": "Webhooks entrantes configurados",
|
|
"loading": "Cargando…",
|
|
"configuredCount": "{{count}} configurados",
|
|
"empty": "Aún no hay webhooks entrantes configurados.",
|
|
"columns": {
|
|
"name": "Nombre",
|
|
"handler": "Manejador",
|
|
"lastDelivery": "Última entrega",
|
|
"active": "Activo",
|
|
"actions": "Acciones"
|
|
}
|
|
},
|
|
"handlers": {
|
|
"directAction": "Acción directa",
|
|
"workflow": "Flujo de trabajo"
|
|
},
|
|
"status": {
|
|
"active": "Activo",
|
|
"inactive": "Inactivo"
|
|
},
|
|
"messages": {
|
|
"loadFailed": "Error al cargar los webhooks entrantes.",
|
|
"nameRequired": "El nombre es obligatorio.",
|
|
"slugRequired": "El slug es obligatorio.",
|
|
"actionRequired": "Selecciona una acción antes de guardar.",
|
|
"workflowRequired": "Selecciona un flujo antes de guardar.",
|
|
"missingRequiredFields": "Asigna un valor para los campos obligatorios: {{fields}}"
|
|
},
|
|
"dialog": {
|
|
"createTitle": "Crear webhook entrante",
|
|
"editTitle": "Editar webhook entrante",
|
|
"cancel": "Cancelar",
|
|
"create": "Crear webhook",
|
|
"save": "Guardar cambios",
|
|
"saveUnavailable": "Continuar"
|
|
},
|
|
"identity": {
|
|
"title": "Identidad",
|
|
"help": "Nombra el webhook y elige el slug seguro para URL usado en su endpoint receptor.",
|
|
"name": "Nombre",
|
|
"namePlaceholder": "Alertas críticas de RMM",
|
|
"slug": "Slug",
|
|
"slugPlaceholder": "alertas-criticas-rmm",
|
|
"description": "Descripción",
|
|
"descriptionPlaceholder": "Notas opcionales sobre el sistema de origen y el payload."
|
|
},
|
|
"auth": {
|
|
"title": "Autenticación",
|
|
"help": "Elige cómo las solicitudes entrantes demuestran que están autorizadas a usar este endpoint.",
|
|
"method": "Método de autenticación",
|
|
"types": {
|
|
"hmacSha256": "HMAC-SHA256",
|
|
"bearer": "Token Bearer",
|
|
"ipAllowlist": "Lista blanca de IPs",
|
|
"pathToken": "Secreto compartido en ruta"
|
|
},
|
|
"signatureHeader": "Cabecera de firma",
|
|
"signatureHeaderPlaceholder": "X-Alga-Signature",
|
|
"bearerToken": "Token Bearer",
|
|
"bearerTokenPlaceholder": "Pega el token o deja vacío para generar uno",
|
|
"secretUnchangedPlaceholder": "Deja vacío para mantener el secreto actual",
|
|
"ipCidrs": "IPs / CIDRs permitidos",
|
|
"ipCidrsPlaceholder": "203.0.113.10\n198.51.100.0/24",
|
|
"queryParam": "Parámetro de consulta",
|
|
"queryParamPlaceholder": "token",
|
|
"pathToken": "Token de ruta",
|
|
"pathTokenPlaceholder": "Pega el token o deja vacío para generar uno"
|
|
},
|
|
"secret": {
|
|
"label": "Secreto del webhook",
|
|
"warning": "Este valor se muestra solo ahora. Guárdalo en el sistema de origen antes de cerrar este diálogo.",
|
|
"copy": "Copiar",
|
|
"download": "Descargar como .txt",
|
|
"close": "Cerrar"
|
|
},
|
|
"idempotency": {
|
|
"title": "Idempotencia",
|
|
"help": "Usa una clave estable para detectar entregas duplicadas dentro de la ventana configurada.",
|
|
"source": "Origen de la clave",
|
|
"types": {
|
|
"header": "Cabecera HTTP",
|
|
"jsonata": "Expresión JSONata"
|
|
},
|
|
"headerName": "Nombre de la cabecera",
|
|
"headerNamePlaceholder": "X-Idempotency-Key",
|
|
"jsonataExpression": "Expresión JSONata",
|
|
"jsonataExpressionPlaceholder": "alert.id",
|
|
"windowSeconds": "Ventana de duplicados (segundos)"
|
|
},
|
|
"active": {
|
|
"title": "Estado activo",
|
|
"help": "Pausa el endpoint sin eliminar su URL, mapeos o historial de entregas.",
|
|
"toggle": "El webhook está activo",
|
|
"autoDisabled": "Deshabilitado automáticamente el {{date}} tras fallos repetidos.",
|
|
"updateFailed": "Error al actualizar el estado del webhook entrante."
|
|
},
|
|
"handler": {
|
|
"title": "Manejador",
|
|
"help": "Elige qué debe hacer Alga después de que la solicitud sea verificada y deduplicada.",
|
|
"type": "Tipo de manejador",
|
|
"types": {
|
|
"directAction": "Acción directa",
|
|
"workflow": "Flujo de trabajo"
|
|
},
|
|
"directActionTitle": "Acción directa",
|
|
"directActionHelp": "Selecciona una acción entrante y mapea los campos del payload a sus campos de destino.",
|
|
"action": "Acción",
|
|
"actionPlaceholder": "Selecciona una acción",
|
|
"actionEmpty": "No hay acciones entrantes registradas. Asegúrate de que el servidor haya inicializado el registro de acciones antes de guardar.",
|
|
"targetFields": "Campos de destino",
|
|
"required": "Requerido",
|
|
"optional": "Opcional",
|
|
"mappingPlaceholder": "Escribe una expresión JSONata, p. ej. payload.field",
|
|
"workflowTitle": "Flujo de trabajo",
|
|
"workflowHelp": "Selecciona un flujo para iniciar con el envelope normalizado del webhook.",
|
|
"workflow": "Flujo de trabajo",
|
|
"workflowPlaceholder": "Selecciona un flujo",
|
|
"workflowEmpty": "No hay flujos visibles en este inquilino. Publica o muestra un flujo para usar el manejador de flujos.",
|
|
"envelopeTitle": "Envelope de entrada del flujo",
|
|
"fieldTypes": {
|
|
"string": "cadena",
|
|
"int": "entero",
|
|
"number": "número",
|
|
"boolean": "booleano",
|
|
"enum": "enum",
|
|
"json": "json",
|
|
"ref": "referencia"
|
|
}
|
|
},
|
|
"sample": {
|
|
"title": "Payload de ejemplo",
|
|
"help": "Captura la próxima solicitud verificada para la autocompletado de mapeo.",
|
|
"createFirst": "Guarda el webhook antes de capturar una solicitud de ejemplo.",
|
|
"captureButton": "Capturar solicitud de ejemplo",
|
|
"captureActive": "Ventana de captura activa hasta {{expiresAt}}.",
|
|
"sampleAvailable": "Payload de ejemplo capturado.",
|
|
"noSample": "Aún no se ha capturado ningún ejemplo.",
|
|
"captureFailed": "Error al habilitar la captura de ejemplos."
|
|
},
|
|
"sampleTree": {
|
|
"title": "Rutas de ejemplo",
|
|
"help": "Haz clic en una ruta para insertarla en {{field}}.",
|
|
"focusHelp": "Enfoca un campo de mapeo, luego haz clic en una ruta para insertarla.",
|
|
"empty": "Captura un payload de ejemplo para explorar campos."
|
|
},
|
|
"mapping": {
|
|
"modeStatic": "Valor estático",
|
|
"modeExpression": "Mapear desde la carga útil",
|
|
"unknownReference": "referencia desconocida",
|
|
"loading": "Cargando…",
|
|
"errors": {
|
|
"INVALID_INT": "El valor \"{{value}}\" debe ser un entero.",
|
|
"INVALID_NUMBER": "El valor \"{{value}}\" debe ser un número.",
|
|
"INVALID_BOOLEAN": "El valor debe ser \"true\" o \"false\".",
|
|
"INVALID_JSON": "El valor debe ser JSON válido."
|
|
}
|
|
},
|
|
"deliveryLog": {
|
|
"title": "Registro de entregas",
|
|
"help": "Entregas verificadas recientes para este webhook entrante.",
|
|
"empty": "Aún no se han registrado entregas.",
|
|
"loadFailed": "Error al cargar las entregas.",
|
|
"pageSummary": "Página {{page}} de {{total}}",
|
|
"durationMs": "{{duration}} ms",
|
|
"allStatuses": "Todos los estados",
|
|
"columns": {
|
|
"received": "Recibido",
|
|
"status": "Estado",
|
|
"response": "Respuesta",
|
|
"duration": "Duración",
|
|
"actions": "Acciones"
|
|
},
|
|
"view": "Ver",
|
|
"status": {
|
|
"pending": "pendiente",
|
|
"dispatched": "entregado",
|
|
"duplicate": "duplicado",
|
|
"failed": "fallido"
|
|
}
|
|
},
|
|
"deliveryDetail": {
|
|
"title": "Detalle de entrega",
|
|
"close": "Cerrar",
|
|
"replay": "Reenviar",
|
|
"replayConfirm": "¿Reenviar esta entrega a través de la configuración actual del webhook? Cualquier efecto secundario (creación de tickets, cambios de estado, etc.) volverá a ejecutarse.",
|
|
"replayFailed": "Error al reenviar la entrega.",
|
|
"received": "Recibido",
|
|
"status": "Estado",
|
|
"responseStatus": "Estado de respuesta",
|
|
"duration": "Duración",
|
|
"sections": {
|
|
"headers": "Cabeceras de la solicitud",
|
|
"requestBody": "Cuerpo de la solicitud",
|
|
"responseBody": "Cuerpo de la respuesta",
|
|
"handlerOutcome": "Resultado del manejador"
|
|
}
|
|
},
|
|
"test": {
|
|
"openButton": "Enviar prueba",
|
|
"title": "Enviar solicitud de prueba",
|
|
"body": "Cuerpo JSON de la solicitud",
|
|
"headers": "Cabeceras",
|
|
"cancel": "Cancelar",
|
|
"send": "Enviar prueba",
|
|
"sendFailed": "Error al enviar la solicitud de prueba del webhook."
|
|
}
|
|
},
|
|
"stats": {
|
|
"total": "Webhooks totales",
|
|
"active": "Activos",
|
|
"autoDisabled": "Deshabilitados automáticamente"
|
|
},
|
|
"secret": {
|
|
"label": "Secreto de firma",
|
|
"warning": "Este valor solo se muestra ahora. Guárdelo en el receptor antes de salir de la página.",
|
|
"copy": "Copiar",
|
|
"copied": "Secreto de firma copiado al portapapeles",
|
|
"copyFailed": "No se pudo copiar el secreto de firma al portapapeles",
|
|
"close": "Cerrar",
|
|
"download": "Descargar como .txt"
|
|
},
|
|
"form": {
|
|
"createTitle": "Crear webhook",
|
|
"editTitle": "Editar webhook",
|
|
"helper": "La configuración de reintentos se guarda como JSON; la cadencia de entrega sigue usando el plan de backoff estándar de la plataforma en v1.",
|
|
"name": "Nombre",
|
|
"namePlaceholder": "Feed de asignación de tickets",
|
|
"url": "URL",
|
|
"urlPlaceholder": "https://example.com/hooks/alga",
|
|
"events": "Eventos",
|
|
"customHeaders": "Encabezados personalizados",
|
|
"customHeadersPlaceholder": "Authorization: Bearer abc123\nX-Source: alga-psa",
|
|
"ticketFilter": "Filtro de tickets",
|
|
"ticketFilterPlaceholder": "Un UUID de ticket por línea. Deje en blanco para recibir todos los eventos de ticket coincidentes.",
|
|
"retryConfig": "Configuración de reintentos (JSON)",
|
|
"verifySsl": "Verificar certificados SSL",
|
|
"webhookActive": "El webhook está activo",
|
|
"save": "Guardar cambios",
|
|
"saving": "Guardando…",
|
|
"create": "Crear webhook",
|
|
"clear": "Limpiar",
|
|
"delete": "Eliminar",
|
|
"payloadFields": "Campos enviados",
|
|
"payloadFieldsHelp": "Todos los campos se envían de forma predeterminada. Desmarque para excluir un campo del envío. La clave de correlación de la entidad (p. ej., ticket_id) siempre se incluye.",
|
|
"payloadFieldsSelectAll": "Seleccionar todo",
|
|
"payloadFieldsClear": "Limpiar"
|
|
},
|
|
"list": {
|
|
"title": "Webhooks configurados",
|
|
"loading": "Cargando…",
|
|
"configuredCount": "{{count}} configurados",
|
|
"empty": "Aún no hay webhooks configurados.",
|
|
"columns": {
|
|
"name": "Nombre",
|
|
"status": "Estado",
|
|
"lastDelivery": "Última entrega",
|
|
"success": "Éxito",
|
|
"actions": "Acciones"
|
|
},
|
|
"actions": {
|
|
"selected": "Seleccionado",
|
|
"manage": "Gestionar",
|
|
"pause": "Pausar",
|
|
"resume": "Reanudar",
|
|
"view": "Ver",
|
|
"edit": "Editar"
|
|
}
|
|
},
|
|
"detail": {
|
|
"summary": "{{total}} entregas, {{successful}} exitosas, {{failed}} fallidas.",
|
|
"sendTest": "Enviar prueba",
|
|
"sending": "Enviando…",
|
|
"rotateSecret": "Rotar secreto",
|
|
"rotating": "Rotando…",
|
|
"back": "Volver a webhooks"
|
|
},
|
|
"deliveries": {
|
|
"title": "Historial de entregas",
|
|
"page": "Página {{page}} de {{total}}",
|
|
"empty": "Aún no hay entregas registradas.",
|
|
"columns": {
|
|
"event": "Evento",
|
|
"status": "Estado",
|
|
"attempted": "Intentado",
|
|
"response": "Respuesta",
|
|
"action": "Acción"
|
|
},
|
|
"testBadge": "Entrega de prueba",
|
|
"attempt": "Intento {{number}}",
|
|
"noResponseCode": "n/d",
|
|
"noResponseBody": "No se capturó cuerpo de respuesta.",
|
|
"retry": "Reintentar",
|
|
"previous": "Anterior",
|
|
"next": "Siguiente"
|
|
},
|
|
"messages": {
|
|
"loadFailed": "No se pudieron cargar los ajustes de webhook.",
|
|
"loadDeliveriesFailed": "No se pudieron cargar las entregas del webhook.",
|
|
"saveFailed": "No se pudo guardar el webhook.",
|
|
"createSuccess": "Webhook creado.",
|
|
"updateSuccess": "Webhook actualizado.",
|
|
"deleteConfirm": "¿Eliminar webhook \"{{name}}\"?",
|
|
"deleteSuccess": "Webhook eliminado.",
|
|
"deleteFailed": "No se pudo eliminar el webhook.",
|
|
"testSuccess": "Prueba enviada con éxito ({{statusCode}}).",
|
|
"testFailed": "La prueba falló: {{message}}",
|
|
"testRunFailed": "No se pudo enviar la prueba del webhook.",
|
|
"unknownError": "Error desconocido",
|
|
"secretRotated": "Secreto de firma rotado.",
|
|
"rotateFailed": "No se pudo rotar el secreto del webhook.",
|
|
"resumed": "Webhook reanudado.",
|
|
"paused": "Webhook pausado.",
|
|
"stateChangeFailed": "No se pudo actualizar el estado del webhook.",
|
|
"retryQueued": "Reintento en cola para el evento {{eventId}}.",
|
|
"retryFailed": "No se pudo reintentar la entrega.",
|
|
"invalidHeaderLine": "Línea de encabezado no válida: \"{{line}}\"",
|
|
"invalidRetryConfig": "La configuración de reintentos debe ser un objeto JSON"
|
|
},
|
|
"common": {
|
|
"never": "Nunca"
|
|
},
|
|
"health": {
|
|
"healthy": "saludable",
|
|
"failing": "con errores",
|
|
"disabled": "deshabilitado"
|
|
},
|
|
"deliveryStatus": {
|
|
"delivered": "entregado",
|
|
"retrying": "reintentando",
|
|
"abandoned": "abandonado",
|
|
"pending": "pendiente"
|
|
}
|
|
},
|
|
"apiKeys": {
|
|
"rateLimit": {
|
|
"columnTitle": "Límite de tasa",
|
|
"loading": "Cargando…",
|
|
"summary": "{{maxTokens}} ráfaga / {{refillPerMin}} por min",
|
|
"source": "Origen: {{label}}",
|
|
"sourceLabels": {
|
|
"key": "Anulación",
|
|
"tenant": "Predeterminado del tenant",
|
|
"default": "Predeterminado del sistema"
|
|
},
|
|
"remaining": " • Restante: {{remaining}}/{{maxTokens}}",
|
|
"remainingUnavailable": " • Restante: no disponible",
|
|
"actions": {
|
|
"edit": "Editar",
|
|
"override": "Anular",
|
|
"save": "Guardar",
|
|
"cancel": "Cancelar",
|
|
"reset": "Restablecer"
|
|
},
|
|
"errors": {
|
|
"saveFailed": "No se pudo guardar la anulación del límite de tasa de la API.",
|
|
"clearFailed": "No se pudo borrar la anulación del límite de tasa de la API."
|
|
}
|
|
},
|
|
"generate": {
|
|
"title": "Generar clave API",
|
|
"description": "Descripción",
|
|
"descriptionPlaceholder": "p. ej., Clave API de desarrollo",
|
|
"expiration": "Fecha de expiración (opcional)",
|
|
"submit": "Generar nueva clave API"
|
|
},
|
|
"list": {
|
|
"title": "Sus claves API",
|
|
"searchPlaceholder": "Buscar por descripción",
|
|
"filters": {
|
|
"allStatuses": "Todos los estados",
|
|
"active": "Activa",
|
|
"inactive": "Inactiva",
|
|
"lastUsedAfter": "Usada por última vez después de",
|
|
"expiresBefore": "Expira antes de",
|
|
"reset": "Restablecer"
|
|
},
|
|
"columns": {
|
|
"description": "Descripción",
|
|
"created": "Creada",
|
|
"lastUsed": "Último uso",
|
|
"expires": "Expira",
|
|
"status": "Estado",
|
|
"actions": "Acciones"
|
|
},
|
|
"never": "Nunca",
|
|
"status": {
|
|
"active": "Activa",
|
|
"inactive": "Inactiva"
|
|
},
|
|
"deactivate": "Desactivar"
|
|
},
|
|
"newKeyDialog": {
|
|
"title": "Clave API generada",
|
|
"warning": "Copie su clave API ahora. Por motivos de seguridad, no se mostrará de nuevo.",
|
|
"copy": "Copiar al portapapeles",
|
|
"download": "Descargar como .txt",
|
|
"copySuccess": "¡Clave API copiada al portapapeles!",
|
|
"copyFailed": "Error al copiar la clave API al portapapeles",
|
|
"downloadFailed": "Error al descargar la clave API"
|
|
}
|
|
}
|
|
},
|
|
"platformUpdates": {
|
|
"detail": {
|
|
"back": "Volver",
|
|
"labels": {
|
|
"info": "Información",
|
|
"warning": "Advertencia",
|
|
"destructive": "Crítico",
|
|
"success": "Correcto",
|
|
"default": "Aviso"
|
|
}
|
|
}
|
|
},
|
|
"connectSso": {
|
|
"verify": {
|
|
"title": "Asegure su cuenta con SSO",
|
|
"description": "Vincule Azure AD o Google Workspace para reutilizar las políticas organizacionales y omitir las solicitudes locales de doble factor.",
|
|
"signedInAs": "Sesión iniciada como",
|
|
"currentPassword": "Contraseña actual",
|
|
"twoFactorCode": "Código de doble factor",
|
|
"twoFactorPlaceholder": "123456",
|
|
"verifyCredentials": "Verificar credenciales",
|
|
"verifying": "Verificando...",
|
|
"reset": "Restablecer",
|
|
"linkedSuccess": "Proveedor vinculado correctamente.",
|
|
"credentialsVerified": "Credenciales verificadas. Elija un proveedor a continuación para terminar de vincular su cuenta.",
|
|
"verifyFailed": "No se pudieron verificar las credenciales.",
|
|
"verifyBeforeProvider": "Verifique su contraseña (y el código de doble factor si es necesario) antes de conectar un proveedor."
|
|
},
|
|
"providers": {
|
|
"title": "Conectar un proveedor",
|
|
"description": "Elija un proveedor para finalizar el enlace SSO. Será redirigido a través del flujo de inicio de sesión del proveedor.",
|
|
"noneConfigured": "No hay proveedores SSO configurados para este entorno. Solicite a su administrador que configure las credenciales de Google o Microsoft.",
|
|
"notConfigured": "No configurado",
|
|
"branding": {
|
|
"google": "Continuar con Google",
|
|
"microsoft": "Continuar con Microsoft",
|
|
"default": "Continuar"
|
|
}
|
|
},
|
|
"linked": {
|
|
"title": "Cuentas vinculadas",
|
|
"description": "Actualizaremos el enlace la próxima vez que inicie sesión a través de un proveedor conectado.",
|
|
"empty": "Aún no hay proveedores SSO vinculados. Complete los pasos anteriores para conectar uno.",
|
|
"linkedAt": "Vinculado el {{date}}",
|
|
"lastUsed": "Último uso el {{date}}",
|
|
"notUsedYet": "Aún no utilizado"
|
|
}
|
|
}
|
|
}
|