From ed8e4e0b67e63b4379128d2d18ea00fa20d20452 Mon Sep 17 00:00:00 2001 From: "2569718930@qq.com" <2569718930@qq.com> Date: Mon, 25 May 2026 01:58:26 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=88=E7=AB=AF=E5=8F=B3=E4=BE=A7=E9=9D=A2?= =?UTF-8?q?=E6=9D=BF=E4=B8=AD=E6=96=87=E5=8C=96=EF=BC=9A=E5=85=A8=E7=90=83?= =?UTF-8?q?=E5=A4=A9=E6=B0=94=E5=9B=A0=E5=AD=90=E4=B8=8E=E7=BB=88=E7=AB=AF?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E6=A0=87=E7=AD=BE=E6=8E=A5=E5=85=A5=20t()=20?= =?UTF-8?q?=E7=BF=BB=E8=AF=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Global Weather Factors 和 Terminal Status 面板中的英文硬编码替换为 i18n key。 --- .../dashboard/ScanTerminalDashboard.tsx | 42 ++++++++++++------- 1 file changed, 28 insertions(+), 14 deletions(-) diff --git a/frontend/components/dashboard/ScanTerminalDashboard.tsx b/frontend/components/dashboard/ScanTerminalDashboard.tsx index a18d446d..a690a5f3 100644 --- a/frontend/components/dashboard/ScanTerminalDashboard.tsx +++ b/frontend/components/dashboard/ScanTerminalDashboard.tsx @@ -168,6 +168,20 @@ const TERM = { dashboard: { en: "Weather Market Dashboard", zh: "天气市场数据仪表盘" }, refresh: { en: "Refresh", zh: "刷新" }, switchLang: { en: "Switch to Chinese", zh: "切换到英文" }, + globalWeatherFactors: { en: "Global Weather Factors", zh: "全球天气因子" }, + heat: { en: "Heat", zh: "高温风险" }, + active: { en: "Active", zh: "活跃" }, + tradable: { en: "Tradable", zh: "可交易" }, + primary: { en: "Primary", zh: "主信号" }, + ai: { en: "AI", zh: "AI" }, + closed: { en: "Closed", zh: "已关闭" }, + terminalStatus: { en: "Terminal Status", zh: "终端状态" }, + tsData: { en: "Data", zh: "数据" }, + tsAccess: { en: "Access", zh: "访问权限" }, + tsLayout: { en: "Layout", zh: "布局" }, + tsLayoutValue: { en: "Koyfin-style grid", zh: "Koyfin 风格网格" }, + tsDataLive: { en: "live", zh: "实时" }, + tsAccessPaid: { en: "paid", zh: "付费" }, } as const; function t(key: keyof typeof TERM, isEn: boolean) { @@ -824,15 +838,15 @@ function KoyfinWeatherTerminal({ - +
{[ - ["Heat", rows.filter((r) => r.risk_level === "high").length], - ["Active", rows.filter((r) => r.active).length], - ["Tradable", rows.filter((r) => r.tradable).length], - ["Primary", rows.filter((r) => r.is_primary_signal).length], - ["AI", rows.filter((r) => r.ai_decision).length], - ["Closed", rows.filter((r) => r.closed).length], + [t("heat", isEn), rows.filter((r) => r.risk_level === "high").length], + [t("active", isEn), rows.filter((r) => r.active).length], + [t("tradable", isEn), rows.filter((r) => r.tradable).length], + [t("primary", isEn), rows.filter((r) => r.is_primary_signal).length], + [t("ai", isEn), rows.filter((r) => r.ai_decision).length], + [t("closed", isEn), rows.filter((r) => r.closed).length], ].map(([label, value]) => (
{value}
@@ -844,21 +858,21 @@ function KoyfinWeatherTerminal({
- +
- Data + {t("tsData", isEn)} - {generatedText || "live"} + {generatedText || t("tsDataLive", isEn)}
- Access - paid + {t("tsAccess", isEn)} + {t("tsAccessPaid", isEn)}
- Layout - Koyfin-style grid + {t("tsLayout", isEn)} + {t("tsLayoutValue", isEn)}