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.
96 lines
2.5 KiB
96 lines
2.5 KiB
'use strict'; |
|
|
|
Object.defineProperty(exports, '__esModule', { |
|
value: true |
|
}); |
|
exports.test = exports.serialize = exports.default = void 0; |
|
|
|
var _ansiRegex = _interopRequireDefault(require('ansi-regex')); |
|
|
|
var _ansiStyles = _interopRequireDefault(require('ansi-styles')); |
|
|
|
function _interopRequireDefault(obj) { |
|
return obj && obj.__esModule ? obj : {default: obj}; |
|
} |
|
|
|
/** |
|
* Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved. |
|
* |
|
* This source code is licensed under the MIT license found in the |
|
* LICENSE file in the root directory of this source tree. |
|
*/ |
|
const toHumanReadableAnsi = text => |
|
text.replace((0, _ansiRegex.default)(), match => { |
|
switch (match) { |
|
case _ansiStyles.default.red.close: |
|
case _ansiStyles.default.green.close: |
|
case _ansiStyles.default.cyan.close: |
|
case _ansiStyles.default.gray.close: |
|
case _ansiStyles.default.white.close: |
|
case _ansiStyles.default.yellow.close: |
|
case _ansiStyles.default.bgRed.close: |
|
case _ansiStyles.default.bgGreen.close: |
|
case _ansiStyles.default.bgYellow.close: |
|
case _ansiStyles.default.inverse.close: |
|
case _ansiStyles.default.dim.close: |
|
case _ansiStyles.default.bold.close: |
|
case _ansiStyles.default.reset.open: |
|
case _ansiStyles.default.reset.close: |
|
return '</>'; |
|
|
|
case _ansiStyles.default.red.open: |
|
return '<red>'; |
|
|
|
case _ansiStyles.default.green.open: |
|
return '<green>'; |
|
|
|
case _ansiStyles.default.cyan.open: |
|
return '<cyan>'; |
|
|
|
case _ansiStyles.default.gray.open: |
|
return '<gray>'; |
|
|
|
case _ansiStyles.default.white.open: |
|
return '<white>'; |
|
|
|
case _ansiStyles.default.yellow.open: |
|
return '<yellow>'; |
|
|
|
case _ansiStyles.default.bgRed.open: |
|
return '<bgRed>'; |
|
|
|
case _ansiStyles.default.bgGreen.open: |
|
return '<bgGreen>'; |
|
|
|
case _ansiStyles.default.bgYellow.open: |
|
return '<bgYellow>'; |
|
|
|
case _ansiStyles.default.inverse.open: |
|
return '<inverse>'; |
|
|
|
case _ansiStyles.default.dim.open: |
|
return '<dim>'; |
|
|
|
case _ansiStyles.default.bold.open: |
|
return '<bold>'; |
|
|
|
default: |
|
return ''; |
|
} |
|
}); |
|
|
|
const test = val => |
|
typeof val === 'string' && !!val.match((0, _ansiRegex.default)()); |
|
|
|
exports.test = test; |
|
|
|
const serialize = (val, config, indentation, depth, refs, printer) => |
|
printer(toHumanReadableAnsi(val), config, indentation, depth, refs); |
|
|
|
exports.serialize = serialize; |
|
const plugin = { |
|
serialize, |
|
test |
|
}; |
|
var _default = plugin; |
|
exports.default = _default;
|
|
|