Skip to content

Commit 55e2ecd

Browse files
authored
♻️ 庫引用整理 (#494)
1 parent cb8edf7 commit 55e2ecd

27 files changed

Lines changed: 75 additions & 84 deletions

File tree

packages/filesystem/baidu/baidu.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { SystemConfig } from "@App/pkg/config/config";
21
import { AuthVerify } from "../auth";
32
import FileSystem, { File, FileReader, FileWriter } from "../filesystem";
43
import { joinPath } from "../utils";

packages/filesystem/factory.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import i18next from "i18next";
21
import BaiduFileSystem from "./baidu/baidu";
32
import FileSystem from "./filesystem";
43
import GoogleDriveFileSystem from "./googledrive/googledrive";

packages/message/extension_message.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
import Logger from "@App/app/logger/logger";
21
import { Message, MessageConnect, MessageSend, MessageSender } from "./server";
3-
import LoggerCore from "@App/app/logger/core";
42

53
export class ExtensionMessageSend implements MessageSend {
64
constructor() {}

src/app/service/service_worker/gm_api.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ import { MessageQueue } from "@Packages/message/message_queue";
1111
import { EmitEventRequest, RuntimeService } from "./runtime";
1212
import { getIcon, isFirefox } from "@App/pkg/utils/utils";
1313
import { MockMessageConnect } from "@Packages/message/mock_message";
14-
import i18next, { i18nName } from "@App/locales/locales";
1514
import { SystemConfig } from "@App/pkg/config/config";
15+
import i18next, { i18nName } from "@App/locales/locales";
1616
import FileSystemFactory from "@Packages/filesystem/factory";
1717
import FileSystem from "@Packages/filesystem/filesystem";
1818
import { isWarpTokenError } from "@Packages/filesystem/error";

src/app/service/service_worker/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { ExtServer, ExtVersion } from "@App/app/const";
12
import { Server } from "@Packages/message/server";
23
import { MessageQueue } from "@Packages/message/message_queue";
34
import { ScriptService } from "./script";
@@ -7,10 +8,9 @@ import { RuntimeService } from "./runtime";
78
import { ServiceWorkerMessageSend } from "@Packages/message/window_message";
89
import { PopupService } from "./popup";
910
import { SystemConfig } from "@App/pkg/config/config";
11+
import { systemConfig } from "@App/pages/store/global";
1012
import { SynchronizeService } from "./synchronize";
1113
import { SubscribeService } from "./subscribe";
12-
import { ExtServer, ExtVersion } from "@App/app/const";
13-
import { systemConfig } from "@App/pages/store/global";
1414
import { ScriptDAO } from "@App/app/repo/scripts";
1515
import { SystemService } from "./system";
1616
import { Logger, LoggerDAO } from "@App/app/repo/logger";

src/app/service/service_worker/popup.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,6 @@ import {
2121
subscribeScriptRunStatus,
2222
} from "../queue";
2323
import { getStorageName } from "@App/pkg/utils/utils";
24-
import { SystemConfig } from "@App/pkg/config/config";
25-
import { UrlMatch } from "@App/pkg/utils/match";
2624

2725
export type ScriptMenuItem = {
2826
id: number;

src/app/service/service_worker/script.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { fetchScriptInfo, prepareScriptByCode } from "@App/pkg/utils/script";
2-
import { v4 as uuidv4, v5 as uuidv5 } from "uuid";
2+
import { v4 as uuidv4 } from "uuid";
33
import { Group } from "@Packages/message/server";
44
import Logger from "@App/app/logger/logger";
55
import LoggerCore from "@App/app/logger/core";
@@ -21,7 +21,7 @@ import { ResourceService } from "./resource";
2121
import { ValueService } from "./value";
2222
import { compileScriptCode } from "../content/utils";
2323
import { SystemConfig } from "@App/pkg/config/config";
24-
import i18n, { localePath } from "@App/locales/locales";
24+
import { localePath } from "@App/locales/locales";
2525
import { arrayMove } from "@dnd-kit/sortable";
2626

2727
export class ScriptService {

src/app/service/service_worker/synchronize.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import LoggerCore from "@App/app/logger/core";
22
import Logger from "@App/app/logger/logger";
33
import { Resource } from "@App/app/repo/resource";
4-
import { Script, SCRIPT_STATUS_ENABLE, ScriptCodeDAO, ScriptDAO } from "@App/app/repo/scripts";
4+
import { Script, SCRIPT_STATUS_ENABLE, ScriptDAO } from "@App/app/repo/scripts";
55
import BackupExport from "@App/pkg/backup/export";
66
import { BackupData, ResourceBackup, ScriptBackupData, ScriptOptions, ValueStorage } from "@App/pkg/backup/struct";
77
import FileSystem, { File } from "@Packages/filesystem/filesystem";

src/app/service/service_worker/value.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
import LoggerCore from "@App/app/logger/core";
22
import Logger from "@App/app/logger/logger";
3-
import { Script, SCRIPT_TYPE_NORMAL, ScriptDAO } from "@App/app/repo/scripts";
3+
import { Script, ScriptDAO } from "@App/app/repo/scripts";
44
import { ValueDAO } from "@App/app/repo/value";
5-
import { GetSender, Group, MessageSend } from "@Packages/message/server";
5+
import { GetSender, Group } from "@Packages/message/server";
66
import { RuntimeService } from "./runtime";
77
import { PopupService } from "./popup";
8-
import { sendMessage } from "@Packages/message/client";
98
import Cache from "@App/app/cache";
109
import { getStorageName } from "@App/pkg/utils/utils";
1110
import { ValueUpdateData, ValueUpdateSender } from "../content/exec_script";

src/locales/locales.ts

Lines changed: 34 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
import i18n from "i18next";
1+
import { SystemConfig } from "@App/pkg/config/config";
2+
import i18n, { Callback } from "i18next";
23
import { initReactI18next } from "react-i18next";
34
import dayjs from "dayjs";
45
import relativeTime from "dayjs/plugin/relativeTime";
@@ -16,43 +17,46 @@ import "dayjs/locale/zh-cn";
1617
import "dayjs/locale/zh-tw";
1718
import "dayjs/locale/ja";
1819
import "dayjs/locale/de";
19-
import { systemConfig } from "@App/pages/store/global";
2020

21-
const uiLanguage = chrome.i18n.getUILanguage();
22-
23-
i18n.use(initReactI18next).init({
24-
fallbackLng: "en-US",
25-
lng: globalThis.localStorage ? localStorage["language"] || uiLanguage : uiLanguage, // 优先使用localStorage中的语言设置
26-
interpolation: {
27-
escapeValue: false, // react already safes from xss => https://www.i18next.com/translation-function/interpolation#unescape
28-
},
29-
resources: {
30-
"en-US": { title: "English", translation: enUS },
31-
"vi-VN": { title: "Tiếng Việt", translation: viVN },
32-
"zh-CN": { title: "简体中文", translation: zhCN },
33-
"zh-TW": { title: "繁体中文", translation: zhTW },
34-
"ach-UG": { title: "伪语言", translation: achUG },
35-
"ja-JP": { title: "日本語", translation: jaJP },
36-
"de-DE": { title: "Deutsch", translation: deDE },
37-
},
38-
});
21+
dayjs.extend(relativeTime);
3922

4023
export let localePath = "";
4124

42-
async function initLanguage() {
43-
const lng = await systemConfig.getLanguage();
44-
i18n.changeLanguage(lng);
25+
export function changeLanguage(lng: string, callback?: Callback): void {
26+
i18n.changeLanguage(lng, callback);
4527
dayjs.locale(lng.toLocaleLowerCase());
46-
if (lng !== "zh-CN") {
47-
localePath = "en";
48-
}
4928
}
5029

51-
setTimeout(() => {
52-
initLanguage();
53-
}, 0);
30+
// let cachedSystemConfig: SystemConfig;
5431

55-
dayjs.extend(relativeTime);
32+
export function initLocales(systemConfig: SystemConfig) {
33+
// cachedSystemConfig = systemConfig;
34+
const uiLanguage = chrome.i18n.getUILanguage();
35+
const defaultLanguage = globalThis.localStorage ? localStorage["language"] || uiLanguage : uiLanguage;
36+
i18n.use(initReactI18next).init({
37+
fallbackLng: "en-US",
38+
lng: defaultLanguage, // 优先使用localStorage中的语言设置
39+
interpolation: {
40+
escapeValue: false, // react already safes from xss => https://www.i18next.com/translation-function/interpolation#unescape
41+
},
42+
resources: {
43+
"en-US": { title: "English", translation: enUS },
44+
"vi-VN": { title: "Tiếng Việt", translation: viVN },
45+
"zh-CN": { title: "简体中文", translation: zhCN },
46+
"zh-TW": { title: "繁体中文", translation: zhTW },
47+
"ach-UG": { title: "伪语言", translation: achUG },
48+
"ja-JP": { title: "日本語", translation: jaJP },
49+
"de-DE": { title: "Deutsch", translation: deDE },
50+
},
51+
});
52+
53+
systemConfig.getLanguage().then(lng => {
54+
changeLanguage(lng);
55+
if (lng !== "zh-CN") {
56+
localePath = "en";
57+
}
58+
});
59+
}
5660

5761
export function i18nName(script: { name: string; metadata: Metadata }) {
5862
return script.metadata[`name:${i18n.language.toLowerCase()}`]

0 commit comments

Comments
 (0)