util: add 'none' style to styleText
For cases where the style is not needed but code still calls styleText unconditionally, this adds a `none` style that not not apply any styling to the text. PR-URL: https://github.com/nodejs/node/pull/58437 Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
This commit is contained in:
parent
20d978de9a
commit
54288bdb42
@ -2394,6 +2394,9 @@ added:
|
||||
- v21.7.0
|
||||
- v20.12.0
|
||||
changes:
|
||||
- version: REPLACEME
|
||||
pr-url: https://github.com/nodejs/node/pull/58437
|
||||
description: Added the `'none'` format as a non-op format.
|
||||
- version: v22.13.0
|
||||
pr-url: https://github.com/nodejs/node/pull/56265
|
||||
description: styleText is now stable.
|
||||
@ -2467,6 +2470,8 @@ console.log(
|
||||
);
|
||||
```
|
||||
|
||||
The special format value `none` applies no additional styling to the text.
|
||||
|
||||
The full list of formats can be found in [modifiers][].
|
||||
|
||||
## Class: `util.TextDecoder`
|
||||
|
@ -217,10 +217,11 @@ function pad(n) {
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {string} code
|
||||
* @param {string} [code]
|
||||
* @returns {string}
|
||||
*/
|
||||
function escapeStyleCode(code) {
|
||||
if (code === undefined) return '';
|
||||
return `\u001b[${code}m`;
|
||||
}
|
||||
|
||||
@ -256,6 +257,7 @@ function styleText(format, text, { validateStream = true, stream = process.stdou
|
||||
let left = '';
|
||||
let right = '';
|
||||
for (const key of formatArray) {
|
||||
if (key === 'none') continue;
|
||||
const formatCodes = inspect.colors[key];
|
||||
// If the format is not a valid style, throw an error
|
||||
if (formatCodes == null) {
|
||||
|
@ -75,6 +75,8 @@ assert.strictEqual(
|
||||
styled,
|
||||
);
|
||||
|
||||
assert.strictEqual(util.styleText('none', 'test'), 'test');
|
||||
|
||||
const fd = common.getTTYfd();
|
||||
if (fd !== -1) {
|
||||
const writeStream = new WriteStream(fd);
|
||||
|
Loading…
x
Reference in New Issue
Block a user