✨ feat(locales): Add multiple languages
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"actions": "acciones",
|
||||
"announcementList": "Lista de anuncios",
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"confirmDelete": "¿Está seguro de que desea eliminar?",
|
||||
"content": "contenido",
|
||||
"create": "Crear",
|
||||
"createAnnouncement": "Crear anuncio",
|
||||
"createSuccess": "Creación exitosa",
|
||||
"delete": "eliminar",
|
||||
"deleteDescription": "Una vez eliminado, los datos no se podrán recuperar. Proceda con precaución.",
|
||||
"deleteSuccess": "Eliminación exitosa",
|
||||
"edit": "editar",
|
||||
"editAnnouncement": "Editar anuncio",
|
||||
"enable": "Habilitar",
|
||||
"form": {
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"content": "Contenido",
|
||||
"contentPlaceholder": "Por favor, ingresa el contenido del anuncio (se admite Markdown)",
|
||||
"title": "Título",
|
||||
"titlePlaceholder": "Por favor, ingresa"
|
||||
},
|
||||
"hide": "Ocultar",
|
||||
"show": "Mostrar",
|
||||
"title": "Título",
|
||||
"updateSuccess": "Actualización exitosa",
|
||||
"updatedAt": "Actualizado en"
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
{
|
||||
"check": {
|
||||
"checking": "Verificando...",
|
||||
"continue": "Continuar",
|
||||
"description": "Por favor, ingresa tu correo electrónico para continuar con el inicio de sesión o registro.",
|
||||
"email": "Por favor, ingresa una dirección de correo electrónico válida.",
|
||||
"title": "Iniciar sesión/Registrarse",
|
||||
"whitelist": "El dominio del correo electrónico no está en la lista blanca permitida."
|
||||
},
|
||||
"login": {
|
||||
"description": "Por favor, ingrese su información de cuenta para iniciar sesión.",
|
||||
"forgotPassword": "¿Olvidó su contraseña?",
|
||||
"success": "¡Inicio de sesión exitoso!",
|
||||
"switchAccount": "Registrar/Cambiar cuenta",
|
||||
"title": "Iniciar sesión"
|
||||
},
|
||||
"logout": "Cerrar sesión",
|
||||
"orWithEmail": "o usa correo electrónico",
|
||||
"register": {
|
||||
"description": "Crea una nueva cuenta, completa tu información para registrarte.",
|
||||
"existingAccount": "¿Ya tienes una cuenta?",
|
||||
"get": "Obtener",
|
||||
"invite": "Código de invitación",
|
||||
"message": "#### Estimado usuario,\n\nGracias por su interés y apoyo. Debido a un ajuste en la estrategia de operación del sitio, hemos cerrado la función de registro para nuevos usuarios. Durante este período, el uso por parte de los usuarios existentes no se verá afectado.\n\nNos comprometemos a ofrecerle un mejor servicio y experiencia, por lo que realizaremos una optimización completa del sistema y una actualización de funciones durante el cierre del registro. En el futuro, le daremos la bienvenida con contenido y servicios de mayor calidad.\n\nPor favor, siga nuestro sitio web y plataformas de redes sociales para obtener las últimas actualizaciones y notificaciones. Agradecemos su comprensión y apoyo.\n\nSi tiene alguna pregunta o necesita ayuda, no dude en ponerse en contacto con nuestro equipo de atención al cliente.\n\n**Nuevamente, gracias por su apoyo y comprensión.**",
|
||||
"passwordMismatch": "Las contraseñas no coinciden",
|
||||
"success": "¡Registro exitoso, has iniciado sesión automáticamente!",
|
||||
"switchToLogin": "Iniciar sesión/restablecer correo electrónico",
|
||||
"title": "Registro"
|
||||
},
|
||||
"reset": {
|
||||
"description": "Ingrese su dirección de correo electrónico para restablecer la contraseña.",
|
||||
"existingAccount": "¿Ya tienes una cuenta?",
|
||||
"get": "Obtener",
|
||||
"success": "¡Contraseña restablecida con éxito, se ha cambiado automáticamente a iniciar sesión!",
|
||||
"switchToLogin": "Iniciar sesión/Registrarse",
|
||||
"title": "Restablecer contraseña"
|
||||
},
|
||||
"tos": "Términos del servicio"
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
{
|
||||
"billing": {
|
||||
"description": "¡Patrocinar ayuda a que PPanel continúe publicando actualizaciones!",
|
||||
"title": "Patrocinador"
|
||||
},
|
||||
"empty": [
|
||||
"¡Imagina que este lugar está lleno de contenido increíble! Por ahora, solo puedes imaginarlo…",
|
||||
"¡Esta área ha desaparecido misteriosamente, estamos invocándola de regreso!",
|
||||
"Vaya, no ha pasado nada… ¡puedes agregar algo tú mismo!",
|
||||
"Es como descubrir que no hay nadie en el escenario de un concierto… ¿por qué no subes a actuar?",
|
||||
"¡Has encontrado un paraíso en blanco! ¿Quieres construir una casa?",
|
||||
"Aquí no hay nada por ahora, ¡pero la creatividad comienza aquí!",
|
||||
"No hay nada… pero no te preocupes, ¡esto es solo el comienzo!",
|
||||
"Aquí había una gran sorpresa preparada, ¡pero se ha escapado!",
|
||||
"Por ahora no hay nada, como si la despensa de bocadillos estuviera vacía.",
|
||||
"¡Este espacio vacío está esperando a que su protagonista aparezca!"
|
||||
],
|
||||
"request": {
|
||||
"10001": "La consulta no fue exitosa, por favor intenta de nuevo más tarde o verifica tus condiciones.",
|
||||
"10002": "La operación de actualización no fue exitosa, por favor intenta más tarde.",
|
||||
"10003": "No se puede completar la operación de inserción por el momento, por favor intenta más tarde.",
|
||||
"10004": "La operación de eliminación no se pudo completar, por favor intenta más tarde.",
|
||||
"20001": "La información del usuario ya existe, por favor cambia la información e intenta de nuevo.",
|
||||
"20002": "No se encontró al usuario, por favor verifica la información e intenta de nuevo.",
|
||||
"20003": "La contraseña que ingresaste es incorrecta, por favor ingrésala de nuevo.",
|
||||
"20004": "El usuario ha sido deshabilitado, si tienes dudas por favor contacta al servicio al cliente.",
|
||||
"20005": "Saldo insuficiente, por favor recarga e intenta de nuevo.",
|
||||
"20006": "La función de registro no está disponible por el momento, por favor intenta más tarde.",
|
||||
"30001": "El nodo ya existe, por favor no lo agregues de nuevo.",
|
||||
"30002": "No se encontró el nodo relacionado, por favor verifica e intenta de nuevo.",
|
||||
"30003": "El grupo ya existe, por favor intenta usar otro nombre.",
|
||||
"30004": "No se encontró el grupo, por favor confirma la información e intenta de nuevo.",
|
||||
"30005": "El grupo aún contiene contenido, por favor vacíalo e intenta de nuevo.",
|
||||
"400": "Los parámetros de la solicitud no son correctos, por favor verifica y vuelve a enviar.",
|
||||
"40002": "No se encontró un Token válido, por favor inicia sesión e intenta de nuevo.",
|
||||
"40003": "El Token actual no es válido, por favor obtén uno nuevo e intenta de nuevo.",
|
||||
"40004": "El Token ha expirado, por favor inicia sesión de nuevo.",
|
||||
"40005": "No tienes permiso de acceso, si tienes dudas por favor contacta al administrador.",
|
||||
"401": "Las solicitudes son demasiado frecuentes, por favor intenta más tarde.",
|
||||
"500": "El servidor encontró algunos problemas, por favor intenta más tarde.",
|
||||
"50001": "No se puede encontrar la información del cupón correspondiente, por favor verifica e intenta de nuevo.",
|
||||
"50002": "El cupón ya ha sido utilizado, no se puede usar de nuevo.",
|
||||
"60001": "La suscripción ha expirado, por favor renueva para continuar usando.",
|
||||
"60002": "No se puede usar la suscripción por el momento, por favor intenta más tarde.",
|
||||
"70001": "El código de verificación es incorrecto, por favor ingrésalo de nuevo.",
|
||||
"80001": "La tarea no se agregó exitosamente a la cola, por favor intenta de nuevo más tarde.",
|
||||
"90001": "Por favor desactiva el modo DEBUG e intenta de nuevo.",
|
||||
"undefined": "Ocurrió un error en el sistema, por favor intenta de nuevo más tarde."
|
||||
},
|
||||
"table": {
|
||||
"actions": "Acciones",
|
||||
"asc": "Ascendente",
|
||||
"desc": "Descendente",
|
||||
"hide": "Ocultar",
|
||||
"pageInfo": "Página {current} de {total}",
|
||||
"rowsPerPage": "Filas por página",
|
||||
"selectedItems": "{total} filas seleccionadas"
|
||||
},
|
||||
"unlimited": "Ilimitado"
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"actions": "acciones",
|
||||
"amount": "Monto",
|
||||
"cancel": "Cancelar",
|
||||
"code": "código",
|
||||
"confirm": "Confirmar",
|
||||
"confirmDelete": "¿Está seguro de que desea eliminarlo?",
|
||||
"count": "cantidad",
|
||||
"couponList": "Lista de cupones",
|
||||
"create": "Crear",
|
||||
"createCoupon": "Crear cupón",
|
||||
"createSuccess": "Creación exitosa",
|
||||
"delete": "Eliminar",
|
||||
"deleteSuccess": "Eliminación exitosa",
|
||||
"deleteWarning": "Una vez eliminado, los datos no se podrán recuperar. Proceda con precaución.",
|
||||
"discount": "descuento",
|
||||
"edit": "editar",
|
||||
"editCoupon": "Editar cupón",
|
||||
"enable": "Habilitar",
|
||||
"form": {
|
||||
"amountDiscount": "Descuento de cantidad",
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"count": "Número máximo de usos",
|
||||
"countPlaceholder": "Número máximo de usos (dejar en blanco para ilimitado)",
|
||||
"customCouponCode": "Código de cupón personalizado",
|
||||
"customCouponCodePlaceholder": "Código de cupón personalizado (dejar en blanco para generar automáticamente)",
|
||||
"enterCouponName": "Por favor ingrese el nombre del cupón",
|
||||
"enterValue": "Por favor ingrese el valor",
|
||||
"expireTime": "Fecha de vencimiento",
|
||||
"name": "Nombre",
|
||||
"percentageDiscount": "Descuento porcentual",
|
||||
"selectServer": "Por favor seleccione la suscripción",
|
||||
"selectTime": "Seleccionar tiempo",
|
||||
"specifiedServer": "Suscripción especificada",
|
||||
"startTime": "Hora de inicio",
|
||||
"type": "Tipo de cupón",
|
||||
"userLimit": "Número máximo de usos por usuario",
|
||||
"userLimitPlaceholder": "Número máximo de usos por usuario (dejar en blanco para ilimitado)"
|
||||
},
|
||||
"name": "Nombre",
|
||||
"percentage": "porcentaje",
|
||||
"remainingTimes": "Restante",
|
||||
"subscribe": "Suscribirse",
|
||||
"type": "tipo",
|
||||
"unlimited": "Ilimitado",
|
||||
"updateSuccess": "Actualización exitosa",
|
||||
"usedTimes": "Veces usadas",
|
||||
"validityPeriod": "Periodo de validez"
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
{
|
||||
"DocumentList": "Lista de Documentos",
|
||||
"actions": "acciones",
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"confirmDelete": "¿Está seguro de que desea eliminar?",
|
||||
"create": "Crear",
|
||||
"createDocument": "Crear documento",
|
||||
"createSuccess": "Creación exitosa",
|
||||
"delete": "Eliminar",
|
||||
"deleteDescription": "Una vez eliminado, los datos no se podrán recuperar. Proceda con precaución.",
|
||||
"deleteSuccess": "Eliminación exitosa",
|
||||
"edit": "editar",
|
||||
"editDocument": "Editar documento",
|
||||
"form": {
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"content": "Contenido",
|
||||
"tags": "Categorías",
|
||||
"tagsPlaceholder": "Por favor, usa la tecla Enter o una coma (,) para separar e ingresar múltiples categorías",
|
||||
"title": "Título",
|
||||
"titlePlaceholder": "Por favor, ingresa"
|
||||
},
|
||||
"show": "Mostrar",
|
||||
"tags": "Categorías",
|
||||
"title": "Título",
|
||||
"updateSuccess": "Actualización exitosa",
|
||||
"updatedAt": "Actualizado en"
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
{
|
||||
"email": "correo electrónico",
|
||||
"month": "Este mes",
|
||||
"monthDownloadTraffic": "Tráfico de descarga del mes",
|
||||
"monthUploadTraffic": "Tráfico de carga de este mes",
|
||||
"newPurchase": "Nueva compra",
|
||||
"nodeTraffic": "Tráfico de nodo",
|
||||
"nodes": "nodos",
|
||||
"offlineNodeCount": "Número de nodos fuera de línea",
|
||||
"onlineIPCount": "Número de IPs en línea",
|
||||
"onlineNodeCount": "Número de nodos en línea",
|
||||
"pendingTickets": "Tickets pendientes",
|
||||
"register": "Registrarse",
|
||||
"repurchase": "recompra",
|
||||
"revenueTitle": "Estadísticas de Ingresos",
|
||||
"selectTypePlaceholder": "Seleccionar tipo",
|
||||
"statisticsTitle": "Estadísticas",
|
||||
"today": "hoy",
|
||||
"todayDownloadTraffic": "Tráfico de descarga de hoy",
|
||||
"todayUploadTraffic": "Tráfico de carga de hoy",
|
||||
"total": "Total",
|
||||
"totalIncome": "Ingreso total",
|
||||
"trafficRank": "Clasificación de tráfico",
|
||||
"type": "tipo",
|
||||
"userTitle": "Estadísticas del Usuario",
|
||||
"userTraffic": "Tráfico de usuarios",
|
||||
"users": "usuarios",
|
||||
"yesterday": "Ayer"
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"cs-CZ": "Checo",
|
||||
"de-DE": "Alemán",
|
||||
"en-US": "inglés",
|
||||
"es-ES": "español",
|
||||
"es-MX": "Español (México)",
|
||||
"fi-FI": "Finlandés",
|
||||
"fr-FR": "Francés",
|
||||
"hi-IN": "Hindi",
|
||||
"hu-HU": "Húngaro",
|
||||
"ja-JP": "Japonés",
|
||||
"ko-KR": "Coreano",
|
||||
"no-NO": "Noruego",
|
||||
"pl-PL": "Polaco",
|
||||
"pt-BR": "portugués (Brasil)",
|
||||
"ro-RO": "Rumano",
|
||||
"ru-RU": "Ruso",
|
||||
"th-TH": "Tailandés",
|
||||
"tr-TR": "turco",
|
||||
"uk-UA": "Ucraniano",
|
||||
"vi-VN": "Vietnamita",
|
||||
"zh-CN": "español (México)",
|
||||
"zh-TW": "Chino (Tradicional)"
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"Announcement Management": "Gestión de Anuncios",
|
||||
"Coupon Management": "Gestión de Cupones",
|
||||
"Dashboard": "Tablero",
|
||||
"Document Management": "Gestión de Documentos",
|
||||
"Finance": "Finanzas",
|
||||
"Order Management": "Gestión de Pedidos",
|
||||
"Payment Config": "Configuración de Pago",
|
||||
"Server": "Servidor",
|
||||
"Server Management": "Gestión de Servidores",
|
||||
"Settings": "Configuración",
|
||||
"Subscribe Management": "Gestión de Suscripciones",
|
||||
"System Config": "Configuración del Sistema",
|
||||
"System Tool": "Herramienta del sistema",
|
||||
"Ticket Management": "Gestión de Tickets",
|
||||
"User": "Usuario",
|
||||
"User Management": "Gestión de Usuarios"
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
{
|
||||
"amount": "Monto",
|
||||
"couponDiscount": "Descuento de cupón",
|
||||
"discount": "Monto de descuento",
|
||||
"failed": "fallido",
|
||||
"feeAmount": "Cuota",
|
||||
"method": "Método de pago",
|
||||
"methods": {
|
||||
"alipay_f2f": "Alipay (cara a cara)",
|
||||
"balance": "Saldo",
|
||||
"epay": "Epay",
|
||||
"stripe_alipay": "Stripe (Alipay)",
|
||||
"stripe_wechat_pay": "Stripe (WeChat)"
|
||||
},
|
||||
"orderNumber": "Número de pedido",
|
||||
"status": {
|
||||
"0": "Estado",
|
||||
"1": "Pendiente de pago",
|
||||
"2": "Pagado",
|
||||
"3": "Cancelado",
|
||||
"4": "Cerrado",
|
||||
"5": "Completado"
|
||||
},
|
||||
"subscribe": "Suscribirse",
|
||||
"subscribePrice": "Precio de suscripción",
|
||||
"total": "Total",
|
||||
"tradeNo": "Número de transacción",
|
||||
"type": {
|
||||
"0": "Tipo",
|
||||
"1": "Nueva compra",
|
||||
"2": "Renovación",
|
||||
"3": "Restablecer datos",
|
||||
"4": "Recarga"
|
||||
},
|
||||
"updateTime": "Hora de actualización",
|
||||
"user": "usuario"
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
{
|
||||
"aliPay": "Pago con Alipay",
|
||||
"alipayf2f": {
|
||||
"appId": "ID de la aplicación de Alipay",
|
||||
"invoiceName": "Nombre personalizado del producto",
|
||||
"invoiceNameDescription": "Se mostrará en la factura de Alipay",
|
||||
"privateKey": "Clave privada de Alipay",
|
||||
"publicKey": "Clave pública de Alipay",
|
||||
"sandbox": "Modo sandbox",
|
||||
"sandboxDescription": "Habilitar el modo sandbox para probar el pago"
|
||||
},
|
||||
"enable": "Habilitar",
|
||||
"enableDescription": "Habilitar este método de pago",
|
||||
"epay": {
|
||||
"key": "CLAVE",
|
||||
"pid": "PID",
|
||||
"url": "URL"
|
||||
},
|
||||
"feeMode": "Modo de cobro",
|
||||
"feeModeDescription": "Modo de cobro de tarifas adicionales",
|
||||
"feeModeItems": ["Sin tarifa", "Porcentaje", "Cantidad fija", "Ambos"],
|
||||
"feePercent": "Porcentaje de tarifa (opcional)",
|
||||
"feePercentDescription": "Se añade una tarifa sobre el monto del pedido",
|
||||
"fixedFee": "Cuota fija (opcional)",
|
||||
"fixedFeeDescription": "Agregar una tarifa fija sobre el monto del pedido",
|
||||
"iconUrl": "URL del ícono (opcional)",
|
||||
"iconUrlDescription": "Usado para mostrar en el frontend",
|
||||
"inputPlaceholder": "Por favor ingrese",
|
||||
"key": "LLAVE",
|
||||
"notifyUrl": "Dominio de notificación personalizado (opcional)",
|
||||
"notifyUrlDescription": "La notificación del gateway se enviará a este dominio",
|
||||
"payForRecommendations": "Pagar por recomendaciones",
|
||||
"pid": "PID",
|
||||
"saveSuccess": "Guardado exitoso",
|
||||
"showName": "Mostrar nombre",
|
||||
"showNameDescription": "Usado para mostrar en el frontend",
|
||||
"stripe": {
|
||||
"publicKey": "CLAVE PÚBLICA",
|
||||
"secretKey": "CLAVE SECRETA",
|
||||
"webhookSecret": "FIRMA DE SECRETO DE WEBHOOK"
|
||||
},
|
||||
"url": "URL",
|
||||
"wechatPay": "WeChat Pay"
|
||||
}
|
||||
@@ -0,0 +1,122 @@
|
||||
{
|
||||
"group": {
|
||||
"actions": "Acciones",
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"confirmDelete": "¿Está seguro de que desea eliminar?",
|
||||
"create": "Crear",
|
||||
"createNodeGroup": "Crear grupo de nodos",
|
||||
"createdSuccessfully": "Creación exitosa",
|
||||
"delete": "Eliminar",
|
||||
"deleteWarning": "Los datos no se podrán recuperar después de la eliminación, proceda con precaución.",
|
||||
"deletedSuccessfully": "Eliminación exitosa",
|
||||
"description": "Descripción",
|
||||
"edit": "Editar",
|
||||
"editNodeGroup": "Editar grupo de nodos",
|
||||
"form": {
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"description": "Descripción",
|
||||
"name": "Nombre"
|
||||
},
|
||||
"name": "Nombre",
|
||||
"title": "Lista de grupos de nodos",
|
||||
"updatedAt": "Fecha de actualización"
|
||||
},
|
||||
"node": {
|
||||
"abnormal": "Anormal",
|
||||
"actions": "Acciones",
|
||||
"address": "Dirección",
|
||||
"all": "Todo",
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"confirmDelete": "¿Estás seguro de que deseas eliminar?",
|
||||
"create": "Crear",
|
||||
"createNode": "Crear nodo",
|
||||
"createSuccess": "Creación exitosa",
|
||||
"delete": "Eliminar",
|
||||
"deleteSuccess": "Eliminación exitosa",
|
||||
"deleteWarning": "Después de eliminar, los datos no se podrán recuperar. Proceda con precaución.",
|
||||
"disk": "Disco",
|
||||
"edit": "Editar",
|
||||
"editNode": "Editar nodo",
|
||||
"enable": "Habilitar",
|
||||
"form": {
|
||||
"allowInsecure": "Permitir inseguro",
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"edit": "Editar",
|
||||
"editSecurity": "Editar configuración de seguridad",
|
||||
"enableRelay": "Habilitar retransmisión",
|
||||
"enableTLS": "Habilitar TLS",
|
||||
"encryptionMethod": "Método de encriptación",
|
||||
"flow": "Algoritmo de control de flujo",
|
||||
"hopInterval": "Intervalo de salto",
|
||||
"hopPorts": "Puertos de salto",
|
||||
"hopPortsPlaceholder": "Varios puertos separados por comas",
|
||||
"name": "Nombre",
|
||||
"nodeGroupId": "ID del grupo de nodos",
|
||||
"obfsPassword": "Contraseña de ofuscación",
|
||||
"obfsPasswordPlaceholder": "Dejar en blanco para no ofuscar",
|
||||
"path": "Ruta",
|
||||
"pleaseSelect": "Por favor seleccione",
|
||||
"port": "Puerto del servidor",
|
||||
"protocol": "Protocolo",
|
||||
"relayHost": "Dirección de retransmisión",
|
||||
"relayPort": "Puerto de retransmisión",
|
||||
"remarks": "Comentarios",
|
||||
"security": "Seguridad",
|
||||
"securityConfig": "Configuración de seguridad",
|
||||
"security_config": {
|
||||
"fingerprint": "Huella digital",
|
||||
"privateKey": "Clave privada",
|
||||
"privateKeyPlaceholder": "Dejar en blanco para generar automáticamente",
|
||||
"publicKey": "Clave pública",
|
||||
"publicKeyPlaceholder": "Dejar en blanco para generar automáticamente",
|
||||
"serverAddress": "Dirección del servidor",
|
||||
"serverAddressPlaceholder": "Dirección objetivo de REALITY, por defecto usa SNI",
|
||||
"serverName": "Nombre del servidor (SNI)",
|
||||
"serverNamePlaceholder": "Obligatorio para REALITY, debe coincidir con el backend",
|
||||
"serverPort": "Puerto del servidor",
|
||||
"serverPortPlaceholder": "Puerto objetivo de REALITY, por defecto 443",
|
||||
"shortId": "ID corto",
|
||||
"shortIdPlaceholder": "Dejar en blanco para generar automáticamente",
|
||||
"sni": "Indicación de nombre del servidor (SNI)"
|
||||
},
|
||||
"selectEncryptionMethod": "Seleccionar método de encriptación",
|
||||
"selectNodeGroup": "Seleccionar grupo de nodos",
|
||||
"selectProtocol": "Seleccionar protocolo",
|
||||
"serverAddr": "Dirección del servidor",
|
||||
"serverName": "Nombre del servicio",
|
||||
"speedLimit": "Límite de velocidad",
|
||||
"speedLimitPlaceholder": "Sin límite",
|
||||
"trafficRatio": "Tasa de tráfico",
|
||||
"transport": "Protocolo de transporte",
|
||||
"transportConfig": "Configuración del protocolo de transporte",
|
||||
"transportHost": "Dirección del servicio de transporte",
|
||||
"transportPath": "Ruta de transporte",
|
||||
"transportServerName": "Nombre del servicio de transporte"
|
||||
},
|
||||
"lastUpdated": "Última actualización",
|
||||
"memory": "Memoria",
|
||||
"name": "Nombre",
|
||||
"node": "Nodo",
|
||||
"nodeGroup": "Grupo de nodos",
|
||||
"normal": "Normal",
|
||||
"onlineCount": "Número de personas en línea",
|
||||
"onlineUsers": "Usuarios en línea",
|
||||
"rate": "Tasa",
|
||||
"relay": "Retransmisión",
|
||||
"serverAddr": "Dirección del servidor",
|
||||
"speedLimit": "Límite de velocidad",
|
||||
"status": "Estado",
|
||||
"trafficRatio": "Tasa de tráfico",
|
||||
"type": "Tipo",
|
||||
"updateSuccess": "Actualización exitosa",
|
||||
"updatedAt": "Fecha de actualización"
|
||||
},
|
||||
"tabs": {
|
||||
"node": "Nodo",
|
||||
"nodeGroup": "Grupo de nodos"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
{
|
||||
"actions": "acciones",
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"confirmDelete": "¿Estás seguro de que deseas eliminar?",
|
||||
"create": "Crear",
|
||||
"createSubscribe": "Crear suscripción",
|
||||
"createSuccess": "Creación exitosa",
|
||||
"delete": "Eliminar",
|
||||
"deleteSuccess": "Eliminación exitosa",
|
||||
"deleteWarning": "Después de eliminar, los datos no se podrán recuperar. Proceda con precaución.",
|
||||
"deviceLimit": "Número de dispositivos/unidad",
|
||||
"edit": "editar",
|
||||
"editSubscribe": "Editar suscripción",
|
||||
"form": {
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"description": "Descripción",
|
||||
"deviceLimit": "Límite de dispositivos",
|
||||
"discount": "Descuento",
|
||||
"discountDescription": "Descuento basado en el precio unitario",
|
||||
"discountMonths": "Meses",
|
||||
"discountPercent": "Porcentaje de descuento",
|
||||
"discount_price": "Precio con descuento",
|
||||
"duration": "Duración (meses)",
|
||||
"inventory": "Inventario",
|
||||
"name": "Nombre",
|
||||
"noLimit": "Sin límite",
|
||||
"quota": "Cantidad máxima de compra",
|
||||
"replacement": "Precio de reposición (cada vez)",
|
||||
"selectSubscribeGroup": "Por favor seleccione un grupo de suscripción",
|
||||
"server": "Servidor",
|
||||
"serverGroup": "Grupo de servidores",
|
||||
"speedLimit": "Límite de velocidad (Mbps)",
|
||||
"subscribeGroup": "Grupo de suscripción",
|
||||
"traffic": "Tráfico",
|
||||
"unit_price": "Precio mensual"
|
||||
},
|
||||
"group": {
|
||||
"actions": "Acciones",
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"confirmDelete": "¿Confirmar eliminación?",
|
||||
"create": "Crear",
|
||||
"createSubscribeGroup": "Crear nuevo grupo de suscripción",
|
||||
"createSuccess": "Creación exitosa",
|
||||
"delete": "Eliminar",
|
||||
"deleteSuccess": "Eliminación exitosa",
|
||||
"deleteWarning": "Los datos no se pueden recuperar después de la eliminación, por favor opere con precaución.",
|
||||
"description": "Descripción",
|
||||
"edit": "Editar",
|
||||
"editSubscribeGroup": "Editar grupo de suscripción",
|
||||
"form": {
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"description": "Descripción",
|
||||
"name": "Nombre"
|
||||
},
|
||||
"name": "Nombre",
|
||||
"title": "Lista de grupos de suscripción",
|
||||
"updateSuccess": "Actualización exitosa",
|
||||
"updatedAt": "Fecha de actualización"
|
||||
},
|
||||
"inventory": "inventario",
|
||||
"name": "Nombre",
|
||||
"quota": "Límite de compra/vez",
|
||||
"replacement": "Restablecer precio/vez",
|
||||
"sell": "venta",
|
||||
"show": "Mostrar en la página de inicio",
|
||||
"subscribe": "Suscribirse",
|
||||
"subscribeGroup": "Suscribirse al grupo",
|
||||
"tabs": {
|
||||
"subscribe": "Suscribirse",
|
||||
"subscribeGroup": "Grupo de suscripción"
|
||||
},
|
||||
"traffic": "tráfico",
|
||||
"unitPrice": "Precio/mes",
|
||||
"updateSuccess": "Actualización exitosa"
|
||||
}
|
||||
@@ -0,0 +1,156 @@
|
||||
{
|
||||
"currency": {
|
||||
"accessKey": "Clave de acceso",
|
||||
"accessKeyDescription": "https://exchangerate.host proporciona una clave API gratuita para tasas de cambio",
|
||||
"currencySymbol": "Símbolo de moneda",
|
||||
"currencySymbolDescription": "Solo para fines de visualización, cambiarlo alterará todas las unidades monetarias en el sistema",
|
||||
"currencyUnit": "Unidad monetaria",
|
||||
"currencyUnitDescription": "Solo para fines de visualización, cambiarlo alterará todas las unidades monetarias en el sistema",
|
||||
"saveSuccess": "Guardado exitosamente"
|
||||
},
|
||||
"email": {
|
||||
"expiration_email_template": "Plantilla de notificación de expiración",
|
||||
"expiration_email_templateDescription": "Las variables {after}.nombreVariable{before} en la plantilla serán reemplazadas por datos reales, asegúrese de conservar estas variables.",
|
||||
"inputPlaceholder": "Por favor, ingrese contenido...",
|
||||
"maintenance_email_template": "Plantilla de notificación de mantenimiento",
|
||||
"maintenance_email_templateDescription": "Las variables {after}.nombreVariable{before} en la plantilla serán reemplazadas por datos reales, asegúrese de conservar estas variables.",
|
||||
"saveSuccess": "La configuración se ha guardado exitosamente.",
|
||||
"sendFailure": "El envío del correo de prueba falló, por favor verifique la configuración.",
|
||||
"sendSuccess": "El correo de prueba se ha enviado exitosamente.",
|
||||
"sendTestEmail": "Enviar correo de prueba",
|
||||
"sendTestEmailDescription": "Envía un correo de prueba para verificar si la configuración es correcta.",
|
||||
"senderAddress": "Dirección del remitente",
|
||||
"senderAddressDescription": "La dirección de correo predeterminada utilizada para enviar correos.",
|
||||
"smtpAccount": "Cuenta SMTP",
|
||||
"smtpAccountDescription": "Cuenta de correo utilizada para la autenticación.",
|
||||
"smtpEncryptionMethod": "Método de encriptación SMTP",
|
||||
"smtpEncryptionMethodDescription": "Seleccione si desea habilitar la encriptación SSL/TLS.",
|
||||
"smtpPassword": "Contraseña SMTP",
|
||||
"smtpPasswordDescription": "La contraseña de la cuenta SMTP.",
|
||||
"smtpServerAddress": "Dirección del servidor SMTP",
|
||||
"smtpServerAddressDescription": "Especifique la dirección del servidor utilizada para enviar correos.",
|
||||
"smtpServerPort": "Puerto del servidor SMTP",
|
||||
"smtpServerPortDescription": "Especifique el número de puerto para conectar al servidor SMTP.",
|
||||
"verify_email_template": "Plantilla de verificación de correo",
|
||||
"verify_email_templateDescription": "Las variables {after}.nombreVariable{before} en la plantilla serán reemplazadas por datos reales, asegúrese de conservar estas variables."
|
||||
},
|
||||
"invite": {
|
||||
"commissionFirstTimeOnly": "Comisión solo en la primera compra",
|
||||
"commissionFirstTimeOnlyDescription": "Al habilitar, la comisión se genera solo en el primer pago del invitado. Puede configurar usuarios individuales en la gestión de usuarios.",
|
||||
"enableForcedInvite": "Habilitar invitación forzada",
|
||||
"enableForcedInviteDescription": "Al habilitar, solo los usuarios invitados pueden registrarse.",
|
||||
"inputPlaceholder": "Por favor ingrese",
|
||||
"inviteCommissionPercentage": "Porcentaje de comisión por invitación",
|
||||
"inviteCommissionPercentageDescription": "Proporción de comisión global predeterminada. Puede configurar proporciones individuales en la gestión de usuarios.",
|
||||
"saveSuccess": "Guardado exitosamente"
|
||||
},
|
||||
"node": {
|
||||
"communicationKey": "Clave de comunicación",
|
||||
"communicationKeyDescription": "Clave para la comunicación del nodo, para asegurar que los datos no sean interceptados por otros",
|
||||
"inputPlaceholder": "Por favor ingrese",
|
||||
"nodePullInterval": "Intervalo de extracción del nodo",
|
||||
"nodePullIntervalDescription": "Frecuencia con la que el nodo obtiene datos del panel (segundos)",
|
||||
"nodePushInterval": "Intervalo de envío del nodo",
|
||||
"nodePushIntervalDescription": "Frecuencia con la que el nodo envía datos al panel",
|
||||
"saveSuccess": "Guardado exitosamente"
|
||||
},
|
||||
"register": {
|
||||
"emailSuffixWhitelist": "Lista blanca de sufijos de correo electrónico",
|
||||
"emailSuffixWhitelistDescription": "Al habilitar, solo se podrán registrar correos electrónicos con los sufijos de la lista",
|
||||
"emailVerification": "Verificación de correo electrónico",
|
||||
"emailVerificationDescription": "Al habilitar, los usuarios deberán verificar su correo electrónico",
|
||||
"ipRegistrationLimit": "Límite de registro por IP",
|
||||
"ipRegistrationLimitDescription": "Al habilitar, las IP que cumplan con los requisitos de las reglas serán restringidas para registrarse. Tenga en cuenta que la determinación de IP puede causar problemas debido a CDN o proxies frontales",
|
||||
"penaltyTime": "Tiempo de penalización (minutos)",
|
||||
"penaltyTimeDescription": "El usuario debe esperar a que pase el tiempo de penalización para registrarse nuevamente",
|
||||
"registrationLimitCount": "Conteo de límite de registro",
|
||||
"registrationLimitCountDescription": "Habilitar penalización después de alcanzar el límite de registro",
|
||||
"saveSuccess": "Guardado exitosamente",
|
||||
"stopNewUserRegistration": "Detener registro de nuevos usuarios",
|
||||
"stopNewUserRegistrationDescription": "Al habilitar, nadie podrá registrarse",
|
||||
"trialRegistration": "Registro de prueba",
|
||||
"trialRegistrationDescription": "Habilitar registro de prueba, por favor modifique primero el paquete y la duración de la prueba",
|
||||
"whitelistSuffixes": "Sufijos de lista blanca",
|
||||
"whitelistSuffixesDescription": "Para la verificación de correo electrónico de registro, uno por línea",
|
||||
"whitelistSuffixesPlaceholder": "Por favor ingrese los sufijos de correo electrónico, uno por línea"
|
||||
},
|
||||
"site": {
|
||||
"logo": "LOGO",
|
||||
"logoDescription": "Usado para mostrar la ubicación donde se debe exhibir el LOGO",
|
||||
"logoPlaceholder": "Por favor, ingresa la URL del LOGO, no termines con '/'",
|
||||
"saveSuccess": "Guardado exitosamente",
|
||||
"siteDesc": "Descripción del sitio",
|
||||
"siteDescDescription": "Usado para mostrar la ubicación donde se debe exhibir la descripción del sitio",
|
||||
"siteDescPlaceholder": "Por favor, ingresa la descripción del sitio",
|
||||
"siteDomain": "Dominio del sitio",
|
||||
"siteDomainDescription": "La dirección de dominio del sitio web actual, por ejemplo, para usar en correos electrónicos",
|
||||
"siteDomainPlaceholder": "Por favor, ingresa la dirección del dominio, múltiples dominios deben estar en líneas separadas",
|
||||
"siteName": "Nombre del sitio",
|
||||
"siteNameDescription": "Usado para mostrar la ubicación donde se debe exhibir el nombre del sitio",
|
||||
"siteNamePlaceholder": "Por favor, ingresa el nombre del sitio"
|
||||
},
|
||||
"subscription": {
|
||||
"add": "Agregar",
|
||||
"app": "Aplicación",
|
||||
"appDescription": "Configura la dirección de descarga de la APP y las reglas de importación, recuerda guardar después de modificar",
|
||||
"appDownloadURL": "Dirección de descarga de la aplicación",
|
||||
"appIcon": "Ícono de la aplicación",
|
||||
"appName": "Nombre de la aplicación",
|
||||
"delete": "Eliminar",
|
||||
"reset": "Restablecer",
|
||||
"save": "Guardar",
|
||||
"saveSuccess": "Guardado exitosamente",
|
||||
"singleSubscriptionMode": "Modo de suscripción única",
|
||||
"singleSubscriptionModeDescription": "Al activarlo, todos los planes de los usuarios se convertirán en saldo",
|
||||
"subscriptionDomain": "Dominio de suscripción",
|
||||
"subscriptionDomainDescription": "Usado para suscripción, si se deja en blanco se usará el dominio del sitio",
|
||||
"subscriptionDomainPlaceholder": "Por favor ingresa el dominio de suscripción, múltiples dominios deben estar en líneas separadas",
|
||||
"subscriptionPath": "Ruta de suscripción",
|
||||
"subscriptionPathDescription": "Usado para suscripción, después de modificar asegúrate de reiniciar el sistema para garantizar el mejor rendimiento",
|
||||
"subscriptionPathPlaceholder": "Por favor ingresa",
|
||||
"subscriptionProtocol": "Protocolo de suscripción",
|
||||
"wildcardResolution": "Resolución de comodines",
|
||||
"wildcardResolutionDescription": "Usado para suscripción"
|
||||
},
|
||||
"tabs": {
|
||||
"currency": "Moneda",
|
||||
"email": "Correo electrónico",
|
||||
"invite": "Invitar",
|
||||
"node": "Nodo",
|
||||
"register": "Registrar",
|
||||
"site": "Sitio",
|
||||
"subscription": "Suscripción",
|
||||
"telegram": "Telegram",
|
||||
"tos": "Términos del servicio",
|
||||
"verify": "Verificar"
|
||||
},
|
||||
"telegram": {
|
||||
"botToken": "Token del Bot",
|
||||
"botTokenDescription": "Por favor, ingresa el token proporcionado por Botfather",
|
||||
"enableBotNotifications": "Habilitar notificaciones del bot",
|
||||
"enableBotNotificationsDescription": "Al habilitar, el bot enviará notificaciones básicas a los administradores y usuarios vinculados a Telegram",
|
||||
"groupURL": "URL del grupo",
|
||||
"groupURLDescription": "Al completar, se mostrará en el lado del usuario o se usará donde sea necesario",
|
||||
"inputPlaceholderBotToken": "0000000000:xxxxxxxxx_xxxxxxxxxxxxxxx",
|
||||
"inputPlaceholderGroupURL": "https://t.me/xxxxxx",
|
||||
"saveSuccess": "Guardado exitosamente"
|
||||
},
|
||||
"tos": {
|
||||
"saveSuccess": "Guardado exitoso",
|
||||
"title": "Términos del servicio"
|
||||
},
|
||||
"verify": {
|
||||
"inputPlaceholder": "Por favor ingrese",
|
||||
"loginVerificationCode": "Código de verificación de inicio de sesión",
|
||||
"loginVerificationCodeDescription": "Verificación humana al iniciar sesión",
|
||||
"registrationVerificationCode": "Código de verificación de registro",
|
||||
"registrationVerificationCodeDescription": "Verificación humana al registrarse",
|
||||
"resetPasswordVerificationCode": "Código de verificación para restablecer contraseña",
|
||||
"resetPasswordVerificationCodeDescription": "Verificación humana al restablecer la contraseña",
|
||||
"saveSuccess": "Guardado exitosamente",
|
||||
"turnstileSecret": "Clave secreta de Turnstile",
|
||||
"turnstileSecretDescription": "Clave secreta de Turnstile proporcionada por Cloudflare",
|
||||
"turnstileSiteKey": "Clave del sitio de Turnstile",
|
||||
"turnstileSiteKeyDescription": "Clave del sitio de Turnstile proporcionada por Cloudflare"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"actions": "acciones",
|
||||
"cancel": "Cancelar",
|
||||
"check": "Revisar",
|
||||
"close": "cerrar",
|
||||
"closeSuccess": "Cierre exitoso",
|
||||
"closeWarning": "Una vez cerrado, no se podrá operar esta orden de trabajo. Por favor, proceda con precaución.",
|
||||
"confirm": "Confirmar",
|
||||
"confirmClose": "¿Estás seguro de que deseas cerrar?",
|
||||
"createdAt": "Fecha de creación",
|
||||
"inputPlaceholder": "Por favor, ingrese su pregunta y le responderemos lo antes posible.",
|
||||
"open": "abrir",
|
||||
"reply": "respuesta",
|
||||
"status": [
|
||||
"Estado",
|
||||
"Pendiente de seguimiento",
|
||||
"Pendiente de respuesta",
|
||||
"Procesado",
|
||||
"Cerrado"
|
||||
],
|
||||
"ticketList": "Lista de tickets",
|
||||
"title": "Título",
|
||||
"updatedAt": "Actualizado en",
|
||||
"user": "usuario"
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
{
|
||||
"caller": "Llamador",
|
||||
"cancel": "Cancelar",
|
||||
"confirmReboot": "Confirmar reinicio",
|
||||
"confirmSystemReboot": "Confirmar reinicio del sistema",
|
||||
"confirmSystemUpgrade": "Confirmar actualización del sistema",
|
||||
"confirmUpgrade": "Confirmar actualización",
|
||||
"currentVersion": "Versión actual del sistema:",
|
||||
"errors": "Errores",
|
||||
"ip": "IP",
|
||||
"lastUpdated": "Última actualización:",
|
||||
"none": "Ninguno",
|
||||
"query": "Consulta",
|
||||
"rebootDescription": "¿Está seguro de que desea reiniciar el sistema? Esta acción provocará una breve interrupción del servicio.",
|
||||
"rebooting": "Reiniciando el sistema...",
|
||||
"refreshLogs": "Actualizar registros",
|
||||
"request": "Solicitud",
|
||||
"status": "Estado",
|
||||
"systemLogs": "Registros del sistema",
|
||||
"systemReboot": "Reinicio del sistema",
|
||||
"systemServices": "Servicios del sistema",
|
||||
"systemUpgrade": "Actualización del sistema",
|
||||
"upgradeDescription": "¿Está seguro de que desea realizar la actualización del sistema? Esta operación puede tardar unos minutos, durante los cuales el sistema podría no responder.",
|
||||
"userAgent": "Agente de Usuario",
|
||||
"viewLogsAndManage": "Ver los registros del sistema, realizar actualizaciones del sistema y reiniciar operaciones"
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
{
|
||||
"actions": "acciones",
|
||||
"balance": "Saldo",
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"confirmDelete": "¿Está seguro de que desea eliminar?",
|
||||
"create": "Crear",
|
||||
"createSuccess": "Creación exitosa",
|
||||
"createUser": "Crear usuario",
|
||||
"createdAt": "Fecha de registro",
|
||||
"delete": "Eliminar",
|
||||
"deleteDescription": "Después de eliminar, los datos no se pueden recuperar. Proceda con precaución.",
|
||||
"deleteSuccess": "Eliminación exitosa",
|
||||
"edit": "editar",
|
||||
"editUser": "Editar usuario",
|
||||
"email": "correo electrónico",
|
||||
"enable": "Habilitar",
|
||||
"form": {
|
||||
"balance": "Saldo",
|
||||
"balancePlaceholder": "Saldo",
|
||||
"cancel": "Cancelar",
|
||||
"confirm": "Confirmar",
|
||||
"invalidEmailFormat": "Formato de correo electrónico no válido",
|
||||
"inviteCode": "Código de invitación",
|
||||
"inviteCodePlaceholder": "Ingrese el código de invitación (déjelo en blanco para generar automáticamente)",
|
||||
"manager": "Administrador",
|
||||
"password": "Contraseña",
|
||||
"passwordPlaceholder": "Ingrese nueva contraseña (opcional)",
|
||||
"refererId": "ID del referente",
|
||||
"refererIdPlaceholder": "Ingrese ID del referente",
|
||||
"userEmail": "Correo electrónico del usuario",
|
||||
"userEmailPlaceholder": "Ingrese el correo electrónico del usuario"
|
||||
},
|
||||
"referer": "Recomendador",
|
||||
"updateSuccess": "Actualización exitosa",
|
||||
"userList": "Lista de usuarios",
|
||||
"userName": "Correo electrónico del usuario"
|
||||
}
|
||||
Reference in New Issue
Block a user