fix: unify chinese language code as zh-CN

This commit is contained in:
TerryM
2026-05-26 10:03:12 +08:00
parent f2e97c329e
commit f482a2ec38
13 changed files with 53 additions and 50 deletions

View File

@@ -6,7 +6,7 @@ import React, {
useState,
} from "react";
export type Lang = "zh" | "en" | "ja" | "ko" | "vi" | "id" | "ms";
export type Lang = "zh-CN" | "en" | "ja" | "ko" | "vi" | "id" | "ms";
type Dict = Record<string, string>;
@@ -82,7 +82,7 @@ const zhDict: Dict = {
walletMissingProjectId:
"请配置 VITE_WALLETCONNECT_PROJECT_IDReown Cloud否则无法使用 WalletConnect/扫码。",
walletSetupNeeded: "钱包扫码未启用(请在服务器配置环境变量)",
lang_zh: "中文",
lang_zh_CN: "中文",
lang_en: "English",
lang_ja: "日本語",
lang_ko: "한국어",
@@ -208,7 +208,7 @@ const enDict: Dict = {
walletMissingProjectId:
"Set VITE_WALLETCONNECT_PROJECT_ID (free on Reown Cloud). Required for WalletConnect / QR login.",
walletSetupNeeded: "Wallet QR login disabled (set env on server)",
lang_zh: "Chinese",
lang_zh_CN: "Chinese",
lang_en: "English",
lang_ja: "Japanese",
lang_ko: "Korean",
@@ -262,8 +262,8 @@ const enDict: Dict = {
};
const languageNames: Record<Lang, Dict> = {
zh: {
lang_zh: "中文",
"zh-CN": {
lang_zh_CN: "中文",
lang_en: "English",
lang_ja: "日本語",
lang_ko: "한국어",
@@ -272,7 +272,7 @@ const languageNames: Record<Lang, Dict> = {
lang_ms: "Bahasa Melayu",
},
en: {
lang_zh: "Chinese",
lang_zh_CN: "Chinese",
lang_en: "English",
lang_ja: "Japanese",
lang_ko: "Korean",
@@ -281,7 +281,7 @@ const languageNames: Record<Lang, Dict> = {
lang_ms: "Malay",
},
ja: {
lang_zh: "中国語",
lang_zh_CN: "中国語",
lang_en: "英語",
lang_ja: "日本語",
lang_ko: "韓国語",
@@ -290,7 +290,7 @@ const languageNames: Record<Lang, Dict> = {
lang_ms: "マレー語",
},
ko: {
lang_zh: "중국어",
lang_zh_CN: "중국어",
lang_en: "영어",
lang_ja: "일본어",
lang_ko: "한국어",
@@ -299,7 +299,7 @@ const languageNames: Record<Lang, Dict> = {
lang_ms: "말레이어",
},
vi: {
lang_zh: "Tiếng Trung",
lang_zh_CN: "Tiếng Trung",
lang_en: "Tiếng Anh",
lang_ja: "Tiếng Nhật",
lang_ko: "Tiếng Hàn",
@@ -308,7 +308,7 @@ const languageNames: Record<Lang, Dict> = {
lang_ms: "Tiếng Mã Lai",
},
id: {
lang_zh: "Bahasa Tionghoa",
lang_zh_CN: "Bahasa Tionghoa",
lang_en: "Bahasa Inggris",
lang_ja: "Bahasa Jepang",
lang_ko: "Bahasa Korea",
@@ -317,7 +317,7 @@ const languageNames: Record<Lang, Dict> = {
lang_ms: "Bahasa Melayu",
},
ms: {
lang_zh: "Bahasa Cina",
lang_zh_CN: "Bahasa Cina",
lang_en: "Bahasa Inggeris",
lang_ja: "Bahasa Jepun",
lang_ko: "Bahasa Korea",
@@ -328,7 +328,7 @@ const languageNames: Record<Lang, Dict> = {
};
const dict: Record<Lang, Dict> = {
zh: { ...zhDict, ...languageNames.zh },
"zh-CN": { ...zhDict, ...languageNames["zh-CN"] },
en: { ...enDict, ...languageNames.en },
ja: { ...enDict, ...languageNames.ja },
ko: { ...enDict, ...languageNames.ko },
@@ -351,9 +351,9 @@ const LANG_KEY = "ark_lang";
export function I18nProvider({ children }: { children: React.ReactNode }) {
const [lang, setLangState] = useState<Lang>(() => {
const s = localStorage.getItem(LANG_KEY);
if (s === "zh-CN" || s === "zh-TW") return "zh";
if (s === "zh" || s === "zh-TW") return "zh-CN";
if (
s === "zh" ||
s === "zh-CN" ||
s === "en" ||
s === "ja" ||
s === "ko" ||
@@ -383,5 +383,5 @@ export function useI18n() {
}
export function langQuery(lang: Lang) {
return lang === "zh" ? "zh-CN" : lang;
return lang;
}