From 0358fe76200f4f9ba998df0445e20c44a6426562 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=89=8B=E7=93=9C=E4=B8=80=E5=8D=81=E9=9B=AA?= Date: Fri, 17 May 2024 17:03:48 +0800 Subject: [PATCH] feat: UpdateConfig --- src/common/utils/helper.ts | 16 +++++++++++++++- src/index.ts | 4 ++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/common/utils/helper.ts b/src/common/utils/helper.ts index 56059d4f..24628b62 100644 --- a/src/common/utils/helper.ts +++ b/src/common/utils/helper.ts @@ -1,5 +1,6 @@ import crypto from 'node:crypto'; - +import path from 'node:path'; +import fs from 'fs/promises'; export function sleep(ms: number): Promise { return new Promise(resolve => setTimeout(resolve, ms)); } @@ -139,4 +140,17 @@ export function migrateConfig(oldConfig: any) { token: oldConfig.token, }; return newConfig; +} +// 升级旧的配置到新的 +export async function UpdateConfig() { + const configFiles = await fs.readdir(path.join(__dirname, 'config')); + for (const file of configFiles) { + if (file.match(/^onebot11_\d+.json$/)) { + let CurrentConfig = JSON.parse(await fs.readFile(path.join(__dirname, 'config', file), 'utf8')); + if (isValidOldConfig(CurrentConfig)) { + let NewConfig = migrateConfig(CurrentConfig); + await fs.writeFile(path.join(__dirname, 'config', file), JSON.stringify(NewConfig, null, 2)); + } + } + } } \ No newline at end of file diff --git a/src/index.ts b/src/index.ts index b35577ad..e290557c 100644 --- a/src/index.ts +++ b/src/index.ts @@ -8,10 +8,14 @@ import { log, logDebug, logError, LogLevel, setLogLevel } from '@/common/utils/l import { NapCatOnebot11 } from '@/onebot11/main'; import { InitWebUi } from './webui/index'; import { WebUiDataRuntime } from './webui/src/helper/Data'; +import { UpdateConfig } from './common/utils/helper'; program .option('-q, --qq ', 'QQ号') .parse(process.argv); +// 无缝升级旧的配置到新的 +UpdateConfig().catch(logError); +// InitWebUi(); const cmdOptions = program.opts(); // console.log(process.argv);