mirror of
https://github.com/fosrl/pangolin.git
synced 2026-03-04 01:36:39 +00:00
Chungus
This commit is contained in:
@@ -67,7 +67,7 @@
|
||||
"siteDocker": "Expandir para detalles de despliegue de Docker",
|
||||
"toggle": "Cambiar",
|
||||
"dockerCompose": "Componer Docker",
|
||||
"dockerRun": "Docker Run",
|
||||
"dockerRun": "Ejecutar Docker",
|
||||
"siteLearnLocal": "Los sitios locales no tienen túnel, aprender más",
|
||||
"siteConfirmCopy": "He copiado la configuración",
|
||||
"searchSitesProgress": "Buscar sitios...",
|
||||
@@ -168,6 +168,9 @@
|
||||
"siteSelect": "Seleccionar sitio",
|
||||
"siteSearch": "Buscar sitio",
|
||||
"siteNotFound": "Sitio no encontrado.",
|
||||
"selectCountry": "Seleccionar país",
|
||||
"searchCountries": "Buscar países...",
|
||||
"noCountryFound": "Ningún país encontrado.",
|
||||
"siteSelectionDescription": "Este sitio proporcionará conectividad al objetivo.",
|
||||
"resourceType": "Tipo de recurso",
|
||||
"resourceTypeDescription": "Determina cómo quieres acceder a tu recurso",
|
||||
@@ -814,7 +817,7 @@
|
||||
"redirectUrl": "URL de redirección",
|
||||
"redirectUrlAbout": "Acerca de la URL de redirección",
|
||||
"redirectUrlAboutDescription": "Esta es la URL a la que los usuarios serán redireccionados después de la autenticación. Necesitas configurar esta URL en la configuración de tu proveedor de identidad.",
|
||||
"pangolinAuth": "Auth - Pangolin",
|
||||
"pangolinAuth": "Autenticación - Pangolin",
|
||||
"verificationCodeLengthRequirements": "Tu código de verificación debe tener 8 caracteres.",
|
||||
"errorOccurred": "Se ha producido un error",
|
||||
"emailErrorVerify": "No se pudo verificar el email:",
|
||||
@@ -914,8 +917,6 @@
|
||||
"idpConnectingToFinished": "Conectado",
|
||||
"idpErrorConnectingTo": "Hubo un problema al conectar con {name}. Por favor, póngase en contacto con su administrador.",
|
||||
"idpErrorNotFound": "IdP no encontrado",
|
||||
"idpGoogleAlt": "Google",
|
||||
"idpAzureAlt": "Azure",
|
||||
"inviteInvalid": "Invitación inválida",
|
||||
"inviteInvalidDescription": "El enlace de invitación no es válido.",
|
||||
"inviteErrorWrongUser": "La invitación no es para este usuario",
|
||||
@@ -1219,7 +1220,7 @@
|
||||
"billing": "Facturación",
|
||||
"orgBillingDescription": "Gestiona tu información de facturación y suscripciones",
|
||||
"github": "GitHub",
|
||||
"pangolinHosted": "Pangolin Hosted",
|
||||
"pangolinHosted": "Pangolin Alojado",
|
||||
"fossorial": "Fossorial",
|
||||
"completeAccountSetup": "Completar configuración de cuenta",
|
||||
"completeAccountSetupDescription": "Establece tu contraseña para comenzar",
|
||||
@@ -1257,6 +1258,48 @@
|
||||
"domainPickerSubdomain": "Subdominio: {subdomain}",
|
||||
"domainPickerNamespace": "Espacio de nombres: {namespace}",
|
||||
"domainPickerShowMore": "Mostrar más",
|
||||
"regionSelectorTitle": "Seleccionar Región",
|
||||
"regionSelectorInfo": "Seleccionar una región nos ayuda a brindar un mejor rendimiento para tu ubicación. No tienes que estar en la misma región que tu servidor.",
|
||||
"regionSelectorPlaceholder": "Elige una región",
|
||||
"regionSelectorComingSoon": "Próximamente",
|
||||
"billingLoadingSubscription": "Cargando suscripción...",
|
||||
"billingFreeTier": "Nivel Gratis",
|
||||
"billingWarningOverLimit": "Advertencia: Has excedido uno o más límites de uso. Tus sitios no se conectarán hasta que modifiques tu suscripción o ajustes tu uso.",
|
||||
"billingUsageLimitsOverview": "Descripción general de los límites de uso",
|
||||
"billingMonitorUsage": "Monitorea tu uso comparado con los límites configurados. Si necesitas que aumenten los límites, contáctanos a soporte@fossorial.io.",
|
||||
"billingDataUsage": "Uso de datos",
|
||||
"billingOnlineTime": "Tiempo en línea del sitio",
|
||||
"billingUsers": "Usuarios activos",
|
||||
"billingDomains": "Dominios activos",
|
||||
"billingRemoteExitNodes": "Nodos autogestionados activos",
|
||||
"billingNoLimitConfigured": "No se ha configurado ningún límite",
|
||||
"billingEstimatedPeriod": "Período de facturación estimado",
|
||||
"billingIncludedUsage": "Uso incluido",
|
||||
"billingIncludedUsageDescription": "Uso incluido con su plan de suscripción actual",
|
||||
"billingFreeTierIncludedUsage": "Permisos de uso del nivel gratuito",
|
||||
"billingIncluded": "incluido",
|
||||
"billingEstimatedTotal": "Total Estimado:",
|
||||
"billingNotes": "Notas",
|
||||
"billingEstimateNote": "Esta es una estimación basada en tu uso actual.",
|
||||
"billingActualChargesMayVary": "Los cargos reales pueden variar.",
|
||||
"billingBilledAtEnd": "Se te facturará al final del período de facturación.",
|
||||
"billingModifySubscription": "Modificar Suscripción",
|
||||
"billingStartSubscription": "Iniciar Suscripción",
|
||||
"billingRecurringCharge": "Cargo Recurrente",
|
||||
"billingManageSubscriptionSettings": "Administra la configuración y preferencias de tu suscripción",
|
||||
"billingNoActiveSubscription": "No tienes una suscripción activa. Inicia tu suscripción para aumentar los límites de uso.",
|
||||
"billingFailedToLoadSubscription": "Error al cargar la suscripción",
|
||||
"billingFailedToLoadUsage": "Error al cargar el uso",
|
||||
"billingFailedToGetCheckoutUrl": "Error al obtener la URL de pago",
|
||||
"billingPleaseTryAgainLater": "Por favor, inténtelo de nuevo más tarde.",
|
||||
"billingCheckoutError": "Error de pago",
|
||||
"billingFailedToGetPortalUrl": "Error al obtener la URL del portal",
|
||||
"billingPortalError": "Error del portal",
|
||||
"billingDataUsageInfo": "Se le cobran todos los datos transferidos a través de sus túneles seguros cuando se conectan a la nube. Esto incluye tanto tráfico entrante como saliente a través de todos sus sitios. Cuando alcance su límite, sus sitios se desconectarán hasta que actualice su plan o reduzca el uso. Los datos no se cargan cuando se usan nodos.",
|
||||
"billingOnlineTimeInfo": "Se te cobrará en función del tiempo que tus sitios permanezcan conectados a la nube. Por ejemplo, 44.640 minutos equivale a un sitio que funciona 24/7 durante un mes completo. Cuando alcance su límite, sus sitios se desconectarán hasta que mejore su plan o reduzca el uso. No se cargará el tiempo al usar nodos.",
|
||||
"billingUsersInfo": "Se te cobra por cada usuario en tu organización. La facturación se calcula diariamente según la cantidad de cuentas de usuario activas en tu organización.",
|
||||
"billingDomainInfo": "Se te cobra por cada dominio en tu organización. La facturación se calcula diariamente según la cantidad de cuentas de dominio activas en tu organización.",
|
||||
"billingRemoteExitNodesInfo": "Se te cobra por cada nodo gestionado en tu organización. La facturación se calcula diariamente según la cantidad de nodos gestionados activos en tu organización.",
|
||||
"domainNotFound": "Dominio no encontrado",
|
||||
"domainNotFoundDescription": "Este recurso está deshabilitado porque el dominio ya no existe en nuestro sistema. Por favor, establece un nuevo dominio para este recurso.",
|
||||
"failed": "Fallido",
|
||||
@@ -1320,6 +1363,7 @@
|
||||
"createDomainDnsPropagationDescription": "Los cambios de DNS pueden tardar un tiempo en propagarse a través de internet. Esto puede tardar desde unos pocos minutos hasta 48 horas, dependiendo de tu proveedor de DNS y la configuración de TTL.",
|
||||
"resourcePortRequired": "Se requiere número de puerto para recursos no HTTP",
|
||||
"resourcePortNotAllowed": "El número de puerto no debe establecerse para recursos HTTP",
|
||||
"billingPricingCalculatorLink": "Calculadora de Precios",
|
||||
"signUpTerms": {
|
||||
"IAgreeToThe": "Estoy de acuerdo con los",
|
||||
"termsOfService": "términos del servicio",
|
||||
@@ -1368,6 +1412,41 @@
|
||||
"addNewTarget": "Agregar nuevo destino",
|
||||
"targetsList": "Lista de destinos",
|
||||
"targetErrorDuplicateTargetFound": "Se encontró un destino duplicado",
|
||||
"healthCheckHealthy": "Saludable",
|
||||
"healthCheckUnhealthy": "No saludable",
|
||||
"healthCheckUnknown": "Desconocido",
|
||||
"healthCheck": "Chequeo de salud",
|
||||
"configureHealthCheck": "Configurar Chequeo de Salud",
|
||||
"configureHealthCheckDescription": "Configura la monitorización de salud para {target}",
|
||||
"enableHealthChecks": "Activar Chequeos de Salud",
|
||||
"enableHealthChecksDescription": "Controlar la salud de este objetivo. Puedes supervisar un punto final diferente al objetivo si es necesario.",
|
||||
"healthScheme": "Método",
|
||||
"healthSelectScheme": "Seleccionar método",
|
||||
"healthCheckPath": "Ruta",
|
||||
"healthHostname": "IP / Host",
|
||||
"healthPort": "Puerto",
|
||||
"healthCheckPathDescription": "La ruta para comprobar el estado de salud.",
|
||||
"healthyIntervalSeconds": "Intervalo Saludable",
|
||||
"unhealthyIntervalSeconds": "Intervalo No Saludable",
|
||||
"IntervalSeconds": "Intervalo Saludable",
|
||||
"timeoutSeconds": "Tiempo de Espera",
|
||||
"timeIsInSeconds": "El tiempo está en segundos",
|
||||
"retryAttempts": "Intentos de Reintento",
|
||||
"expectedResponseCodes": "Códigos de respuesta esperados",
|
||||
"expectedResponseCodesDescription": "Código de estado HTTP que indica un estado saludable. Si se deja en blanco, se considera saludable de 200 a 300.",
|
||||
"customHeaders": "Cabeceras personalizadas",
|
||||
"customHeadersDescription": "Nueva línea de cabeceras separada: Nombre de cabecera: valor",
|
||||
"headersValidationError": "Los encabezados deben estar en el formato: Nombre de cabecera: valor.",
|
||||
"saveHealthCheck": "Guardar Chequeo de Salud",
|
||||
"healthCheckSaved": "Chequeo de Salud Guardado",
|
||||
"healthCheckSavedDescription": "La configuración del chequeo de salud se ha guardado correctamente",
|
||||
"healthCheckError": "Error en el Chequeo de Salud",
|
||||
"healthCheckErrorDescription": "Ocurrió un error al guardar la configuración del chequeo de salud",
|
||||
"healthCheckPathRequired": "Se requiere la ruta del chequeo de salud",
|
||||
"healthCheckMethodRequired": "Se requiere el método HTTP",
|
||||
"healthCheckIntervalMin": "El intervalo de comprobación debe ser de al menos 5 segundos",
|
||||
"healthCheckTimeoutMin": "El tiempo de espera debe ser de al menos 1 segundo",
|
||||
"healthCheckRetryMin": "Los intentos de reintento deben ser de al menos 1",
|
||||
"httpMethod": "Método HTTP",
|
||||
"selectHttpMethod": "Seleccionar método HTTP",
|
||||
"domainPickerSubdomainLabel": "Subdominio",
|
||||
@@ -1381,6 +1460,7 @@
|
||||
"domainPickerEnterSubdomainToSearch": "Ingrese un subdominio para buscar y seleccionar entre dominios gratuitos disponibles.",
|
||||
"domainPickerFreeDomains": "Dominios gratuitos",
|
||||
"domainPickerSearchForAvailableDomains": "Buscar dominios disponibles",
|
||||
"domainPickerNotWorkSelfHosted": "Nota: Los dominios gratuitos proporcionados no están disponibles para instancias autogestionadas por ahora.",
|
||||
"resourceDomain": "Dominio",
|
||||
"resourceEditDomain": "Editar dominio",
|
||||
"siteName": "Nombre del sitio",
|
||||
@@ -1463,6 +1543,72 @@
|
||||
"autoLoginError": "Error de inicio de sesión automático",
|
||||
"autoLoginErrorNoRedirectUrl": "No se recibió URL de redirección del proveedor de identidad.",
|
||||
"autoLoginErrorGeneratingUrl": "Error al generar URL de autenticación.",
|
||||
"remoteExitNodeManageRemoteExitNodes": "Administrar Nodos Autogestionados",
|
||||
"remoteExitNodeDescription": "Administrar nodos para extender la conectividad de red",
|
||||
"remoteExitNodes": "Nodes",
|
||||
"searchRemoteExitNodes": "Buscar nodos...",
|
||||
"remoteExitNodeAdd": "Añadir Nodo",
|
||||
"remoteExitNodeErrorDelete": "Error al eliminar el nodo",
|
||||
"remoteExitNodeQuestionRemove": "¿Está seguro de que desea eliminar el nodo {selectedNode} de la organización?",
|
||||
"remoteExitNodeMessageRemove": "Una vez eliminado, el nodo ya no será accesible.",
|
||||
"remoteExitNodeMessageConfirm": "Para confirmar, por favor escriba el nombre del nodo a continuación.",
|
||||
"remoteExitNodeConfirmDelete": "Confirmar eliminar nodo",
|
||||
"remoteExitNodeDelete": "Eliminar Nodo",
|
||||
"sidebarRemoteExitNodes": "Nodes",
|
||||
"remoteExitNodeCreate": {
|
||||
"title": "Crear Nodo",
|
||||
"description": "Crear un nuevo nodo para extender la conectividad de red",
|
||||
"viewAllButton": "Ver todos los nodos",
|
||||
"strategy": {
|
||||
"title": "Estrategia de Creación",
|
||||
"description": "Elija esto para configurar manualmente su nodo o generar nuevas credenciales.",
|
||||
"adopt": {
|
||||
"title": "Adoptar Nodo",
|
||||
"description": "Elija esto si ya tiene las credenciales para el nodo."
|
||||
},
|
||||
"generate": {
|
||||
"title": "Generar Claves",
|
||||
"description": "Elija esto si desea generar nuevas claves para el nodo"
|
||||
}
|
||||
},
|
||||
"adopt": {
|
||||
"title": "Adoptar Nodo Existente",
|
||||
"description": "Introduzca las credenciales del nodo existente que desea adoptar",
|
||||
"nodeIdLabel": "ID del nodo",
|
||||
"nodeIdDescription": "El ID del nodo existente que desea adoptar",
|
||||
"secretLabel": "Secreto",
|
||||
"secretDescription": "La clave secreta del nodo existente",
|
||||
"submitButton": "Adoptar Nodo"
|
||||
},
|
||||
"generate": {
|
||||
"title": "Credenciales Generadas",
|
||||
"description": "Utilice estas credenciales generadas para configurar su nodo",
|
||||
"nodeIdTitle": "ID del nodo",
|
||||
"secretTitle": "Secreto",
|
||||
"saveCredentialsTitle": "Agregar Credenciales a la Configuración",
|
||||
"saveCredentialsDescription": "Agrega estas credenciales a tu archivo de configuración del nodo Pangolin autogestionado para completar la conexión.",
|
||||
"submitButton": "Crear Nodo"
|
||||
},
|
||||
"validation": {
|
||||
"adoptRequired": "El ID del nodo y el secreto son necesarios al adoptar un nodo existente"
|
||||
},
|
||||
"errors": {
|
||||
"loadDefaultsFailed": "Falló al cargar los valores predeterminados",
|
||||
"defaultsNotLoaded": "Valores predeterminados no cargados",
|
||||
"createFailed": "Error al crear el nodo"
|
||||
},
|
||||
"success": {
|
||||
"created": "Nodo creado correctamente"
|
||||
}
|
||||
},
|
||||
"remoteExitNodeSelection": "Selección de nodo",
|
||||
"remoteExitNodeSelectionDescription": "Seleccione un nodo a través del cual enrutar el tráfico para este sitio local",
|
||||
"remoteExitNodeRequired": "Un nodo debe ser seleccionado para sitios locales",
|
||||
"noRemoteExitNodesAvailable": "No hay nodos disponibles",
|
||||
"noRemoteExitNodesAvailableDescription": "No hay nodos disponibles para esta organización. Crea un nodo primero para usar sitios locales.",
|
||||
"exitNode": "Nodo de Salida",
|
||||
"country": "País",
|
||||
"rulesMatchCountry": "Actualmente basado en IP de origen",
|
||||
"managedSelfHosted": {
|
||||
"title": "Autogestionado",
|
||||
"description": "Servidor Pangolin autoalojado más fiable y de bajo mantenimiento con campanas y silbidos extra",
|
||||
@@ -1501,11 +1647,53 @@
|
||||
},
|
||||
"internationaldomaindetected": "Dominio Internacional detectado",
|
||||
"willbestoredas": "Se almacenará como:",
|
||||
"roleMappingDescription": "Determinar cómo se asignan los roles a los usuarios cuando se registran cuando está habilitada la provisión automática.",
|
||||
"selectRole": "Seleccione un rol",
|
||||
"roleMappingExpression": "Expresión",
|
||||
"selectRolePlaceholder": "Elija un rol",
|
||||
"selectRoleDescription": "Seleccione un rol para asignar a todos los usuarios de este proveedor de identidad",
|
||||
"roleMappingExpressionDescription": "Introduzca una expresión JMESPath para extraer información de rol del token de ID",
|
||||
"idpTenantIdRequired": "El ID del cliente es obligatorio",
|
||||
"invalidValue": "Valor inválido",
|
||||
"idpTypeLabel": "Tipo de proveedor de identidad",
|
||||
"roleMappingExpressionPlaceholder": "e.g., contiene(grupos, 'administrador') && 'administrador' || 'miembro'",
|
||||
"idpGoogleConfiguration": "Configuración de Google",
|
||||
"idpGoogleConfigurationDescription": "Configura tus credenciales de Google OAuth2",
|
||||
"idpGoogleClientIdDescription": "Tu ID de cliente de Google OAuth2",
|
||||
"idpGoogleClientSecretDescription": "Tu secreto de cliente de Google OAuth2",
|
||||
"idpAzureConfiguration": "Configuración de Azure Entra ID",
|
||||
"idpAzureConfigurationDescription": "Configure sus credenciales de Azure Entra ID OAuth2",
|
||||
"idpTenantId": "Tenant ID",
|
||||
"idpTenantIdPlaceholder": "su-inquilino-id",
|
||||
"idpAzureTenantIdDescription": "Su ID de inquilino de Azure (encontrado en el resumen de Azure Active Directory)",
|
||||
"idpAzureClientIdDescription": "Tu ID de Cliente de Registro de Azure App",
|
||||
"idpAzureClientSecretDescription": "Tu Azure App Registro Cliente secreto",
|
||||
"idpGoogleTitle": "Google",
|
||||
"idpGoogleAlt": "Google",
|
||||
"idpAzureTitle": "Azure Entra ID",
|
||||
"idpAzureAlt": "Azure",
|
||||
"idpGoogleConfigurationTitle": "Configuración de Google",
|
||||
"idpAzureConfigurationTitle": "Configuración de Azure Entra ID",
|
||||
"idpTenantIdLabel": "Tenant ID",
|
||||
"idpAzureClientIdDescription2": "Tu ID de Cliente de Registro de Azure App",
|
||||
"idpAzureClientSecretDescription2": "Tu Azure App Registro Cliente secreto",
|
||||
"idpGoogleDescription": "Proveedor OAuth2/OIDC de Google",
|
||||
"idpAzureDescription": "Microsoft Azure OAuth2/OIDC provider",
|
||||
"customHeaders": "Cabeceras personalizadas",
|
||||
"customHeadersDescription": "Add custom headers to be sent when proxying requests. One per line in the format Header-Name: value",
|
||||
"headersValidationError": "Los encabezados deben estar en el formato: Nombre de cabecera: valor.",
|
||||
"subnet": "Subred",
|
||||
"subnetDescription": "La subred para la configuración de red de esta organización.",
|
||||
"authPage": "Página Auth",
|
||||
"authPageDescription": "Configurar la página de autenticación de su organización",
|
||||
"authPageDomain": "Auth Page Domain",
|
||||
"noDomainSet": "Ningún dominio establecido",
|
||||
"changeDomain": "Cambiar dominio",
|
||||
"selectDomain": "Seleccionar dominio",
|
||||
"restartCertificate": "Reiniciar certificado",
|
||||
"editAuthPageDomain": "Editar dominio Auth Page",
|
||||
"setAuthPageDomain": "Establecer dominio Auth Page",
|
||||
"failedToFetchCertificate": "Error al obtener el certificado",
|
||||
"failedToRestartCertificate": "Error al reiniciar el certificado",
|
||||
"addDomainToEnableCustomAuthPages": "Añadir un dominio para habilitar páginas de autenticación personalizadas para su organización",
|
||||
"selectDomainForOrgAuthPage": "Seleccione un dominio para la página de autenticación de la organización",
|
||||
"domainPickerProvidedDomain": "Dominio proporcionado",
|
||||
"domainPickerFreeProvidedDomain": "Dominio proporcionado gratis",
|
||||
"domainPickerVerified": "Verificado",
|
||||
@@ -1519,10 +1707,16 @@
|
||||
"domainPickerInvalidSubdomainCannotMakeValid": "No se ha podido hacer válido \"{sub}\" para {domain}.",
|
||||
"domainPickerSubdomainSanitized": "Subdominio saneado",
|
||||
"domainPickerSubdomainCorrected": "\"{sub}\" fue corregido a \"{sanitized}\"",
|
||||
"orgAuthSignInTitle": "Inicia sesión en tu organización",
|
||||
"orgAuthChooseIdpDescription": "Elige tu proveedor de identidad para continuar",
|
||||
"orgAuthNoIdpConfigured": "Esta organización no tiene ningún proveedor de identidad configurado. En su lugar puedes iniciar sesión con tu identidad de Pangolin.",
|
||||
"orgAuthSignInWithPangolin": "Iniciar sesión con Pangolin",
|
||||
"subscriptionRequiredToUse": "Se requiere una suscripción para utilizar esta función.",
|
||||
"idpDisabled": "Los proveedores de identidad están deshabilitados.",
|
||||
"orgAuthPageDisabled": "La página de autenticación de la organización está deshabilitada.",
|
||||
"domainRestartedDescription": "Verificación de dominio reiniciada con éxito",
|
||||
"resourceAddEntrypointsEditFile": "Editar archivo: config/traefik/traefik_config.yml",
|
||||
"resourceExposePortsEditFile": "Editar archivo: docker-compose.yml",
|
||||
"emailVerificationRequired": "Se requiere verificación de correo electrónico. Por favor, inicie sesión de nuevo a través de {dashboardUrl}/auth/login complete este paso. Luego, vuelva aquí.",
|
||||
"twoFactorSetupRequired": "La configuración de autenticación de doble factor es requerida. Por favor, inicia sesión de nuevo a través de {dashboardUrl}/auth/login completa este paso. Luego, vuelve aquí.",
|
||||
"rewritePath": "Rewrite Path",
|
||||
"rewritePathDescription": "Optionally rewrite the path before forwarding to the target."
|
||||
"twoFactorSetupRequired": "La configuración de autenticación de doble factor es requerida. Por favor, inicia sesión de nuevo a través de {dashboardUrl}/auth/login completa este paso. Luego, vuelve aquí."
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user