Update supports-color dependency (#579)
This commit is contained in:
parent
a027e3c1e0
commit
7443e9faa0
3 changed files with 40 additions and 20 deletions
27
source/vendor/supports-color/browser.js
vendored
27
source/vendor/supports-color/browser.js
vendored
|
|
@ -1,15 +1,26 @@
|
||||||
/* eslint-env browser */
|
/* eslint-env browser */
|
||||||
|
|
||||||
const isBlinkBasedBrowser = navigator.userAgentData
|
const level = (() => {
|
||||||
? navigator.userAgentData.brands.some(({brand}) => brand === 'Chromium')
|
if (navigator.userAgentData) {
|
||||||
: /\b(Chrome|Chromium)\//.test(navigator.userAgent);
|
const brand = navigator.userAgentData.brands.find(({brand}) => brand === 'Chromium');
|
||||||
|
if (brand && brand.version > 93) {
|
||||||
|
return 3;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const colorSupport = isBlinkBasedBrowser ? {
|
if (/\b(Chrome|Chromium)\//.test(navigator.userAgent)) {
|
||||||
level: 1,
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
})();
|
||||||
|
|
||||||
|
const colorSupport = level !== 0 && {
|
||||||
|
level,
|
||||||
hasBasic: true,
|
hasBasic: true,
|
||||||
has256: false,
|
has256: level >= 2,
|
||||||
has16m: false,
|
has16m: level >= 3,
|
||||||
} : false;
|
};
|
||||||
|
|
||||||
const supportsColor = {
|
const supportsColor = {
|
||||||
stdout: colorSupport,
|
stdout: colorSupport,
|
||||||
|
|
|
||||||
12
source/vendor/supports-color/index.d.ts
vendored
12
source/vendor/supports-color/index.d.ts
vendored
|
|
@ -1,13 +1,13 @@
|
||||||
import {WriteStream} from 'node:tty';
|
import type {WriteStream} from 'node:tty';
|
||||||
|
|
||||||
export interface Options {
|
export type Options = {
|
||||||
/**
|
/**
|
||||||
Whether `process.argv` should be sniffed for `--color` and `--no-color` flags.
|
Whether `process.argv` should be sniffed for `--color` and `--no-color` flags.
|
||||||
|
|
||||||
@default true
|
@default true
|
||||||
*/
|
*/
|
||||||
readonly sniffFlags?: boolean;
|
readonly sniffFlags?: boolean;
|
||||||
}
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Levels:
|
Levels:
|
||||||
|
|
@ -21,7 +21,7 @@ export type ColorSupportLevel = 0 | 1 | 2 | 3;
|
||||||
/**
|
/**
|
||||||
Detect whether the terminal supports color.
|
Detect whether the terminal supports color.
|
||||||
*/
|
*/
|
||||||
export interface ColorSupport {
|
export type ColorSupport = {
|
||||||
/**
|
/**
|
||||||
The color level.
|
The color level.
|
||||||
*/
|
*/
|
||||||
|
|
@ -41,11 +41,11 @@ export interface ColorSupport {
|
||||||
Whether Truecolor 16 million colors are supported.
|
Whether Truecolor 16 million colors are supported.
|
||||||
*/
|
*/
|
||||||
has16m: boolean;
|
has16m: boolean;
|
||||||
}
|
};
|
||||||
|
|
||||||
export type ColorInfo = ColorSupport | false;
|
export type ColorInfo = ColorSupport | false;
|
||||||
|
|
||||||
export function createSupportsColor(stream: WriteStream, options?: Options): ColorInfo;
|
export function createSupportsColor(stream?: WriteStream, options?: Options): ColorInfo;
|
||||||
|
|
||||||
declare const supportsColor: {
|
declare const supportsColor: {
|
||||||
stdout: ColorInfo;
|
stdout: ColorInfo;
|
||||||
|
|
|
||||||
21
source/vendor/supports-color/index.js
vendored
21
source/vendor/supports-color/index.js
vendored
|
|
@ -3,7 +3,7 @@ import os from 'node:os';
|
||||||
import tty from 'node:tty';
|
import tty from 'node:tty';
|
||||||
|
|
||||||
// From: https://github.com/sindresorhus/has-flag/blob/main/index.js
|
// From: https://github.com/sindresorhus/has-flag/blob/main/index.js
|
||||||
function hasFlag(flag, argv = process.argv) {
|
function hasFlag(flag, argv = globalThis.Deno ? globalThis.Deno.args : process.argv) {
|
||||||
const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
|
const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
|
||||||
const position = argv.indexOf(prefix + flag);
|
const position = argv.indexOf(prefix + flag);
|
||||||
const terminatorPosition = argv.indexOf('--');
|
const terminatorPosition = argv.indexOf('--');
|
||||||
|
|
@ -80,6 +80,12 @@ function _supportsColor(haveStream, {streamIsTTY, sniffFlags = true} = {}) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check for Azure DevOps pipelines.
|
||||||
|
// Has to be above the `!streamIsTTY` check.
|
||||||
|
if ('TF_BUILD' in env && 'AGENT_NAME' in env) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
if (haveStream && !streamIsTTY && forceColor === undefined) {
|
if (haveStream && !streamIsTTY && forceColor === undefined) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
@ -105,7 +111,11 @@ function _supportsColor(haveStream, {streamIsTTY, sniffFlags = true} = {}) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if ('CI' in env) {
|
if ('CI' in env) {
|
||||||
if (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'GITHUB_ACTIONS', 'BUILDKITE', 'DRONE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {
|
if ('GITHUB_ACTIONS' in env) {
|
||||||
|
return 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'BUILDKITE', 'DRONE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -116,12 +126,11 @@ function _supportsColor(haveStream, {streamIsTTY, sniffFlags = true} = {}) {
|
||||||
return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
|
return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check for Azure DevOps pipelines
|
if (env.COLORTERM === 'truecolor') {
|
||||||
if ('TF_BUILD' in env && 'AGENT_NAME' in env) {
|
return 3;
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (env.COLORTERM === 'truecolor') {
|
if (env.TERM === 'xterm-kitty') {
|
||||||
return 3;
|
return 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue