MCPcopy Create free account
hub / github.com/Script-Hub-Org/Script-Hub /

Class

env/env.js:25–479  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

23 }
24 }
25 return new (class {
26 constructor(t, e) {
27 ;(this.name = t),
28 (this.http = new s(this)),
29 (this.data = null),
30 (this.dataFile = 'box.dat'),
31 (this.logs = []),
32 (this.isMute = !1),
33 (this.isNeedRewrite = !1),
34 (this.logSeparator = '\n'),
35 (this.encoding = 'utf-8'),
36 // (this.startTime = new Date().getTime()),
37 Object.assign(this, e)
38 // this.log('', `🔔${this.name}, 开始!`)
39 }
40 getEnv() {
41 return 'undefined' != typeof $environment && $environment['surge-version']
42 ? 'Surge'
43 : 'undefined' != typeof $environment && $environment['stash-version']
44 ? 'Stash'
45 : 'undefined' != typeof module && module.exports
46 ? 'Node.js'
47 : 'undefined' != typeof $task
48 ? 'Quantumult X'
49 : 'undefined' != typeof $loon
50 ? 'Loon'
51 : 'undefined' != typeof $rocket
52 ? 'Shadowrocket'
53 : void 0
54 }
55 isNode() {
56 return 'Node.js' === this.getEnv()
57 }
58 isQuanX() {
59 return 'Quantumult X' === this.getEnv()
60 }
61 isSurge() {
62 return 'Surge' === this.getEnv()
63 }
64 isLoon() {
65 return 'Loon' === this.getEnv()
66 }
67 isShadowrocket() {
68 return 'Shadowrocket' === this.getEnv()
69 }
70 isStash() {
71 return 'Stash' === this.getEnv()
72 }
73 toObj(t, e = null) {
74 try {
75 return JSON.parse(t)
76 } catch {
77 return e
78 }
79 }
80 toStr(t, e = null) {
81 try {
82 return JSON.stringify(t)

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected