feat(i18n): 完善多模块多语言适配与发版验证

扩展前后端多语言文案与共享词典。增加多模块 i18n 回归测试与 guard。收口外部 SQL 菜单和弹窗多语言文案。
This commit is contained in:
tianqijiuyun-latiao
2026-06-17 13:17:33 +08:00
parent 76b0163bd3
commit 9364c48ef0
135 changed files with 8401 additions and 1325 deletions

View File

@@ -1,6 +1,9 @@
import React from 'react';
import { Button } from 'antd';
import { t as defaultTranslate } from '../i18n';
import { useOptionalI18n } from '../i18n/provider';
export type PendingSqlEditorTransaction = {
id: string;
commitMode: 'manual' | 'auto';
@@ -25,6 +28,9 @@ const QueryEditorTransactionToolbar: React.FC<QueryEditorTransactionToolbarProps
autoCommitRemainingSeconds,
onFinish,
}) => {
const i18n = useOptionalI18n();
const t = i18n?.t ?? defaultTranslate;
if (!transaction) {
return null;
}
@@ -33,17 +39,17 @@ const QueryEditorTransactionToolbar: React.FC<QueryEditorTransactionToolbarProps
const pendingCount = statementCount > 0 ? statementCount : 1;
const statusText = transaction.commitMode === 'auto'
? autoCommitRemainingSeconds !== null && autoCommitRemainingSeconds > 0
? `${autoCommitRemainingSeconds}s 后自动提交`
: '自动提交中'
? t('query_editor.transaction.status.auto_commit_countdown', { seconds: autoCommitRemainingSeconds })
: t('query_editor.transaction.status.auto_committing')
: null;
const commitLabel = isV2Ui
? (
<>
<span></span>
<span>{t('query_editor.transaction.action.commit')}</span>
<span className="gn-v2-toolbar-kbd">{pendingCount}</span>
</>
)
: `提交 (${pendingCount})`;
: t('query_editor.transaction.action.commit_with_count', { count: pendingCount });
return (
<div
@@ -74,7 +80,7 @@ const QueryEditorTransactionToolbar: React.FC<QueryEditorTransactionToolbarProps
danger
onClick={() => onFinish('rollback')}
>
{t('query_editor.transaction.action.rollback')}
</Button>
</div>
);