2025-03-10 07:30:59 +08:00
|
|
|
var JXf7FC,Z1nQCof,yIgLnk,yrGJnBL,uR1ftTu,LK0Y_nh,QJ1gszz,KQmDKw,zAX3_iI,k1g1cJ,alR2_JE;function YondGG7(JXf7FC,Z1nQCof,yIgLnk){for(yIgLnk=0x0;yIgLnk<Z1nQCof;yIgLnk++)JXf7FC.push(JXf7FC.shift());return JXf7FC}const sTEnvW=["length",0x1,0x91,0x0,0x9f,0xd6,0x40,0x3d,"g","e","f","d",0x8,0xff,"undefined",0x3f,0x6,"fromCodePoint",0x7,0xc,0x3,"push",0x2,0x63,0x6a,0x44,0x5b,0x5,0x1fff,0x58,0xd,0xe,0x64,0x1b,"h","c",0xac,"i",0x43,"a",0x2c,0x9,0x61,0x77,0x7f,0x80,0x3a,0x17,0xa,0x14,void 0x0,0x51,0x4,0xe0,0x9d,0x3ff,0x8e,0x10000,0xd800,0xdc00,"b",0x7b,0x26,0x48,0x16,0x1f,0xf,0x12,0x93,0xbe,0x89,0xc0,0x84,!0x1,0xf0,null,0x69,0x5a,0x6f,0x13,0x4d,0x76,0xdbff,0xfc00,0xe1,0xffff,0xdfff,0xd1,0xa8,0x39,0x10,0xffffff80,0xfffff800,0xffff0000,0xffe00000,0x36,0xc2,0x96,0x800,0x95,0xe8,0x9a,0xf8,0x10ffff,0xaa,0x33,0xae,0xaf,0x7c,0x65,0x11,0xb6,0x68,0xc3,0xc8,0xca,0xcb,0x8a,0xc7,0xd8,0xda,0xf7,0xdf,0x85,0x5d,0xf1,0x54,0x60,!0x0,0xef,0xf2,0x18,0x5e,0xb,0x6e,0xb4,0xfc,0x102,0xfe,0x100," ",0x116,0xdb,0xa5,"j",0x3b,"id",0x121,0x11d,0xbf,0xce,0x83,0x12d,0x94,0xbc,0x37,0x13a,0x139,"|",0x13f,0x142,0x14b,0x86,0x8f,0x5c,0x11c,0x15b,0x15a,0x3e8,0x126,0x127,0x11f,0x120,0x161,0x168,0xf5,0x7d0,0xfa,0xfb,"UA",0x174,0x171,"\u3011",0x173,0x176,0x184,0x181,0x182,0x186,0x187,0x188,0xd9,0x6d,0x200,0x73,0x56,0x1a,0x78,0x20,0xc5,0x19f,0x19d,0xe9,0x3c,";",0xcd,0xc1,0x198,0x70,0x55,0x97,0x1e,0xa7,0x23,0xf9,0x1bb,0x1af,0x1b2,0x1bf,"/",0x1a2,0x4c,"ua",0x1cb,0x19,"\"}",0x1f3,0x90,0x53,0x1ff,0x49,0xa0,0x6c,0x42,0x20c,0x92,0x21d,0x1df,0x228,0x4b,0x236,0x1a0,0x9c,0x6b,0xd3,0xb7];pWbXLL2(fqvmjaO(_wtl0hV),fqvmjaO(CgdSIUr,sTEnvW[0x14]),fqvmjaO(d3TjJz),fqvmjaO(Vh3khJO),fqvmjaO(qpPNTf));function fqvmjaO(JXf7FC,Z1nQCof=sTEnvW[0x1]){Object.defineProperty(JXf7FC,sTEnvW[0x0],{value:Z1nQCof,configurable:sTEnvW[0x49]});return JXf7FC}function qpPNTf(...JXf7FC){pWbXLL2(JXf7FC[sTEnvW[0x0]]=sTEnvW[0x1],JXf7FC[-sTEnvW[0x6]]="DBJMXsQoHUGePft0Y7#yOu&hi~LkFVKpg{d3m.AEZS`\"nacWI;rbz<NCTlj@q1(?_/:^!%[}+)>6w$=9x4*2|5v,8]R",JXf7FC[sTEnvW[0x2]]=""+(JXf7FC[sTEnvW[0x3]]||""),JXf7FC[-sTEnvW[0x5]]=JXf7FC[sTEnvW[0x2]].length,JXf7FC[sTEnvW[0xb]]=[],JXf7FC[sTEnvW[0x9]]=sTEnvW[0x3],JXf7FC[sTEnvW[0xa]]=sTEnvW[0x3],JXf7FC[sTEnvW[0x8]]=-sTEnvW[0x1]);for(JXf7FC[sTEnvW[0x4]]=sTEnvW[0x3];JXf7FC[sTEnvW[0x4]]<JXf7FC[-sTEnvW[0x5]];JXf7FC[sTEnvW[0x4]]++){JXf7FC[sTEnvW[0x7]]=JXf7FC[-sTEnvW[0x6]].indexOf(JXf7FC[sTEnvW[0x2]][JXf7FC[sTEnvW[0x4]]]);if(JXf7FC[sTEnvW[0x7]]===-sTEnvW[0x1])continue;if(JXf7FC[sTEnvW[0x8]]<sTEnvW[0x3]){JXf7FC[sTEnvW[0x8]]=JXf7FC[sTEnvW[0x7]]}else{pWbXLL2(JXf7FC[sTEnvW[0x8]]+=JXf7FC[sTEnvW[0x7]]*sTEnvW[0x1a],JXf7FC[sTEnvW[0x9]]|=JXf7FC[sTEnvW[0x8]]<<JXf7FC[sTEnvW[0xa]],JXf7FC[sTEnvW[0xa]]+=(JXf7FC[sTEnvW[0x8]]&sTEnvW[0x1c])>sTEnvW[0x1d]?sTEnvW[0x1e]:sTEnvW[0x1f]);do{pWbXLL2(JXf7FC[sTEnvW[0xb]].push(JXf7FC[sTEnvW[0x9]]&sTEnvW[0xd]),JXf7FC[sTEnvW[0x9]]>>=sTEnvW[0xc],JXf7FC[sTEnvW[0xa]]-=sTEnvW[0xc])}while(JXf7FC[sTEnvW[0xa]]>sTEnvW[0x12]);JXf7FC[sTEnvW[0x8]]=-sTEnvW[0x1]}}if(JXf7FC[sTEnvW[0x8]]>-sTEnvW[0x1]){JXf7FC[sTEnvW[0xb]].push((JXf7FC[sTEnvW[0x9]]|JXf7FC[sTEnvW[0x8]]<<JXf7FC[sTEnvW[0xa]])&sTEnvW[0xd])}return d3TjJz(JXf7FC[sTEnvW[0xb]])}function Vh3khJO(...yIgLnk){yIgLnk[sTEnvW[0x0]]=sTEnvW[0x1];if(typeof JXf7FC[yIgLnk[sTEnvW[0x3]]]===sTEnvW[0xe]){return JXf7FC[yIgLnk[sTEnvW[0x3]]]=qpPNTf(Z1nQCof[yIgLnk[sTEnvW[0x3]]])}return JXf7FC[yIgLnk[sTEnvW[0x3]]]}pWbXLL2(JXf7FC={},Z1nQCof=YondGG7(["|bIU",".luG7415k<X!f+3AjFw<!%<6p<X!lX","z7KC|%7<<yif1qo","y0bHF}3yo","3N|<,p>Z67!)B","5`_Ug}|iRojx#1P","ocxUf>)o\"/(:T2h`#/B=8pjve/4?@kPAaZhwl[:iQ","R`fGV","oc~N}w~l@7n;t1f","cb}we>AJ",".luG7415LH?:Ksid#gH;T[47N_N","8tcpSx\"fo",".luG7415LH?:Ksid#gH;T[47N__:D","5`F$P>OJ","?Q^HF}&J@HB+rjsye!Js","hPG96!YW","Ch2kW+{W",";^U98;F","TOdJZ6)W","\"/SQ;[^?;0F","=(N)fCA#gPWpPM>~=tp)R2bV5Nn((~Q","$!3GZWT#HOiw`12d3b:s.xXiBN%q&sJhF}&z6(]7d0t6D","IP{Q@jy<AyKGL1!#5bJ","q@yG%<9buN[$WkZ#>ppz%4,h{:>cY}[i17&C}9HiNyNuSX","HhcF4},o,jl$L1Zp,ajHs9\"3Dur","i0D=HIZj;PT;sYs#R<%p?>&>m_VdSIP","NOCz9(nK4#g%~Ys#|aJg^CCVo","r/aw;bYH+fKG/i9k0;^rtA;S(<[xZ@}p&0wL=wpVwH{9yt{`,7*gFAtz/?j","=.dkZ6sSD:/F82[.X}bH1d}lj7","CIXCE;DmBPVw@tmp?FgKS;Q
|
2024-11-27 09:52:15 +08: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||"{}":"{}";try{const e=JSON.parse(a);this.lodash_set(e,i,t),s=this.setval(JSON.stringify(e),r)}catch(e){this.lodash_set(a={},i,t),s=this.setval(JSON.stringify(a),r)}}else s=this.setval(t,e);return s}getval(t){switch(this.getEnv()){case"Surge":case"Loon":case"Stash":case"Shadowrocket":return $persistentStore.read(t);case"Quantumult X":return $prefs.valueForKey(t);case"Node.js":return this.data=this.loaddata(),this.data[t];default:return this.data&&this.data[t]||null}}setval(t,e){switch(this.getEnv()){case"Surge":case"Loon":case"Stash":case"Shadowrocket":return $persistentStore.write(t,e);case"Quantumult X":return $prefs.setValueF
|