You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
215 lines
5.1 KiB
215 lines
5.1 KiB
'use strict'; |
|
|
|
Object.defineProperty(exports, '__esModule', { value: true }); |
|
|
|
var tty = require('tty'); |
|
|
|
function _interopNamespace(e) { |
|
if (e && e.__esModule) return e; |
|
var n = Object.create(null); |
|
if (e) { |
|
Object.keys(e).forEach(function (k) { |
|
if (k !== 'default') { |
|
var d = Object.getOwnPropertyDescriptor(e, k); |
|
Object.defineProperty(n, k, d.get ? d : { |
|
enumerable: true, |
|
get: function () { return e[k]; } |
|
}); |
|
} |
|
}); |
|
} |
|
n["default"] = e; |
|
return Object.freeze(n); |
|
} |
|
|
|
var tty__namespace = /*#__PURE__*/_interopNamespace(tty); |
|
|
|
const env = process.env || {}; |
|
const argv = process.argv || []; |
|
|
|
const isDisabled = "NO_COLOR" in env || argv.includes("--no-color"); |
|
const isForced = "FORCE_COLOR" in env || argv.includes("--color"); |
|
const isWindows = process.platform === "win32"; |
|
|
|
const isCompatibleTerminal = |
|
tty__namespace && tty__namespace.isatty && tty__namespace.isatty(1) && env.TERM && env.TERM !== "dumb"; |
|
|
|
const isCI = |
|
"CI" in env && |
|
("GITHUB_ACTIONS" in env || "GITLAB_CI" in env || "CIRCLECI" in env); |
|
|
|
const isColorSupported = |
|
!isDisabled && (isForced || isWindows || isCompatibleTerminal || isCI); |
|
|
|
const replaceClose = ( |
|
index, |
|
string, |
|
close, |
|
replace, |
|
head = string.substring(0, index) + replace, |
|
tail = string.substring(index + close.length), |
|
next = tail.indexOf(close) |
|
) => head + (next < 0 ? tail : replaceClose(next, tail, close, replace)); |
|
|
|
const clearBleed = (index, string, open, close, replace) => |
|
index < 0 |
|
? open + string + close |
|
: open + replaceClose(index, string, close, replace) + close; |
|
|
|
const filterEmpty = |
|
(open, close, replace = open, at = open.length + 1) => |
|
(string) => |
|
string || !(string === "" || string === undefined) |
|
? clearBleed( |
|
("" + string).indexOf(close, at), |
|
string, |
|
open, |
|
close, |
|
replace |
|
) |
|
: ""; |
|
|
|
const init = (open, close, replace) => |
|
filterEmpty(`\x1b[${open}m`, `\x1b[${close}m`, replace); |
|
|
|
const colors = { |
|
reset: init(0, 0), |
|
bold: init(1, 22, "\x1b[22m\x1b[1m"), |
|
dim: init(2, 22, "\x1b[22m\x1b[2m"), |
|
italic: init(3, 23), |
|
underline: init(4, 24), |
|
inverse: init(7, 27), |
|
hidden: init(8, 28), |
|
strikethrough: init(9, 29), |
|
black: init(30, 39), |
|
red: init(31, 39), |
|
green: init(32, 39), |
|
yellow: init(33, 39), |
|
blue: init(34, 39), |
|
magenta: init(35, 39), |
|
cyan: init(36, 39), |
|
white: init(37, 39), |
|
gray: init(90, 39), |
|
bgBlack: init(40, 49), |
|
bgRed: init(41, 49), |
|
bgGreen: init(42, 49), |
|
bgYellow: init(43, 49), |
|
bgBlue: init(44, 49), |
|
bgMagenta: init(45, 49), |
|
bgCyan: init(46, 49), |
|
bgWhite: init(47, 49), |
|
blackBright: init(90, 39), |
|
redBright: init(91, 39), |
|
greenBright: init(92, 39), |
|
yellowBright: init(93, 39), |
|
blueBright: init(94, 39), |
|
magentaBright: init(95, 39), |
|
cyanBright: init(96, 39), |
|
whiteBright: init(97, 39), |
|
bgBlackBright: init(100, 49), |
|
bgRedBright: init(101, 49), |
|
bgGreenBright: init(102, 49), |
|
bgYellowBright: init(103, 49), |
|
bgBlueBright: init(104, 49), |
|
bgMagentaBright: init(105, 49), |
|
bgCyanBright: init(106, 49), |
|
bgWhiteBright: init(107, 49), |
|
}; |
|
|
|
const none = (any) => any; |
|
|
|
const createColors = ({ useColor = isColorSupported } = {}) => |
|
useColor |
|
? colors |
|
: Object.keys(colors).reduce( |
|
(colors, key) => ({ ...colors, [key]: none }), |
|
{} |
|
); |
|
|
|
const { |
|
reset, |
|
bold, |
|
dim, |
|
italic, |
|
underline, |
|
inverse, |
|
hidden, |
|
strikethrough, |
|
black, |
|
red, |
|
green, |
|
yellow, |
|
blue, |
|
magenta, |
|
cyan, |
|
white, |
|
gray, |
|
bgBlack, |
|
bgRed, |
|
bgGreen, |
|
bgYellow, |
|
bgBlue, |
|
bgMagenta, |
|
bgCyan, |
|
bgWhite, |
|
blackBright, |
|
redBright, |
|
greenBright, |
|
yellowBright, |
|
blueBright, |
|
magentaBright, |
|
cyanBright, |
|
whiteBright, |
|
bgBlackBright, |
|
bgRedBright, |
|
bgGreenBright, |
|
bgYellowBright, |
|
bgBlueBright, |
|
bgMagentaBright, |
|
bgCyanBright, |
|
bgWhiteBright, |
|
} = createColors(); |
|
|
|
exports.bgBlack = bgBlack; |
|
exports.bgBlackBright = bgBlackBright; |
|
exports.bgBlue = bgBlue; |
|
exports.bgBlueBright = bgBlueBright; |
|
exports.bgCyan = bgCyan; |
|
exports.bgCyanBright = bgCyanBright; |
|
exports.bgGreen = bgGreen; |
|
exports.bgGreenBright = bgGreenBright; |
|
exports.bgMagenta = bgMagenta; |
|
exports.bgMagentaBright = bgMagentaBright; |
|
exports.bgRed = bgRed; |
|
exports.bgRedBright = bgRedBright; |
|
exports.bgWhite = bgWhite; |
|
exports.bgWhiteBright = bgWhiteBright; |
|
exports.bgYellow = bgYellow; |
|
exports.bgYellowBright = bgYellowBright; |
|
exports.black = black; |
|
exports.blackBright = blackBright; |
|
exports.blue = blue; |
|
exports.blueBright = blueBright; |
|
exports.bold = bold; |
|
exports.createColors = createColors; |
|
exports.cyan = cyan; |
|
exports.cyanBright = cyanBright; |
|
exports.dim = dim; |
|
exports.gray = gray; |
|
exports.green = green; |
|
exports.greenBright = greenBright; |
|
exports.hidden = hidden; |
|
exports.inverse = inverse; |
|
exports.isColorSupported = isColorSupported; |
|
exports.italic = italic; |
|
exports.magenta = magenta; |
|
exports.magentaBright = magentaBright; |
|
exports.red = red; |
|
exports.redBright = redBright; |
|
exports.reset = reset; |
|
exports.strikethrough = strikethrough; |
|
exports.underline = underline; |
|
exports.white = white; |
|
exports.whiteBright = whiteBright; |
|
exports.yellow = yellow; |
|
exports.yellowBright = yellowBright;
|
|
|