mirror of
https://github.com/BTMuli/TeyvatGuide.git
synced 2025-12-13 09:28:14 +08:00
♻️ loading组件重构
This commit is contained in:
@@ -29,10 +29,12 @@ type InvokeArg = { func: string };
|
||||
class Client {
|
||||
private listener: UnlistenFn | undefined;
|
||||
private route: string[] = [];
|
||||
|
||||
private constructor() {
|
||||
this.route = [];
|
||||
this.listener = undefined;
|
||||
}
|
||||
|
||||
private static instance: Client | null = null;
|
||||
|
||||
static getInstance(): Client {
|
||||
@@ -690,7 +692,7 @@ class Client {
|
||||
const appWindow = await webviewWindow.WebviewWindow.getByLabel("TeyvatGuide");
|
||||
await appWindow?.setFocus();
|
||||
showSnackbar.error(`不支持的操作:OpenApplication(${JSON.stringify(arg.payload)})`);
|
||||
await new Promise<void>((resolve) => setTimeout(() => resolve(), 1500));
|
||||
await new Promise<void>((resolve) => setTimeout(resolve, 1500));
|
||||
const windowFind = await webviewWindow.WebviewWindow.getByLabel("mhy_client");
|
||||
if (windowFind !== null) await windowFind.setFocus();
|
||||
}
|
||||
@@ -727,11 +729,7 @@ class Client {
|
||||
await appWindow.setFocus();
|
||||
}
|
||||
showSnackbar.error(`未知链接:${arg.payload.page}`, 3000);
|
||||
await new Promise<void>((resolve) => {
|
||||
setTimeout(() => {
|
||||
resolve();
|
||||
}, 3000);
|
||||
});
|
||||
await new Promise<void>((resolve) => setTimeout(resolve, 3000));
|
||||
const windowFind = await webviewWindow.WebviewWindow.getByLabel("mhy_client");
|
||||
if (windowFind !== null) {
|
||||
await windowFind.setFocus();
|
||||
@@ -894,10 +892,8 @@ class Client {
|
||||
}
|
||||
}
|
||||
console.warn("[share]", arg.payload);
|
||||
// 延时 3s
|
||||
setTimeout(async () => {
|
||||
await this.callback(arg.callback, {});
|
||||
}, 10000);
|
||||
await new Promise<void>((resolve) => setTimeout(resolve, 3000));
|
||||
await this.callback(arg.callback, {});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/**
|
||||
* @file utils/dataBS.ts
|
||||
* @description 用户数据的备份、恢复、迁移
|
||||
* @since Beta v0.6.3
|
||||
* @since Beta v0.6.7
|
||||
*/
|
||||
import showLoading from "@comp/func/loading.js";
|
||||
import showSnackbar from "@comp/func/snackbar.js";
|
||||
@@ -16,7 +16,7 @@ import TGLogger from "./TGLogger.js";
|
||||
|
||||
/**
|
||||
* @description 备份用户数据
|
||||
* @since Beta v0.6.3
|
||||
* @since Beta v0.6.7
|
||||
* @param {string} dir 备份目录路径
|
||||
* @returns {Promise<void>}
|
||||
*/
|
||||
@@ -25,16 +25,21 @@ export async function backUpUserData(dir: string): Promise<void> {
|
||||
await TGLogger.Warn("备份数据不存在,即将创建");
|
||||
await mkdir(dir, { recursive: true });
|
||||
}
|
||||
await showLoading.update("正在备份UIAF成就数据");
|
||||
await TSUserAchi.backupUiaf(dir);
|
||||
await showLoading.update("正在备份用户账户数据");
|
||||
await TSUserAccount.account.backup(dir);
|
||||
await showLoading.update("正在备份深渊数据");
|
||||
await TSUserAbyss.backupAbyss(dir);
|
||||
await showLoading.update("正在备份真境剧诗数据");
|
||||
await TSUserCombat.backupCombat(dir);
|
||||
await showLoading.update("正在备份UIGF祈愿数据");
|
||||
await TSUserGacha.backUpUigf(dir);
|
||||
}
|
||||
|
||||
/**
|
||||
* @description 恢复用户数据
|
||||
* @since Beta v0.6.3
|
||||
* @since Beta v0.6.7
|
||||
* @param {string} dir 备份目录路径
|
||||
* @returns {Promise<void>}
|
||||
*/
|
||||
@@ -44,31 +49,31 @@ export async function restoreUserData(dir: string): Promise<void> {
|
||||
showSnackbar.error("备份目录不存在");
|
||||
return;
|
||||
}
|
||||
showLoading.update("正在恢复数据...", "正在恢复成就数据");
|
||||
await showLoading.update("正在恢复成就数据");
|
||||
const restoreAchi = await TSUserAchi.restoreUiaf(dir);
|
||||
if (!restoreAchi) {
|
||||
showSnackbar.error("成就数据恢复失败");
|
||||
errNum++;
|
||||
}
|
||||
showLoading.update("正在恢复数据...", "正在恢复账号数据");
|
||||
await showLoading.update("正在恢复账号数据");
|
||||
const restoreAccount = await TSUserAccount.account.restore(dir);
|
||||
if (!restoreAccount) {
|
||||
showSnackbar.error("Cookie 数据恢复失败");
|
||||
errNum++;
|
||||
}
|
||||
showLoading.update("正在恢复数据...", "正在恢复深渊数据");
|
||||
await showLoading.update("正在恢复深渊数据");
|
||||
const restoreAbyss = await TSUserAbyss.restoreAbyss(dir);
|
||||
if (!restoreAbyss) {
|
||||
showSnackbar.error("深渊数据恢复失败");
|
||||
errNum++;
|
||||
}
|
||||
showLoading.update("正在恢复数据...", "正在恢复真境剧诗数据");
|
||||
await showLoading.update("正在恢复真境剧诗数据");
|
||||
const restoreCombat = await TSUserCombat.restoreCombat(dir);
|
||||
if (!restoreCombat) {
|
||||
showSnackbar.error("真境剧诗数据恢复失败");
|
||||
errNum++;
|
||||
}
|
||||
showLoading.update("正在恢复数据...", "正在恢复祈愿数据");
|
||||
await showLoading.update("正在恢复祈愿数据");
|
||||
const restoreGacha = await TSUserGacha.restoreUigf(dir);
|
||||
if (!restoreGacha) {
|
||||
showSnackbar.error("祈愿数据恢复失败");
|
||||
|
||||
Reference in New Issue
Block a user