feige
2023-04-09 6a859f41f05ed5245a5ed7184d942ae0162e0b69
1
2
3
4
5
6
7
8
9
10
11
12
13
14
'use strict';
 
module.exports = options => {
    options = Object.assign({
        onlyFirst: false
    }, options);
 
    const pattern = [
        '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)',
        '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))'
    ].join('|');
 
    return new RegExp(pattern, options.onlyFirst ? undefined : 'g');
};