babel-core
Version:
Turn ES6 code into readable vanilla ES5 with source maps
29 lines (20 loc) • 753 B
JavaScript
;
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.check = check;
exports.Literal = Literal;
var rewritePattern = _interopRequire(require("regexpu/rewrite-pattern"));
var pull = _interopRequire(require("lodash/array/pull"));
var t = _interopRequire(require("../../../types"));
function check(node) {
return t.isLiteral(node) && node.regex && node.regex.flags.indexOf("u") >= 0;
}
function Literal(node) {
var regex = node.regex;
if (!regex) return;
var flags = regex.flags.split("");
if (regex.flags.indexOf("u") < 0) return;
pull(flags, "u");
regex.pattern = rewritePattern(regex.pattern, regex.flags);
regex.flags = flags.join("");
}
exports.__esModule = true;