Skip to content

Commit 595cfe8

Browse files
committed
feat: $app & Console
Update Microsoft.Translate.dev.js Update Microsoft.Translate.js Update boxjs.settings.json Update CHANGELOG.md Update database.mjs Update setENV.mjs Update types.d.ts
1 parent c1d28fd commit 595cfe8

8 files changed

+44
-86
lines changed

CHANGELOG.md

+10-2
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,10 @@
1-
### 🔄 Other Changes
2-
* util 由 `submodule` 更改为 `package`
1+
### 🛠️ Bug Fixes
2+
* 修复 `$argument``$persistentStore` 载入顺序颠倒的问题
3+
* 正确顺序为先读取 `$argument` 再读取 `$persistentStore (BoxJs)`
4+
* 即,有相同键名时,`$persistentStore (BoxJs)` 的值会覆盖 `$argument` 的值
5+
6+
### 🔣 Dependencies
7+
* 升级了 `@nsnanocat/util`
8+
* `util``submodule` 更改为 `package`
9+
* `$platform` 改为 `$app`
10+
* 使用了全新的 `Console` polyfill

src/Microsoft.Translate.dev.js

+13-22
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { $platform, Lodash as _, URL, Storage, fetch, notification, log, logError, wait, done, getScript, runScript } from "@nsnanocat/util";
1+
import { $app, Console, done, fetch, Lodash as _, notification, Storage, wait } from "@nsnanocat/util";
22
import database from "./function/database.mjs";
33
import setENV from "./function/setENV.mjs";
44
const $request = {
@@ -15,26 +15,17 @@ const $request = {
1515
* @type {{Settings: import('./types').Settings}}
1616
*/
1717
const { Settings, Caches, Configs } = setENV("DualSubs", ["Translate", "API"], database);
18-
log(`⚠ Settings.Switch: ${Settings?.Switch}`, "");
19-
switch (Settings.Switch) {
20-
case true:
21-
default: {
22-
const $response = await fetch($request);
23-
_.set(Settings, "Vendor", "Microsoft");
24-
_.set(Settings, "Microsoft.Version", "Azure");
25-
_.set(Settings, "Microsoft.Mode", "Token");
26-
_.set(Settings, "Microsoft.Token", $response?.body);
27-
log(`⚠ Settings: ${JSON.stringify(Settings)}`, "");
28-
// 写入缓存
29-
Storage.setItem("@DualSubs.Translate.Settings.Vendor", Settings.Vendor);
30-
Storage.setItem("@DualSubs.API.Settings.Microsoft.Version", Settings.Microsoft.Version);
31-
Storage.setItem("@DualSubs.API.Settings.Microsoft.Mode", Settings.Microsoft.Mode);
32-
Storage.setItem("@DualSubs.API.Settings.Microsoft.Token", Settings.Microsoft.Token);
33-
break;
34-
}
35-
case false:
36-
break;
37-
}
18+
const $response = await fetch($request);
19+
_.set(Settings, "Vendor", "Microsoft");
20+
_.set(Settings, "Microsoft.Version", "Azure");
21+
_.set(Settings, "Microsoft.Mode", "Token");
22+
_.set(Settings, "Microsoft.Token", $response?.body);
23+
lConsole.info(`Settings: ${JSON.stringify(Settings)}`);
24+
// 写入缓存
25+
Storage.setItem("@DualSubs.Translate.Settings.Vendor", Settings.Vendor);
26+
Storage.setItem("@DualSubs.API.Settings.Microsoft.Version", Settings.Microsoft.Version);
27+
Storage.setItem("@DualSubs.API.Settings.Microsoft.Mode", Settings.Microsoft.Mode);
28+
Storage.setItem("@DualSubs.API.Settings.Microsoft.Token", Settings.Microsoft.Token);
3829
})()
39-
.catch(e => logError(e))
30+
.catch(e => Console.error(e))
4031
.finally(() => done());

src/Microsoft.Translate.js

+13-22
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { $platform, Lodash as _, URL, Storage, fetch, notification, log, logError, wait, done, getScript, runScript } from "@nsnanocat/util";
1+
import { $app, Console, done, fetch, Lodash as _, notification, Storage, wait } from "@nsnanocat/util";
22
import database from "./function/database.mjs";
33
import setENV from "./function/setENV.mjs";
44
const $request = {
@@ -15,26 +15,17 @@ const $request = {
1515
* @type {{Settings: import('./types').Settings}}
1616
*/
1717
const { Settings, Caches, Configs } = setENV("DualSubs", ["Translate", "API"], database);
18-
log(`⚠ Settings.Switch: ${Settings?.Switch}`, "");
19-
switch (Settings.Switch) {
20-
case true:
21-
default: {
22-
const $response = await fetch($request);
23-
_.set(Settings, "Vendor", "Microsoft");
24-
_.set(Settings, "Microsoft.Version", "Azure");
25-
_.set(Settings, "Microsoft.Mode", "Token");
26-
_.set(Settings, "Microsoft.Token", $response?.body);
27-
log(`⚠ Settings: ${JSON.stringify(Settings)}`, "");
28-
// 写入缓存
29-
Storage.setItem("@DualSubs.Translate.Settings.Vendor", Settings.Vendor);
30-
Storage.setItem("@DualSubs.API.Settings.Microsoft.Version", Settings.Microsoft.Version);
31-
Storage.setItem("@DualSubs.API.Settings.Microsoft.Mode", Settings.Microsoft.Mode);
32-
Storage.setItem("@DualSubs.API.Settings.Microsoft.Token", Settings.Microsoft.Token);
33-
break;
34-
}
35-
case false:
36-
break;
37-
}
18+
const $response = await fetch($request);
19+
_.set(Settings, "Vendor", "Microsoft");
20+
_.set(Settings, "Microsoft.Version", "Azure");
21+
_.set(Settings, "Microsoft.Mode", "Token");
22+
_.set(Settings, "Microsoft.Token", $response?.body);
23+
Console.info(`Settings: ${JSON.stringify(Settings)}`);
24+
// 写入缓存
25+
Storage.setItem("@DualSubs.Translate.Settings.Vendor", Settings.Vendor);
26+
Storage.setItem("@DualSubs.API.Settings.Microsoft.Version", Settings.Microsoft.Version);
27+
Storage.setItem("@DualSubs.API.Settings.Microsoft.Mode", Settings.Microsoft.Mode);
28+
Storage.setItem("@DualSubs.API.Settings.Microsoft.Token", Settings.Microsoft.Token);
3829
})()
39-
.catch(e => logError(e))
30+
.catch(e => Console.error(e))
4031
.finally(() => done());

src/function/database.mjs

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
export default {
22
"Default": {
33
"Settings": {
4-
"Switch": true,
54
"Type": "Translate",
65
"Types": [
76
"Official",

src/function/setENV.mjs

+7-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Lodash as _, getStorage, log } from "@nsnanocat/util";
1+
import { Console, getStorage, Lodash as _ } from "@nsnanocat/util";
22

33
/**
44
* Set Environment Variables
@@ -9,17 +9,20 @@ import { Lodash as _, getStorage, log } from "@nsnanocat/util";
99
* @return {Object} { Settings, Caches, Configs }
1010
*/
1111
export default function setENV(name, platforms, database) {
12-
log("☑️ Set Environment Variables", "");
12+
Console.log("☑️ Set Environment Variables");
1313
const { Settings, Caches, Configs } = getStorage(name, platforms, database);
1414
/***************** Settings *****************/
1515
if (!Array.isArray(Settings?.Types)) Settings.Types = (Settings.Types) ? [Settings.Types] : []; // 只有一个选项时,无逗号分隔
16-
log(`✅ Set Environment Variables, Settings: ${typeof Settings}, Settings内容: ${JSON.stringify(Settings)}`, "");
16+
Console.debug(`typeof Settings: ${typeof Settings}`, `Settings: ${JSON.stringify(Settings)}`);
1717
/***************** Caches *****************/
18+
//Console.debug(`typeof Caches: ${typeof Caches}`, `Caches: ${JSON.stringify(Caches)}`);
1819
if (typeof Caches?.Playlists !== "object" || Array.isArray(Caches?.Playlists)) Caches.Playlists = {}; // 创建Playlists缓存
1920
Caches.Playlists.Master = new Map(JSON.parse(Caches?.Playlists?.Master || "[]")); // Strings转Array转Map
2021
Caches.Playlists.Subtitle = new Map(JSON.parse(Caches?.Playlists?.Subtitle || "[]")); // Strings转Array转Map
2122
if (typeof Caches?.Subtitles !== "object") Caches.Subtitles = new Map(JSON.parse(Caches?.Subtitles || "[]")); // Strings转Array转Map
22-
//log(`✅ Set Environment Variables, Caches: ${typeof Caches}, Caches内容: ${JSON.stringify(Caches)}`, "");
23+
if (typeof Caches?.Metadatas !== "object" || Array.isArray(Caches?.Metadatas)) Caches.Metadatas = {}; // 创建Playlists缓存
24+
if (typeof Caches?.Metadatas?.Tracks !== "object") Caches.Metadatas.Tracks = new Map(JSON.parse(Caches?.Metadatas?.Tracks || "[]")); // Strings转Array转Map
2325
/***************** Configs *****************/
26+
Console.log("✅ Set Environment Variables");
2427
return { Settings, Caches, Configs };
2528
};

src/types.d.ts

-8
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,2 @@
11
export interface Settings {
2-
/**
3-
* 总功能开关
4-
*
5-
* 是否启用此APP修改
6-
*
7-
* @defaultValue true
8-
*/
9-
Switch?: boolean;
102
}

template/boxjs.settings.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
[{"id":"@DualSubs.AddOn.Settings.Switch","name":"总功能开关","type":"boolean","val":true,"desc":"是否启用此APP修改"}]
1+
[]

template/egern.handlebars

-26
This file was deleted.

0 commit comments

Comments
 (0)