babel-core
Advanced tools
Comparing version 4.7.5 to 4.7.6
@@ -16,2 +16,10 @@ # Changelog | ||
## 4.7.6 | ||
* **Bug Fix** | ||
* Fix non-Identifier/Literal computed class methods. | ||
* **Polish** | ||
* Add a fallback if `stack` on an error is unconfigurable. | ||
* Hoist `esModule` module declarations to the top of the file to handle circular dependencies better. | ||
## 4.7.5 | ||
@@ -18,0 +26,0 @@ |
@@ -29,3 +29,3 @@ "use strict"; | ||
exports.traverse = _interopRequire(require("../traversal")); | ||
exports.buildExternalHelpers = _interopRequire(require("../build-external-helpers")); | ||
exports.buildExternalHelpers = _interopRequire(require("../tools/build-external-helpers")); | ||
exports.types = _interopRequire(require("../types")); | ||
@@ -32,0 +32,0 @@ exports.version = require("../../../package").version; |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -21,3 +23,3 @@ | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -24,0 +26,0 @@ function UnaryExpression(node, print) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -37,3 +37,3 @@ exports.AnyTypeAnnotation = AnyTypeAnnotation; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -40,0 +40,0 @@ function AnyTypeAnnotation() { |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -18,3 +20,3 @@ | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -21,0 +23,0 @@ function JSXAttribute(node, print) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -10,3 +10,3 @@ exports._params = _params; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -13,0 +13,0 @@ function _params(node, print) { |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -14,3 +16,3 @@ | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -17,0 +19,0 @@ function ImportSpecifier(node, print) { |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -23,3 +25,3 @@ | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -26,0 +28,0 @@ function WithStatement(node, print) { |
@@ -29,3 +29,3 @@ "use strict"; | ||
var t = _interopRequire(require("../types")); | ||
var t = _interopRequireWildcard(require("../types")); | ||
@@ -32,0 +32,0 @@ var CodeGenerator = (function () { |
@@ -17,3 +17,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -20,0 +20,0 @@ var find = function find(obj, node, parent) { |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -19,3 +21,3 @@ | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -22,0 +24,0 @@ var PRECEDENCE = {}; |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -11,3 +13,3 @@ | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -14,0 +16,0 @@ function crawl(node) { |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -9,3 +11,3 @@ | ||
var t = _interopRequire(require("../types")); | ||
var t = _interopRequireWildcard(require("../types")); | ||
@@ -12,0 +14,0 @@ var SourceMap = (function () { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var t = _interopRequire(require("../types")); | ||
var t = _interopRequireWildcard(require("../types")); | ||
@@ -7,0 +7,0 @@ module.exports = function (ast, comments, tokens) { |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -11,3 +13,3 @@ | ||
var t = _interopRequire(require("./types")); | ||
var t = _interopRequireWildcard(require("./types")); | ||
@@ -14,0 +16,0 @@ // estraverse |
@@ -27,2 +27,4 @@ "use strict"; | ||
var Logger = _interopRequire(require("./logger")); | ||
var parse = _interopRequire(require("../helpers/parse")); | ||
@@ -40,3 +42,3 @@ | ||
var t = _interopRequire(require("../types")); | ||
var t = _interopRequireWildcard(require("../types")); | ||
@@ -51,3 +53,3 @@ var checkTransformerVisitor = { | ||
each(stack, function (pass) { | ||
if (pass.shouldRun) return; | ||
if (pass.shouldRun || pass.ran) return; | ||
pass.checkNode(node, scope); | ||
@@ -72,2 +74,3 @@ }); | ||
this.opts = this.normalizeOptions(opts); | ||
this.log = new Logger(this); | ||
this.ast = {}; | ||
@@ -225,8 +228,2 @@ | ||
File.prototype.debug = function debug(msg) { | ||
var parts = this.opts.filename; | ||
if (msg) parts += ": " + msg; | ||
util.debug(parts); | ||
}; | ||
File.prototype.getModuleFormatter = function getModuleFormatter(type) { | ||
@@ -367,4 +364,2 @@ var ModuleFormatter = isFunction(type) ? type : transform.moduleFormatters[type]; | ||
File.prototype.logDeopt = function logDeopt() {}; | ||
File.prototype.errorWithNode = function errorWithNode(node, msg) { | ||
@@ -413,3 +408,3 @@ var Error = arguments[2] === undefined ? SyntaxError : arguments[2]; | ||
File.prototype.transform = function transform(ast) { | ||
this.debug(); | ||
this.log.debug(); | ||
@@ -548,4 +543,2 @@ this.ast = ast; | ||
module.exports = File; | ||
// todo, (node, msg) | ||
module.exports = File; |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -7,3 +9,3 @@ | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -10,0 +12,0 @@ module.exports = function (exports, opts) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
module.exports = build; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -9,0 +9,0 @@ function build(node, buildBody) { |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -7,3 +9,3 @@ | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -10,0 +12,0 @@ module.exports = function (exports, opts) { |
@@ -20,3 +20,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -23,0 +23,0 @@ module.exports = function (exports, opts) { |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -19,3 +21,3 @@ | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -22,0 +24,0 @@ function push(mutatorMap, key, kind, computed, value) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -7,0 +7,0 @@ var getObjRef = function getObjRef(node, nodes, file, scope) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -7,0 +7,0 @@ module.exports = function (node) { |
@@ -15,3 +15,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -18,0 +18,0 @@ var visitor = { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -8,3 +8,3 @@ exports.isCreateClass = isCreateClass; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -11,0 +11,0 @@ var isCreateClassCallExpression = t.buildMatchMemberExpression("React.createClass"); |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -10,3 +12,3 @@ | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -13,0 +15,0 @@ function is(node, flag) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -7,0 +7,0 @@ var awaitVisitor = { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -15,3 +13,3 @@ | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -18,0 +16,0 @@ function isIllegalBareSuper(node, parent) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -8,3 +8,3 @@ exports.has = has; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -11,0 +11,0 @@ function has(node) { |
@@ -17,3 +17,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -20,0 +20,0 @@ var remapVisitor = { |
@@ -21,3 +21,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -24,0 +24,0 @@ var AMDFormatter = (function (DefaultFormatter) { |
@@ -17,3 +17,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -40,3 +40,3 @@ var CommonJSFormatter = (function (DefaultFormatter) { | ||
if (this.file.isLoose("es6.modules")) templateName += "-loose"; | ||
file.ast.program.body.push(util.template(templateName, true)); | ||
file.ast.program.body.unshift(util.template(templateName, true)); | ||
} | ||
@@ -43,0 +43,0 @@ }; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -9,0 +9,0 @@ var IgnoreFormatter = (function () { |
@@ -23,3 +23,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -26,0 +26,0 @@ var hoistVariablesVisitor = { |
@@ -17,3 +17,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../types")); | ||
var t = _interopRequireWildcard(require("../../types")); | ||
@@ -20,0 +20,0 @@ var UMDFormatter = (function (AMDFormatter) { |
@@ -22,2 +22,3 @@ "use strict"; | ||
this.file = file; | ||
this.ran = false; | ||
} | ||
@@ -68,5 +69,7 @@ | ||
file.debug("Running transformer " + this.transformer.key); | ||
file.log.debug("Running transformer " + this.transformer.key); | ||
file.scope.traverse(file.ast, this.handlers, file); | ||
this.ran = true; | ||
}; | ||
@@ -73,0 +76,0 @@ |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.MemberExpression = MemberExpression; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ function MemberExpression(node) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.Property = Property; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ function Property(node) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -12,3 +10,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -15,0 +13,0 @@ function check(node) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.ArrowFunctionExpression = ArrowFunctionExpression; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ var check = exports.check = t.isArrowFunctionExpression; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.BlockStatement = BlockStatement; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ var visitor = { |
@@ -20,3 +20,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -23,0 +23,0 @@ var values = _interopRequire(require("lodash/object/values")); |
@@ -24,3 +24,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -27,0 +27,0 @@ var check = exports.check = t.isClass; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -13,3 +11,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -16,0 +14,0 @@ function check(node) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -17,3 +15,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -20,0 +18,0 @@ var check = exports.check = t.isPattern; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -13,3 +11,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -16,0 +14,0 @@ var check = exports.check = t.isForOfStatement; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -8,3 +8,3 @@ exports.ImportDeclaration = ImportDeclaration; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -11,0 +11,0 @@ exports.check = require("../internal/modules").check; |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -10,3 +12,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -13,0 +15,0 @@ function check(node) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -11,3 +9,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -14,0 +12,0 @@ function check(node) { |
@@ -11,3 +11,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -14,0 +14,0 @@ var check = exports.check = t.isRestElement; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -8,3 +8,3 @@ exports.check = check; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -11,0 +11,0 @@ function loose(node, body, objId) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -8,3 +8,3 @@ exports.check = check; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -11,0 +11,0 @@ function check(node) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -12,3 +10,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -15,0 +13,0 @@ function check(node) { |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -11,3 +13,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -14,0 +16,0 @@ function getSpreadLiteral(spread, scope) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.UnaryExpression = UnaryExpression; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ var optional = exports.optional = true; |
@@ -19,3 +19,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -185,3 +185,3 @@ exports.Function = function (node, parent, scope, file) { | ||
if (this.hasDeopt()) { | ||
this.file.logDeopt(node, messages.get("tailCallReassignmentDeopt")); | ||
this.file.log.deopt(node, messages.get("tailCallReassignmentDeopt")); | ||
return; | ||
@@ -188,0 +188,0 @@ } |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -9,3 +9,3 @@ exports.check = check; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -12,0 +12,0 @@ var buildBinaryExpression = function buildBinaryExpression(left, right) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -16,3 +14,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -19,0 +17,0 @@ var experimental = exports.experimental = true; |
@@ -15,3 +15,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -18,0 +18,0 @@ var experimental = exports.experimental = true; |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -9,3 +11,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -12,0 +14,0 @@ var experimental = exports.experimental = true; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -9,3 +9,3 @@ exports.manipulateOptions = manipulateOptions; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -12,0 +12,0 @@ var experimental = exports.experimental = true; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -8,3 +8,3 @@ exports.Program = Program; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -11,0 +11,0 @@ var functionChildrenVisitor = { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -11,3 +9,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -14,0 +12,0 @@ var secondPass = exports.secondPass = true; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -14,3 +14,3 @@ exports.check = check; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -17,0 +17,0 @@ function check(node) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.Program = Program; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ function Program(program, parent, scope, file) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -13,3 +11,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -16,0 +14,0 @@ function ForOfStatement(node, parent, scope, file) { |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -9,3 +11,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -12,0 +14,0 @@ function manipulateOptions(opts) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -12,3 +12,3 @@ exports.Flow = Flow; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -15,0 +15,0 @@ function Flow(node) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -11,3 +9,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -14,0 +12,0 @@ function manipulateOptions(opts) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -11,3 +9,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -14,0 +12,0 @@ var JSX_ANNOTATION_REGEX = /^\*\s*@jsx\s+([^\s]+)/; |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -9,3 +11,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -12,0 +14,0 @@ function check(node) { |
@@ -20,3 +20,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -23,0 +23,0 @@ var isSymboliterator = t.buildMatchMemberExpression("Symbol.iterator"); |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -14,3 +12,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -17,0 +15,0 @@ function Program(program) { |
@@ -11,3 +11,3 @@ "use strict"; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -14,0 +14,0 @@ var playground = exports.playground = true; |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -7,3 +9,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -10,0 +12,0 @@ var playground = exports.playground = true; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -10,3 +10,3 @@ var _toConsumableArray = function (arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; return arr2; } else { return Array.from(arr); } }; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -13,0 +13,0 @@ var playground = exports.playground = true; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.MethodDefinition = MethodDefinition; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ var playground = exports.playground = true; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.BlockStatement = BlockStatement; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ function BlockStatement(node, parent, scope, file) { |
@@ -5,2 +5,4 @@ "use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.AssignmentExpression = AssignmentExpression; | ||
@@ -10,3 +12,3 @@ exports.ExpressionStatement = ExpressionStatement; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -13,0 +15,0 @@ var pull = _interopRequire(require("lodash/array/pull")); |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.Identifier = Identifier; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ var optional = exports.optional = true; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.ConditionalExpression = ConditionalExpression; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ function toStatements(node) { |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.MemberExpression = MemberExpression; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ var optional = exports.optional = true; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -8,3 +8,3 @@ exports.Expression = Expression; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -11,0 +11,0 @@ var optional = exports.optional = true; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.CallExpression = CallExpression; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ var isConsole = t.buildMatchMemberExpression("console", true); |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
exports.ExpressionStatement = ExpressionStatement; | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -9,0 +9,0 @@ var optional = exports.optional = true; |
"use strict"; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
@@ -12,3 +10,3 @@ | ||
var t = _interopRequire(require("../../../types")); | ||
var t = _interopRequireWildcard(require("../../../types")); | ||
@@ -15,0 +13,0 @@ // check if the input Literal `source` is an alternate casing of "react" |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -13,3 +15,3 @@ | ||
var t = _interopRequire(require("../types")); | ||
var t = _interopRequireWildcard(require("../types")); | ||
@@ -16,0 +18,0 @@ var TraversalContext = (function () { |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -11,3 +13,3 @@ | ||
var t = _interopRequire(require("../types")); | ||
var t = _interopRequireWildcard(require("../types")); | ||
@@ -14,0 +16,0 @@ function traverse(parent, opts, scope, state) { |
"use strict"; | ||
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; }; | ||
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; }; | ||
@@ -15,3 +17,3 @@ | ||
var t = _interopRequire(require("../types")); | ||
var t = _interopRequireWildcard(require("../types")); | ||
@@ -63,2 +65,6 @@ var TraversalPath = (function () { | ||
TraversalPath.prototype.insertBefore = function insertBefore(node) {}; | ||
TraversalPath.prototype.insertAfter = function insertAfter(node) {}; | ||
TraversalPath.prototype.setData = function setData(key, val) { | ||
@@ -65,0 +71,0 @@ return this.data[key] = val; |
@@ -27,3 +27,3 @@ "use strict"; | ||
var t = _interopRequire(require("../types")); | ||
var t = _interopRequireWildcard(require("../types")); | ||
@@ -30,0 +30,0 @@ var functionVariableVisitor = { |
@@ -5,20 +5,81 @@ "use strict"; | ||
var toFastProperties = _interopRequire(require("to-fast-properties")); | ||
/** | ||
* Returns whether `node` is of given `type`. | ||
* | ||
* For better performance, use this instead of `is[Type]` when `type` is unknown. | ||
* Optionally, pass `skipAliasCheck` to directly compare `node.type` with `type`. | ||
*/ | ||
var isPlainObject = _interopRequire(require("lodash/lang/isPlainObject")); | ||
exports.is = is; | ||
var isNumber = _interopRequire(require("lodash/lang/isNumber")); | ||
/* | ||
* Description | ||
*/ | ||
var isRegExp = _interopRequire(require("lodash/lang/isRegExp")); | ||
exports.shallowEqual = shallowEqual; | ||
var isString = _interopRequire(require("lodash/lang/isString")); | ||
/** | ||
* Description | ||
*/ | ||
var compact = _interopRequire(require("lodash/array/compact")); | ||
exports.appendToMemberExpression = appendToMemberExpression; | ||
var esutils = _interopRequire(require("esutils")); | ||
/** | ||
* Description | ||
*/ | ||
var object = _interopRequire(require("../helpers/object")); | ||
exports.prependToMemberExpression = prependToMemberExpression; | ||
var clone = _interopRequire(require("lodash/lang/clone")); | ||
/** | ||
* Description | ||
*/ | ||
exports.ensureBlock = ensureBlock; | ||
/** | ||
* Description | ||
*/ | ||
exports.clone = clone; | ||
/** | ||
* Description | ||
*/ | ||
exports.cloneDeep = cloneDeep; | ||
/** | ||
* Build a function that when called will return whether or not the | ||
* input `node` `MemberExpression` matches the input `match`. | ||
* | ||
* For example, given the match `React.createClass` it would match the | ||
* parsed nodes of `React.createClass` and `React["createClass"]`. | ||
*/ | ||
exports.buildMatchMemberExpression = buildMatchMemberExpression; | ||
/** | ||
* Description | ||
*/ | ||
exports.removeComments = removeComments; | ||
/** | ||
* Description | ||
*/ | ||
exports.inheritsComments = inheritsComments; | ||
/** | ||
* Description | ||
*/ | ||
exports.inherits = inherits; | ||
var toFastProperties = _interopRequire(require("to-fast-properties")); | ||
var compact = _interopRequire(require("lodash/array/compact")); | ||
var assign = _interopRequire(require("lodash/object/assign")); | ||
var each = _interopRequire(require("lodash/collection/each")); | ||
@@ -28,4 +89,3 @@ | ||
var t = {}; | ||
module.exports = t; | ||
var t = exports; | ||
@@ -51,9 +111,11 @@ /** | ||
t.STATEMENT_OR_BLOCK_KEYS = ["consequent", "body", "alternate"]; | ||
t.NATIVE_TYPE_NAMES = ["Array", "Object", "Number", "Boolean", "Date", "Array", "String"]; | ||
t.FLATTENABLE_KEYS = ["body", "expressions"]; | ||
t.FOR_INIT_KEYS = ["left", "init"]; | ||
var STATEMENT_OR_BLOCK_KEYS = exports.STATEMENT_OR_BLOCK_KEYS = ["consequent", "body", "alternate"]; | ||
var NATIVE_TYPE_NAMES = exports.NATIVE_TYPE_NAMES = ["Array", "Object", "Number", "Boolean", "Date", "Array", "String"]; | ||
var FLATTENABLE_KEYS = exports.FLATTENABLE_KEYS = ["body", "expressions"]; | ||
var FOR_INIT_KEYS = exports.FOR_INIT_KEYS = ["left", "init"]; | ||
var COMMENT_KEYS = exports.COMMENT_KEYS = ["leadingComments", "trailingComments"]; | ||
t.VISITOR_KEYS = require("./visitor-keys"); | ||
t.ALIAS_KEYS = require("./alias-keys"); | ||
var VISITOR_KEYS = exports.VISITOR_KEYS = require("./visitor-keys"); | ||
var BUILDER_KEYS = exports.BUILDER_KEYS = require("./builder-keys"); | ||
var ALIAS_KEYS = exports.ALIAS_KEYS = require("./alias-keys"); | ||
@@ -80,12 +142,4 @@ t.FLIPPED_ALIAS_KEYS = {}; | ||
t.TYPES = Object.keys(t.VISITOR_KEYS).concat(Object.keys(t.FLIPPED_ALIAS_KEYS)); | ||
/** | ||
* Returns whether `node` is of given `type`. | ||
* | ||
* For better performance, use this instead of `is[Type]` when `type` is unknown. | ||
* Optionally, pass `skipAliasCheck` to directly compare `node.type` with `type`. | ||
*/ | ||
t.is = function (type, node, opts, skipAliasCheck) { | ||
var TYPES = exports.TYPES = Object.keys(t.VISITOR_KEYS).concat(Object.keys(t.FLIPPED_ALIAS_KEYS)); | ||
function is(type, node, opts, skipAliasCheck) { | ||
if (!node) return false; | ||
@@ -112,8 +166,4 @@ | ||
return true; | ||
}; | ||
} | ||
// | ||
t.BUILDER_KEYS = require("./builder-keys"); | ||
each(t.VISITOR_KEYS, function (keys, type) { | ||
@@ -146,57 +196,3 @@ if (t.BUILDER_KEYS[type]) return; | ||
}); | ||
/** | ||
* Description | ||
*/ | ||
t.toComputedKey = function (node) { | ||
var key = arguments[1] === undefined ? node.key : arguments[1]; | ||
return (function () { | ||
if (!node.computed) { | ||
if (t.isIdentifier(key)) key = t.literal(key.name); | ||
} | ||
return key; | ||
})(); | ||
}; | ||
/** | ||
* Turn an array of statement `nodes` into a `SequenceExpression`. | ||
* | ||
* Variable declarations are turned into simple assignments and their | ||
* declarations hoisted to the top of the current scope. | ||
* | ||
* Expression statements are just resolved to their standard expression. | ||
*/ | ||
t.toSequenceExpression = function (nodes, scope) { | ||
var exprs = []; | ||
each(nodes, function (node) { | ||
if (t.isExpression(node)) { | ||
exprs.push(node); | ||
}if (t.isExpressionStatement(node)) { | ||
exprs.push(node.expression); | ||
} else if (t.isVariableDeclaration(node)) { | ||
each(node.declarations, function (declar) { | ||
scope.push({ | ||
kind: node.kind, | ||
id: declar.id | ||
}); | ||
exprs.push(t.assignmentExpression("=", declar.id, declar.init)); | ||
}); | ||
} | ||
}); | ||
if (exprs.length === 1) { | ||
return exprs[0]; | ||
} else { | ||
return t.sequenceExpression(exprs); | ||
} | ||
}; | ||
/* | ||
* Description | ||
*/ | ||
t.shallowEqual = function (actual, expected) { | ||
function shallowEqual(actual, expected) { | ||
var keys = Object.keys(expected); | ||
@@ -213,9 +209,5 @@ | ||
return true; | ||
}; | ||
} | ||
/** | ||
* Description | ||
*/ | ||
t.appendToMemberExpression = function (member, append, computed) { | ||
function appendToMemberExpression(member, append, computed) { | ||
member.object = t.memberExpression(member.object, member.property, member.computed); | ||
@@ -225,178 +217,16 @@ member.property = append; | ||
return member; | ||
}; | ||
} | ||
/** | ||
* Description | ||
*/ | ||
t.prependToMemberExpression = function (member, append) { | ||
function prependToMemberExpression(member, append) { | ||
member.object = t.memberExpression(append, member.object); | ||
return member; | ||
}; | ||
} | ||
/** | ||
* Check if the input `node` is a reference to a bound variable. | ||
*/ | ||
t.isReferenced = function (node, parent) { | ||
// yes: PARENT[NODE] | ||
// yes: NODE.child | ||
// no: parent.CHILD | ||
if (t.isMemberExpression(parent)) { | ||
if (parent.property === node && parent.computed) { | ||
return true; | ||
} else if (parent.object === node) { | ||
return true; | ||
} else { | ||
return false; | ||
} | ||
} | ||
// yes: { [NODE]: "" } | ||
// no: { NODE: "" } | ||
if (t.isProperty(parent) && parent.key === node) { | ||
return parent.computed; | ||
} | ||
// no: var NODE = init; | ||
// yes: var id = NODE; | ||
if (t.isVariableDeclarator(parent)) { | ||
return parent.id !== node; | ||
} | ||
// no: function NODE() {} | ||
// no: function foo(NODE) {} | ||
if (t.isFunction(parent)) { | ||
for (var i = 0; i < parent.params.length; i++) { | ||
var param = parent.params[i]; | ||
if (param === node) return false; | ||
} | ||
return parent.id !== node; | ||
} | ||
// no: export { foo as NODE }; | ||
if (t.isExportSpecifier(parent, { name: node })) { | ||
return false; | ||
} | ||
// no: import { NODE as foo } from "foo"; | ||
if (t.isImportSpecifier(parent, { id: node })) { | ||
return false; | ||
} | ||
// no: class NODE {} | ||
if (t.isClass(parent)) { | ||
return parent.id !== node; | ||
} | ||
// yes: class { [NODE](){} } | ||
if (t.isMethodDefinition(parent)) { | ||
return parent.key === node && parent.computed; | ||
} | ||
// no: NODE: for (;;) {} | ||
if (t.isLabeledStatement(parent)) { | ||
return false; | ||
} | ||
// no: try {} catch (NODE) {} | ||
if (t.isCatchClause(parent)) { | ||
return parent.param !== node; | ||
} | ||
// no: function foo(...NODE) {} | ||
if (t.isRestElement(parent)) { | ||
return false; | ||
} | ||
// no: [NODE = foo] = []; | ||
// yes: [foo = NODE] = []; | ||
if (t.isAssignmentPattern(parent)) { | ||
return parent.right === node; | ||
} | ||
// no: [NODE] = []; | ||
// no: ({ NODE }) = []; | ||
if (t.isPattern(parent)) { | ||
return false; | ||
} | ||
// no: import NODE from "bar"; | ||
if (t.isImportSpecifier(parent)) { | ||
return false; | ||
} | ||
// no: import * as NODE from "foo"; | ||
if (t.isImportBatchSpecifier(parent)) { | ||
return false; | ||
} | ||
// no: class Foo { private NODE; } | ||
if (t.isPrivateDeclaration(parent)) { | ||
return false; | ||
} | ||
return true; | ||
}; | ||
/** | ||
* Check if the input `node` is an `Identifier` and `isReferenced`. | ||
*/ | ||
t.isReferencedIdentifier = function (node, parent, opts) { | ||
return t.isIdentifier(node, opts) && t.isReferenced(node, parent); | ||
}; | ||
/** | ||
* Check if the input `name` is a valid identifier name | ||
* and isn't a reserved word. | ||
*/ | ||
t.isValidIdentifier = function (name) { | ||
return isString(name) && esutils.keyword.isIdentifierName(name) && !esutils.keyword.isReservedWordES6(name, true); | ||
}; | ||
/* | ||
* Description | ||
*/ | ||
t.toIdentifier = function (name) { | ||
if (t.isIdentifier(name)) return name.name; | ||
name = name + ""; | ||
// replace all non-valid identifiers with dashes | ||
name = name.replace(/[^a-zA-Z0-9$_]/g, "-"); | ||
// remove all dashes and numbers from start of name | ||
name = name.replace(/^[-0-9]+/, ""); | ||
// camel case | ||
name = name.replace(/[-\s]+(.)?/g, function (match, c) { | ||
return c ? c.toUpperCase() : ""; | ||
}); | ||
if (!t.isValidIdentifier(name)) { | ||
name = "_" + name; | ||
} | ||
return name || "_"; | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.ensureBlock = function (node) { | ||
function ensureBlock(node) { | ||
var key = arguments[1] === undefined ? "body" : arguments[1]; | ||
return node[key] = t.toBlock(node[key], node); | ||
}; | ||
} | ||
/** | ||
* Description | ||
*/ | ||
t.clone = function (node) { | ||
function clone(node) { | ||
var newNode = {}; | ||
@@ -408,9 +238,5 @@ for (var key in node) { | ||
return newNode; | ||
}; | ||
} | ||
/** | ||
* Description | ||
*/ | ||
t.cloneDeep = function (node) { | ||
function cloneDeep(node) { | ||
var newNode = {}; | ||
@@ -435,13 +261,5 @@ | ||
return newNode; | ||
}; | ||
} | ||
/** | ||
* Build a function that when called will return whether or not the | ||
* input `node` `MemberExpression` matches the input `match`. | ||
* | ||
* For example, given the match `React.createClass` it would match the | ||
* parsed nodes of `React.createClass` and `React["createClass"]`. | ||
*/ | ||
t.buildMatchMemberExpression = function (match, allowPartial) { | ||
function buildMatchMemberExpression(match, allowPartial) { | ||
var parts = match.split("."); | ||
@@ -491,208 +309,19 @@ | ||
}; | ||
}; | ||
} | ||
/** | ||
* Description | ||
* | ||
* @returns {Object|Boolean} | ||
*/ | ||
t.toStatement = function (node, ignore) { | ||
if (t.isStatement(node)) { | ||
return node; | ||
} | ||
var mustHaveId = false; | ||
var newType; | ||
if (t.isClass(node)) { | ||
mustHaveId = true; | ||
newType = "ClassDeclaration"; | ||
} else if (t.isFunction(node)) { | ||
mustHaveId = true; | ||
newType = "FunctionDeclaration"; | ||
} else if (t.isAssignmentExpression(node)) { | ||
return t.expressionStatement(node); | ||
} | ||
if (mustHaveId && !node.id) { | ||
newType = false; | ||
} | ||
if (!newType) { | ||
if (ignore) { | ||
return false; | ||
} else { | ||
throw new Error("cannot turn " + node.type + " to a statement"); | ||
} | ||
} | ||
node.type = newType; | ||
return node; | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.toExpression = function (node) { | ||
if (t.isExpressionStatement(node)) { | ||
node = node.expression; | ||
} | ||
if (t.isClass(node)) { | ||
node.type = "ClassExpression"; | ||
} else if (t.isFunction(node)) { | ||
node.type = "FunctionExpression"; | ||
} | ||
if (t.isExpression(node)) { | ||
return node; | ||
} else { | ||
throw new Error("cannot turn " + node.type + " to an expression"); | ||
} | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.toBlock = function (node, parent) { | ||
if (t.isBlockStatement(node)) { | ||
return node; | ||
} | ||
if (t.isEmptyStatement(node)) { | ||
node = []; | ||
} | ||
if (!Array.isArray(node)) { | ||
if (!t.isStatement(node)) { | ||
if (t.isFunction(parent)) { | ||
node = t.returnStatement(node); | ||
} else { | ||
node = t.expressionStatement(node); | ||
} | ||
} | ||
node = [node]; | ||
} | ||
return t.blockStatement(node); | ||
}; | ||
/** | ||
* Return a list of binding identifiers associated with | ||
* the input `node`. | ||
*/ | ||
t.getBindingIdentifiers = function (node) { | ||
var search = [].concat(node); | ||
var ids = object(); | ||
while (search.length) { | ||
var id = search.shift(); | ||
if (!id) continue; | ||
var keys = t.getBindingIdentifiers.keys[id.type]; | ||
if (t.isIdentifier(id)) { | ||
ids[id.name] = id; | ||
} else if (t.isImportSpecifier(id)) { | ||
search.push(id.name || id.id); | ||
} else if (t.isExportDeclaration(id)) { | ||
if (t.isDeclaration(node.declaration)) { | ||
search.push(node.declaration); | ||
} | ||
} else if (keys) { | ||
for (var i = 0; i < keys.length; i++) { | ||
var key = keys[i]; | ||
search = search.concat(id[key] || []); | ||
} | ||
} | ||
} | ||
return ids; | ||
}; | ||
t.getBindingIdentifiers.keys = { | ||
UnaryExpression: ["argument"], | ||
AssignmentExpression: ["left"], | ||
ImportBatchSpecifier: ["name"], | ||
VariableDeclarator: ["id"], | ||
FunctionDeclaration: ["id"], | ||
FunctionExpression: ["id"], | ||
ClassDeclaration: ["id"], | ||
ClassExpression: ["id"], | ||
SpreadElement: ["argument"], | ||
RestElement: ["argument"], | ||
UpdateExpression: ["argument"], | ||
SpreadProperty: ["argument"], | ||
Property: ["value"], | ||
ComprehensionBlock: ["left"], | ||
AssignmentPattern: ["left"], | ||
PrivateDeclaration: ["declarations"], | ||
ComprehensionExpression: ["blocks"], | ||
ImportDeclaration: ["specifiers"], | ||
VariableDeclaration: ["declarations"], | ||
ArrayPattern: ["elements"], | ||
ObjectPattern: ["properties"] | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.isLet = function (node) { | ||
return t.isVariableDeclaration(node) && (node.kind !== "var" || node._let); | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.isBlockScoped = function (node) { | ||
return t.isFunctionDeclaration(node) || t.isClassDeclaration(node) || t.isLet(node); | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.isVar = function (node) { | ||
return t.isVariableDeclaration(node, { kind: "var" }) && !node._let; | ||
}; | ||
// | ||
t.COMMENT_KEYS = ["leadingComments", "trailingComments"]; | ||
/** | ||
* Description | ||
*/ | ||
t.removeComments = function (child) { | ||
each(t.COMMENT_KEYS, function (key) { | ||
function removeComments(child) { | ||
each(COMMENT_KEYS, function (key) { | ||
delete child[key]; | ||
}); | ||
return child; | ||
}; | ||
} | ||
/** | ||
* Description | ||
*/ | ||
t.inheritsComments = function (child, parent) { | ||
each(t.COMMENT_KEYS, function (key) { | ||
function inheritsComments(child, parent) { | ||
each(COMMENT_KEYS, function (key) { | ||
child[key] = uniq(compact([].concat(child[key], parent[key]))); | ||
}); | ||
return child; | ||
}; | ||
} | ||
/** | ||
* Description | ||
*/ | ||
t.inherits = function (child, parent) { | ||
function inherits(child, parent) { | ||
child._declarations = parent._declarations; | ||
@@ -710,303 +339,12 @@ child._scopeInfo = parent._scopeInfo; | ||
return child; | ||
}; | ||
} | ||
/** | ||
* Description | ||
*/ | ||
t.getLastStatements = function (node) { | ||
var nodes = []; | ||
var add = function add(node) { | ||
nodes = nodes.concat(t.getLastStatements(node)); | ||
}; | ||
if (t.isIfStatement(node)) { | ||
add(node.consequent); | ||
add(node.alternate); | ||
} else if (t.isFor(node) || t.isWhile(node)) { | ||
add(node.body); | ||
} else if (t.isProgram(node) || t.isBlockStatement(node)) { | ||
add(node.body[node.body.length - 1]); | ||
} else if (node) { | ||
nodes.push(node); | ||
} | ||
return nodes; | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.toKeyAlias = function (node) { | ||
var key = arguments[1] === undefined ? node.key : arguments[1]; | ||
return (function () { | ||
var alias; | ||
if (t.isIdentifier(key)) { | ||
alias = key.name; | ||
} else if (t.isLiteral(key)) { | ||
alias = JSON.stringify(key.value); | ||
} else { | ||
alias = JSON.stringify(traverse.removeProperties(t.cloneDeep(key))); | ||
} | ||
if (node.computed) alias = "[" + alias + "]"; | ||
return alias; | ||
})(); | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.getSpecifierName = function (specifier) { | ||
return specifier.name || specifier.id; | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.getSpecifierId = function (specifier) { | ||
if (specifier["default"]) { | ||
return t.identifier("default"); | ||
} else { | ||
return specifier.id; | ||
} | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.isSpecifierDefault = function (specifier) { | ||
return specifier["default"] || t.isIdentifier(specifier.id) && specifier.id.name === "default"; | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.isScope = function (node, parent) { | ||
if (t.isBlockStatement(node)) { | ||
if (t.isLoop(parent.block, { body: node })) { | ||
return false; | ||
} | ||
if (t.isFunction(parent.block, { body: node })) { | ||
return false; | ||
} | ||
} | ||
return t.isScopable(node); | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.isImmutable = function (node) { | ||
if (t.isLiteral(node)) { | ||
if (node.regex) { | ||
// regexes are mutable | ||
return false; | ||
} else { | ||
// immutable! | ||
return true; | ||
} | ||
} else if (t.isIdentifier(node)) { | ||
if (node.name === "undefined") { | ||
// immutable! | ||
return true; | ||
} else { | ||
// no idea... | ||
return false; | ||
} | ||
} | ||
return false; | ||
}; | ||
/** | ||
* Walk the input `node` and statically evaluate if it's truthy. | ||
* | ||
* Returning `true` when we're sure that the expression will evaluate to a | ||
* truthy value, `false` if we're sure that it will evaluate to a falsy | ||
* value and `undefined` if we aren't sure. Because of this please do not | ||
* rely on coercion when using this method and check with === if it's false. | ||
* | ||
* For example do: | ||
* | ||
* if (t.evaluateTruthy(node) === false) falsyLogic(); | ||
* | ||
* **AND NOT** | ||
* | ||
* if (!t.evaluateTruthy(node)) falsyLogic(); | ||
* | ||
*/ | ||
t.evaluateTruthy = function (node, scope) { | ||
var res = t.evaluate(node, scope); | ||
if (res.confident) return !!res.value; | ||
}; | ||
/** | ||
* Walk the input `node` and statically evaluate it. | ||
* | ||
* Returns an pbject in the form `{ confident, value }`. `confident` indicates | ||
* whether or not we had to drop out of evaluating the expression because of | ||
* hitting an unknown node that we couldn't confidently find the value of. | ||
* | ||
* Example: | ||
* | ||
* t.evaluate(parse("5 + 5")) // { confident: true, value: 10 } | ||
* t.evaluate(parse("!true")) // { confident: true, value: false } | ||
* t.evaluate(parse("foo + foo")) // { confident: false, value: undefined } | ||
* | ||
*/ | ||
t.evaluate = function (node, scope) { | ||
var confident = true; | ||
var value = evaluate(node); | ||
if (!confident) value = undefined; | ||
return { | ||
confident: confident, | ||
value: value | ||
}; | ||
function evaluate(node) { | ||
if (!confident) return; | ||
if (t.isSequenceExpression(node)) { | ||
return evaluate(node.expressions[node.expressions.length - 1]); | ||
} | ||
if (t.isLiteral(node)) { | ||
if (node.regex && node.value === null) {} else { | ||
return node.value; | ||
} | ||
} | ||
if (t.isConditionalExpression(node)) { | ||
if (evaluate(node.test)) { | ||
return evaluate(node.consequent); | ||
} else { | ||
return evaluate(node.alternate); | ||
} | ||
} | ||
if (t.isIdentifier(node)) { | ||
if (node.name === "undefined") { | ||
return undefined; | ||
} else { | ||
return evaluate(scope.getImmutableBindingValue(node.name)); | ||
} | ||
} | ||
if (t.isUnaryExpression(node, { prefix: true })) { | ||
var arg = evaluate(node.argument); | ||
switch (node.operator) { | ||
case "void": | ||
return undefined; | ||
case "!": | ||
return !arg; | ||
case "+": | ||
return +arg; | ||
case "-": | ||
return -arg; | ||
} | ||
} | ||
if (t.isArrayExpression(node) || t.isObjectExpression(node)) {} | ||
if (t.isLogicalExpression(node)) { | ||
var left = evaluate(node.left); | ||
var right = evaluate(node.right); | ||
switch (node.operator) { | ||
case "||": | ||
return left || right; | ||
case "&&": | ||
return left && right; | ||
} | ||
} | ||
if (t.isBinaryExpression(node)) { | ||
var left = evaluate(node.left); | ||
var right = evaluate(node.right); | ||
switch (node.operator) { | ||
case "-": | ||
return left - right; | ||
case "+": | ||
return left + right; | ||
case "/": | ||
return left / right; | ||
case "*": | ||
return left * right; | ||
case "%": | ||
return left % right; | ||
case "<": | ||
return left < right; | ||
case ">": | ||
return left > right; | ||
case "<=": | ||
return left <= right; | ||
case ">=": | ||
return left >= right; | ||
case "==": | ||
return left == right; | ||
case "!=": | ||
return left != right; | ||
case "===": | ||
return left === right; | ||
case "!==": | ||
return left !== right; | ||
} | ||
} | ||
confident = false; | ||
} | ||
}; | ||
/** | ||
* Description | ||
*/ | ||
t.valueToNode = function (value) { | ||
if (value === undefined) { | ||
return t.identifier("undefined"); | ||
} | ||
if (value === true || value === false || value === null || isString(value) || isNumber(value) || isRegExp(value)) { | ||
return t.literal(value); | ||
} | ||
if (Array.isArray(value)) { | ||
return t.arrayExpression(value.map(t.valueToNode)); | ||
} | ||
if (isPlainObject(value)) { | ||
var props = []; | ||
for (var key in value) { | ||
var nodeKey; | ||
if (t.isValidIdentifier(key)) { | ||
nodeKey = t.identifier(key); | ||
} else { | ||
nodeKey = t.literal(key); | ||
} | ||
props.push(t.property("init", nodeKey, t.valueToNode(value[key]))); | ||
} | ||
return t.objectExpression(props); | ||
} | ||
throw new Error("don't know how to turn this value into a node"); | ||
}; | ||
toFastProperties(t); | ||
toFastProperties(t.VISITOR_KEYS); | ||
// we have a regex and we can't represent it natively | ||
// we could evaluate these but it's probably impractical and not very useful | ||
exports.__esModule = true; | ||
assign(t, require("./evaluators")); | ||
assign(t, require("./retrievers")); | ||
assign(t, require("./validators")); | ||
assign(t, require("./converters")); | ||
exports.__esModule = true; |
@@ -49,3 +49,3 @@ "use strict"; | ||
var t = _interopRequire(require("./types")); | ||
var t = _interopRequireWildcard(require("./types")); | ||
@@ -52,0 +52,0 @@ var _util = require("util"); |
{ | ||
"name": "babel-core", | ||
"description": "Turn ES6 code into readable vanilla ES5 with source maps", | ||
"version": "4.7.5", | ||
"version": "4.7.6", | ||
"author": "Sebastian McKenzie <sebmck@gmail.com>", | ||
@@ -6,0 +6,0 @@ "homepage": "https://babeljs.io/", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
1925634
187
15767