mirror of
https://github.com/zebrajr/react.git
synced 2025-12-06 12:20:20 +01:00
Add --harmony option to jsx.
This commit is contained in:
parent
1f5c8d21d8
commit
8dbc530d1c
19
bin/jsx
19
bin/jsx
|
|
@ -2,14 +2,23 @@
|
|||
// -*- mode: js -*-
|
||||
"use strict";
|
||||
|
||||
var visitors = require('../vendor/fbtransform/visitors').transformVisitors;
|
||||
var visitors = require('../vendor/fbtransform/visitors');
|
||||
var transform = require('jstransform').transform;
|
||||
|
||||
require("commoner").version(
|
||||
require("../package.json").version
|
||||
require('commoner').version(
|
||||
require('../package.json').version
|
||||
).resolve(function(id) {
|
||||
return this.readModuleP(id);
|
||||
}).process(function(id, source) {
|
||||
}).option(
|
||||
'--harmony',
|
||||
'Turns on JS transformations such as ES6 Classes etc.'
|
||||
).process(function(id, source) {
|
||||
// This is where JSX, ES6, etc. desugaring happens.
|
||||
return transform(visitors.react, source).code;
|
||||
var visitorList;
|
||||
if (this.options.harmony) {
|
||||
visitorList = visitors.getAllVisitors();
|
||||
} else {
|
||||
visitorList = visitors.transformVisitors.react;
|
||||
}
|
||||
return transform(visitorList, source).code;
|
||||
});
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
// -*- mode: js -*-
|
||||
"use strict";
|
||||
|
||||
var getVisitorsList = require('../vendor/fbtransform/visitors').getVisitorsList;
|
||||
var getAllVisitors = require('../vendor/fbtransform/visitors').getAllVisitors;
|
||||
var transform = require('jstransform').transform;
|
||||
var propagate = require("../vendor/constants").propagate;
|
||||
|
||||
|
|
@ -31,7 +31,7 @@ require("commoner").version(
|
|||
var constants = context.config.constants || {};
|
||||
|
||||
// This is where JSX, ES6, etc. desugaring happens.
|
||||
source = transform(getVisitorsList(), source).code;
|
||||
source = transform(getAllVisitors(), source).code;
|
||||
|
||||
// Constant propagation means removing any obviously dead code after
|
||||
// replacing constant expressions with literal (boolean) values.
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@
|
|||
"url": "https://github.com/facebook/react"
|
||||
},
|
||||
"dependencies": {
|
||||
"commoner": "~0.8.12",
|
||||
"commoner": "~0.8.13",
|
||||
"esprima-fb": "~2001.1001.0-dev-harmony-fb",
|
||||
"jstransform": "~2.0.2"
|
||||
},
|
||||
|
|
|
|||
4
vendor/fbtransform/visitors.js
vendored
4
vendor/fbtransform/visitors.js
vendored
|
|
@ -41,7 +41,7 @@ var transformRunOrder = [
|
|||
* @param {array?} excludes
|
||||
* @return {array}
|
||||
*/
|
||||
function getVisitorsList(excludes) {
|
||||
function getAllVisitors(excludes) {
|
||||
var ret = [];
|
||||
for (var i = 0, il = transformRunOrder.length; i < il; i++) {
|
||||
if (!excludes || excludes.indexOf(transformRunOrder[i]) === -1) {
|
||||
|
|
@ -51,5 +51,5 @@ function getVisitorsList(excludes) {
|
|||
return ret;
|
||||
}
|
||||
|
||||
exports.getVisitorsList = getVisitorsList;
|
||||
exports.getAllVisitors = getAllVisitors;
|
||||
exports.transformVisitors = transformVisitors;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user