| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 | 
							- import * as tty from "tty"
 
- const {
 
-   env = {},
 
-   argv = [],
 
-   platform = "",
 
- } = typeof process === "undefined" ? {} : process
 
- const isDisabled = "NO_COLOR" in env || argv.includes("--no-color")
 
- const isForced = "FORCE_COLOR" in env || argv.includes("--color")
 
- const isWindows = platform === "win32"
 
- const isDumbTerminal = env.TERM === "dumb"
 
- const isCompatibleTerminal =
 
-   tty && tty.isatty && tty.isatty(1) && env.TERM && !isDumbTerminal
 
- const isCI =
 
-   "CI" in env &&
 
-   ("GITHUB_ACTIONS" in env || "GITLAB_CI" in env || "CIRCLECI" in env)
 
- export const isColorSupported =
 
-   !isDisabled &&
 
-   (isForced || (isWindows && !isDumbTerminal) || 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),
 
- }
 
- export const createColors = ({ useColor = isColorSupported } = {}) =>
 
-   useColor
 
-     ? colors
 
-     : Object.keys(colors).reduce(
 
-         (colors, key) => ({ ...colors, [key]: String }),
 
-         {}
 
-       )
 
- export 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()
 
 
  |