aboutsummaryrefslogtreecommitdiff
path: root/node_modules/prompts/lib/util/strip.js
blob: 8ebf4cb1e572bd6c93e724bf23748a66bd25e3ca (plain)
1
2
3
4
5
6
7
8
9
10
11
'use strict';

module.exports = str => {
  const pattern = [
    '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)',
    '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))'
  ].join('|');

  const RGX = new RegExp(pattern, 'g');
  return typeof str === 'string' ? str.replace(RGX, '') : str;
};