chore: add missing translations (#28631)
This commit is contained in:
@@ -113,6 +113,15 @@ const translation = {
|
||||
currentView: 'Vista actual',
|
||||
currentWorkflow: 'Flujo de trabajo actual',
|
||||
moreActions: 'Más acciones',
|
||||
listening: 'Escucha',
|
||||
chooseStartNodeToRun: 'Elige el nodo de inicio para ejecutar',
|
||||
runAllTriggers: 'Ejecutar todos los desencadenadores',
|
||||
features: 'Características',
|
||||
featuresDescription: 'Mejorar la experiencia del usuario en la aplicación web',
|
||||
featuresDocLink: 'Aprender más',
|
||||
needAdd: 'Se debe añadir el nodo {{node}}',
|
||||
needStartNode: 'Se debe añadir al menos un nodo de inicio',
|
||||
workflowAsToolDisabledHint: 'Publica el flujo de trabajo más reciente y asegúrate de que haya un nodo de Entrada de Usuario conectado antes de configurarlo como una herramienta.',
|
||||
},
|
||||
env: {
|
||||
envPanelTitle: 'Variables de Entorno',
|
||||
@@ -219,6 +228,7 @@ const translation = {
|
||||
rerankModelRequired: 'Antes de activar el modelo de reclasificación, confirme que el modelo se ha configurado correctamente en la configuración.',
|
||||
toolParameterRequired: '{{campo}}: el parámetro [{{param}}] es obligatorio',
|
||||
noValidTool: '{{campo}} no se ha seleccionado ninguna herramienta válida',
|
||||
startNodeRequired: 'Por favor, agregue primero un nodo de inicio antes de {{operation}}',
|
||||
},
|
||||
singleRun: {
|
||||
testRun: 'Ejecución de prueba',
|
||||
@@ -250,6 +260,21 @@ const translation = {
|
||||
'allAdded': 'Todo añadido',
|
||||
'sources': 'Fuentes',
|
||||
'searchDataSource': 'Fuente de datos de búsqueda',
|
||||
'start': 'Iniciar',
|
||||
'searchTrigger': 'Buscar desencadenantes...',
|
||||
'allTriggers': 'Todos los desencadenantes',
|
||||
'noPluginsFound': 'No se encontraron complementos',
|
||||
'requestToCommunity': 'Solicitudes a la comunidad',
|
||||
'featuredTools': 'Destacado',
|
||||
'showMoreFeatured': 'Mostrar más',
|
||||
'showLessFeatured': 'Mostrar menos',
|
||||
'installed': 'Instalado',
|
||||
'pluginByAuthor': 'Por {{author}}',
|
||||
'usePlugin': 'Seleccionar herramienta',
|
||||
'hideActions': 'Ocultar herramientas',
|
||||
'noFeaturedPlugins': 'Descubre más herramientas en el Marketplace',
|
||||
'noFeaturedTriggers': 'Descubre más desencadenantes en el Marketplace',
|
||||
'startDisabledTip': 'El nodo activador y el nodo de entrada del usuario son mutuamente excluyentes.',
|
||||
},
|
||||
blocks: {
|
||||
'start': 'Inicio',
|
||||
@@ -276,6 +301,10 @@ const translation = {
|
||||
'loop-start': 'Inicio del bucle',
|
||||
'knowledge-index': 'Knowledge base',
|
||||
'datasource': 'Fuente de datos',
|
||||
'originalStartNode': 'nodo inicial original',
|
||||
'trigger-schedule': 'Disparador de horario',
|
||||
'trigger-webhook': 'Disparador de Webhook',
|
||||
'trigger-plugin': 'Disparador de complemento',
|
||||
},
|
||||
blocksAbout: {
|
||||
'start': 'Define los parámetros iniciales para iniciar un flujo de trabajo',
|
||||
@@ -300,6 +329,9 @@ const translation = {
|
||||
'loop': 'Ejecuta un bucle de lógica hasta que se cumpla la condición de terminación o se alcance el conteo máximo de bucles.',
|
||||
'knowledge-index': 'Base de conocimientos Acerca de',
|
||||
'datasource': 'Fuente de datos Acerca de',
|
||||
'trigger-schedule': 'Disparador de flujo de trabajo basado en tiempo que inicia flujos de trabajo según un horario',
|
||||
'trigger-webhook': 'El disparador de Webhook recibe envíos HTTP de sistemas de terceros para activar automáticamente flujos de trabajo.',
|
||||
'trigger-plugin': 'Disparador de integración de terceros que inicia flujos de trabajo a partir de eventos de plataformas externas',
|
||||
},
|
||||
operator: {
|
||||
zoomIn: 'Acercar',
|
||||
@@ -340,6 +372,8 @@ const translation = {
|
||||
minimize: 'Salir de pantalla completa',
|
||||
scrollToSelectedNode: 'Desplácese hasta el nodo seleccionado',
|
||||
optional_and_hidden: '(opcional y oculto)',
|
||||
goTo: 'Ir a',
|
||||
startNode: 'Nodo de inicio',
|
||||
},
|
||||
nodes: {
|
||||
common: {
|
||||
@@ -787,6 +821,8 @@ const translation = {
|
||||
MaxParallelismDesc: 'El paralelismo máximo se utiliza para controlar el número de tareas ejecutadas simultáneamente en una sola iteración.',
|
||||
answerNodeWarningDesc: 'Advertencia de modo paralelo: Los nodos de respuesta, las asignaciones de variables de conversación y las operaciones de lectura/escritura persistentes dentro de las iteraciones pueden provocar excepciones.',
|
||||
parallelModeEnableTitle: 'Modo paralelo habilitado',
|
||||
flattenOutput: 'Aplanar salida',
|
||||
flattenOutputDesc: 'Cuando está habilitado, si todas las salidas de la iteración son arrays, se aplanarán en un solo array. Cuando está deshabilitado, las salidas mantendrán una estructura de array anidada.',
|
||||
},
|
||||
note: {
|
||||
addNote: 'Agregar nota',
|
||||
@@ -963,6 +999,144 @@ const translation = {
|
||||
rerankingModelIsInvalid: 'El modelo de reordenación no es válido',
|
||||
embeddingModelIsInvalid: 'El modelo de incrustación no es válido',
|
||||
},
|
||||
triggerPlugin: {
|
||||
authorized: 'autorizado',
|
||||
notConfigured: 'No Configurado',
|
||||
notAuthorized: 'No autorizado',
|
||||
selectSubscription: 'Seleccionar suscripción',
|
||||
availableSubscriptions: 'Suscripciones disponibles',
|
||||
addSubscription: 'Agregar nueva suscripción',
|
||||
removeSubscription: 'Cancelar suscripción',
|
||||
subscriptionRemoved: 'Suscripción eliminada con éxito',
|
||||
error: 'Error',
|
||||
configuration: 'Configuración',
|
||||
remove: 'Eliminar',
|
||||
or: 'O',
|
||||
useOAuth: 'Usar OAuth',
|
||||
useApiKey: 'Usar clave API',
|
||||
authenticationFailed: 'Autenticación fallida',
|
||||
authenticationSuccess: 'Autenticación exitosa',
|
||||
oauthConfigFailed: 'La configuración de OAuth falló',
|
||||
configureOAuthClient: 'Configurar cliente OAuth',
|
||||
oauthClientDescription: 'Configura las credenciales del cliente OAuth para habilitar la autenticación',
|
||||
oauthClientSaved: 'Configuración del cliente OAuth guardada correctamente',
|
||||
configureApiKey: 'Configurar clave API',
|
||||
apiKeyDescription: 'Configurar las credenciales de la clave API para la autenticación',
|
||||
apiKeyConfigured: 'Clave API configurada correctamente',
|
||||
configurationFailed: 'La configuración falló',
|
||||
failedToStart: 'Error al iniciar el flujo de autenticación',
|
||||
credentialsVerified: 'Credenciales verificadas con éxito',
|
||||
credentialVerificationFailed: 'Verificación de credenciales fallida',
|
||||
verifyAndContinue: 'Verificar y continuar',
|
||||
configureParameters: 'Configurar parámetros',
|
||||
parametersDescription: 'Configurar parámetros y propiedades del disparador',
|
||||
configurationComplete: 'Configuración completa',
|
||||
configurationCompleteDescription: 'Tu disparador se ha configurado correctamente',
|
||||
configurationCompleteMessage: 'Tu configuración de activadores ya está completa y lista para usar.',
|
||||
parameters: 'Parámetros',
|
||||
properties: 'Propiedades',
|
||||
propertiesDescription: 'Propiedades de configuración adicionales para este disparador',
|
||||
noConfigurationRequired: 'No se requiere configuración adicional para este disparador.',
|
||||
subscriptionName: 'Nombre de la suscripción',
|
||||
subscriptionNameDescription: 'Ingresa un nombre único para esta suscripción de activador',
|
||||
subscriptionNamePlaceholder: 'Ingrese el nombre de la suscripción...',
|
||||
subscriptionNameRequired: 'Se requiere el nombre de la suscripción',
|
||||
subscriptionRequired: 'Se requiere suscripción',
|
||||
},
|
||||
triggerSchedule: {
|
||||
title: 'Horario',
|
||||
nodeTitle: 'Disparador de horario',
|
||||
notConfigured: 'No configurado',
|
||||
useCronExpression: 'Usar expresión cron',
|
||||
useVisualPicker: 'Usar selector visual',
|
||||
frequency: {
|
||||
label: 'FRECUENCIA',
|
||||
hourly: 'Por hora',
|
||||
daily: 'diario',
|
||||
weekly: 'Semanal',
|
||||
monthly: 'Mensual',
|
||||
},
|
||||
selectFrequency: 'Seleccionar frecuencia',
|
||||
frequencyLabel: 'Frecuencia',
|
||||
nextExecution: 'Próxima ejecución',
|
||||
weekdays: 'Días de la semana',
|
||||
time: 'Tiempo',
|
||||
cronExpression: 'Expresión Cron',
|
||||
nextExecutionTime: 'PRÓXIMA HORA DE EJECUCIÓN',
|
||||
nextExecutionTimes: 'Próximos 5 tiempos de ejecución',
|
||||
startTime: 'Hora de inicio',
|
||||
executeNow: 'Ejecución ahora',
|
||||
selectDateTime: 'Seleccionar fecha y hora',
|
||||
hours: 'Horas',
|
||||
minutes: 'Minutos',
|
||||
onMinute: 'En un minuto',
|
||||
days: 'Días',
|
||||
lastDay: 'Último día',
|
||||
lastDayTooltip: 'No todos los meses tienen 31 días. Usa la opción \'último día\' para seleccionar el último día de cada mes.',
|
||||
mode: 'Modo',
|
||||
timezone: 'Zona horaria',
|
||||
visualConfig: 'Configuración Visual',
|
||||
monthlyDay: 'Día mensual',
|
||||
executionTime: 'Tiempo de ejecución',
|
||||
invalidTimezone: 'Zona horaria no válida',
|
||||
invalidCronExpression: 'Expresión cron inválida',
|
||||
noValidExecutionTime: 'No se puede calcular un tiempo de ejecución válido',
|
||||
executionTimeCalculationError: 'Error al calcular los tiempos de ejecución',
|
||||
invalidFrequency: 'Frecuencia inválida',
|
||||
invalidStartTime: 'Hora de inicio no válida',
|
||||
startTimeMustBeFuture: 'La hora de inicio debe ser en el futuro',
|
||||
invalidTimeFormat: 'Formato de hora inválido (se esperaba HH:MM AM/PM)',
|
||||
invalidWeekday: 'Día de la semana no válido: {{weekday}}',
|
||||
invalidMonthlyDay: 'El día del mes debe estar entre 1 y 31 o "último"',
|
||||
invalidOnMinute: 'El minuto debe estar entre 0 y 59',
|
||||
invalidExecutionTime: 'Tiempo de ejecución inválido',
|
||||
executionTimeMustBeFuture: 'El tiempo de ejecución debe estar en el futuro',
|
||||
},
|
||||
triggerWebhook: {
|
||||
title: 'Disparador de Webhook',
|
||||
nodeTitle: '🔗 Disparador de Webhook',
|
||||
configPlaceholder: 'La configuración del activador del webhook se implementará aquí',
|
||||
webhookUrl: 'URL del webhook',
|
||||
webhookUrlPlaceholder: 'Haz clic en generar para crear la URL del webhook',
|
||||
generate: 'Generar',
|
||||
copy: 'Copiar',
|
||||
test: 'Prueba',
|
||||
urlGenerated: 'URL del webhook generada con éxito',
|
||||
urlGenerationFailed: 'No se pudo generar la URL del webhook',
|
||||
urlCopied: 'URL copiada al portapapeles',
|
||||
method: 'Método',
|
||||
contentType: 'Tipo de contenido',
|
||||
queryParameters: 'Parámetros de consulta',
|
||||
headerParameters: 'Parámetros de encabezado',
|
||||
requestBodyParameters: 'Parámetros del cuerpo de la solicitud',
|
||||
parameterName: 'Nombre de la variable',
|
||||
varName: 'Nombre de la variable',
|
||||
varType: 'Tipo',
|
||||
varNamePlaceholder: 'Ingrese el nombre de la variable...',
|
||||
required: 'Requerido',
|
||||
addParameter: 'Agregar',
|
||||
addHeader: 'Agregar',
|
||||
noParameters: 'No se han configurado parámetros',
|
||||
noQueryParameters: 'No se han configurado parámetros de consulta',
|
||||
noHeaders: 'No se han configurado encabezados',
|
||||
noBodyParameters: 'No se configuraron parámetros de cuerpo',
|
||||
debugUrlTitle: 'Para pruebas, siempre use esta URL',
|
||||
debugUrlCopy: 'Haz clic para copiar',
|
||||
debugUrlCopied: '¡Copiado!',
|
||||
debugUrlPrivateAddressWarning: 'Esta URL parece ser una dirección interna, lo que puede hacer que las solicitudes del webhook fallen. Puede cambiar TRIGGER_URL a una dirección pública.',
|
||||
errorHandling: 'Manejo de errores',
|
||||
errorStrategy: 'Manejo de errores',
|
||||
responseConfiguration: 'Respuesta',
|
||||
asyncMode: 'Modo Asíncrono',
|
||||
statusCode: 'Código de estado',
|
||||
responseBody: 'Cuerpo de la respuesta',
|
||||
responseBodyPlaceholder: 'Escribe aquí el cuerpo de tu respuesta',
|
||||
headers: 'Encabezados',
|
||||
validation: {
|
||||
webhookUrlRequired: 'Se requiere la URL del webhook',
|
||||
invalidParameterType: 'Tipo de parámetro inválido "{{type}}" para el parámetro "{{name}}"',
|
||||
},
|
||||
},
|
||||
},
|
||||
tracing: {
|
||||
stopBy: 'Pásate por {{user}}',
|
||||
@@ -1037,6 +1211,18 @@ const translation = {
|
||||
exportToolTip: 'Exportar variable como archivo',
|
||||
largeData: 'Datos grandes, vista previa de solo lectura. Exportar para verlo todo.',
|
||||
largeDataNoExport: 'Datos grandes: solo vista previa parcial',
|
||||
listening: {
|
||||
title: 'Escuchando eventos desde los activadores...',
|
||||
tip: 'Ahora puedes simular disparadores de eventos enviando solicitudes de prueba al endpoint HTTP {{nodeName}} o usarlo como una URL de retorno de llamada para la depuración de eventos en tiempo real. Todos los resultados se pueden ver directamente en el Inspector de Variables.',
|
||||
tipPlugin: 'Ahora puedes crear eventos en {{- pluginName}} y obtener los resultados de estos eventos en el Inspector de Variables.',
|
||||
tipSchedule: 'Escuchando eventos de los desencadenadores de programación.\nPróxima ejecución programada: {{nextTriggerTime}}',
|
||||
tipFallback: 'Esperando eventos desencadenantes entrantes. Las salidas aparecerán aquí.',
|
||||
defaultNodeName: 'este disparador',
|
||||
defaultPluginName: 'este activador de plugin',
|
||||
defaultScheduleTime: 'No configurado',
|
||||
selectedTriggers: 'disparadores seleccionados',
|
||||
stopButton: 'Para',
|
||||
},
|
||||
},
|
||||
lastRunTab: 'Última ejecución',
|
||||
settingsTab: 'Ajustes',
|
||||
@@ -1054,11 +1240,52 @@ const translation = {
|
||||
copyLastRun: 'Copiar última ejecución',
|
||||
noMatchingInputsFound: 'No se encontraron entradas coincidentes de la última ejecución.',
|
||||
lastOutput: 'Última salida',
|
||||
lastRunInputsCopied: '{{count}} entrada(s) copiadas de la última ejecución',
|
||||
},
|
||||
sidebar: {
|
||||
exportWarning: 'Exportar la versión guardada actual',
|
||||
exportWarningDesc: 'Esto exportará la versión guardada actual de tu flujo de trabajo. Si tienes cambios no guardados en el editor, guárdalos primero utilizando la opción de exportar en el lienzo del flujo de trabajo.',
|
||||
},
|
||||
publishLimit: {
|
||||
startNodeTitlePrefix: 'Actualizar a',
|
||||
startNodeTitleSuffix: 'desbloquear disparadores ilimitados por flujo de trabajo',
|
||||
startNodeDesc: 'Has alcanzado el límite de 2 desencadenadores por flujo de trabajo para este plan. Actualiza para publicar este flujo de trabajo.',
|
||||
},
|
||||
error: {
|
||||
startNodeRequired: 'Por favor, agregue primero un nodo de inicio antes de {{operation}}',
|
||||
operations: {
|
||||
connectingNodes: 'conectando nodos',
|
||||
addingNodes: 'agregando nodos',
|
||||
modifyingWorkflow: 'modificando el flujo de trabajo',
|
||||
updatingWorkflow: 'actualizando flujo de trabajo',
|
||||
},
|
||||
},
|
||||
customWebhook: 'Webhook personalizado',
|
||||
difyTeam: 'Equipo Dify',
|
||||
triggerStatus: {
|
||||
enabled: 'DISPARADOR',
|
||||
disabled: 'DISPARADOR • DESACTIVADO',
|
||||
},
|
||||
entryNodeStatus: {
|
||||
enabled: 'INICIAR',
|
||||
disabled: 'INICIAR • DESACTIVADO',
|
||||
},
|
||||
onboarding: {
|
||||
title: 'Selecciona un nodo de inicio para comenzar',
|
||||
description: 'Los diferentes nodos iniciales tienen distintas capacidades. No te preocupes, siempre puedes cambiarlos más adelante.',
|
||||
userInputFull: 'Entrada del usuario (nodo de inicio original)',
|
||||
userInputDescription: 'Nodo de inicio que permite establecer variables de entrada del usuario, con capacidades de herramienta para aplicación web, API de servicio, servidor MCP y flujo de trabajo.',
|
||||
trigger: 'Disparador',
|
||||
triggerDescription: 'Los desencadenantes pueden servir como el nodo inicial de un flujo de trabajo, como tareas programadas, webhooks personalizados o integraciones con otras aplicaciones.',
|
||||
back: 'Atrás',
|
||||
learnMore: 'Aprender más',
|
||||
aboutStartNode: 'sobre el nodo de inicio.',
|
||||
escTip: {
|
||||
press: 'Prensa',
|
||||
key: 'esc',
|
||||
toDismiss: 'despedir',
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
export default translation
|
||||
|
||||
Reference in New Issue
Block a user