2 var isRegexp = require('is-regexp');
3 var isSupportedRegexpFlag = require('is-supported-regexp-flag');
11 if (isSupportedRegexpFlag('y')) {
15 if (isSupportedRegexpFlag('u')) {
16 flagMap.unicode = 'u';
19 module.exports = function (re, opts) {
21 throw new TypeError('Expected a RegExp instance');
26 var flags = Object.keys(flagMap).map(function (el) {
27 return (typeof opts[el] === 'boolean' ? opts[el] : re[el]) ? flagMap[el] : '';
30 return new RegExp(opts.source || re.source, flags);