var recast = require('recast'); var transform = require('./transform-tree.js');
module.exports = function(input, options) {
options || (options = {}); var sourceFileName = options.sourceFileName || ''; var sourceMapName = options.sourceMapName || ''; var createSourceMap = sourceFileName && sourceMapName; var tree = recast.parse(input, { 'sourceFileName': sourceFileName }); tree = transform(tree); if (createSourceMap) { // If a source map was requested, return an object with `code` and `map` // properties. return recast.print(tree, { 'sourceMapName': sourceMapName }); } // If no source map was requested, return the transpiled code directly. return recast.print(tree).code;
};