ansi-styles
Advanced tools
Comparing version 6.1.1 to 6.2.0
@@ -183,2 +183,48 @@ export interface CSPair { // eslint-disable-line @typescript-eslint/naming-convention | ||
/** | ||
Basic modifier names. | ||
*/ | ||
export type ModifierName = keyof Modifier; | ||
/** | ||
Basic foreground color names. | ||
[More colors here.](https://github.com/chalk/chalk/blob/main/readme.md#256-and-truecolor-color-support) | ||
*/ | ||
export type ForegroundColorName = keyof ForegroundColor; | ||
/** | ||
Basic background color names. | ||
[More colors here.](https://github.com/chalk/chalk/blob/main/readme.md#256-and-truecolor-color-support) | ||
*/ | ||
export type BackgroundColorName = keyof BackgroundColor; | ||
/** | ||
Basic color names. The combination of foreground and background color names. | ||
[More colors here.](https://github.com/chalk/chalk/blob/main/readme.md#256-and-truecolor-color-support) | ||
*/ | ||
export type ColorName = ForegroundColorName | BackgroundColorName; | ||
/** | ||
Basic modifier names. | ||
*/ | ||
export const modifierNames: readonly ModifierName[]; | ||
/** | ||
Basic foreground color names. | ||
*/ | ||
export const foregroundColorNames: readonly ForegroundColorName[]; | ||
/** | ||
Basic background color names. | ||
*/ | ||
export const backgroundColorNames: readonly BackgroundColorName[]; | ||
/* | ||
Basic color names. The combination of foreground and background color names. | ||
*/ | ||
export const colorNames: readonly ColorName[]; | ||
declare const ansiStyles: { | ||
@@ -185,0 +231,0 @@ readonly modifier: Modifier; |
122
index.js
@@ -9,64 +9,63 @@ const ANSI_BACKGROUND_OFFSET = 10; | ||
function assembleStyles() { | ||
const codes = new Map(); | ||
const styles = { | ||
modifier: { | ||
reset: [0, 0], | ||
// 21 isn't widely supported and 22 does the same thing | ||
bold: [1, 22], | ||
dim: [2, 22], | ||
italic: [3, 23], | ||
underline: [4, 24], | ||
overline: [53, 55], | ||
inverse: [7, 27], | ||
hidden: [8, 28], | ||
strikethrough: [9, 29], | ||
}, | ||
color: { | ||
black: [30, 39], | ||
red: [31, 39], | ||
green: [32, 39], | ||
yellow: [33, 39], | ||
blue: [34, 39], | ||
magenta: [35, 39], | ||
cyan: [36, 39], | ||
white: [37, 39], | ||
const styles = { | ||
modifier: { | ||
reset: [0, 0], | ||
// 21 isn't widely supported and 22 does the same thing | ||
bold: [1, 22], | ||
dim: [2, 22], | ||
italic: [3, 23], | ||
underline: [4, 24], | ||
overline: [53, 55], | ||
inverse: [7, 27], | ||
hidden: [8, 28], | ||
strikethrough: [9, 29], | ||
}, | ||
color: { | ||
black: [30, 39], | ||
red: [31, 39], | ||
green: [32, 39], | ||
yellow: [33, 39], | ||
blue: [34, 39], | ||
magenta: [35, 39], | ||
cyan: [36, 39], | ||
white: [37, 39], | ||
// Bright color | ||
blackBright: [90, 39], | ||
redBright: [91, 39], | ||
greenBright: [92, 39], | ||
yellowBright: [93, 39], | ||
blueBright: [94, 39], | ||
magentaBright: [95, 39], | ||
cyanBright: [96, 39], | ||
whiteBright: [97, 39], | ||
}, | ||
bgColor: { | ||
bgBlack: [40, 49], | ||
bgRed: [41, 49], | ||
bgGreen: [42, 49], | ||
bgYellow: [43, 49], | ||
bgBlue: [44, 49], | ||
bgMagenta: [45, 49], | ||
bgCyan: [46, 49], | ||
bgWhite: [47, 49], | ||
// Bright color | ||
blackBright: [90, 39], | ||
gray: [90, 39], // Alias of `blackBright` | ||
grey: [90, 39], // Alias of `blackBright` | ||
redBright: [91, 39], | ||
greenBright: [92, 39], | ||
yellowBright: [93, 39], | ||
blueBright: [94, 39], | ||
magentaBright: [95, 39], | ||
cyanBright: [96, 39], | ||
whiteBright: [97, 39], | ||
}, | ||
bgColor: { | ||
bgBlack: [40, 49], | ||
bgRed: [41, 49], | ||
bgGreen: [42, 49], | ||
bgYellow: [43, 49], | ||
bgBlue: [44, 49], | ||
bgMagenta: [45, 49], | ||
bgCyan: [46, 49], | ||
bgWhite: [47, 49], | ||
// Bright color | ||
bgBlackBright: [100, 49], | ||
bgRedBright: [101, 49], | ||
bgGreenBright: [102, 49], | ||
bgYellowBright: [103, 49], | ||
bgBlueBright: [104, 49], | ||
bgMagentaBright: [105, 49], | ||
bgCyanBright: [106, 49], | ||
bgWhiteBright: [107, 49], | ||
}, | ||
}; | ||
// Bright color | ||
bgBlackBright: [100, 49], | ||
bgGray: [100, 49], // Alias of `bgBlackBright` | ||
bgGrey: [100, 49], // Alias of `bgBlackBright` | ||
bgRedBright: [101, 49], | ||
bgGreenBright: [102, 49], | ||
bgYellowBright: [103, 49], | ||
bgBlueBright: [104, 49], | ||
bgMagentaBright: [105, 49], | ||
bgCyanBright: [106, 49], | ||
bgWhiteBright: [107, 49], | ||
}, | ||
}; | ||
// Alias bright black as gray (and grey) | ||
styles.color.gray = styles.color.blackBright; | ||
styles.bgColor.bgGray = styles.bgColor.bgBlackBright; | ||
styles.color.grey = styles.color.blackBright; | ||
styles.bgColor.bgGrey = styles.bgColor.bgBlackBright; | ||
function assembleStyles() { | ||
const codes = new Map(); | ||
@@ -221,1 +220,6 @@ for (const [groupName, group] of Object.entries(styles)) { | ||
export default ansiStyles; | ||
export const modifierNames = Object.keys(styles.modifier); | ||
export const foregroundColorNames = Object.keys(styles.color); | ||
export const backgroundColorNames = Object.keys(styles.bgColor); | ||
export const colorNames = [...foregroundColorNames, ...backgroundColorNames]; |
{ | ||
"name": "ansi-styles", | ||
"version": "6.1.1", | ||
"version": "6.2.0", | ||
"description": "ANSI escape codes for styling strings in the terminal", | ||
@@ -5,0 +5,0 @@ "license": "MIT", |
@@ -35,4 +35,22 @@ # ansi-styles | ||
### `open` and `close` | ||
Each style has an `open` and `close` property. | ||
### `modifierNames`, `foregroundColorNames`, `backgroundColorNames`, and `colorNames` | ||
All supported style strings are exposed as an array of strings for convenience. `colorNames` is the combination of `foregroundColorNames` and `backgroundColorNames`. | ||
This can be useful if you need to validate input: | ||
```js | ||
import {modifierNames, foregroundColorNames} from 'ansi-styles'; | ||
console.log(modifierNames.includes('bold')); | ||
//=> true | ||
console.log(foregroundColorNames.includes('pink')); | ||
//=> false | ||
``` | ||
## Styles | ||
@@ -39,0 +57,0 @@ |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
17512
375
174