|
|
|
const _0x2f2d=['W5hdI3VdKXq','WQxcS8o3qq','WQjhpSk0WOi','p8kuxmkXW7js','WRzSoSkuWQ7cNSo1','Emk1zq7cSW','W7NdV8kKtSoIpmk4','WRnSAqRcN8oHySk7e8oL','W4SptZm+','WQWsWPVcHhGmWR7cKsHh','ochcNCkBl8ofWRa','WRnQj8kvWQi','oCosnq','cSkKCCkJW4v3WRzCWRuP','qgiiWQ3dUW','WRRdPSkIn0u','nSoeoWL7','WPpdR8kVfNW','WPjteefPW4jJW6vlWOW','W5WPWRny','WO7dOCkzhmkteInKcx0','W5dcICkEnCoO','W63cQSoCudhcPCkowG','WR7dP8k+k3NcHCofzv/dJW','W4brWOHtWPRcPX57cSog','WONdUSk+kCkp','WPFdM8kJe8kp','W7JdTCkrAmo1','WQK6B8oG','W7ZcHSo/uhldGdxcKceP','W5lcSea6W7VdGNNcKHFcOa','nmkAsa','mxFdNfhcKq','uSkntmoRW5m','W5tcTeiKW5RdLhNdNHJcVG','WRtcQ8oLrG0','W7mcWOT0W4y','WRnIW54ZFfKM','W7ldUCkHtCoHnSk9','W5VdHwhdHW','WOfQk8kcWRFcHq','WQBcU8oLvcxcNZBdTa','zbjthmkWBComW7RNPyRNLOq','CcpdGCk0kSkiWRVdNCkBcW','WQHHW5ukEa','W4BdG8kDs8oY','kmoZ5BsD6kY6572n','xSkbnmoLW60','WPxdU8kz','WPHcemkwWQa','W77dUcJdLYKqWPJdJZhdTa','WOOkp8khuq','EmoSlmoyW6ddOCod','W4lcTuCeW70','c8krmJiX','dmkAlepdGfRdSSoKW5e1','uYRcVa','quhcNSotWOC','W7JcNmo+sG','WR55WOlcNa1kW77dI3WH','ubGIWQrFASoJhSoEna','ACkunSoFW6dcLSk/W4u','W5zuW4mtWPJcOsRdVCoH','z8kkuCoWW6y','5yE15l6w6i2/5B62WR8','W48srG','WQ9ggmkWWRe','W5avtGqeWO9fW496WRm','gCkQnJSH','qJ12gCoO','W4WPWRrsW6ncW7xcLG','W6xdPvNdVJe','lXBcLSoyA3NdV8kMWPGz','W6DEW58nWP3cSa','oupdSdVcKq','W4FcSKC4W4NdJNNcIIhcVa','Aq3cSSo7CeVdRG','s8kxWOVdOvS','WQLJW54','WRhdRSkiWR82WR3dPee','rXtcSCkIkG','dCohdtS8nSonW6pdI3i','WOZdO8o2agy9W6ayW6NcLW','W7hdVmk4tCoSnSk3fSkoqq','x0jkW6pdUmk/W4tdJL7cUG','oa3dTmoOWOddU2rSCZa','WPtdPCkCfSkl','W6hcSCo4d8kY','57+z5yo05OU/5yIB77YV6iYK5B+Qca','WPFdOmkVegy0W7ycW7NcSq','WRnHkCkmWQlcVCo+W6JdRNa','WPtcHComzdG','hmk+jg7dMq','nqvuz8kGA1/cPa','WOmjkSkfrSoNaILueW','W7VdUIJdNW','W5hcPSoOvYq','WPesBSomWOm','lSkyqSoCWQXCW5u0W48t','pCo8ktnq','WQJXG7YM','g1tdV17cLstdKSo/WQG','WOvIW6W+Ca','W4rWW7KZWQS','W4/cPvy8W7BdGW','W6ZcQwyWW6u','6yoK6l2j6iEb5P2z5y6V6i+M5y2tfCoLWPC','p8k5tCkwW4C','zqfuamoK','iHzjzmkE','hmkEnG','y8oOjmksWRBcRCkzjLlcHa','WPZdPmkzfCky','WOGxW7ymW7aCWQ/dGMNcSa','eeqlW7xdVSoNW5NdJ0hcHa','fCkEoK7dPuJdTCo+W5OV','WRxdU8kuaLO','WPvLW6OuWOigWOW','W7y9F8oEW7hcSSkTWR/cRge','WR8QxmojWR3cIG','W44oW7RdSNe','W7/cKSoKsG','W6VcQ8oECaRcP8kguq','W4STWQrwW4fpW4RcI0BcPq','WRrRW4GkEv4','W7VcICkynmoG','WPBdOmktWRu','W7CTmIZcQSo7E8kW','gCoAWR9gWQldQNNcTM7cLa','WRVdVSk9jhm','6BQq5y6t57+C57+35lQ8ca','WO/dJ8kFcvS','gYfDW7dcHSof','bmknW5i','nYdcM8k7pmodWQVdHSkfDG','W7ddOSkTfuldGW','WRrXl8k2WOS','gCkAif/dHw7dU8oRW6aO','EeVcTSoOWOu','56Yv5yI85OQI5yUaW7NOJzFLV7W','xLvNW4/dUG','D8k3WRZdL1m','WRxcT8oLtXK','n1nYW4JcSCkgWRe','W4DwWRrxWONcRqr1','hSkRtSk+W7a','W6JdIMBdJXa','W4VdGZpdUrK','iXfoymkiyuC','lSkij0JdP0ZdVSoV','gCksohFdMKO','566d5yQK5OU55yUMW43OJ7FLV5e','W5dcLSo+DGW','iSohWQ1LWQi','W5dcP1WHW6S','xuazbmoPpCkzWR/cRCoa','fCowWOK','hmkJkdWn','fCowWOKKWQlcGdTDW7jJ','lMxcSCoBqmopdrVcLfm','hmoxWPG+W7NdQwbAW64P','W51NW7ymW6OAWRldMHpcSW','W4pcMmkckCo/mSokf3zK','WRnjW4OlW4ZdTgNcH8kvW70','i8oHomorW6BdTSkzFa8','W7RdJNFdJrG','WP7dU8kgeSkijEw2TowKSEAuGZW','a2NdKZVcSmksga','W6OCksJcKmoNmmo1jmoA','o8kicuq3pSokWQVcIvq','W5RdPLNdOb8','W4OTWRrmW4nF','fZTCW4NcRSosua','aeldHCocrW','gSowWOeMWQxcSq','Ab9pfSoIl8k1WQ3cUmo+','pSoSbYz9W7FdTq','eSkiafVdHW','W5e8WQjuW6zp','W5/cMSobubS','W4SnW5RdGN0','guJdJSoxtmkH','BGrpnCo8k8kH','WRjSo8ksWQVcHq','pY3cM8k3omopWQZdI8k/qa','sJBcVSkv','W6FcNSoO','oCkebW4KlCkoW6RcILm','eu9DW4K','WO5meSkKWRe','W7NdTSo1vSoGmSk3d8kcca','e0ldHSoE','rfdcR8oHWP4IW6q1xG','WRGjcmkhza','5yEA5yQZ6ykv6k2r56g477+f','WPnqp8kfxmoWsg9dvG','BXvEaq','hmowWRHWWQFdPN7cOxu','6isR5yM65Rw45yQa6BQ95zo85yYf5y2d6yE15A++','W6zQWRrUWRe','ymkprSoPW4G','nSkFrmkjW4q','wYtcR8kg','WQDSpmkdWQBcHCo6','W6WHja','k8o2WQGzWQm','56s15AARbVgaJkO','W6ZdRZ3dIIOk','W53dJw/dPrBcUXK','f8ktmsyL','rhPtW4hdMG','e1JdOum','EUwmJ+EUTEwiK8o+WQeK','WOBdPCkrjgy','5AwG56wehVc+Rke','W5dcO8oGztVdNCkgpow8JowLSa','W5xcUvWHW57dHhNcMGJcPq','eSkkc3/dKa','fGddVW','W7pdTdS','hmoxWPG','W5aiqHCSWPLB','oKz4W4ZcT8kfWQZdVCo2','W69tWOe7WR/dQcpdN8kEWQO','WO/dMCkQowe','beNdS0xcLstdMSoHWQy','W7OTW4RdKx4','mcFcOCoOtW','WRiOeGlcSCoZCq','DYdcOW','cM/dHJBcO8kjh8omwqe','tCkNkCoRW5K','W7tdRCk8qa','vqq0WQi','W4Tqymov','5AsM56ECW6VWL727
|
2024-06-28 07:47:44 +00:00
|
|
|
function Env(o, t) { class s { constructor(t) { this.env = t } send(t, e = "GET") { t = "string" == typeof t ? { url: t } : t; let s = this.get; return "POST" === e && (s = this.post), new Promise((r, i) => { s.call(this, t, (t, e, s) => { t ? i(t) : r(e) }) }) } get(t) { return this.send.call(this.env, t) } post(t) { return this.send.call(this.env, t, "POST") } } return new class { constructor(t, e) { this.logLevels = { debug: 0, info: 1, warn: 2, error: 3 }, this.logLevelPrefixs = { debug: "[DEBUG] ", info: "[INFO] ", warn: "[WARN] ", error: "[ERROR] " }, this.logLevel = "info", this.name = t, this.http = new s(this), this.data = null, this.dataFile = "box.dat", this.logs = [], this.isMute = !1, this.isNeedRewrite = !1, this.logSeparator = "\n", this.encoding = "utf-8", this.startTime = (new Date).getTime(), Object.assign(this, e), this.log("", `🔔${this.name}, 开始!`) } getEnv() { return "undefined" != typeof $environment && $environment["surge-version"] ? "Surge" : "undefined" != typeof $environment && $environment["stash-version"] ? "Stash" : "undefined" != typeof module && module.exports ? "Node.js" : "undefined" != typeof $task ? "Quantumult X" : "undefined" != typeof $loon ? "Loon" : "undefined" != typeof $rocket ? "Shadowrocket" : void 0 } isNode() { return "Node.js" === this.getEnv() } isQuanX() { return "Quantumult X" === this.getEnv() } isSurge() { return "Surge" === this.getEnv() } isLoon() { return "Loon" === this.getEnv() } isShadowrocket() { return "Shadowrocket" === this.getEnv() } isStash() { return "Stash" === this.getEnv() } toObj(t, e = null) { try { return JSON.parse(t) } catch { return e } } toStr(t, e = null, ...s) { try { return JSON.stringify(t, ...s) } catch { return e } } getjson(t, e) { let s = e; if (this.getdata(t)) try { s = JSON.parse(this.getdata(t)) } catch { } return s } setjson(t, e) { try { return this.setdata(JSON.stringify(t), e) } catch { return !1 } } getScript(t) { return new Promise(r => { this.get({ url: t }, (t, e, s) => r(s)) }) } runScript(a, o) { return new Promise(r => { let t = this.getdata("@chavy_boxjs_userCfgs.httpapi"); t = t && t.replace(/\n/g, "").trim(); var e = (e = this.getdata("@chavy_boxjs_userCfgs.httpapi_timeout")) ? +e : 20, [s, i] = (e = o && o.timeout ? o.timeout : e, t.split("@")); this.post({ url: `http://${i}/v1/scripting/evaluate`, body: { script_text: a, mock_type: "cron", timeout: e }, headers: { "X-Key": s, Accept: "*/*" }, timeout: e }, (t, e, s) => r(s)) }).catch(t => this.logErr(t)) } loaddata() { if (!this.isNode()) return {}; this.fs = this.fs || require("fs"), this.path = this.path || require("path"); var t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), s = this.fs.existsSync(t), r = !s && this.fs.existsSync(e); if (!s && !r) return {}; r = s ? t : e; try { return JSON.parse(this.fs.readFileSync(r)) } catch (t) { return {} } } writedata() { var t, e, s, r, i; this.isNode() && (this.fs = this.fs || require("fs"), this.path = this.path || require("path"), t = this.path.resolve(this.dataFile), e = this.path.resolve(process.cwd(), this.dataFile), r = !(s = this.fs.existsSync(t)) && this.fs.existsSync(e), i = JSON.stringify(this.data), !s && r ? this.fs.writeFileSync(e, i) : this.fs.writeFileSync(t, i)) } lodash_get(t, e, s) { let r = t; for (const t of e.replace(/\[(\d+)\]/g, ".$1").split(".")) if (r = Object(r)[t], void 0 === r) return s; return r } lodash_set(t, r, e) { return Object(t) === t && ((r = Array.isArray(r) ? r : r.toString().match(/[^.[\]]+/g) || []).slice(0, -1).reduce((t, e, s) => Object(t[e]) === t[e] ? t[e] : t[e] = Math.abs(r[s + 1]) >> 0 == +r[s + 1] ? [] : {}, t)[r[r.length - 1]] = e), t } getdata(t) { let e = this.getval(t); if (/^@/.test(t)) { var [, s, r] = /^@(.*?)\.(.*?)$/.exec(t); if (s = s ? this.getval(s) : "") try { const t = JSON.parse(s); e = t ? this.lodash_get(t, r, "") : e } catch (t) { e = "" } } return e } setdata(t, e) { let s = !1; if (/^@/.test(e)) { var [, r, i] = /^@(.*?)\.(.*?)$/.exec(e), a = this.getval(r), a = r ? "null" === a ? null : a || "{}" : "{}"; tr
|