feat(i18n): add translations for pipeline status UI

This commit is contained in:
yangdx
2025-03-26 12:50:33 +08:00
parent 1030068459
commit 51be3fcfa5
5 changed files with 54 additions and 9 deletions

View File

@@ -150,27 +150,27 @@ export default function PipelineStatusDialog({
{/* Pipeline Status */}
<div className="flex items-center gap-4">
<div className="flex items-center gap-2">
<div className="text-sm font-medium">Busy:</div>
<div className="text-sm font-medium">{t('documentPanel.pipelineStatus.busy')}:</div>
<div className={`h-2 w-2 rounded-full ${status?.busy ? 'bg-green-500' : 'bg-gray-300'}`} />
</div>
<div className="flex items-center gap-2">
<div className="text-sm font-medium">Request Pending:</div>
<div className="text-sm font-medium">{t('documentPanel.pipelineStatus.requestPending')}:</div>
<div className={`h-2 w-2 rounded-full ${status?.request_pending ? 'bg-green-500' : 'bg-gray-300'}`} />
</div>
</div>
{/* Job Information */}
<div className="rounded-md border p-3 space-y-2">
<div>Job Name: {status?.job_name || '-'}</div>
<div>{t('documentPanel.pipelineStatus.jobName')}: {status?.job_name || '-'}</div>
<div className="flex justify-between">
<span>Start Time: {status?.job_start ? new Date(status.job_start).toLocaleString() : '-'}</span>
<span>Progress: {status ? `${status.cur_batch}/${status.batchs}` : '-'}</span>
<span>{t('documentPanel.pipelineStatus.startTime')}: {status?.job_start ? new Date(status.job_start).toLocaleString() : '-'}</span>
<span>{t('documentPanel.pipelineStatus.progress')}: {status ? `${status.cur_batch}/${status.batchs}` : '-'}</span>
</div>
</div>
{/* Latest Message */}
<div className="space-y-2">
<div className="text-sm font-medium">Latest Message:</div>
<div className="text-sm font-medium">{t('documentPanel.pipelineStatus.latestMessage')}:</div>
<div className="font-mono text-sm rounded-md bg-zinc-800 text-zinc-100 p-3">
{status?.latest_message || '-'}
</div>
@@ -178,7 +178,7 @@ export default function PipelineStatusDialog({
{/* History Messages */}
<div className="space-y-2">
<div className="text-sm font-medium">History Messages:</div>
<div className="text-sm font-medium">{t('documentPanel.pipelineStatus.historyMessages')}:</div>
<div
ref={historyRef}
onScroll={handleScroll}

View File

@@ -130,10 +130,10 @@ export default function DocumentManager() {
variant="outline"
onClick={() => setShowPipelineStatus(true)}
side="bottom"
tooltip="View pipeline status"
tooltip={t('documentPanel.documentManager.pipelineStatusTooltip')}
size="sm"
>
<ActivityIcon /> Pipeline Status
<ActivityIcon /> {t('documentPanel.documentManager.pipelineStatusButton')}
</Button>
</div>
<div className="flex-1" />

View File

@@ -59,6 +59,8 @@
"title": "إدارة المستندات",
"scanButton": "مسح ضوئي",
"scanTooltip": "مسح المستندات ضوئيًا",
"pipelineStatusButton": "حالة خط المعالجة",
"pipelineStatusTooltip": "عرض حالة خط المعالجة",
"uploadedTitle": "المستندات المرفوعة",
"uploadedDescription": "قائمة المستندات المرفوعة وحالاتها.",
"emptyTitle": "لا توجد مستندات",
@@ -89,6 +91,19 @@
"hideButton": "إخفاء",
"showFileNameTooltip": "عرض اسم الملف",
"hideFileNameTooltip": "إخفاء اسم الملف"
},
"pipelineStatus": {
"title": "حالة خط المعالجة",
"busy": "مشغول",
"requestPending": "الطلب معلق",
"jobName": "اسم المهمة",
"startTime": "وقت البدء",
"progress": "التقدم",
"latestMessage": "آخر رسالة",
"historyMessages": "سجل الرسائل",
"errors": {
"fetchFailed": "فشل في جلب حالة خط المعالجة\n{{error}}"
}
}
},
"graphPanel": {

View File

@@ -59,6 +59,8 @@
"title": "Gestion des documents",
"scanButton": "Scanner",
"scanTooltip": "Scanner les documents",
"pipelineStatusButton": "État du Pipeline",
"pipelineStatusTooltip": "Voir l'état du pipeline",
"uploadedTitle": "Documents téléchargés",
"uploadedDescription": "Liste des documents téléchargés et leurs statuts.",
"emptyTitle": "Aucun document",
@@ -84,6 +86,19 @@
"scanFailed": "Échec de la numérisation des documents\n{{error}}",
"scanProgressFailed": "Échec de l'obtention de la progression de la numérisation\n{{error}}"
}
},
"pipelineStatus": {
"title": "État du Pipeline",
"busy": "Occupé",
"requestPending": "Requête en attente",
"jobName": "Nom du travail",
"startTime": "Heure de début",
"progress": "Progression",
"latestMessage": "Dernier message",
"historyMessages": "Historique des messages",
"errors": {
"fetchFailed": "Échec de la récupération de l'état du pipeline\n{{error}}"
}
}
},
"graphPanel": {

View File

@@ -59,6 +59,8 @@
"title": "文档管理",
"scanButton": "扫描",
"scanTooltip": "扫描文档",
"pipelineStatusButton": "流水线状态",
"pipelineStatusTooltip": "查看流水线状态",
"uploadedTitle": "已上传文档",
"uploadedDescription": "已上传文档列表及其状态",
"emptyTitle": "无文档",
@@ -89,6 +91,19 @@
"hideButton": "隐藏",
"showFileNameTooltip": "显示文件名",
"hideFileNameTooltip": "隐藏文件名"
},
"pipelineStatus": {
"title": "流水线状态",
"busy": "忙碌",
"requestPending": "请求等待中",
"jobName": "作业名称",
"startTime": "开始时间",
"progress": "进度",
"latestMessage": "最新消息",
"historyMessages": "历史消息",
"errors": {
"fetchFailed": "获取流水线状态失败\n{{error}}"
}
}
},
"graphPanel": {