Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
module.exports = (source, opts) => {
opts = defaultOpts(opts);
const {
parser,
isTS,
isFlow,
isJSX,
} = opts;
const [clearSource, shebang] = cutShebang(source);
const ast = parse(clearSource, {
parser,
isTS,
isFlow,
isJSX,
});
const places = transform(ast, source, opts);
if (!opts.fix)
return {
code: source,
places,
};
const printed = print(ast);
const code = `${shebang}${printed}`;