press any key to exit

This commit is contained in:
HolographicHat
2022-03-22 02:23:00 +08:00
parent be8a426dce
commit 9b56cb683e
3 changed files with 13 additions and 3 deletions

4
app.js
View File

@@ -3,7 +3,7 @@ const proxy = require("udp-proxy")
const cp = require("child_process")
const rs = require("./regionServer")
const appcenter = require("./appcenter")
const { initConfig, splitPacket, upload, decodeProto, log, setupHost, KPacket, debug, checkCDN, checkUpdate } = require("./utils")
const { initConfig, splitPacket, upload, decodeProto, log, setupHost, KPacket, debug, checkCDN, checkUpdate, keypress} = require("./utils")
const { exportData } = require("./export");
// TODO: i18n
@@ -94,6 +94,8 @@ const { exportData } = require("./export");
const data = zlib.brotliDecompressSync(response.data)
const proto = await decodeProto(data,"AllAchievement")
await exportData(proto)
console.log("按任意键退出.")
await keypress()
}
process.exit(0)
}

View File

@@ -4,7 +4,7 @@
"description": "",
"main": "app.js",
"scripts": {
"pkg": "pkg -t node16-win-x64 -C Brotli app.js"
"pkg": "pkg -t node16-win-x64 -C Brotli app.js --build"
},
"keywords": [],
"author": "",

View File

@@ -203,6 +203,14 @@ const upload = async data => {
return await cloud.post("/achievement-export", data)
}
const keypress = async () => {
process.stdin.setRawMode(true)
return new Promise(resolve => process.stdin.once("data", () => {
process.stdin.setRawMode(false)
resolve()
}))
}
const checkUpdate = async () => {
const data = (await cloud.get("/latest-version")).data
if (data["vc"] !== version.code) {
@@ -282,5 +290,5 @@ class KPacket {
module.exports = {
log, sleep, encodeProto, decodeProto, initConfig, splitPacket, upload, brotliCompressSync, brotliDecompressSync,
setupHost, loadCache, debug, checkCDN, checkUpdate, KPacket, cdnUrlFormat
setupHost, loadCache, debug, checkCDN, checkUpdate, keypress, KPacket, cdnUrlFormat
}