From d88c812ba7dc011523166cb974aebe61d483aba9 Mon Sep 17 00:00:00 2001 From: wuzekai <3025054974@qq.com> Date: Mon, 24 Aug 2026 16:42:50 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B1=89=E5=8C=96=20/histories=20?= =?UTF-8?q?=E4=B8=8E=20/datasets=20=E8=B7=AF=E7=94=B1=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - /histories 列表/查看/归档/导出页面汉化 - /datasets 列表/查看/复制/详情页面汉化 - 历史卡片操作、数据集操作、状态提示等界面文本中文化 --- client/src/components/Dataset/DatasetCopy.vue | 14 +- .../src/components/Dataset/DatasetDisplay.vue | 6 +- client/src/components/Dataset/DatasetList.vue | 42 +++--- .../Dataset/DatasetPermissionsForm.vue | 2 +- .../Dataset/DatasetStorage/DatasetStorage.vue | 2 +- .../Dataset/DatasetStorage/RelocateLink.vue | 2 +- client/src/components/Dataset/DatasetView.vue | 30 ++--- .../Dataset/useDatasetTableActions.ts | 34 ++--- .../DatasetInformation/DatasetDetails.vue | 5 +- .../HistoryArchiveExportSelector.vue | 65 ++++------ .../Archiving/HistoryArchiveSimple.vue | 12 +- .../Archiving/HistoryArchiveWizard.vue | 10 +- .../History/Content/ContentItem.vue | 12 +- .../History/Content/ContentOptions.vue | 8 +- .../Content/Dataset/DatasetActions.vue | 12 +- .../Content/Dataset/DatasetDownload.vue | 4 +- .../Content/Dataset/DatasetMiscInfo.vue | 18 +-- .../History/Content/GenericItem.vue | 2 +- .../History/CurrentHistory/HistoryPanel.vue | 10 +- .../History/Export/HistoryExport.vue | 9 +- .../History/Export/HistoryExportWizard.vue | 66 +++++----- .../History/HistoryDatasetsBadge.vue | 6 +- client/src/components/History/HistoryList.vue | 120 +++++++++--------- .../src/components/History/HistoryOptions.vue | 20 +-- client/src/components/History/HistoryView.vue | 16 +-- .../History/useHistoryCardActions.ts | 8 +- lib/galaxy/agents/router.py | 14 +- 27 files changed, 261 insertions(+), 288 deletions(-) diff --git a/client/src/components/Dataset/DatasetCopy.vue b/client/src/components/Dataset/DatasetCopy.vue index 39f22d7..3eb13e3 100644 --- a/client/src/components/Dataset/DatasetCopy.vue +++ b/client/src/components/Dataset/DatasetCopy.vue @@ -77,7 +77,7 @@ async function loadHistories() { await loadContents(); } } else { - errorMessage.value = "No Histories found."; + errorMessage.value = "未找到历史记录。"; } loading.value = false; } @@ -145,7 +145,7 @@ async function onCopy() { } loading.value = false; } else { - errorMessage.value = "Please select datasets and collections."; + errorMessage.value = "请选择数据集和集合。"; } } @@ -162,7 +162,7 @@ defineExpose({
{{ errorMessage }} - {{ successItemCount }} item{{ successItemCount === 1 ? "" : "s" }} copied to: + {{ successItemCount }} 个项目已复制到:
- Select All + 全选 - Unselect All + 取消全选
@@ -239,7 +239,7 @@ defineExpose({ newHistoryName = ''; targetMultiSelections = {}; " /> - OR Select Multiple Target Histories: + 或 选择多个目标历史记录:
没有历史。
@@ -253,7 +253,7 @@ defineExpose({
- OR Provide a New History Name: + 或 提供新的历史记录名称: {{ errorMessage }} - + - Waiting for dataset to become available. Please check the history panel for details. + 正在等待数据集变为可用。请查看历史记录面板以获取详细信息。 - Dataset is unavailable. Please check the history panel for details. + 数据集不可用。请查看历史记录面板以获取详细信息。
diff --git a/client/src/components/Dataset/DatasetList.vue b/client/src/components/Dataset/DatasetList.vue index da70260..b6b6f06 100644 --- a/client/src/components/Dataset/DatasetList.vue +++ b/client/src/components/Dataset/DatasetList.vue @@ -24,32 +24,32 @@ import LoadingSpan from "@/components/LoadingSpan.vue"; import StatelessTags from "@/components/TagsMultiselect/StatelessTags.vue"; import UtcDate from "@/components/UtcDate.vue"; -const breadcrumbItems = [{ title: "Datasets", to: "/datasets/list" }]; +const breadcrumbItems = [{ title: "数据集", to: "/datasets/list" }]; const allFields = [ { key: "name", - label: "Name", + label: "名称", sortable: true, }, { key: "tags", - label: "Tags", + label: "标签", sortable: false, }, { key: "history_id", - label: "History", + label: "历史记录", sortable: true, }, { key: "extension", - label: "Extension", + label: "扩展名", sortable: true, }, { key: "update_time", - label: "Updated", + label: "更新于", sortable: true, }, ]; @@ -112,7 +112,7 @@ async function load(showOverlay = false) { rows.value = data; totalDatasets.value = totalMatches; } catch (e: any) { - Toast.error(`Failed to load datasets: ${e}`); + Toast.error(`无法加载数据集:${e}`); } finally { loading.value = false; overlay.value = false; @@ -129,7 +129,7 @@ async function onTags(tags: string[], index: number) { try { await updateTags(item?.id as string, "HistoryDatasetAssociation", tags); } catch (e: any) { - Toast.error(`Failed to update tags: ${e}`); + Toast.error(`无法更新标签:${e}`); } } @@ -189,10 +189,10 @@ function onToggleColumn(key: string) { async function onBulkDelete() { const totalSelected = selectedItemIds.value.length; - const confirmed = await confirm(`Are you sure you want to delete ${totalSelected} datasets?`, { + const confirmed = await confirm(`确定要删除 ${totalSelected} 个数据集吗?`, { id: "bulk-delete-datasets-confirmation", - title: "Delete datasets", - okTitle: "Delete datasets", + title: "删除数据集", + okTitle: "删除数据集", okVariant: "danger", cancelVariant: "outline-primary", centered: true, @@ -215,11 +215,11 @@ async function onBulkDelete() { ); } - Toast.success(`Deleted ${totalSelected} dataset${totalSelected > 1 ? "s" : ""}.`); + Toast.success(`已删除 ${totalSelected} 个数据集。`); selectedItemIds.value = []; } catch (e: any) { - Toast.error(`Failed to delete some datasets: ${e}`); + Toast.error(`无法删除部分数据集:${e}`); } finally { overlay.value = false; bulkDeleteOrRestoreLoading.value = false; @@ -231,13 +231,13 @@ async function onBulkDelete() { function getDatasetStatusIcon(item: HDASummary): RowIcon | undefined { if (item.purged) { - return { icon: faBurn, class: "text-danger", title: "Purged" }; + return { icon: faBurn, class: "text-danger", title: "已清除" }; } if (item.deleted) { - return { icon: faTrash, class: "text-muted", title: "Deleted" }; + return { icon: faTrash, class: "text-muted", title: "已删除" }; } if (item.state === "ok") { - return { icon: faCheckCircle, class: "text-success", title: "Success" }; + return { icon: faCheckCircle, class: "text-success", title: "成功" }; } const state = item.state && STATES[item.state]; if (state?.icon) { @@ -260,7 +260,7 @@ onMounted(() => {
- + {
- +
- No datasets found. You may upload new datasets using the button above. + 未找到数据集。您可以使用上方按钮上传新的数据集。
- No matching entries found for: {{ query }} + 未找到匹配的条目:{{ query }}
@@ -342,7 +342,7 @@ onMounted(() => { size="sm" variant="primary" :disabled="bulkDeleteOrRestoreLoading" - :title="bulkDeleteOrRestoreLoading ? 'Deleting datasets' : 'Delete selected datasets'" + :title="bulkDeleteOrRestoreLoading ? '正在删除数据集' : '删除选中的数据集'" @click="onBulkDelete"> {{ localize("Delete Selected") }} ({{ selectedItemIds.length }}) diff --git a/client/src/components/Dataset/DatasetPermissionsForm.vue b/client/src/components/Dataset/DatasetPermissionsForm.vue index 2f3814d..a96eb7d 100644 --- a/client/src/components/Dataset/DatasetPermissionsForm.vue +++ b/client/src/components/Dataset/DatasetPermissionsForm.vue @@ -37,7 +37,7 @@ watch(props, () => {