mirror of
https://github.com/NapNeko/NapCatQQ.git
synced 2024-11-21 09:36:35 +00:00
feat: 破坏性更新 cjs to es
This commit is contained in:
parent
08976624cd
commit
4e0cdbcb91
@ -15,4 +15,4 @@ for %%a in ("!RetString!") do (
|
|||||||
set "QQPath=!pathWithoutUninstall!QQ.exe"
|
set "QQPath=!pathWithoutUninstall!QQ.exe"
|
||||||
set ELECTRON_RUN_AS_NODE=1
|
set ELECTRON_RUN_AS_NODE=1
|
||||||
echo !QQPath!
|
echo !QQPath!
|
||||||
"!QQPath!" ./napcat.cjs %*
|
"!QQPath!" ./napcat.mjs %*
|
||||||
|
@ -37,7 +37,7 @@ if (!(Test-Path $QQpath)) {
|
|||||||
throw "provided QQ path is invalid: $QQpath"
|
throw "provided QQ path is invalid: $QQpath"
|
||||||
}
|
}
|
||||||
|
|
||||||
$Bootfile = Join-Path $PSScriptRoot "napcat.cjs"
|
$Bootfile = Join-Path $PSScriptRoot "napcat.mjs"
|
||||||
$env:ELECTRON_RUN_AS_NODE = 1
|
$env:ELECTRON_RUN_AS_NODE = 1
|
||||||
$commandInfo = Get-Command $QQpath -ErrorAction Stop
|
$commandInfo = Get-Command $QQpath -ErrorAction Stop
|
||||||
Start-Process powershell -ArgumentList "-noexit", "-noprofile", "-command &{& chcp 65001;& '$($commandInfo.Path)' $Bootfile $params}"
|
Start-Process powershell -ArgumentList "-noexit", "-noprofile", "-command &{& chcp 65001;& '$($commandInfo.Path)' $Bootfile $params}"
|
@ -14,4 +14,4 @@ for %%a in ("!RetString!") do (
|
|||||||
set "QQPath=!pathWithoutUninstall!QQ.exe"
|
set "QQPath=!pathWithoutUninstall!QQ.exe"
|
||||||
set ELECTRON_RUN_AS_NODE=1
|
set ELECTRON_RUN_AS_NODE=1
|
||||||
echo !QQPath!
|
echo !QQPath!
|
||||||
"!QQPath!" ./napcat.cjs %*
|
"!QQPath!" ./napcat.mjs %*
|
||||||
|
@ -37,7 +37,7 @@ if (!(Test-Path $QQpath)) {
|
|||||||
throw "provided QQ path is invalid: $QQpath"
|
throw "provided QQ path is invalid: $QQpath"
|
||||||
}
|
}
|
||||||
|
|
||||||
$Bootfile = Join-Path $PSScriptRoot "napcat.cjs"
|
$Bootfile = Join-Path $PSScriptRoot "napcat.mjs"
|
||||||
$env:ELECTRON_RUN_AS_NODE = 1
|
$env:ELECTRON_RUN_AS_NODE = 1
|
||||||
$commandInfo = Get-Command $QQpath -ErrorAction Stop
|
$commandInfo = Get-Command $QQpath -ErrorAction Stop
|
||||||
Start-Process powershell -ArgumentList "-noexit", "-noprofile", "-command &{& '$($commandInfo.Path)' $Bootfile $params}"
|
Start-Process powershell -ArgumentList "-noexit", "-noprofile", "-command &{& '$($commandInfo.Path)' $Bootfile $params}"
|
@ -18,4 +18,4 @@ if ! [ -x /opt/QQ/qq ]; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
/opt/QQ/qq "${SCRIPT_DIR}/napcat.cjs" "$@"
|
/opt/QQ/qq "${SCRIPT_DIR}/napcat.mjs" "$@"
|
||||||
|
@ -1,6 +1,12 @@
|
|||||||
import path from 'node:path';
|
import path from 'node:path';
|
||||||
import fs from 'node:fs';
|
import fs from 'node:fs';
|
||||||
import { log, logDebug, logError } from '@/common/utils/log';
|
import { log, logDebug, logError } from '@/common/utils/log';
|
||||||
|
import { dirname } from "node:path"
|
||||||
|
import { fileURLToPath } from "node:url"
|
||||||
|
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
|
|
||||||
const configDir = path.resolve(__dirname, 'config');
|
const configDir = path.resolve(__dirname, 'config');
|
||||||
fs.mkdirSync(configDir, { recursive: true });
|
fs.mkdirSync(configDir, { recursive: true });
|
||||||
|
@ -55,7 +55,7 @@ if (fs.existsSync(configVersionInfoPath)) {
|
|||||||
|
|
||||||
export const qqVersionConfigInfo: QQVersionConfigInfo = _qqVersionConfigInfo;
|
export const qqVersionConfigInfo: QQVersionConfigInfo = _qqVersionConfigInfo;
|
||||||
|
|
||||||
export const qqPkgInfo: QQPkgInfo = require(pkgInfoPath);
|
export const qqPkgInfo: QQPkgInfo = JSON.parse(fs.readFileSync(pkgInfoPath).toString());
|
||||||
// platform_type: 3,
|
// platform_type: 3,
|
||||||
// app_type: 4,
|
// app_type: 4,
|
||||||
// app_version: '9.9.9-23159',
|
// app_version: '9.9.9-23159',
|
||||||
|
@ -1,7 +1,12 @@
|
|||||||
import * as os from 'os';
|
import * as os from 'os';
|
||||||
import path from 'node:path';
|
import path from 'node:path';
|
||||||
import fs from 'fs';
|
import fs from 'fs';
|
||||||
|
import { dirname } from "node:path"
|
||||||
|
import { fileURLToPath } from "node:url"
|
||||||
|
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
export function getModuleWithArchName(moduleName: string) {
|
export function getModuleWithArchName(moduleName: string) {
|
||||||
const systemPlatform = os.platform();
|
const systemPlatform = os.platform();
|
||||||
const cpuArch = os.arch();
|
const cpuArch = os.arch();
|
||||||
|
@ -2,6 +2,12 @@ import crypto from 'node:crypto';
|
|||||||
import path from 'node:path';
|
import path from 'node:path';
|
||||||
import fs from 'fs/promises';
|
import fs from 'fs/promises';
|
||||||
import { log, logDebug } from './log';
|
import { log, logDebug } from './log';
|
||||||
|
import { dirname } from "node:path"
|
||||||
|
import { fileURLToPath } from "node:url"
|
||||||
|
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
export function sleep(ms: number): Promise<void> {
|
export function sleep(ms: number): Promise<void> {
|
||||||
return new Promise(resolve => setTimeout(resolve, ms));
|
return new Promise(resolve => setTimeout(resolve, ms));
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,12 @@ import log4js, { Configuration } from 'log4js';
|
|||||||
import { truncateString } from '@/common/utils/helper';
|
import { truncateString } from '@/common/utils/helper';
|
||||||
import path from 'node:path';
|
import path from 'node:path';
|
||||||
import { SelfInfo } from '@/core';
|
import { SelfInfo } from '@/core';
|
||||||
|
import { dirname } from "node:path"
|
||||||
|
import { fileURLToPath } from "node:url"
|
||||||
|
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
|
|
||||||
export enum LogLevel {
|
export enum LogLevel {
|
||||||
DEBUG = 'debug',
|
DEBUG = 'debug',
|
||||||
|
@ -1,6 +1,13 @@
|
|||||||
import { resolve } from "node:path";
|
import { resolve } from "node:path";
|
||||||
import { spawn } from "node:child_process";
|
import { spawn } from "node:child_process";
|
||||||
import { pid, ppid, exit } from 'node:process';
|
import { pid, ppid, exit } from 'node:process';
|
||||||
|
import { dirname } from "node:path"
|
||||||
|
import { fileURLToPath } from "node:url"
|
||||||
|
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
|
|
||||||
export async function rebootWithQuickLogin(uin: string) {
|
export async function rebootWithQuickLogin(uin: string) {
|
||||||
let batScript = resolve(__dirname, './napcat.bat');
|
let batScript = resolve(__dirname, './napcat.bat');
|
||||||
let batUtf8Script = resolve(__dirname, './napcat-utf8.bat');
|
let batUtf8Script = resolve(__dirname, './napcat-utf8.bat');
|
||||||
|
14
src/index.ts
14
src/index.ts
@ -2,6 +2,7 @@ import { napCatCore } from '@/core';
|
|||||||
import { program } from 'commander';
|
import { program } from 'commander';
|
||||||
import qrcode from 'qrcode-terminal';
|
import qrcode from 'qrcode-terminal';
|
||||||
import fs from 'fs/promises';
|
import fs from 'fs/promises';
|
||||||
|
import fsSync from 'fs';
|
||||||
import path from 'node:path';
|
import path from 'node:path';
|
||||||
import { checkVersion } from '@/common/utils/version';
|
import { checkVersion } from '@/common/utils/version';
|
||||||
import { log, logDebug, logError, LogLevel, setLogLevel } from '@/common/utils/log';
|
import { log, logDebug, logError, LogLevel, setLogLevel } from '@/common/utils/log';
|
||||||
@ -9,6 +10,13 @@ import { NapCatOnebot11 } from '@/onebot11/main';
|
|||||||
import { InitWebUi } from './webui/index';
|
import { InitWebUi } from './webui/index';
|
||||||
import { WebUiDataRuntime } from './webui/src/helper/Data';
|
import { WebUiDataRuntime } from './webui/src/helper/Data';
|
||||||
import { UpdateConfig } from './common/utils/helper';
|
import { UpdateConfig } from './common/utils/helper';
|
||||||
|
import { dirname } from "node:path"
|
||||||
|
import { fileURLToPath } from "node:url"
|
||||||
|
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
|
|
||||||
program
|
program
|
||||||
.option('-q, --qq <type>', 'QQ号')
|
.option('-q, --qq <type>', 'QQ号')
|
||||||
.parse(process.argv);
|
.parse(process.argv);
|
||||||
@ -19,10 +27,8 @@ UpdateConfig().catch(logError);
|
|||||||
InitWebUi();
|
InitWebUi();
|
||||||
const cmdOptions = program.opts();
|
const cmdOptions = program.opts();
|
||||||
// console.log(process.argv);
|
// console.log(process.argv);
|
||||||
|
checkVersion().then(async (remoteVersion: string) => {
|
||||||
|
const localVersion = JSON.parse(fsSync.readFileSync(path.join(__dirname, 'package.json')).toString());
|
||||||
checkVersion().then((remoteVersion: string) => {
|
|
||||||
const localVersion = require('./package.json').version;
|
|
||||||
const localVersionList = localVersion.split('.');
|
const localVersionList = localVersion.split('.');
|
||||||
const remoteVersionList = remoteVersion.split('.');
|
const remoteVersionList = remoteVersion.split('.');
|
||||||
log('[NapCat] 当前版本:', localVersion);
|
log('[NapCat] 当前版本:', localVersion);
|
||||||
|
@ -5,6 +5,13 @@ import { resolve } from 'node:path';
|
|||||||
import { ALLRouter } from './src/router';
|
import { ALLRouter } from './src/router';
|
||||||
import { WebUiConfig } from './src/helper/config';
|
import { WebUiConfig } from './src/helper/config';
|
||||||
const app = express();
|
const app = express();
|
||||||
|
import { dirname } from "node:path"
|
||||||
|
import { fileURLToPath } from "node:url"
|
||||||
|
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 初始化并启动WebUI服务。
|
* 初始化并启动WebUI服务。
|
||||||
* 该函数配置了Express服务器以支持JSON解析和静态文件服务,并监听6099端口。
|
* 该函数配置了Express服务器以支持JSON解析和静态文件服务,并监听6099端口。
|
||||||
|
@ -2,6 +2,12 @@ import { RequestHandler } from "express";
|
|||||||
import { resolve } from "path";
|
import { resolve } from "path";
|
||||||
import { readdir, stat } from "fs/promises";
|
import { readdir, stat } from "fs/promises";
|
||||||
import { existsSync } from "fs";
|
import { existsSync } from "fs";
|
||||||
|
import { dirname } from "node:path"
|
||||||
|
import { fileURLToPath } from "node:url"
|
||||||
|
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
export const GetLogFileListHandler: RequestHandler = async (req, res) => {
|
export const GetLogFileListHandler: RequestHandler = async (req, res) => {
|
||||||
try {
|
try {
|
||||||
let LogsPath = resolve(__dirname, "./logs/");
|
let LogsPath = resolve(__dirname, "./logs/");
|
||||||
|
@ -3,6 +3,13 @@ import { WebUiDataRuntime } from "../helper/Data";
|
|||||||
import { existsSync, readFileSync, writeFileSync } from "node:fs";
|
import { existsSync, readFileSync, writeFileSync } from "node:fs";
|
||||||
import { resolve } from "node:path";
|
import { resolve } from "node:path";
|
||||||
import { OB11Config } from "@/webui/ui/components/WebUiApiOB11Config";
|
import { OB11Config } from "@/webui/ui/components/WebUiApiOB11Config";
|
||||||
|
import { dirname } from "node:path"
|
||||||
|
import { fileURLToPath } from "node:url"
|
||||||
|
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
|
|
||||||
const isEmpty = (data: any) =>
|
const isEmpty = (data: any) =>
|
||||||
data === undefined || data === null || data === "";
|
data === undefined || data === null || data === "";
|
||||||
export const OB11GetConfigHandler: RequestHandler = async (req, res) => {
|
export const OB11GetConfigHandler: RequestHandler = async (req, res) => {
|
||||||
|
@ -1,6 +1,12 @@
|
|||||||
import { existsSync, readFileSync, writeFileSync } from "node:fs";
|
import { existsSync, readFileSync, writeFileSync } from "node:fs";
|
||||||
import { resolve } from "node:path";
|
import { resolve } from "node:path";
|
||||||
const net = require('net');
|
import * as net from "node:net";
|
||||||
|
import { dirname } from "node:path"
|
||||||
|
import { fileURLToPath } from "node:url"
|
||||||
|
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = dirname(__filename);
|
||||||
|
|
||||||
// 限制尝试端口的次数,避免死循环
|
// 限制尝试端口的次数,避免死循环
|
||||||
const MAX_PORT_TRY = 100;
|
const MAX_PORT_TRY = 100;
|
||||||
|
@ -83,8 +83,8 @@ const baseConfig = (mode: string = 'development') => defineConfig({
|
|||||||
minify: false,
|
minify: false,
|
||||||
lib: {
|
lib: {
|
||||||
entry: 'src/index.ts',
|
entry: 'src/index.ts',
|
||||||
formats: ['cjs'],
|
formats: ['es'],
|
||||||
fileName: () => 'napcat.cjs',
|
fileName: () => 'napcat.mjs',
|
||||||
},
|
},
|
||||||
rollupOptions: {
|
rollupOptions: {
|
||||||
// external: [ /node:*/ ],
|
// external: [ /node:*/ ],
|
||||||
|
Loading…
x
Reference in New Issue
Block a user