mirror of
https://github.com/facebook/react.git
synced 2025-11-01 09:12:30 +00:00
Abstracted out common code into innerTransform
As per feedback brought common logic from both `transform` and `transformAsObject` into its own `innerTransform` function.
This commit is contained in:
@@ -6,34 +6,35 @@ var Buffer = require('buffer').Buffer;
|
||||
|
||||
module.exports = {
|
||||
transform: function(input, options) {
|
||||
options = options || {};
|
||||
var visitorList = getVisitors(options.harmony);
|
||||
var result = transform(visitorList, input, options);
|
||||
var output = result.code;
|
||||
if (options.sourceMap) {
|
||||
var output = innerTransform(input, options);
|
||||
var result = output.code;
|
||||
if (options && options.sourceMap) {
|
||||
var map = inlineSourceMap(
|
||||
result.sourceMap,
|
||||
output.sourceMap,
|
||||
input,
|
||||
options.sourceFilename
|
||||
);
|
||||
output += '\n' + map;
|
||||
result += '\n' + map;
|
||||
}
|
||||
return output;
|
||||
return result;
|
||||
},
|
||||
transformAsObject: function(input, options) {
|
||||
options = options || {};
|
||||
var visitorList = getVisitors(options.harmony);
|
||||
var resultRaw = transform(visitorList, input, options);
|
||||
var result = {
|
||||
code: resultRaw.code
|
||||
};
|
||||
if (options.sourceMap) {
|
||||
result.sourceMap = resultRaw.sourceMap;
|
||||
var output = innerTransform(input, options);
|
||||
var result = {};
|
||||
result.code = output.code;
|
||||
if (options && options.sourceMap) {
|
||||
result.sourceMap = output.sourceMap;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
};
|
||||
|
||||
function innerTransform(input, options) {
|
||||
options = options || {};
|
||||
var visitorList = getVisitors(options.harmony);
|
||||
return transform(visitorList, input, options);
|
||||
}
|
||||
|
||||
function getVisitors(harmony) {
|
||||
if (harmony) {
|
||||
return visitors.getAllVisitors();
|
||||
|
||||
Reference in New Issue
Block a user