{ "page": { "title": "Flujos de trabajo" }, "nav": { "designer": "Diseñador", "runs": "Ejecuciones", "control": "Control de flujo de trabajo", "tasks": "Tareas" }, "sections": { "definitions": "Definiciones de flujo de trabajo", "runStudio": "Estudio de ejecución" }, "empty": { "title": "No se encontraron flujos de trabajo", "description": "Los flujos de trabajo aparecerán aquí una vez creados." }, "filters": { "allStatuses": "Todos los estados", "allLevels": "Todos los niveles", "allTypes": "Todos los tipos" }, "actions": { "create": "Crear flujo de trabajo", "open": "Abrir", "close": "Cerrar", "print": "Imprimir", "printOptions": "Opciones de impresión", "printSelected": "Imprimir seleccionados ({{count}})" }, "runList": { "shareTooltip": "Imprimir y exportar", "quickRanges": { "last24h": "Últimas 24 h", "last7d": "Últimos 7 días" }, "summary": { "total": "Total", "activeWorkflows": "Flujos de trabajo activos", "runCount": "{{count}} ejecuciones" }, "filters": { "all": "Todos", "allWorkflows": "Todos los flujos de trabajo", "searchLabel": "ID de ejecución o clave de correlación", "searchPlaceholder": "Buscar por ID de ejecución o clave de correlación", "statusLabel": "Estado", "workflowLabel": "Flujo de trabajo", "versionLabel": "Versión del flujo de trabajo", "versionPlaceholder": "Cualquier versión", "fromLabel": "Desde", "toLabel": "Hasta", "sortLabel": "Ordenar" }, "actions": { "applyFilters": "Aplicar filtros", "reset": "Restablecer", "viewLatestRun": "Ver última ejecución", "runNow": "Ejecutar ahora", "exportCsv": "Exportar CSV", "refresh": "Actualizar", "cancelSelected": "Cancelar selección ({{count}})", "clearSelection": "Borrar selección", "details": "Detalles", "loadMore": "Cargar más", "preview": "Vista previa" }, "table": { "runId": "ID de ejecución", "workflow": "Flujo de trabajo", "version": "Versión", "tenant": "Inquilino", "triggerPayload": "Carga útil del disparador", "status": "Estado", "started": "Iniciado", "updated": "Actualizado", "duration": "Duración", "emptyValue": "—", "trigger": { "manual": "Manual", "mapped": "Mapeado", "identity": "Identidad" } }, "states": { "loading": "Cargando ejecuciones…", "empty": "Ninguna ejecución coincide con los filtros actuales." }, "bulk": { "cancelTitle": "Cancelar ejecuciones seleccionadas", "cancelMessage": "¿Cancelar {{count}} ejecución(es) seleccionada(s)? No se puede deshacer.", "reasonLabel": "Motivo", "cancelReasonPlaceholder": "Indique un motivo para cancelar", "cancelConfirm": "Cancelar ejecuciones" }, "toasts": { "loadRunsFailed": "Error al cargar las ejecuciones", "selectWorkflowForLatestRun": "Seleccione un flujo de trabajo para ver su última ejecución.", "noRunsFoundForWorkflow": "No se encontraron ejecuciones para ese flujo de trabajo.", "loadLatestRunFailed": "Error al cargar la última ejecución", "selectWorkflowToRun": "Seleccione un flujo de trabajo para ejecutar.", "exportReady": "Exportación de ejecución lista", "exportFailed": "Error al exportar las ejecuciones", "selectRunsForBulkAction": "Seleccione ejecuciones para realizar esta acción.", "bulkReasonTooShort": "El motivo debe tener al menos 3 caracteres.", "noEligibleRuns": "Ninguna de las ejecuciones seleccionadas es elegible para esa acción.", "bulkCancelFailedCount": "Error al cancelar {{count}} ejecución(es).", "bulkCancelSuccessCount": "{{count}} ejecución(es) cancelada(s).", "bulkSkippedIneligibleCount": "{{count}} ejecución(es) no elegible(s) omitida(s).", "bulkActionFailed": "Acción masiva fallida" }, "print": { "title": "Ejecuciones de workflows", "selectedTitle": "Ejecuciones seleccionadas", "subtitle": "{{count}} ejecuciones", "noRuns": "No hay ejecuciones para imprimir", "columns": { "run": "Ejecución", "workflow": "Workflow", "version": "Versión", "status": "Estado", "started": "Iniciado", "updated": "Actualizado", "duration": "Duración" }, "optionsDialog": { "title": "Opciones de impresión", "description": "Elige qué columnas incluir al imprimir las ejecuciones de flujo de trabajo." } }, "preview": { "close": "Cerrar", "next": "Siguiente", "openFullPage": "Abrir página completa", "position": "{{current}} de {{total}} ejecuciones cargadas", "previous": "Anterior", "selectedRun": "Ejecución seleccionada", "title": "Vista previa de la ejecución" } }, "runDetails": { "common": { "emptyValue": "—" }, "header": { "runIdLabel": "ID de ejecución", "workflowIdLabel": "ID del flujo de trabajo:", "triggerLabel": "Disparador:" }, "actions": { "cancel": "Cancelar", "export": "Exportar", "replay": "Repetir", "close": "Cerrar", "view": "Ver", "apply": "Aplicar", "reset": "Restablecer", "exportCsv": "Exportar CSV", "loadMore": "Cargar más", "exportAuditCsv": "Exportar auditoría en CSV" }, "summary": { "statusLabel": "Estado", "startedLabel": "Iniciado", "updatedLabel": "Actualizado", "completedLabel": "Completado", "triggerLabel": "Disparador", "scheduleStateLabel": "Estado de la programación", "scheduledForLabel": "Programado para", "cronLabel": "Cron", "nodePathLabel": "Ruta del nodo:", "eventTypeLabel": "Tipo de evento:", "triggerPayloadSchemaLabel": "Esquema de carga útil del disparador:", "mapped": "Mapeado", "identity": "Identidad", "runErrorFallback": "Error de ejecución", "errorCategoryFallback": "Error", "technicalDetailLabel": "Detalle técnico:" }, "stepTimeline": { "title": "Cronología del paso", "description": "Intentos, duraciones y errores por paso.", "loading": "Cargando…", "stepStatusLabel": "Estado del paso", "nodeTypeLabel": "Tipo de nodo", "collapseNestedLabel": "Contraer bloques anidados", "columns": { "stepPath": "Ruta del paso", "type": "Tipo", "status": "Estado", "attempt": "Intento", "duration": "Duración", "nextRetry": "Próximo reintento", "started": "Iniciado", "error": "Error", "action": "Acción" }, "empty": "Aún no hay historial de pasos." }, "stepDetails": { "title": "Detalles del paso", "statusLabel": "Estado", "attemptLabel": "Intento", "startedLabel": "Iniciado", "completedLabel": "Completado", "durationLabel": "Duración", "nodeTypeLabel": "Tipo de nodo", "definitionStepIdLabel": "ID del paso de definición", "nextRetryLabel": "Próximo reintento", "errorTitle": "Error", "stepErrorFallback": "Error de paso", "errorCategoryFallback": "Error", "technicalDetailLabel": "Detalle técnico:" }, "waitHistory": { "title": "Historial de esperas", "eventLine": "Evento: {{event}} · Clave: {{key}} · Filtros: {{count}}", "timeLine": "Modo: {{mode}} · Reanudación programada: {{scheduledResume}}", "timeoutLine": "Tiempo de espera: {{timeout}} · Resuelto: {{resolved}}" }, "envelope": { "title": "Datos del envoltorio", "description": "Carga útil, variables, metadatos y errores de la última instantánea.", "redactedNotice": "Los valores redactados se muestran como {{marker}}.", "noSnapshot": "No hay instantánea disponible.", "tabs": { "payload": "Carga útil", "vars": "Variables", "meta": "Meta", "error": "Error", "raw": "Sin procesar" } }, "invocations": { "title": "Invocaciones de acción", "redactedNotice": "Los valores redactados se muestran como {{marker}}.", "empty": "No se han registrado llamadas de acción para este paso.", "attemptLine": "Intento {{count}}", "durationLine": "Duración: {{duration}}", "sizeLine": "Tamaño de entrada: {{inputSize}}{{inputSuffix}} · Tamaño de salida: {{outputSize}}{{outputSuffix}}", "truncatedSuffix": " (truncated)", "inputLabel": "Entrada", "outputLabel": "Salida" }, "logs": { "title": "Registros de ejecución", "description": "Eventos de registro operativo de esta ejecución.", "searchLabel": "Buscar", "searchPlaceholder": "Buscar en los registros", "levelLabel": "Nivel", "empty": "No se encontraron entradas de registro.", "columns": { "timestamp": "Marca de tiempo", "level": "Nivel", "message": "Mensaje", "step": "Paso", "event": "Evento", "correlation": "Correlación" }, "loading": "Cargando registros..." }, "audit": { "title": "Registro de auditoría", "description": "Acciones administrativas para esta ejecución.", "empty": "Aún no hay entradas de auditoría.", "systemUser": "sistema", "columns": { "timestamp": "Marca de tiempo", "operation": "Operación", "user": "Usuario", "details": "Detalles" }, "loading": "Cargando registro de auditoría...", "unknownUser": "Usuario desconocido" }, "dialogs": { "reasonLabel": "Motivo", "cancelTitle": "Cancelar la ejecución del flujo de trabajo", "cancelMessage": "¿Cancelar esta ejecución? No se puede deshacer.", "cancelReasonPlaceholder": "Indique un motivo para cancelar", "cancelConfirm": "Cancelar ejecución", "replayTitle": "Repetir la ejecución del flujo de trabajo", "replayMessage": "Repetir esta ejecución con una nueva carga útil.", "replayReasonPlaceholder": "Indique un motivo para repetir", "payloadLabel": "Carga útil (JSON)", "replayConfirm": "Repetir ejecución" }, "toasts": { "loadRunDetailsFailed": "Error al cargar los detalles de la ejecución", "loadLogsFailed": "Error al cargar los registros", "loadAuditLogsFailed": "Error al cargar los registros de auditoría", "logExportReady": "Exportación de registros lista", "exportLogsFailed": "Error al exportar los registros", "reasonTooShort": "El motivo debe tener al menos 3 caracteres.", "runCanceled": "Ejecución cancelada", "cancelRunFailed": "Error al cancelar la ejecución", "runExportReady": "Exportación de ejecución lista", "exportRunFailed": "Error al exportar la ejecución", "replayPayloadInvalid": "La carga útil de la repetición debe ser JSON válido.", "runReplayStarted": "Repetición de ejecución iniciada", "replayRunFailed": "Error al repetir la ejecución", "auditExportReady": "Exportación de auditoría lista", "exportAuditLogsFailed": "Error al exportar los registros de auditoría" }, "queuedWarning": { "title": "En cola — esperando a un worker de flujos de trabajo", "description": "Esta ejecución comenzó hace más de un minuto, pero todavía no se ha ejecutado ningún paso. Comprueba que el servicio de worker de flujos de trabajo esté en ejecución y conectado a Temporal." } }, "runDialog": { "title": "Ejecutar flujo de trabajo", "description": "Provide a synthetic payload to preview (and run) a workflow.", "descriptionEvent": "Evento: {{name}}.", "draftWarning": "La versión borrador difiere de la publicada (v{{version}}).", "concurrencyLimit": "Límite de concurrencia: {{count}} ejecución(es) a la vez.", "common": { "emptyValue": "—" }, "actions": { "addField": "Añadir campo", "addItem": "Añadir elemento", "cloneLatestRun": "Clonar última ejecución", "close": "Cerrar", "copyPayload": "Copiar carga útil", "formBuilder": "Constructor de formulario", "hide": "Ocultar", "jsonEditor": "Editor JSON", "openEventCatalog": "Abrir catálogo de eventos", "publishDraft": "Publicar borrador", "publishLatest": "Publicar la última versión", "remove": "Eliminar", "reset": "Restablecer", "resetToDefaults": "Restablecer valores predeterminados", "savePreset": "Guardar preajuste", "show": "Mostrar", "startRun": "Iniciar ejecución", "starting": "Iniciando…" }, "eventCatalog": { "title": "Catálogo de eventos", "description": "Elija un tipo de evento para iniciar los esquemas de carga útil.", "searchLabel": "Buscar eventos", "searchPlaceholder": "Buscar por nombre, tipo o categoría", "eventTypeLabel": "Tipo de evento", "loadingEvents": "Cargando eventos…", "selectEventType": "Seleccionar tipo de evento", "systemBadge": "Sistema", "tenantBadge": "Inquilino", "systemEvent": "Evento del sistema", "tenantEvent": "Evento de inquilino", "uncategorized": "Sin categoría" }, "fields": { "workflowLabel": "Flujo de trabajo", "publishedVersionLabel": "Versión publicada", "triggerLabel": "Disparador", "manualTrigger": "Manual", "workflowStatusLabel": "Estado del flujo de trabajo", "statusActive": "activo", "statusPaused": "en pausa" }, "form": { "booleanTrue": "Verdadero", "booleanFalse": "Falso", "mapEntriesTitle": "Entradas del mapa", "mapEntriesPrompt": "Introduzca la clave o ruta del campo", "mapEntriesDescription": "Para objetos de tipo mapa, añada claves y establezca cada valor.", "mapEntriesEmpty": "No se han añadido entradas de mapa.", "noSchema": "No hay esquema disponible para renderizar un formulario." }, "noPublishedVersion": { "title": "Sin versión publicada", "description": "Puede previsualizar el constructor de carga útil, pero debe publicar el flujo de trabajo antes de iniciar una ejecución." }, "payload": { "largePayloadWarning": "El tamaño de la carga útil supera los 256 KB; las ejecuciones pueden ser más lentas.", "payloadJsonLabel": "Carga útil (JSON)", "payloadLabel": "carga útil", "payloadSize": "Tamaño de la carga útil: {{size}} KB" }, "presets": { "presetNameLabel": "Nombre del preajuste", "presetNamePlaceholder": "p. ej. Carga útil de regresión", "savedPresets": "Preajustes guardados" }, "schema": { "sourceLabel": "Origen del esquema", "workflowSchema": "Esquema del flujo de trabajo", "eventSchema": "Esquema de evento", "schemaRef": "Ref. de esquema", "schemaRefLabel": "Ref. de esquema", "selectSchema": "Seleccionar esquema…", "noSchemasFound": "No se encontraron esquemas", "unknownSchemaRef": "Referencia de esquema desconocida.", "useEventSchema": "Usar el esquema del evento", "viewSchemaDiff": "Ver diferencia de esquema", "hideSchemaDiff": "Ocultar diferencia de esquema", "onlyInEvent": "Solo en el esquema de evento", "requiredOnlyInEvent": "Obligatorio solo en el evento", "onlyInWorkflow": "Solo en el esquema del flujo de trabajo", "requiredOnlyInWorkflow": "Obligatorio solo en el flujo de trabajo", "typeMismatches": "Incompatibilidades de tipo", "typeMismatchLine": "{{field}}: evento {{eventType}} vs flujo de trabajo {{payloadType}}", "selectedEventWarningPrefix": "El evento seleccionado ({{selectedEventType}}) puede no coincidir con el disparador de este flujo de trabajo ({{triggerEventName}}). ", "matchOptional": "Las referencias de esquema coinciden; se aplicará un mapeo de disparador (opcional).", "matchIdentity": "Las referencias de esquema coinciden; se usará un mapeo de identidad (sin mapeo necesario).", "diffWillApply": "Las referencias de esquema difieren ({{eventSchemaRef}} → {{payloadSchemaRef}}); se aplicará un mapeo de disparador.", "diffRequiredMissing": "Las referencias de esquema difieren ({{eventSchemaRef}} → {{payloadSchemaRef}}); se requiere un mapeo de disparador pero no está configurado.", "triggerEventDiffers": "El esquema de evento del disparador difiere del esquema de carga útil del flujo de trabajo. Cambie a «Esquema de evento» si desea introducir una carga útil de evento del disparador.", "eventUnavailable": "Esquema de evento no disponible; se usa el esquema del flujo de trabajo en su lugar.", "mapping": { "identityOptional": "Mapeo de identidad (sin mapeo necesario)", "requiredMissing": "Se requiere un mapeo de disparador pero no está configurado", "willApply": "Se aplicará un mapeo de disparador", "willApplyOptional": "Se aplicará un mapeo de disparador (opcional)" } }, "systemWorkflowWarning": "Este es un flujo de trabajo del sistema. Ejecutarlo puede afectar a la automatización principal.", "systemWorkflowConfirm": "Entiendo y deseo ejecutarlo.", "templates": { "exampleLabel": "Ejemplo {{count}}", "eventTemplates": "Plantillas de evento", "sampleTemplates": "Plantillas de ejemplo", "emailTemplate": "Correo entrante", "webhookTemplate": "Evento webhook" }, "toasts": { "confirmSystemRun": "Confirme que desea ejecutar este flujo de trabajo del sistema.", "eventMissingSchemaRef": "El evento seleccionado no tiene referencia de esquema de carga útil; no se puede ejecutar con mapeo de disparador.", "loadLatestRunFailed": "Error al cargar la última ejecución", "mapEntryExists": "Esa clave ya existe.", "noPriorPayload": "No prior run payload found.", "payloadCopied": "Carga útil copiada al portapapeles.", "presetSaved": "Preajuste guardado.", "providePresetName": "Indique un nombre de preajuste.", "startRunFailed": "Error al iniciar la ejecución", "triggerMappingMissing": "Se requiere un mapeo de disparador para este esquema de evento pero no está configurado en el flujo de trabajo." }, "validation": { "invalidJson": "JSON no válido", "summaryTitle": "La carga útil todavía necesita campos de evento obligatorios antes de iniciar la ejecución", "summaryDescription": "Rellene los campos que faltan a continuación, cambie al constructor de formulario o use un botón de carga útil de ejemplo.", "moreErrors": "+{{count}} más…" }, "sampleEmailBody": "Cuerpo de correo de ejemplo" }, "eventList": { "common": { "emptyValue": "—" }, "summary": { "total": "Total", "matched": "Coincidente", "unmatched": "Sin coincidencia", "errors": "Errores" }, "filters": { "eventNameLabel": "Nombre del evento", "eventNamePlaceholder": "workflow.event", "correlationKeyLabel": "Clave de correlación", "correlationKeyPlaceholder": "corr-123", "statusLabel": "Estado", "fromLabel": "Desde", "toLabel": "Hasta" }, "actions": { "applyFilters": "Aplicar filtros", "reset": "Restablecer", "exportCsv": "Exportar CSV", "exportJson": "Exportar JSON", "close": "Cerrar", "viewRunDetails": "Ver detalles de la ejecución" }, "table": { "schemaConflict": "catálogo ≠ envío", "columns": { "event": "Evento", "correlation": "Correlación", "schema": "Esquema", "status": "Estado", "matchedRun": "Ejecución coincidente", "payload": "Carga útil", "created": "Creado" } }, "states": { "loading": "Cargando eventos…", "empty": "No se encontraron eventos." }, "detail": { "title": "Detalle del evento", "loading": "Cargando detalle del evento…", "eventIdLabel": "ID del evento", "statusLabel": "Estado", "eventNameLabel": "Nombre del evento", "correlationKeyLabel": "Clave de correlación", "payloadSchemaRefLabel": "Referencia de esquema de carga útil", "schemaConflict": "Conflicto de referencia de esquema: catálogo {{catalog}} vs envío {{submission}}", "createdLabel": "Creado", "processedLabel": "Procesado", "errorLine": "Error: {{message}}", "waitLabel": "Espera", "waitIdLine": "ID de espera: {{waitId}}", "waitStatusLine": "Estado: {{status}}", "waitTimeoutLine": "Tiempo de espera: {{value}}", "waitResolvedLine": "Resuelto: {{value}}", "waitStepLine": "Paso: {{value}}", "matchedRunLabel": "Ejecución coincidente", "runStatusLine": "Estado: {{status}}", "payloadLabel": "Carga útil" }, "toasts": { "loadEventsFailed": "Error al cargar los eventos", "loadEventDetailFailed": "Error al cargar el detalle del evento", "exportReady": "Exportación de eventos lista", "exportFailed": "Error al exportar los eventos" } }, "deadLetter": { "common": { "emptyValue": "—" }, "filters": { "minimumRetriesLabel": "Reintentos mínimos", "minimumRetriesPlaceholder": "3" }, "actions": { "refresh": "Actualizar", "loadMore": "Cargar más" }, "table": { "columns": { "runId": "ID de ejecución", "workflow": "Flujo de trabajo", "version": "Versión", "status": "Estado", "retries": "Reintentos", "failedSteps": "Pasos fallidos", "updated": "Actualizado" } }, "states": { "empty": "No se encontraron ejecuciones de carta muerta.", "loading": "Cargando ejecuciones de carta muerta…" }, "toasts": { "loadFailed": "Error al cargar las ejecuciones de carta muerta" } }, "audit": { "common": { "emptyValue": "—" }, "header": { "title": "Auditoría del flujo de trabajo" }, "actions": { "exportCsv": "Exportar CSV", "loadMore": "Cargar más", "refresh": "Actualizar" }, "table": { "columns": { "timestamp": "Marca de tiempo", "operation": "Operación", "user": "Usuario", "details": "Detalles" } }, "states": { "selectWorkflow": "Seleccione un flujo de trabajo para ver el historial de auditoría.", "empty": "Aún no hay entradas de auditoría.", "loading": "Cargando entradas de auditoría..." }, "values": { "system": "sistema" }, "toasts": { "loadFailed": "Error al cargar los registros de auditoría", "exportReady": "Exportación de auditoría lista", "exportFailed": "Error al exportar los registros de auditoría" } }, "designer": { "page": { "controlPanelTitle": "Panel de control de flujos de trabajo", "controlPanelDescription": "Gestione programaciones, ejecuciones, eventos y el catálogo de eventos.", "designerTitle": "Diseñador de flujos de trabajo", "designerDescription": "Cree y mantenga automatizaciones de flujos de trabajo.", "editorTitle": "Editor de flujos de trabajo", "editorDescription": "Elija un flujo de trabajo para editar o cree uno nuevo." }, "controlPanel": { "tabs": { "schedules": "Programaciones", "runs": "Ejecuciones", "events": "Eventos", "eventCatalog": "Catálogo de eventos", "deadLetter": "Carta muerta" }, "quota": { "consumedLabel": "Consumidas", "consumedUnit": "consumidas", "loading": "Cargando...", "planLimit": "Límite de {{limit}}", "remainingLabel": "Restantes", "remainingUnit": "restantes", "resetsOn": "Se restablece el {{date}}", "title": "Acciones del flujo de trabajo", "unavailable": "No disponible", "unlimitedPlan": "Plan ilimitado", "unlimitedRemaining": "Ilimitado" } }, "toolbar": { "backToList": "Volver a flujos de trabajo", "newWorkflow": "Nuevo flujo de trabajo", "saveDraft": "Guardar borrador", "saving": "Guardando...", "publish": "Publicar", "publishing": "Publicando...", "run": "Ejecutar", "previewOnly": "Solo vista previa hasta que se publique una versión.", "validation": { "lastValidated": "Última validación: {{timestamp}}", "unknown": "Estado de validación desconocido" } }, "form": { "nameLabel": "Nombre del flujo de trabajo", "versionLabel": "Versión", "descriptionLabel": "Descripción", "latestPublishedVersion": "Última versión publicada: {{version}}", "triggerTypeLabel": "Tipo de disparador", "triggerTypePlaceholder": "Seleccionar tipo de disparador", "triggerTypeHelp": "Elija si este flujo de trabajo se inicia manualmente o desde un evento. Las programaciones reutilizables se gestionan en el panel de control.", "manualTriggerNote": "Este flujo de trabajo no tiene disparador. Aun así se puede ejecutar manualmente y programar desde el panel de control una vez tenga un esquema de carga útil anclado y una versión publicada.", "eventCategoryLabel": "Categoría del evento", "eventLabel": "Evento", "selectEventCategory": "Seleccionar categoría de evento", "selectEvent": "Seleccionar evento", "selectCategoryFirst": "Seleccione primero una categoría", "inputDataLabel": "Datos de entrada del flujo de trabajo", "inputDataEvent": "Sus pasos leen los datos desde el disparador seleccionado.", "inputDataTimePrefix": "Este flujo de trabajo recibe una carga útil de reloj sintético fija. El contrato está anclado a", "inputDataManualPrefix": "Ningún disparador usa", "inputDataManualSuffix": "de forma predeterminada. Cámbielo en los ajustes avanzados del esquema si este flujo de trabajo requiere un contrato manual distinto.", "triggerMappingRequired": "Se requiere un mapeo del disparador. Abra los ajustes avanzados del esquema para configurarlo.", "schemaLocked": "Versión del esquema bloqueada", "schemaAutoSelected": "Seleccionado automáticamente desde el disparador", "schemaSuffixClock": " al contrato fijo de carga útil del reloj.", "schemaSuffixPinned": " para mantener este flujo de trabajo estable si los esquemas del disparador cambian.", "chooseTriggerHint": "Elija un disparador para definir los campos disponibles.", "schemaLoadErrorPrefix": "No se pudo cargar la información del esquema para", "schemaLoadErrorSuffix": "Verifique la entrada del catálogo de eventos.", "draftDifferent": "El contrato del borrador difiere del publicado", "publishedUsesPrefix": "La versión publicada usa", "draftResolvesTo": "Este borrador se resuelve actualmente en", "lockToPublished": "Bloquear al contrato publicado", "advancedSchemaSettings": "Ajustes avanzados del esquema", "inferredSchemaPrefix": "Esquema inferido actual:", "noSchemaInferred": "Aún no se ha inferido ningún esquema.", "unknownSchemaRef": "Referencia de esquema desconocida. Abra los ajustes avanzados del esquema y elija una versión válida.", "workflowStepsHeading": "Pasos del flujo de trabajo", "workflowStepsListHint": "Arrastre los pasos para reordenarlos o moverlos entre los canales.", "workflowStepsGraphHint": "Desplácese/acerque el gráfico. Las ramas se muestran en carriles separados.", "workflowStepsViewAria": "Vista de los pasos del flujo de trabajo", "warningsCount": "{{count}} advertencias" }, "stepPanel": { "readOnly": "Acceso de solo lectura: la edición de pasos está deshabilitada.", "selectPrompt": "Seleccione un paso para editar su configuración.", "readOnlyNotice": "Acceso de solo lectura: la edición de pasos está deshabilitada.", "contractMode": "Modo de contrato:", "catalogSchema": "Esquema del catálogo:" }, "stepConfig": { "eventLabel": "Evento", "selectEvent": "Seleccionar evento", "correlationKey": "Expresión de clave de correlación", "payloadFilters": "Filtros de carga útil", "addFilter": "Añadir filtro", "noFiltersConfigured": "No hay filtros configurados.", "loadingEventSchema": "Cargando campos del esquema del evento...", "timeoutMs": "Tiempo de espera (ms)", "assignOnResume": "Asignar al reanudar", "fieldLabel": "Campo", "fieldPathLabel": "Ruta del campo", "dataContextToggle": "¿A qué datos puedo acceder aquí?", "condition": "Condición", "itemsExpression": "Expresión de elementos", "itemVariable": "Variable de elemento", "concurrency": "Concurrencia", "onItemError": "En error de elemento", "captureErrorAs": "Capturar error como", "workflowId": "ID del flujo de trabajo", "workflowVersion": "Versión del flujo de trabajo", "inputMapping": "Mapeo de entrada", "outputMapping": "Mapeo de salida", "value": "Valor", "mode": "Modo", "days": "Días", "hours": "Horas", "minutes": "Minutos", "seconds": "Segundos", "untilInput": "Entrada hasta", "specificDateTime": "Fecha y hora específicas", "untilExpression": "Expresión hasta", "returnNotice": "Return detiene la ejecución del flujo de trabajo." }, "mappingExpr": { "add": "Añadir", "remove": "Eliminar", "empty": "Aún no hay mapeos.", "expressionLabel": "Expresión" }, "schemaForm": { "sectionTitle": "Configuración del nodo", "stepSettings": "Ajustes del paso", "missingRequired": "Campos obligatorios faltantes: {{fields}}" }, "fieldMetadata": { "actionId": { "label": "Acción", "description": "La acción a invocar" }, "version": { "label": "Versión", "description": "Número de versión de la acción" }, "inputMapping": { "label": "Mapeo de entradas", "description": "Mapear datos a las entradas de la acción" }, "saveAs": { "label": "Guardar resultado como", "description": "Nombre de variable o ruta de asignación (p. ej. result, vars.result, payload.result)" }, "idempotencyKey": { "label": "Clave de idempotencia", "description": "Expresión que produce una clave única para evitar ejecuciones duplicadas. Si la misma clave aparece dos veces, se devuelve el resultado en caché." }, "onError": { "label": "Gestión de errores", "description": "Cómo gestionar los errores" }, "eventName": { "label": "Nombre del evento", "description": "Nombre del evento a esperar" }, "correlationKey": { "label": "Clave de correlación", "description": "Expresión para coincidir con los eventos entrantes" }, "filters": { "label": "Filtros de carga útil", "description": "Filtros opcionales de carga útil del evento (semántica AND)" }, "timeoutMs": { "label": "Tiempo de espera (ms)", "description": "Tiempo máximo de espera en milisegundos" }, "mode": { "label": "Modo de espera", "description": "Duración o hasta una hora" }, "durationMs": { "label": "Duración", "description": "Duración relativa almacenada en milisegundos" }, "until": { "label": "Hasta", "description": "Expresión que se resuelve en una fecha/hora absoluta" }, "state": { "label": "Nombre del estado", "description": "El estado al que transicionar" }, "assign": { "label": "Asignaciones", "description": "Variables a asignar" }, "taskType": { "label": "Tipo de tarea", "description": "Tipo de tarea humana" }, "title": { "label": "Título", "description": "Título de la tarea mostrado al asignado" }, "contextData": { "label": "Datos de contexto", "description": "Datos adicionales a incluir con la tarea" } }, "actions": { "ai.infer": { "label": "Inferir salida estructurada", "description": "Generar datos estructurados del flujo de trabajo a partir de una indicación usando el proveedor de IA configurado." }, "store.get": { "label": "Obtener valor almacenado", "description": "Leer una entrada clave/valor de flujo de trabajo persistida." }, "store.set": { "label": "Establecer valor almacenado", "description": "Conservar una entrada clave/valor de flujo de trabajo." }, "store.delete": { "label": "Eliminar valor almacenado", "description": "Eliminar una entrada clave/valor de flujo de trabajo persistida." }, "store.increment": { "label": "Incrementar número almacenado", "description": "Incrementar de forma atómica un número de flujo de trabajo persistido." }, "store.list": { "label": "Enumerar valores almacenados", "description": "Enumerar las entradas clave/valor de flujo de trabajo persistidas en un espacio de nombres." }, "store.list_namespaces": { "label": "Enumerar espacios de nombres del almacén", "description": "Enumerar los espacios de nombres del almacén de datos de flujo de trabajo usados por este inquilino." }, "links.upsert": { "label": "Crear o actualizar vínculo de entidad", "description": "Crear o actualizar un vínculo persistido entre dos entidades de flujo de trabajo." }, "links.lookup": { "label": "Buscar vínculos de entidad", "description": "Buscar vínculos de entidad persistidos por entidad de origen y dirección." }, "links.delete": { "label": "Eliminar vínculos de entidad", "description": "Eliminar vínculos de entidad persistidos por lado y relación opcional." }, "links.list": { "label": "Enumerar vínculos de entidad", "description": "Enumerar los vínculos de entidad persistidos en un espacio de nombres." }, "links.list_namespaces": { "label": "Enumerar espacios de nombres de vínculos", "description": "Enumerar los espacios de nombres de vínculos de entidad de flujo de trabajo usados por este inquilino." }, "ai": { "infer": { "label": "Inferir salida estructurada", "description": "Genera datos estructurados de flujo de trabajo a partir de un prompt usando el proveedor de IA configurado." } }, "store": { "get": { "label": "Obtener valor almacenado", "description": "Lee una entrada clave/valor persistida del flujo de trabajo." }, "set": { "label": "Establecer valor almacenado", "description": "Persiste una entrada clave/valor del flujo de trabajo." }, "delete": { "label": "Eliminar valor almacenado", "description": "Elimina una entrada clave/valor persistida del flujo de trabajo." }, "increment": { "label": "Incrementar número almacenado", "description": "Incrementa atómicamente un número persistido del flujo de trabajo." }, "list": { "label": "Listar valores almacenados", "description": "Lista las entradas clave/valor persistidas del flujo de trabajo en un espacio de nombres." }, "list_namespaces": { "label": "Listar espacios de nombres del almacén", "description": "Lista los espacios de nombres del almacén de datos de flujos de trabajo usados por este inquilino." } }, "links": { "upsert": { "label": "Crear o actualizar enlace de entidad", "description": "Crea o actualiza un enlace persistido entre dos entidades de flujo de trabajo." }, "lookup": { "label": "Buscar enlaces de entidad", "description": "Busca enlaces de entidad persistidos por entidad de origen y dirección." }, "delete": { "label": "Eliminar enlaces de entidad", "description": "Elimina enlaces de entidad persistidos por lado y relación opcional." }, "list": { "label": "Listar enlaces de entidad", "description": "Lista los enlaces de entidad persistidos en un espacio de nombres." }, "list_namespaces": { "label": "Listar espacios de nombres de enlaces", "description": "Lista los espacios de nombres de enlaces de entidades usados por este inquilino." } } }, "validation": { "badge": { "invalid": "No válido", "warnings": "Advertencias", "valid": "Válido", "unknown": "Desconocido" }, "errors": "Errores de validación" }, "discardDialog": { "title": "¿Descartar los cambios no guardados?", "message": "Tiene cambios sin guardar en este flujo de trabajo. ¿Descartarlos y continuar?", "confirm": "Descartar cambios", "cancel": "Seguir editando" }, "eventSchemaDialog": { "title": "¿Cambiar el esquema de entrada del flujo de trabajo?", "messageWithEvent": "El evento seleccionado {{eventName}} usa {{schemaRef}}. ¿Desea cambiar este flujo de trabajo a ese esquema de evento?", "messageFallback": "¿Desea cambiar este flujo de trabajo al esquema de evento seleccionado?", "confirm": "Usar el esquema del evento", "cancel": "Conservar el esquema actual" }, "blockSection": { "then": "ENTONCES", "else": "SI NO", "try": "INTENTAR", "catch": "CAPTURAR", "body": "CUERPO" }, "palette": { "showPalette": "Mostrar paleta", "hidePalette": "Ocultar paleta", "searchPlaceholder": "Buscar", "dragHint": "Suelte en el canal para añadir", "chooseAction": "Elija una acción tras añadir este paso", "returnsSummary": "Devuelve: {{list}}{{suffix}}", "categories": { "Control": "Control", "Core": "Núcleo", "Transform": "Transformar", "AI": "IA", "Apps": "Aplicaciones", "Action": "Acción", "Email": "Correo", "Nodes": "Nodos" }, "controlBlocks": { "control.if": { "label": "Si", "description": "Ramificación condicional" }, "control.forEach": { "label": "Para cada", "description": "Iterar sobre elementos" }, "control.tryCatch": { "label": "Intentar/Capturar", "description": "Gestionar errores" }, "control.callWorkflow": { "label": "Llamar flujo de trabajo", "description": "Invocar otro flujo de trabajo" }, "control.return": { "label": "Retornar", "description": "Detener ejecución" }, "control": { "if": { "label": "Si", "description": "Bifurcación condicional" }, "forEach": { "label": "Para cada", "description": "Iterar sobre elementos" }, "tryCatch": { "label": "Try/Catch", "description": "Manejar errores" }, "callWorkflow": { "label": "Llamar flujo de trabajo", "description": "Invocar otro flujo de trabajo" }, "return": { "label": "Retornar", "description": "Detener la ejecución" } } }, "nodes": { "state.set": { "label": "Establecer estado", "description": "Actualizar el estado del flujo de trabajo" }, "event.wait": { "label": "Esperar un evento", "description": "Esperar un evento externo" }, "time.wait": { "label": "Esperar un tiempo", "description": "Esperar una duración o hasta una fecha/hora" }, "transform.assign": { "label": "Asignar", "description": "Asignar valores a la carga útil o a las variables" }, "action.call": { "label": "Llamar acción", "description": "Invocar una acción registrada" }, "email.parseBody": { "label": "Analizar cuerpo del correo", "description": "Analizar y sanear el cuerpo de la respuesta de correo" }, "email.renderCommentBlocks": { "label": "Renderizar bloques de comentario", "description": "Renderizar bloques de comentario desde el contenido del correo" }, "human.task": { "label": "Tarea humana", "description": "Pausar para la finalización de una tarea humana" }, "state": { "set": { "label": "Establecer estado", "description": "Actualizar el estado del flujo de trabajo" } }, "event": { "wait": { "label": "Esperar evento", "description": "Esperar un evento externo" } }, "time": { "wait": { "label": "Esperar tiempo", "description": "Esperar una duración o hasta una fecha/hora" } }, "transform": { "assign": { "label": "Asignar", "description": "Asignar valores al payload o a las variables" } }, "action": { "call": { "label": "Llamar acción", "description": "Invocar una acción registrada" } }, "email": { "parseBody": { "label": "Analizar cuerpo del correo", "description": "Analizar y sanear el cuerpo de la respuesta de correo" }, "renderCommentBlocks": { "label": "Renderizar bloques de comentarios", "description": "Renderizar bloques de comentarios a partir del contenido del correo" } }, "human": { "task": { "label": "Tarea humana", "description": "Pausar hasta que se complete la tarea humana" } } }, "groups": { "ticket": { "label": "Ticket", "description": "Acciones de ticket" }, "contact": { "label": "Contacto", "description": "Acciones de contacto" }, "client": { "label": "Cliente", "description": "Acciones de cliente" }, "communication": { "label": "Comunicación", "description": "Acciones de comunicación" }, "scheduling": { "label": "Programación", "description": "Acciones de programación" }, "project": { "label": "Proyecto", "description": "Acciones de proyecto" }, "time": { "label": "Tiempo", "description": "Acciones de tiempo" }, "crm": { "label": "CRM", "description": "Acciones de CRM" }, "transform": { "label": "Transformar", "description": "Acciones de transformación" }, "ai": { "label": "IA", "description": "Acciones de IA" }, "data-store": { "label": "Almacén de datos", "description": "Leer y escribir el estado duradero del flujo de trabajo entre ejecuciones." } } }, "stepCard": { "selectAriaLabel": "Seleccionar paso {{label}}", "badges": { "if": "Si", "loop": "Bucle", "try": "Intentar", "block": "Bloque", "disconnected": "Desconectado" }, "mapping": { "unmappedTitle": "{{count}} campos obligatorios sin mapear", "unmappedBadge": "{{count}} obligatorio sin mapear", "allMappedTitle": "Los {{count}} campos obligatorios están mapeados", "allMappedAria": "Todos los campos obligatorios mapeados" }, "errorCount": "{{count}} {{noun}}", "errorSingular": "error", "errorPlural": "errores", "actions": { "duplicate": "Duplicar paso", "duplicateAriaLabel": "Duplicar paso {{label}}", "delete": "Eliminar paso" }, "forEachSummary": "Elemento: {{itemVar}} | Concurrencia: {{concurrency}}", "disconnectedTitle": "{{group}} no está conectado; este paso fallará en tiempo de ejecución hasta que se vuelva a conectar." }, "toasts": { "loadRegistriesFailed": "Error al cargar los registros de flujo de trabajo", "loadPermissionsFailed": "Error al cargar los permisos", "loadWorkflowsFailed": "Error al cargar los flujos de trabajo", "loadEventCatalogFailed": "Error al cargar el catálogo de eventos", "settingsUpdated": "Configuración del flujo de trabajo actualizada", "settingsUpdateFailed": "Error al actualizar la configuración", "created": "Flujo de trabajo creado", "saved": "Flujo de trabajo guardado", "saveFailed": "Error al guardar el flujo de trabajo", "saveBeforePublish": "Guarde el flujo de trabajo antes de publicar", "published": "Flujo de trabajo publicado", "publishFailed": "Error al publicar el flujo de trabajo", "publishValidationErrors": "Error al publicar: corrija los errores de validación", "systemEventMissingSchema": "Este evento del sistema no tiene un esquema válido y no puede seleccionarse hasta que se corrija." }, "propsPanel": { "resizeAria": "Redimensionar panel de propiedades", "settingsTitle": "Configuración del flujo de trabajo", "settingsSubtitle": "Controles de visibilidad, pausa y seguridad.", "visibleToUsers": "Visible para los usuarios", "paused": "Pausado (detener nuevas ejecuciones)", "concurrencyLimit": "Límite de concurrencia", "unlimited": "Ilimitado", "autoPauseFailureRate": "Pausa automática por tasa de fallos", "failureRateThreshold": "Umbral de tasa de fallos", "minRunsBeforeAutoPause": "Ejecuciones mínimas antes de pausa automática" }, "trigger": { "summary": "Resumen del disparador", "actionNeeded": "Acción necesaria", "noMappingNeeded": "No se requiere mapeo", "sourceSchemaOverride": "Sobrescribir esquema de origen del disparador", "useCatalogSchemaDefault": "Usar esquema del catálogo (predeterminado)", "useCatalogSchemaPlaceholder": "Usar esquema del catálogo…", "noSchemasFound": "No se encontraron esquemas", "mappingTitle": "Mapeo del disparador", "mappingNotRequired": "Mapeo: No requerido.", "mappingErrors": "Errores de mapeo", "mappingWarnings": "Advertencias de mapeo" }, "schemaSettings": { "lockVersion": "Bloquear versión del esquema", "lockVersionHelp": "Bloquea la versión del esquema para evitar que los futuros cambios del disparador afecten a este flujo de trabajo.", "lockedVersion": "Versión del esquema bloqueada", "manualRef": "Referencia manual del esquema", "fixedForTimeTriggers": "Fijo para disparadores temporales", "availableFieldsPreview": "Vista previa de campos disponibles", "payloadContract": "Esquema de contrato de payload del flujo", "ref": "Referencia del esquema:", "loadFailed": "Error al cargar el esquema.", "notLoaded": "Esquema aún no cargado.", "loadPreviewFailed": "Error al cargar la vista previa del esquema.", "selectVersionPlaceholder": "Seleccionar versión del esquema…", "payloadRefAdvanced": "Referencia del esquema de payload (avanzado)" }, "expression": { "insertField": "Insertar campo", "enterPlaceholder": "Ingresar expresión..." }, "dataContext": { "availableDataAtStep": "Datos disponibles en este paso", "payload": "Payload", "noPayloadFields": "No hay campos de payload", "payloadSchemaRefHint": "Configure 'Referencia del esquema de payload' para definir la estructura del payload", "stepOutputs": "Salidas del paso (vars)", "outputSchemaUnavailable": "Esquema de salida no disponible", "noFields": "Sin campos", "copyAllPaths": "Copiar todas las rutas", "copyAllFieldPaths": "Copiar todas las rutas de campo" } }, "actionInputFieldInfo": { "required": "Obligatorio", "requiredTitle": "Obligatorio", "requiredMissingTitle": "Este campo obligatorio no tiene valor", "format": "Formato: {{value}}", "eachItem": "Cada elemento: {{value}}", "length": "Longitud: {{min}} - {{max}}", "range": "Rango: {{min}} - {{max}}", "any": "cualquier", "defaultPrefix": "Predeterminado:", "examplePrefix": "Ejemplo:" }, "actionInputSection": { "heading": "Action inputs" }, "actionInputFixedPicker": { "loadingOptions": "Cargando opciones…", "ticketSearchPlaceholder": "Buscar tickets por número o título", "ticketSelect": "Seleccionar ticket", "ticketTypeAbove": "Escriba arriba para buscar tickets", "placeholders": { "board": "Seleccionar tablero", "client": "Seleccionar cliente", "contact": "Seleccionar contacto", "user": "Seleccionar usuario", "userOrTeam": "Seleccionar usuario o equipo" }, "errors": { "loadTicket": "Error al cargar el ticket", "searchTickets": "Error al buscar tickets", "loadOptions": "Error al cargar las opciones" }, "dependencyHints": { "contact": { "client_id": "Elija primero un cliente fijo para cargar las opciones de contacto." }, "client-location": { "client_id": "Elija primero un cliente fijo para cargar las opciones de ubicación." }, "ticket-category": { "board_id": "Elija primero un tablero fijo para cargar las opciones de categoría." }, "ticket-status": { "board_id": "Elija primero un tablero fijo para cargar las opciones de estado.", "ticket_id": "Elija primero un ticket fijo para cargar las opciones de estado." }, "ticket-subcategory": { "board_id": "Elija primero un tablero fijo para cargar las opciones de subcategoría.", "category_id": "Elija primero una categoría fija para cargar las opciones de subcategoría." } } }, "serverErrors": { "forbidden": "No tiene permiso para realizar esta acción.", "unauthorized": "Debe iniciar sesión para realizar esta acción.", "notFound": "No encontrado.", "workflowNotFound": "Flujo de trabajo no encontrado.", "workflowVersionNotFound": "Versión del flujo de trabajo no encontrada.", "workflowVersionExists": "La versión {{version}} del flujo de trabajo ya existe. Actualice e inténtelo de nuevo.", "workflowValidationFailed": "La validación del flujo de trabajo falló.", "noPublishedVersions": "Este flujo de trabajo aún no tiene versiones publicadas.", "workflowPaused": "Este flujo de trabajo está en pausa.", "concurrencyLimitReached": "Se ha alcanzado el límite de concurrencia del flujo de trabajo.", "rateLimitExceeded": "Se ha superado el límite de frecuencia de ejecución.", "payloadNotSerializable": "La carga útil debe ser serializable en JSON.", "payloadTooLarge": "La carga útil supera el tamaño máximo permitido.", "payloadValidationFailed": "La carga útil no superó la validación.", "missingPayloadSchemaRef": "Este flujo de trabajo no tiene referencia de esquema de carga útil.", "missingSourcePayloadSchemaRef": "A la carga útil del evento le falta una referencia de esquema fuente.", "triggerMappingRequired": "Se requiere un mapeo de disparador para esta ejecución.", "runNotFailed": "La ejecución no está en estado fallido.", "failedStepNotFound": "No se encontró el paso fallido.", "noEventWaitFound": "No se encontró ninguna espera de evento para esta ejecución.", "cancelTemporalRunFailed": "Error al cancelar la ejecución en el motor.", "noDefinitionToPublish": "No hay definición de flujo de trabajo para publicar.", "deleteActiveRunsBlocked": "Este flujo de trabajo tiene ejecuciones activas. Cancélelas antes de eliminarlo.", "scheduleOneTimeRunAtRequired": "Las programaciones únicas requieren una marca de tiempo de ejecución.", "scheduleOneTimeInvalidTimestamp": "Las programaciones únicas requieren una marca de tiempo ISO 8601 válida.", "scheduleOneTimeMustBeFuture": "Las programaciones únicas deben programarse en el futuro.", "scheduleOneTimeDayOfWeek": "Las programaciones únicas solo admiten «Cualquier día».", "scheduleOneTimeBusinessHours": "Las programaciones únicas no pueden anular el horario laboral.", "scheduleRecurringCronRequired": "Las programaciones recurrentes requieren una expresión cron.", "scheduleRecurringCronFields": "Las programaciones recurrentes requieren una expresión cron de 5 campos.", "scheduleRecurringTimezone": "Las programaciones recurrentes requieren una zona horaria IANA válida.", "cronTooLong": "La expresión cron es demasiado larga.", "cronUnsupportedCharacters": "La expresión cron contiene caracteres no admitidos.", "cronDayConflict": "Una expresión cron no puede definir día del mes y día de la semana a la vez.", "cronTooFrequent": "Esta programación cron se ejecuta con demasiada frecuencia (intervalo mínimo 5 minutos).", "schedulePublishedRequired": "Las programaciones solo se pueden crear para flujos de trabajo publicados.", "schedulePinnedSchemaRequired": "Las programaciones solo se admiten para flujos de trabajo con un esquema de carga útil anclado.", "scheduleSchemaNotRegistered": "La última versión publicada no tiene un esquema de carga útil anclado registrado.", "schedulePayloadInvalid": "La carga útil de la programación no superó la validación del esquema.", "processEventFailed": "Error al procesar el evento del flujo de trabajo." }, "taskInbox": { "title": "Bandeja de tareas", "backToList": "← Volver a la lista", "tabs": { "pending": "Pendiente", "claimed": "Reclamado", "completed": "Completado", "all": "Todas las tareas" } }, "taskList": { "pagination": { "previous": "Anterior", "next": "Siguiente", "pageLabel": "Page {{current}} of {{total}}" }, "errors": { "loadFailed": "Error al cargar tareas. Inténtelo de nuevo.", "claimFailed": "Error al reclamar la tarea: {{error}}", "unclaimFailed": "Error al liberar la tarea: {{error}}", "unknown": "Error desconocido" }, "actions": { "claim": "Reclamar", "unclaim": "Liberar" }, "noDueDate": "Sin fecha de vencimiento", "overdueSuffix": "(Vencido)", "empty": "No se encontraron tareas", "duePrefix": "Vence:" }, "taskDetails": { "notAvailable": "N/D", "notFound": "Tarea no encontrada", "retry": "Reintentar", "youPronoun": "Usted", "noForm": "No hay formulario disponible para esta tarea.", "contextData": "Datos de contexto", "responseData": "Datos de respuesta", "fields": { "status": "Estado", "priority": "Prioridad", "created": "Creado", "dueDate": "Fecha de vencimiento", "claimedBy": "Reclamado por", "completedBy": "Completado por" }, "tabs": { "details": "Detalles", "form": "Formulario", "history": "Historial" }, "actions": { "claim": "Reclamar tarea", "unclaim": "Liberar tarea" }, "errors": { "loadFailed": "Error al cargar los detalles de la tarea. Inténtelo de nuevo.", "claimFailed": "Error al reclamar la tarea: {{error}}", "unclaimFailed": "Error al liberar la tarea: {{error}}", "unknown": "Error desconocido" } }, "taskHistory": { "empty": "No hay historial disponible para esta tarea.", "byPrefix": "Por:", "system": "Sistema", "detailsLabel": "Detalles", "actions": { "created": "Creado", "claimed": "Reclamado", "unclaimed": "Liberado", "completed": "Completado", "canceled": "Cancelado", "expired": "Expirado" }, "errors": { "loadFailed": "Error al cargar el historial de la tarea. Inténtelo de nuevo." } }, "taskForm": { "actions": { "complete": "Completar tarea", "cancel": "Cancelar" } }, "dynamicForm": { "actions": { "submit": "Enviar", "cancel": "Cancelar" }, "errors": { "generic": "Se produjo un error" } }, "embeddedTaskInbox": { "title": "Mis tareas", "viewAll": "Ver todo", "backToTasks": "← Volver a las tareas" }, "actionButton": { "processing": "Procesando...", "confirm": "Confirmar", "cancel": "Cancelar", "confirmTitle": "Confirmar acción" }, "stepNameField": { "label": "Nombre del paso" }, "stepSaveOutput": { "toggleLabel": "Guardar salida", "placeholder": "p. ej. ticketDefaults", "copyPathTitle": "Copiar ruta completa", "accessibleAs": "Accesible como:" }, "aiSchemaSection": { "heading": "Formato de respuesta de IA", "headingDescription": "Elija qué debe incluir la respuesta de la IA para los siguientes pasos.", "modeSimple": "Simple", "modeAdvanced": "Avanzado", "addField": "Añadir campo", "addNested": "Añadir campo anidado", "remove": "Eliminar", "nameLabel": "Nombre", "answerType": "Tipo de respuesta", "arrayItems": "Elementos del arreglo", "required": "Obligatorio", "descriptionLabel": "Descripción", "objectItemFields": "Campos de elementos de objeto", "nestedFields": "Campos anidados", "jsonSchemaLabel": "Esquema JSON", "advancedHelperText": "El modo Avanzado admite esquemas raíz de objeto, objetos anidados, arreglos, descripciones, restricciones y additionalProperties.", "validationHeading": "Validación del esquema", "advancedFallback": "Este esquema guardado usa funciones avanzadas de JSON Schema, por lo que se muestra en modo Avanzado.", "simpleModeUnsupported": "Este esquema no se puede representar en modo simple.", "errors": { "jsonRequired": "El JSON del esquema de salida de IA es obligatorio." } }, "composeText": { "heading": "Salidas de texto compuesto", "headingDescription": "Cree una o más salidas en markdown con claves de referencia estables.", "addOutput": "Añadir salida", "untitled": "Salida sin título", "outputFallback": "salida {{index}}", "moveUpAria": "Mover {{label}} hacia arriba", "moveDownAria": "Mover {{label}} hacia abajo", "deleteAria": "Eliminar {{label}}", "outputLabel": "Etiqueta de salida", "stableKeyLabel": "Clave estable", "keyHintSafe": "Clave segura para posteriores", "keyHintInvalid": "Use únicamente minúsculas, números y guiones bajos.", "regenerate": "Regenerar", "validationHeading": "Validación", "downstreamPathLabel": "Ruta de referencia posterior", "pathFallback": "Guarde la salida para ver una ruta de referencia.", "copied": "Copiado", "copyPath": "Copiar ruta", "contentHeading": "Componer contenido", "contentDescription": "Use formato seguro para markdown y chips de referencia en línea.", "insertReference": "Insertar referencia", "insertReferenceHeading": "Insertar referencia de flujo de trabajo", "errors": { "noCodeBlock": "No se pueden insertar referencias dentro de bloques de código. Mueva el cursor a otro bloque e inténtelo de nuevo." } }, "referenceSelector": { "placeholders": { "scope": "Seleccionar ámbito de origen...", "step": "Seleccionar paso...", "field": "Seleccionar campo..." } }, "pipeline": { "stepCount_one": "({{count}} paso)", "stepCount_other": "({{count}} pasos)", "start": "Inicio", "insertStepHere": "Insertar paso aquí", "emptyDisabled": "Aún no hay pasos.", "emptySelectPrompt": "Seleccione un paso del panel para comenzar." }, "expressionEditor": { "ariaLabel": "Editor de expresiones", "autocompleteAria": "Sugerencias de autocompletado de expresiones", "textAreaPlaceholder": "Introducir expresión JSONata...", "field": { "placeholder": "Introducir expresión...", "insertFieldPlaceholder": "Insertar campo" } }, "sourceDataTree": { "searchPlaceholder": "Buscar campos...", "sections": { "payload": "Carga útil", "vars": "Salidas de paso (vars)", "loopContext": "Contexto del bucle", "workflowMeta": "Metadatos del flujo", "errorContext": "Contexto de error" }, "vars": { "emptyPrefix": "Aún no hay variables. Use", "saveOutput": "Guardar salida", "emptyConjunction": "o un paso", "assignStep": "Asignar", "emptySuffix": "para rellenar" }, "loop": { "currentItem": "elemento actual", "loopIndex": "índice del bucle" } }, "validationBadge": { "status": { "valid": "Válido", "warning": "Advertencias", "error": "Errores", "incomplete": "Incompleto" }, "tooltip": { "valid": "Todas las entradas obligatorias están mapeadas", "incomplete": "Configurar los mapeos de entrada", "mappingCount": "{{mapped}} de {{required}} campos obligatorios mapeados" }, "openEditor": "Abrir el editor de mapeos", "errorsHeading": "Errores ({{count}})", "warningsHeading": "Advertencias ({{count}})", "moreErrors": "+{{count}} errores más", "moreWarnings": "+{{count}} advertencias más" }, "inputMappingEditor": { "empty": "Esta acción no tiene campos de entrada.", "browseSources": "Explorar orígenes", "objectFields": "Campos de objeto", "itemTitle": "Elemento {{index}}", "reset": "Restablecer", "addItem": "Añadir elemento", "fill": "Rellenar", "clearValues": "Borrar valores", "applySuggestions": "Aplicar sugerencias ({{count}})", "applySuggestionTitle": "Aplicar sugerencia: {{sourcePath}}", "fuzzySuffix": "(aproximado)", "removeMapping": "Eliminar mapeo (Supr/Retroceso)", "invalidJson": "JSON no válido", "stringPlaceholder": "Introducir valor...", "aria": { "listbox": "Campos de entrada de la acción", "fieldList": "Lista de campos de entrada de la acción" }, "summary": { "filledCount": "{{filled}} de {{total}} campos rellenados", "missingCount": "{{count}} obligatorios sin valor", "missingTitle": "Faltan valores en campos obligatorios" }, "mode": { "structured": "Estructurado", "rawJson": "JSON sin procesar" }, "nullable": { "useValue": "Usar valor", "setNull": "Establecer en null" }, "primitiveList": { "placeholder": "Introduzca un valor por línea o separados por coma", "helperText": "Use saltos de línea, comas o punto y coma como separadores." }, "structuredGroup": { "collapseAria": "Contraer {{title}}", "expandAria": "Expandir {{title}}" }, "legacy": { "title": "El mapeo heredado ya no está admitido aquí", "description": "Este campo usa una expresión guardada o un secreto. Sustitúyalo por una referencia estructurada o un valor fijo.", "useReference": "Usar referencia", "useFixedValue": "Usar valor fijo" }, "fixedValueDialog": { "title": "Editar {{fieldName}}", "description": "Use el editor ampliado para contenido más largo.", "openEditor": "Abrir editor", "apply": "Aplicar", "cancel": "Cancelar" }, "askAi": { "ariaLabel": "Pedir ayuda a la IA para transformaciones", "title": "Preguntar a la IA", "shortcutHint": "Abrir Quick Ask para obtener ayuda con transformaciones" }, "softEnumPlaceholder": "Seleccionar o introducir un valor", "softEnumSearchPlaceholder": "Buscar o introducir un valor personalizado", "softEnumNoResults": "Sin sugerencias", "softEnumUseCustom": "Usar «{{value}}»", "expression": { "placeholder": "p. ej. payload.body.task_name" } }, "schemaReference": { "selectAction": "Seleccione una acción para ver su esquema de entrada/salida", "viewDetails": "Ver detalles del esquema", "hideDetails": "Ocultar detalles del esquema", "inputSchemaTitle": "Esquema de entrada", "outputSchemaTitle": "Esquema de salida", "noInputParameters": "Sin parámetros de entrada", "noOutputFields": "Sin campos de salida", "noFields": "Sin campos", "outputAvailablePrefix": "Salida disponible en", "showRawJson": "Mostrar esquema JSON sin procesar", "hideRawJson": "Ocultar esquema JSON sin procesar", "exportSchema": "Exportar esquema", "exportSchemaTitle": "Descargar esquema como JSON", "rawInputComment": "// Esquema de entrada", "rawOutputComment": "// Esquema de salida", "copyPathTitle": "Copiar {{path}}", "copyAllPaths": "Copiar todas las rutas", "copyAllPathsTitle": "Copiar todas las rutas de campo", "copied": "¡Copiado!", "pathsCopied": "{{count}} rutas copiadas", "nullableSuffix": "| null", "constraints": { "values": "Valores: {{list}}{{suffix}}", "min": "Mín.: {{value}}", "max": "Máx.: {{value}}", "minLength": "Longitud mín.: {{value}}", "maxLength": "Longitud máx.: {{value}}", "pattern": "Patrón: {{value}}", "format": "Formato: {{value}}", "examples": "Ejemplos: {{list}}", "default": "Predeterminado: {{value}}" } }, "groupedAction": { "groupHeading": "Grupo", "actionLabel": "Acción", "actionPlaceholder": "Seleccionar una acción de {{group}}", "required": { "title": "Acción requerida", "message": "Seleccione una acción de {{group}} antes de configurar entradas o publicar este flujo de trabajo." }, "tileKind": { "core-object": "Núcleo", "transform": "Transformar", "app": "Aplicación", "ai": "IA" }, "disconnected": { "title": "{{group}} no está conectado", "message": "Los pasos que usan sus acciones fallarán en tiempo de ejecución hasta que la integración se vuelva a conectar en Configuración > Integraciones." } }, "trigger": { "manual": "Manual", "event": "Evento", "eventWithType": "Evento: {{eventType}}", "oneTimeSchedule": "Programación puntual", "recurringSchedule": "Programación recurrente" }, "scheduleStatus": { "unknown": "Desconocido", "scheduled": "Programado", "paused": "En pausa", "disabled": "Desactivado", "completed": "Completado", "failed": "Fallido" }, "graph": { "start": { "label": "Inicio" }, "states": { "buildingGraph": "Construyendo gráfico…" }, "errors": { "buildFailed": "Error al construir el gráfico del flujo de trabajo.", "renderErrorTitle": "Error al renderizar el gráfico", "switchToList": "Cambie a la vista de Lista para continuar editando." }, "empty": { "readonly": "Seleccione un paso del panel para comenzar.", "dropFirst": "Suelte para añadir como primer paso", "dragPrompt": "Arrastre un paso desde el panel, o seleccione uno para comenzar." }, "mapping": { "unmappedTitle": "{{count}} campos obligatorios sin mapear", "unmappedBadge": "{{count}} obligatorio sin mapear", "allMapped": "Todos los campos obligatorios mapeados" }, "insert": { "title": "Drop a step here to insert" }, "actions": { "deleteStep": "Eliminar paso" } }, "runStudio": { "header": { "kicker": "Estudio de ejecución", "fallbackTitle": "Ejecución del flujo de trabajo", "version": "Versión {{version}}", "updated": "Actualizado {{time}}", "backToWorkflows": "← Volver a flujos de trabajo" }, "actions": { "replay": "Repetir", "cancel": "Cancelar", "refresh": "Actualizar" }, "status": { "running": "En ejecución", "succeeded": "Completado con éxito", "retrying": "Reintentando", "failed": "Fallido", "pending": "Pendiente", "canceled": "Cancelado", "loading": "Cargando" }, "failure": { "title": "La ejecución falló", "lastSuccessfulStep": "Último paso exitoso: {{label}}" }, "pipeline": { "title": "Canal de ejecución", "emptyBranch": "No hay pasos en esta rama.", "view": { "graph": "Gráfico", "list": "Lista" }, "states": { "loadingDefinition": "Cargando la definición del flujo de trabajo…", "loadingDefinitionPlain": "Cargando la definición del flujo de trabajo...", "noSteps": "No hay pasos para mostrar." }, "selectPrompt": "Seleccione un paso para resaltarlo.", "selectedStep": "Seleccionado: {{label}}" }, "details": { "title": "Detalles de la ejecución", "fields": { "runId": "ID de ejecución", "started": "Iniciado", "duration": "Duración", "tenant": "Inquilino", "trigger": "Disparador", "eventType": "Tipo de evento", "scheduleState": "Estado de la programación", "scheduledFor": "Programado para", "cron": "Cron", "waitingFor": "Esperando", "counts": "Contadores" }, "values": { "resumeEvent": "Reanudar evento", "counts": "{{steps}} pasos · {{logs}} registros · {{waits}} esperas" } }, "errors": { "title": "Errores de ejecución", "runErrorPayload": "Carga útil del error", "resumeEventPayload": "Carga útil del evento de reanudación" }, "stepDetails": { "title": "Detalles del paso", "empty": "Seleccione un paso en el canal para inspeccionar entradas, salidas e instantáneas.", "fields": { "step": "Paso" }, "panels": { "configuration": "Configuración del paso", "inputResolved": "Entrada (resuelta)", "output": "Salida", "envelopeSnapshot": "Instantánea del envoltorio" } }, "timeline": { "title": "Cronología de ejecución", "searchLabel": "Buscar en la cronología", "searchPlaceholder": "Buscar ruta de paso, tipo de espera, estado", "empty": "Aún no hay entradas en la cronología.", "waitTitle": "Esperar · {{waitType}}", "attempt": "Intento {{attempt}} · {{status}}", "inProgress": "En curso", "statusLine": "Estado: {{status}}", "eventSegment": " · Evento: {{eventName}}", "keySegment": " · Clave: {{key}}", "createdLine": "Creado: {{createdAt}}", "resolvedSegment": " · Resuelto: {{resolvedAt}}", "actions": { "jump": "Ir a" } }, "logs": { "title": "Registros de ejecución", "searchLabel": "Buscar en los registros", "searchPlaceholder": "Buscar mensaje o ruta de paso", "empty": "Aún no hay registros.", "actions": { "clear": "Borrar" } }, "dialog": { "title": { "cancel": "Cancelar ejecución", "replay": "Repetir ejecución" }, "heading": { "cancel": "Cancelar la ejecución del flujo de trabajo", "replay": "Repetir la ejecución del flujo de trabajo" }, "description": { "cancel": "Cancelar detendrá cualquier paso en curso o en espera de esta ejecución.", "replay": "Repetir iniciará una nueva ejecución usando la carga útil de abajo." }, "fields": { "reason": "Motivo", "reasonPlaceholder": "p. ej. Cancelando para ajustar entradas", "payloadJson": "Carga útil (JSON)" }, "actions": { "close": "Cerrar", "confirmCancel": "Confirmar cancelación", "startReplay": "Iniciar repetición", "working": "Trabajando..." }, "errors": { "invalidJson": "JSON no válido" } }, "stepLabels": { "action": "Acción: {{actionId}}", "ifCondition": "Condición Si", "forEach": "Para cada", "tryCatch": "Intentar/Capturar", "waitForEvent": "Esperar un evento", "waitForTime": "Esperar un tiempo", "humanTask": "Tarea humana", "setState": "Establecer estado", "assign": "Asignar" }, "stepCard": { "lastStatus": "Último estado: {{status}} ({{timestamp}})", "attempt": "Intento {{attempt}}", "forEachSummary": "Elemento: {{itemVar}} | Concurrencia: {{concurrency}}", "badges": { "if": "Si", "loop": "Bucle", "try": "Intentar", "block": "Bloque" }, "sections": { "then": "ENTONCES", "else": "SI NO", "try": "INTENTAR", "catch": "CAPTURAR", "body": "CUERPO" } }, "jsonPanel": { "serializeFailed": "No se puede serializar el valor." }, "toasts": { "reasonRequired": "El motivo es obligatorio (mín. 3 caracteres).", "canceled": "Ejecución cancelada.", "replayStarted": "Repetición de la ejecución iniciada.", "actionFailed": "Error al realizar la acción.", "loadFailed": "Error al cargar el estudio de ejecuciones" }, "lastRefreshed": "Última actualización {{time}}", "navigation": { "backToRuns": "← Volver a las ejecuciones de flujos de trabajo" }, "title": "Estudio de ejecuciones de flujo de trabajo" }, "schedules": { "common": { "emptyValue": "—", "entityName": "programación" }, "heading": { "reflectionLabel": "Programaciones de flujo de trabajo", "title": "Programaciones", "description": "Gestione programaciones reutilizables y sus cargas útiles guardadas." }, "actions": { "new": "Nueva programación", "edit": "Editar", "pause": "Pausar", "resume": "Reanudar", "delete": "Eliminar", "cancel": "Cancelar", "saving": "Guardando…", "saveChanges": "Guardar cambios", "create": "Crear programación", "rowMenu": "Acciones de programación para {{name}}" }, "filters": { "allWorkflows": "Todos los flujos de trabajo", "allStatuses": "Todos los estados", "allTriggers": "Todos los disparadores", "searchPlaceholder": "Buscar programaciones…" }, "status": { "enabled": "Habilitado", "paused": "En pausa", "failed": "Fallido", "completed": "Completado", "disabled": "Desactivado" }, "triggerType": { "schedule": "Puntual", "recurring": "Recurrente" }, "dayType": { "any": "Cualquier día", "business": "Días laborables", "nonBusiness": "Días no laborables" }, "table": { "workflowVersion": "Flujo de trabajo v{{version}}", "columns": { "schedule": "Programación", "workflow": "Flujo de trabajo", "triggerType": "Tipo de disparador", "nextFire": "Próxima ejecución", "lastFire": "Última ejecución", "status": "Estado", "lastError": "Último error", "actions": "Acciones" } }, "states": { "loadingReflection": "Cargando programaciones", "loading": "Cargando programaciones…", "never": "Nunca", "calendarMisconfigured": "Calendario mal configurado", "noEligibleUpcomingRun": "Sin ejecución próxima elegible", "unknownWorkflow": "Flujo de trabajo desconocido", "empty": "No se encontraron programaciones", "emptyDescription": "Cree una programación puntual o recurrente para ejecutar un flujo de trabajo publicado con datos de entrada guardados." }, "errors": { "loadFailed": "Error al cargar las programaciones.", "updateFailed": "Error al actualizar la programación.", "deleteFailed": "Error al eliminar la programación." }, "timezone": { "browseAll": "Explorar todas las zonas horarias…", "custom": "Personalizado…", "browseHelp": "Elija de la lista completa de zonas horarias IANA compatibles.", "customLabel": "Zona horaria personalizada", "customPlaceholder": "Etc/GMT+5" }, "dialog": { "title": { "edit": "Editar programación", "create": "Crear programación" }, "description": "Configure el horario y los datos estáticos de carga útil para una programación de flujo de trabajo.", "states": { "loading": "Cargando detalles…" }, "fields": { "workflow": "Flujo de trabajo", "workflowPlaceholder": "Elija un flujo de trabajo", "name": "Nombre de la programación", "namePlaceholder": "Sincronización AP de fin de mes", "triggerType": "Tipo de disparador", "enabled": "Habilitado", "enabledHelp": "La programación se ejecutará cuando sea válida.", "disabledHelp": "La programación permanecerá pausada hasta que se reanude.", "runAt": "Ejecutar a las", "runOn": "Ejecutado el", "businessDaysOnly": "Solo días laborables", "nonBusinessDaysOnly": "Solo días no laborables", "calendarSource": "Origen del calendario", "businessHoursSchedule": "Horario laboral", "businessHoursSchedulePlaceholder": "Elija un horario laboral", "frequency": "Frecuencia", "time": "Tiempo", "dayOfMonth": "Día del mes", "weekdays": "Días laborables", "cron": "Cron", "timezone": "Zona horaria" }, "workflow": { "badges": { "unpublished": "No publicado", "inferredSchema": "Esquema inferido" } }, "eligibility": { "chooseWorkflow": "Elija un flujo de trabajo antes de guardar.", "unpublished": "Las programaciones solo se pueden crear para flujos de trabajo publicados.", "pinnedOnly": "Las programaciones solo se admiten para flujos de trabajo con un esquema de carga útil anclado.", "noPinnedSchema": "El flujo de trabajo seleccionado no expone un esquema de carga útil anclado.", "unavailableSchemaRef": "El flujo de trabajo seleccionado usa una referencia de esquema de carga útil no disponible: {{schemaRef}}." }, "calendarSource": { "tenantDefault": "Horario laboral por defecto del inquilino", "tenantDefaultMissing": "Horario laboral por defecto del inquilino (no configurado)", "tenantDefaultHint": "Establezca primero un horario laboral por defecto para el inquilino o elija uno específico.", "specific": "Horario laboral específico", "specificHint": "Cree primero un horario laboral.", "tenantDefaultMissingDescription": "Aún no hay horario laboral por defecto configurado para el inquilino. Elija un horario específico o establezca primero un valor por defecto.", "holidaysNote": "Los festivos siempre se tratan como días no laborables." }, "businessHours": { "defaultSuffix": " (Default)", "noneConfigured": "Aún no hay horarios laborales configurados.", "usingTenantDefault": "Usa el horario laboral por defecto del inquilino.", "noTenantDefault": "Aún no hay horario laboral por defecto configurado para el inquilino." }, "recurring": { "title": "Programación recurrente", "description": "Elija un patrón de recurrencia habitual. El cron avanzado está disponible para programaciones personalizadas.", "builderMode": "Constructor de programación", "advancedMode": "Cron avanzado", "dailyHelper": "Se ejecuta cada día a la hora seleccionada.", "weeklyHelper": "Elija uno o más días de la semana a continuación.", "customCronWarning": "Esta programación usa una expresión cron personalizada. Continúe editándola aquí o vuelva al constructor para reemplazarla por un patrón habitual.", "cronPreview": "Cron: {{cron}}" }, "payload": { "title": "Carga útil", "description": "Redacte una entrada estática que se pasará a cada ejecución programada.", "rootLabel": "Carga útil", "rootKey": "carga útil", "mode": { "form": "Modo formulario", "json": "Modo JSON" }, "actions": { "addItem": "Añadir elemento", "removeItem": "Eliminar" }, "states": { "noItems": "Aún no hay elementos." }, "boolean": { "true": "Verdadero", "false": "Falso" }, "noSchema": { "title": "Aún no hay un esquema de carga útil disponible para este flujo de trabajo.", "description": "Los campos del formulario aparecerán aquí una vez que este flujo de trabajo publique un esquema de carga útil anclado." } }, "validation": { "title": "Errores de validación de la carga útil", "more": "+{{count}} más…", "invalidValue": "Valor no válido", "valueMustBeAllowed": "El valor debe ser una de las opciones permitidas.", "expectedObject": "Se esperaba un objeto.", "requiredFieldMissing": "Falta un campo obligatorio.", "unknownProperty": "Propiedad desconocida.", "expectedArray": "Se esperaba una matriz.", "expectedString": "Se esperaba una cadena.", "expectedNumber": "Se esperaba un número.", "expectedBoolean": "Se esperaba un valor booleano.", "payloadMustBeObject": "La carga útil de la programación debe ser un objeto JSON.", "invalidJson": "JSON no válido" }, "errors": { "loadScheduleFailed": "Error al cargar la programación.", "saveFailed": "Error al guardar la programación." } }, "recurrence": { "andWord": "y", "frequency": { "daily": "Daily", "weekly": "Semanal", "monthly": "Mensual" }, "validation": { "validTime": "Elija una hora válida.", "weekdayRequired": "Elija al menos un día de la semana.", "dayOfMonthRange": "Elija un día del mes entre 1 y 31." }, "summary": { "daily": "Se ejecuta cada día a las {{timeLabel}} {{timezoneLabel}}", "weekly": "Se ejecuta cada {{weekdayLabels}} a las {{timeLabel}} {{timezoneLabel}}", "monthly": "Se ejecuta el día {{dayOfMonth}} de cada mes a las {{timeLabel}} {{timezoneLabel}}" }, "weekdays": { "0": { "short": "Dom", "long": "Domingo" }, "1": { "short": "Lun", "long": "Lunes" }, "2": { "short": "Mar", "long": "Martes" }, "3": { "short": "Mié", "long": "Miércoles" }, "4": { "short": "Jue", "long": "Jueves" }, "5": { "short": "Vie", "long": "Viernes" }, "6": { "short": "Sáb", "long": "Sábado" } } } }, "enums": { "workflowRunStatus": { "RUNNING": "En ejecución", "WAITING": "En espera", "SUCCEEDED": "Completado con éxito", "FAILED": "Fallido", "CANCELED": "Cancelado" }, "workflowRunSort": { "started_at:desc": "Más recientes primero", "started_at:asc": "Más antiguos primero", "updated_at:desc": "Recientemente actualizados", "updated_at:asc": "Los menos recientemente actualizados" }, "workflowEventStatus": { "matched": "Coincidente", "unmatched": "Sin coincidencia", "error": "Error" }, "workflowStepStatus": { "STARTED": "Iniciado", "SUCCEEDED": "Completado con éxito", "FAILED": "Fallido", "RETRY_SCHEDULED": "Reintento programado", "CANCELED": "Cancelado" }, "workflowLogLevel": { "DEBUG": "Depuración", "INFO": "Info", "WARN": "Advertencia", "ERROR": "Error" }, "workflowAiSchemaType": { "string": "Cadena", "number": "Número", "integer": "Entero", "boolean": "Booleano", "object": "Objeto", "array": "Arreglo" }, "workflowInputSourceMode": { "reference": "Referencia", "fixed": "Valor fijo" }, "workflowReferenceSection": { "payload": "Carga útil", "vars": "Resultados del paso", "meta": "Detalles del flujo de trabajo", "error": "Error", "forEach": "Contexto de bucle" }, "workflowTriggerMode": { "manual": "Sin disparador", "event": "Evento" }, "workflowCanvasView": { "list": "Lista", "graph": "Gráfico" }, "workflowOnError": { "continue": "Continuar", "fail": "Fallar" }, "workflowWaitMode": { "duration": "Duración", "until": "Hasta" }, "workflowWaitTiming": { "fixed": "Fecha y hora específicas", "expression": "Expresión avanzada" }, "workflowEntityType": { "project_task": "Tarea de proyecto", "ticket": "Ticket", "contact": "Contacto", "client": "Cliente", "project": "Proyecto", "appointment": "Cita", "quote": "Presupuesto" }, "workflowLinkRelation": { "related": "Relacionado", "mirrors": "Refleja", "maps_to": "Se asigna a", "blocks": "Bloquea", "duplicate_of": "Duplicado de", "synced_with": "Sincronizado con" } }, "automation": { "createWorkflow": { "dialogTitle": "Crear nuevo flujo de trabajo", "fields": { "name": "Nombre del flujo de trabajo", "namePlaceholder": "p. ej., Enviar correo de bienvenida", "triggerType": "Tipo de activador" }, "validation": { "nameRequired": "El nombre del flujo de trabajo es obligatorio", "nameTooShort": "El nombre debe tener al menos 3 caracteres" }, "actions": { "cancel": "Cancelar", "create": "Crear flujo de trabajo" }, "triggers": { "event": { "title": "Basado en eventos", "description": "Se activa automáticamente cuando ocurren eventos específicos (p. ej., ticket creado, factura pagada)." }, "scheduled": { "title": "Programado", "description": "Se ejecuta según una programación recurrente usando expresiones cron (p. ej., diaria, semanal)." }, "manual": { "title": "Manual", "description": "Iniciado bajo demanda por los usuarios o mediante llamadas a la API. Sin activadores automáticos." } } }, "workflowList": { "header": "Flujos de trabajo", "stats": { "total": "{{count}} en total", "active": "{{count}} activos", "draft": "{{count}} en borrador", "paused": "{{count}} en pausa" }, "actions": { "eventCatalog": "Catálogo de eventos", "newWorkflow": "Nuevo flujo de trabajo", "createFirst": "Cree su primer flujo de trabajo", "retry": "Reintentar", "resetFilters": "Restablecer" }, "searchPlaceholder": "Buscar flujos de trabajo...", "statusFilter": { "all": "Todos los estados", "active": "Activo", "draft": "Borrador", "paused": "En pausa", "archived": "Archivado" }, "triggerFilter": { "all": "Todos los activadores", "event": "Basado en eventos", "schedule": "Programación única", "recurring": "Programación recurrente", "manual": "Manual" }, "triggerLabels": { "manual": "Manual", "schedule": "Programación única", "recurring": "Programación recurrente", "event": "Evento" }, "bulk": { "selectedSingular": "{{count}} flujo de trabajo seleccionado", "selectedPlural": "{{count}} flujos de trabajo seleccionados", "pause": "Pausar", "resume": "Reanudar", "delete": "Eliminar", "clearSelection": "Borrar selección", "deleteDialogTitle": "Eliminar flujos de trabajo seleccionados", "deleteConfirmSingular": "Eliminar {{count}} flujo de trabajo", "deleteConfirmPlural": "Eliminar {{count}} flujos de trabajo", "deleteClose": "Cerrar", "deleteCancel": "Cancelar", "selectedSummarySingular": "Ha seleccionado <1>{{count}} flujo de trabajo.", "selectedSummaryPlural": "Ha seleccionado <1>{{count}} flujos de trabajo.", "willBeDeleted": "<1>{{count}} se eliminará.", "willBeSkipped": "<1>{{count}} se omitirá.", "skippedHeading": "Flujos de trabajo omitidos", "systemWorkflowReason": "Flujo de trabajo del sistema" }, "columns": { "name": "Nombre", "status": "Estado", "version": "Versión", "trigger": "Activador", "lastModified": "Última modificación", "actions": "Acciones" }, "statusLabels": { "active": "Activo", "draft": "Borrador", "archived": "Archivado", "paused": "En pausa" }, "tableValues": { "system": "Sistema", "draftVersion": "Borrador: v{{version}}" }, "rowMenu": { "ariaLabel": "Acciones del flujo de trabajo", "resume": "Reanudar", "pause": "Pausar", "duplicate": "Duplicar", "viewRuns": "Ver ejecuciones", "delete": "Eliminar" }, "states": { "errorTitle": "No se pudieron cargar los flujos de trabajo", "errorFallback": "No se pudieron obtener los flujos de trabajo", "validationFailed": "Error al validar la eliminación. Inténtelo de nuevo.", "emptyTitle": "Aún no hay flujos de trabajo", "emptyDescription": "Cree su primer flujo de trabajo para automatizar tareas, responder a eventos y agilizar sus procesos.", "noResultsTitle": "No se encontraron flujos de trabajo", "noResultsDescription": "Intente ajustar la búsqueda o los filtros para encontrar lo que busca." }, "deleteDialog": { "fallbackEntityName": "este flujo de trabajo" } }, "eventsCatalog": { "header": { "title": "Catálogo de eventos de flujo de trabajo", "subtitle": "Explore, gestione y diseñe flujos de trabajo para eventos y activadores del sistema.", "defineCustomEvent": "Definir evento personalizado", "managePermissionTitle": "Requiere el permiso workflow:manage" }, "filters": { "searchPlaceholder": "Buscar eventos (p. ej., ticket.create, email.receive)...", "allCategories": "Todas las categorías", "status": "Estado", "statusOptions": { "all": "Todos los estados", "active": "Activo", "beta": "Beta", "draft": "Borrador", "deprecated": "Obsoleto" }, "source": "Origen", "sourceOptions": { "all": "Todos los orígenes", "system": "Sistema", "tenant": "Tenant" }, "sort": "Ordenar", "sortOptions": { "categoryName": "Categoría · Nombre", "mostActive": "Más activos (7 d)" }, "apply": "Aplicar", "clear": "Borrar", "viewGrid": "Vista de cuadrícula", "viewList": "Vista de lista" }, "card": { "workflowsCount": "{{count}} flujos de trabajo", "actions": { "simulate": "Simular", "metrics": "Métricas", "attachTitle": "Adjuntar (nuevo flujo de trabajo)" }, "metrics": { "executions": "Ejecuciones", "successRate": "Tasa de éxito", "avgLatency": "Latencia media" } }, "states": { "noEventsTitle": "No se encontraron eventos", "noEventsDescription": "Intente ajustar los filtros.", "noEventsInRange": "No hay eventos en este intervalo.", "noDataAvailable": "No hay datos disponibles.", "loading": "Cargando…" }, "pagination": { "showing": "Mostrando {{start}} a {{end}} de {{total}} resultados", "prev": "Anterior", "next": "Siguiente", "page": "Página {{page}} / {{total}}" }, "badges": { "system": "Sistema", "tenant": "Tenant", "noSchema": "Sin esquema", "unknownSchema": "Esquema desconocido", "schema": "Esquema" }, "details": { "title": "Detalles del evento", "close": "Cerrar", "simulate": "Simular", "metrics": "Métricas", "attach": "Adjuntar", "schema": { "heading": "Esquema", "viewFull": "Ver esquema completo", "managedNotice": "El esquema lo gestiona el registro de esquemas.", "missingNotice": "No se ha establecido schemaRef; el evento podría no servir como activador de flujo de trabajo.", "topLevelFields": "Campos de primer nivel", "required": "obligatorio", "moreFieldsHint": "Mostrando los primeros 12 campos. Use \"Ver esquema completo\" para ver más." }, "attached": { "heading": "Flujos de trabajo adjuntos", "loading": "Cargando…", "empty": "No hay flujos de trabajo adjuntos.", "publishedBadge": "Publicado", "systemBadge": "Sistema", "pausedBadge": "En pausa", "hiddenBadge": "Oculto", "open": "Abrir", "detach": "Desvincular", "publishTooltip": "Requiere el permiso workflow:publish", "adminTooltip": "Requiere workflow:admin para flujos de trabajo del sistema" } }, "schemaModal": { "title": "Esquema", "close": "Cerrar", "headerTitle": "Esquema de payload", "loading": "Cargando…", "unavailable": "Esquema no disponible.", "copy": "Copiar", "copySuccess": "Copiado", "copyFailed": "Error al copiar" }, "metricsDialog": { "title": "Métricas", "close": "Cerrar", "headerTitle": "Métricas · {{eventType}}", "from": "Desde", "to": "Hasta", "refresh": "Actualizar", "openWorkflowEditor": "Abrir editor de flujo de trabajo", "loading": "Cargando…", "totals": { "totalEvents": "Eventos totales", "matched": "Coincidencias", "unmatched": "Sin coincidencias", "errors": "Errores", "runsStarted": "Ejecuciones iniciadas", "runSuccessRate": "Tasa de éxito de ejecuciones", "avgRunDuration": "Duración media de ejecución" }, "executionsOverTime": "Ejecuciones a lo largo del tiempo", "recentEvents": "Eventos recientes", "viewInEvents": "Ver en eventos", "openRun": "Ejecución", "loadFailed": "No se pudieron cargar las métricas", "rangeShowing": "Mostrando {{start}}–{{end}} de {{total}}", "prev": "Anterior", "next": "Siguiente" }, "simulateDialog": { "title": "Simular evento", "headerTitle": "Simular · {{eventType}}", "submit": "Simular", "submitting": "Enviando…", "close": "Cerrar", "fields": { "correlationKey": "Clave de correlación (opcional)", "correlationKeyPlaceholder": "Se utiliza para resolver esperas de eventos", "schemaRef": "Referencia del esquema de payload del evento (avanzado)", "schemaRefPlaceholderEmpty": "Sin schemaRef para este evento", "payloadJson": "Payload (JSON)", "payload": "Payload" }, "modes": { "form": "Formulario", "json": "JSON", "noSchema": "No hay esquema disponible; modo formulario deshabilitado." }, "errors": { "schemaValidationTitle": "Errores de validación de esquema", "moreErrors": "+{{count}} más", "fixBeforeSubmit": "Corrija los errores de validación de esquema antes de enviar.", "simulationTitle": "Error de simulación", "submitFallback": "No se pudo simular", "submitToast": "No se pudo simular", "invalidJson": "JSON no válido.", "valueMustBeAllowed": "El valor debe ser una de las opciones permitidas.", "expectedObject": "Se esperaba un objeto.", "expectedArray": "Se esperaba una matriz.", "expectedString": "Se esperaba una cadena.", "expectedNumber": "Se esperaba un número.", "expectedBoolean": "Se esperaba un valor booleano.", "requiredField": "Falta un campo obligatorio." }, "result": { "title": "Resultado", "status": "Estado", "eventId": "ID de evento", "startedRuns": "Ejecuciones iniciadas", "open": "Abrir", "resumedRun": "Ejecución reanudada", "openResumedRun": "Abrir ejecución reanudada" }, "toasts": { "success": "Evento simulado" }, "form": { "remove": "Quitar", "addItem": "Añadir elemento", "rootLabel": "Payload", "payloadJsonLabel": "Payload (JSON)", "true": "Verdadero", "false": "Falso" } }, "defineEventDialog": { "title": "Definir evento personalizado", "headerTitle": "Definir evento personalizado", "cancel": "Cancelar", "submit": "Crear evento", "submitting": "Creando…", "fields": { "eventType": "Tipo de evento", "eventTypePlaceholder": "p. ej., ticket.created", "name": "Nombre", "namePlaceholder": "Nombre comprensible", "category": "Categoría", "categoryPlaceholder": "p. ej., Tickets", "description": "Descripción", "descriptionPlaceholder": "Descripción opcional", "useSchemaRef": "Usar referencia de esquema", "useInline": "Esquema en línea (avanzado)", "selectSchemaRef": "Seleccionar referencia del esquema de payload", "selectPlaceholder": "Seleccionar…", "payloadSchemaJson": "Esquema de payload (JSON)" }, "footer": "Los eventos personalizados están limitados al tenant y pueden usarse como activadores de flujo de trabajo.", "validation": { "typeAndNameRequired": "El tipo de evento y el nombre son obligatorios.", "schemaRefRequired": "Seleccione una referencia de esquema de payload (o utilice un esquema en línea).", "invalidJson": "El esquema de payload debe ser un JSON válido." }, "toasts": { "createSuccess": "Evento personalizado creado", "createFailed": "No se pudo crear el evento" } }, "toasts": { "loadEventsFailed": "No se pudieron cargar los eventos", "workflowCreated": "Flujo de trabajo creado", "createWorkflowFailed": "No se pudo crear el flujo de trabajo", "detachConfirm": "¿Desvincular este flujo de trabajo del evento? Esto publica una nueva versión sin el activador.", "detachValidationFailed": "Error al desvincular (errores de validación)", "detached": "Desvinculado", "detachFailed": "Error al desvincular" } }, "actionInput": { "fallbacks": { "loadingOptions": "Cargando opciones...", "selectName": "Seleccionar {{name}}", "ticketSearchPlaceholder": "Buscar tickets por número o título", "ticketSelect": "Seleccionar ticket", "ticketTypeAbove": "Escriba arriba para buscar tickets", "selectBoard": "Seleccionar tablero", "selectClient": "Seleccionar cliente", "selectContact": "Seleccionar contacto", "selectUser": "Seleccionar usuario", "selectUserOrTeam": "Seleccionar usuario o equipo" }, "errors": { "loadTicket": "No se pudo cargar el ticket", "searchTickets": "No se pudieron buscar los tickets", "loadOptions": "No se pudieron cargar las opciones" }, "dependencyHints": { "contactClient": "Elija primero un cliente fijo para cargar las opciones de contacto.", "locationClient": "Elija primero un cliente fijo para cargar las opciones de ubicación.", "categoryBoard": "Elija primero un tablero fijo para cargar las opciones de categoría.", "statusBoard": "Elija primero un tablero fijo para cargar las opciones de estado.", "statusTicket": "Elija primero un ticket fijo para cargar las opciones de estado.", "subcategoryBoard": "Elija primero un tablero fijo para cargar las opciones de subcategoría.", "subcategoryCategory": "Elija primero una categoría fija para cargar las opciones de subcategoría." } } }, "automationGate": { "loading": "Cargando automatización de flujos de trabajo..." }, "flow": { "designer": { "title": "Diseñador de flujo de trabajo" }, "sidebar": { "dragHint": "Arrastre estos nodos al lienzo:" }, "picker": { "searchPlaceholder": "Buscar..." }, "fields": { "selectInputField": "Seleccionar campo de entrada", "customFieldReference": "Referencia de campo personalizado", "selectOrEnterReference": "Seleccione o introduzca una referencia de campo" }, "delete": { "confirmTitle": "Confirmar eliminación", "confirmMessage": "¿Está seguro de que desea eliminar este flujo de trabajo?" }, "topBar": { "workflowName": "Nombre del flujo de trabajo", "workflowDescription": "Descripción del flujo de trabajo" }, "nodes": { "classifier": { "newClassification": "Nueva clasificación" }, "selector": { "defaultInput": "Entrada predeterminada" }, "decision": { "type": "Tipo", "conditionValue": "Valor de condición", "defaultOutput": "Salida predeterminada", "defaultOutputProp": "Salida predeterminada" }, "ticketCreator": { "ticketTitle": "Título del ticket:", "ticketDescription": "Descripción del ticket:", "selectBoard": "Seleccione o introduzca un tablero", "selectPriority": "Seleccione o introduzca una prioridad" } } } }