Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
}
}
if (this.regex) {
const { pattern, flags } = this.regex;
if (transforms.stickyRegExp && /y/.test(flags))
throw new CompileError(
'Regular expression sticky flag is not supported',
this
);
if (transforms.unicodeRegExp && /u/.test(flags)) {
code.overwrite(
this.start,
this.end,
`/${rewritePattern(pattern, flags)}/${flags.replace('u', '')}`,
{
contentOnly: true
}
);
}
}
}
}
RegExpLiteral({ node }) {
if (!regex.is(node, "u")) return;
node.pattern = rewritePattern(node.pattern, node.flags);
regex.pullFlag(node, "u");
},
},
RegExpLiteral(path, state) {
const node = path.node;
if (!regex.is(node, 'u')) {
return;
}
const useUnicodeFlag = state.opts.useUnicodeFlag || false;
node.pattern = rewritePattern(node.pattern, node.flags, {
'unicodePropertyEscape': true,
'useUnicodeFlag': useUnicodeFlag
});
if (!useUnicodeFlag) {
regex.pullFlag(node, 'u');
}
}
}