保誠-保戶業務員媒合平台
HelenHuang
2022-06-09 9bdb95c9e34cef640534e5e5a1e2225a80442000
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
// Gather initial information
var isCI = false
var debug = false
var tty = false
var nodeENV = 'development'
var browser = typeof window !== 'undefined'
var platform = ''
var minimal = false
 
// Boolean helper
function toBoolean(val) {
  return (!val || val === 'false') ? false : true
}
 
// Process dependent
if (typeof process !== 'undefined') {
  // Platform
  if (process.platform) {
    platform = String(process.platform)
  }
 
  // TTY
  if (process.stdout) {
    tty = toBoolean(process.stdout.isTTY)
  }
 
  // Is CI
  isCI = Boolean(require('ci-info').isCI)
 
  // Env dependent
  if (process.env) {
    // NODE_ENV
    if (process.env.NODE_ENV) {
      nodeENV = process.env.NODE_ENV
    }
 
    // DEBUG
    debug = toBoolean(process.env.DEBUG)
 
    // MINIMAL
    minimal = toBoolean(process.env.MINIMAL)
  }
}
 
// Construct env object
var env = {
  browser: browser,
 
  test: nodeENV === 'test',
  dev: nodeENV === 'development' || nodeENV === 'dev',
  production: nodeENV === 'production',
  debug: debug,
 
  ci: isCI,
  tty: tty,
 
  minimal: undefined,
  minimalCLI: undefined,
 
  windows: /^win/i.test(platform),
  darwin: /^darwin/i.test(platform),
  linux: /^linux/i.test(platform),
}
 
// Compute minimal
env.minimal = minimal || env.ci || env.test || !env.tty
env.minimalCLI = env.minimal
 
// Export env
module.exports = Object.freeze(env)