mirror of
https://github.com/Tencent/BrowserSkill.git
synced 2026-09-10 13:01:23 +08:00
45 lines
1.0 KiB
TypeScript
45 lines
1.0 KiB
TypeScript
import i18n from "i18next";
|
|
import LanguageDetector from "i18next-browser-languagedetector";
|
|
import { initReactI18next } from "react-i18next";
|
|
|
|
import { bindChromeStorageLanguageSync, getLanguageDetectionOptions } from "./chrome-storage-sync";
|
|
import enUSCommon from "./locales/en-US/common.json";
|
|
import enUSExtension from "./locales/en-US/extension.json";
|
|
import zhCNCommon from "./locales/zh-CN/common.json";
|
|
import zhCNExtension from "./locales/zh-CN/extension.json";
|
|
|
|
const resources = {
|
|
"zh-CN": {
|
|
common: zhCNCommon,
|
|
extension: zhCNExtension,
|
|
},
|
|
"en-US": {
|
|
common: enUSCommon,
|
|
extension: enUSExtension,
|
|
},
|
|
} as const;
|
|
|
|
i18n
|
|
.use(LanguageDetector)
|
|
.use(initReactI18next)
|
|
.init({
|
|
resources,
|
|
fallbackLng: "zh-CN",
|
|
defaultNS: "common",
|
|
ns: ["common", "extension"],
|
|
|
|
interpolation: {
|
|
escapeValue: false,
|
|
},
|
|
|
|
detection: getLanguageDetectionOptions(),
|
|
|
|
react: {
|
|
useSuspense: false,
|
|
},
|
|
});
|
|
|
|
bindChromeStorageLanguageSync(i18n);
|
|
|
|
export default i18n;
|