UNPKG

1.4 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const tslib_1 = require("tslib");
4const semver = tslib_1.__importStar(require("semver"));
5const version = semver.parse(require('../package.json').version);
6const g = global;
7const globals = g['cli-ux'] || (g['cli-ux'] = {});
8const actionType = (!!process.stdin.isTTY &&
9 !!process.stderr.isTTY &&
10 !process.env.CI &&
11 !['dumb', 'emacs-color'].includes(process.env.TERM) &&
12 'spinner') || 'simple';
13const Action = actionType === 'spinner' ? require('./action/spinner').default : require('./action/simple').default;
14const PrideAction = actionType === 'spinner' ? require('./action/pride-spinner').default : require('./action/simple').default;
15class Config {
16 constructor() {
17 this.outputLevel = 'info';
18 this.action = new Action();
19 this.prideAction = new PrideAction();
20 this.errorsHandled = false;
21 this.showStackTrace = true;
22 }
23 get debug() { return globals.debug || process.env.DEBUG === '*'; }
24 set debug(v) { globals.debug = v; }
25 get context() { return globals.context || {}; }
26 set context(v) { globals.context = v; }
27}
28exports.Config = Config;
29function fetch() {
30 if (globals[version.major])
31 return globals[version.major];
32 return globals[version.major] = new Config();
33}
34exports.config = fetch();
35exports.default = exports.config;