diff --git a/.babelrc b/.babelrc index 82024762c5..f3b952604a 100644 --- a/.babelrc +++ b/.babelrc @@ -1,5 +1,6 @@ { "experimental": true, "playground": true, - "loose": true + "loose": true, + "blacklist": ["es6.tailCall"] } diff --git a/.gitignore b/.gitignore index ab255e6959..bd8b1c1bce 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ dist .package.json packages/babel-runtime/*.js packages/babel-runtime/regenerator/*.js +lib diff --git a/.jscsrc b/.jscsrc index 92ceeea268..f62d0c74eb 100644 --- a/.jscsrc +++ b/.jscsrc @@ -1,5 +1,5 @@ { - "excludeFiles": ["lib/babel/transformation/templates"], + "excludeFiles": ["src/babel/transformation/templates"], "disallowSpacesInNamedFunctionExpression": { "beforeOpeningRoundBrace": true }, diff --git a/.jshintignore b/.jshintignore index 60c0292be4..2bf824307c 100644 --- a/.jshintignore +++ b/.jshintignore @@ -1 +1 @@ -lib/babel/transformation/templates +src/babel/transformation/templates diff --git a/.npmignore b/.npmignore index 5e135bc1d1..68d01756df 100644 --- a/.npmignore +++ b/.npmignore @@ -13,3 +13,4 @@ CHANGELOG.md coverage vendor packages +src diff --git a/Makefile b/Makefile index 95a395e165..6c3723a52e 100644 --- a/Makefile +++ b/Makefile @@ -12,13 +12,14 @@ export NODE_ENV = test .PHONY: clean test test-cov test-clean lint test-travis test-simple test-all test-browser publish build bootstrap publish-core publish-runtime build-core watch-core build-core: - #node $(BABEL_CMD) src --out-dir lib + node $(BABEL_CMD) src --out-dir lib --copy-files watch-core: - #node $(BABEL_CMD) src --out-dir lib --watch + node $(BABEL_CMD) src --out-dir lib --watch --copy-files build: mkdir -p dist + make build-core node tools/cache-templates @@ -37,8 +38,8 @@ clean: rm -rf coverage templates.json test/tmp dist lint: - $(JSHINT_CMD) --reporter node_modules/jshint-stylish/stylish.js lib bin - $(JSCS_CMD) lib bin + $(JSHINT_CMD) --reporter node_modules/jshint-stylish/stylish.js src bin + $(JSCS_CMD) src bin test-clean: rm -rf test/tmp diff --git a/bin/babel/dir.js b/bin/babel/dir.js index 14ca05df3b..eb6cb7f3a5 100644 --- a/bin/babel/dir.js +++ b/bin/babel/dir.js @@ -64,7 +64,7 @@ module.exports = function (commander, filenames, opts) { _.each(["add", "change"], function (type) { watcher.on(type, function (filename) { var relative = path.relative(dirname, filename) || filename; - write(filename, relative); + if (util.canCompile(filename)) write(filename, relative); }); }); }); diff --git a/bin/babel/util.js b/bin/babel/util.js index 24afd62a12..99255b9f63 100644 --- a/bin/babel/util.js +++ b/bin/babel/util.js @@ -24,6 +24,7 @@ exports.addSourceMappingUrl = function (code, loc) { exports.transform = function (filename, code, opts) { opts = _.defaults(opts || {}, index.opts); opts.filename = filename; + resolveRc(filename, opts); var result; try { @@ -42,7 +43,6 @@ exports.transform = function (filename, code, opts) { }; exports.compile = function (filename, opts) { - resolveRc(filename, opts); var code = fs.readFileSync(filename, "utf8"); return exports.transform(filename, code, opts); }; diff --git a/lib/babel/transformation/templates/.babelrc b/lib/babel/transformation/templates/.babelrc deleted file mode 100644 index a5a58b5836..0000000000 --- a/lib/babel/transformation/templates/.babelrc +++ /dev/null @@ -1,3 +0,0 @@ -{ - "blacklist": ["useStrict"] -} diff --git a/package.json b/package.json index 36b80c4ee9..8e35b3dfbf 100644 --- a/package.json +++ b/package.json @@ -67,6 +67,7 @@ "trim-right": "^1.0.0" }, "devDependencies": { + "babel": "4.5.0", "browserify": "^8.1.3", "chai": "^2.0.0", "esvalid": "^1.1.0", diff --git a/lib/babel/api/browser.js b/src/babel/api/browser.js similarity index 100% rename from lib/babel/api/browser.js rename to src/babel/api/browser.js diff --git a/lib/babel/api/node.js b/src/babel/api/node.js similarity index 100% rename from lib/babel/api/node.js rename to src/babel/api/node.js diff --git a/lib/babel/api/register/browser.js b/src/babel/api/register/browser.js similarity index 100% rename from lib/babel/api/register/browser.js rename to src/babel/api/register/browser.js diff --git a/lib/babel/api/register/cache.js b/src/babel/api/register/cache.js similarity index 100% rename from lib/babel/api/register/cache.js rename to src/babel/api/register/cache.js diff --git a/lib/babel/api/register/node.js b/src/babel/api/register/node.js similarity index 100% rename from lib/babel/api/register/node.js rename to src/babel/api/register/node.js diff --git a/lib/babel/api/register/resolve-rc.js b/src/babel/api/register/resolve-rc.js similarity index 83% rename from lib/babel/api/register/resolve-rc.js rename to src/babel/api/register/resolve-rc.js index 1e82938aea..20d5f9d5eb 100644 --- a/lib/babel/api/register/resolve-rc.js +++ b/src/babel/api/register/resolve-rc.js @@ -30,7 +30,12 @@ module.exports = function (loc, opts) { throw err; } - opts = merge(json, opts); + if (json.breakConfig) return; + merge(opts, json, function(a, b) { + if (Array.isArray(a)) { + return a.concat(b); + } + }); } var up = path.dirname(start); diff --git a/lib/babel/build-external-helpers.js b/src/babel/build-external-helpers.js similarity index 100% rename from lib/babel/build-external-helpers.js rename to src/babel/build-external-helpers.js diff --git a/lib/babel/build-helpers.js b/src/babel/build-helpers.js similarity index 100% rename from lib/babel/build-helpers.js rename to src/babel/build-helpers.js diff --git a/lib/babel/detection/index.js b/src/babel/detection/index.js similarity index 100% rename from lib/babel/detection/index.js rename to src/babel/detection/index.js diff --git a/lib/babel/detection/syntax-keys.json b/src/babel/detection/syntax-keys.json similarity index 100% rename from lib/babel/detection/syntax-keys.json rename to src/babel/detection/syntax-keys.json diff --git a/lib/babel/detection/visitors.js b/src/babel/detection/visitors.js similarity index 100% rename from lib/babel/detection/visitors.js rename to src/babel/detection/visitors.js diff --git a/lib/babel/generation/buffer.js b/src/babel/generation/buffer.js similarity index 100% rename from lib/babel/generation/buffer.js rename to src/babel/generation/buffer.js diff --git a/lib/babel/generation/generators/base.js b/src/babel/generation/generators/base.js similarity index 100% rename from lib/babel/generation/generators/base.js rename to src/babel/generation/generators/base.js diff --git a/lib/babel/generation/generators/classes.js b/src/babel/generation/generators/classes.js similarity index 100% rename from lib/babel/generation/generators/classes.js rename to src/babel/generation/generators/classes.js diff --git a/lib/babel/generation/generators/comprehensions.js b/src/babel/generation/generators/comprehensions.js similarity index 100% rename from lib/babel/generation/generators/comprehensions.js rename to src/babel/generation/generators/comprehensions.js diff --git a/lib/babel/generation/generators/expressions.js b/src/babel/generation/generators/expressions.js similarity index 100% rename from lib/babel/generation/generators/expressions.js rename to src/babel/generation/generators/expressions.js diff --git a/lib/babel/generation/generators/flow.js b/src/babel/generation/generators/flow.js similarity index 100% rename from lib/babel/generation/generators/flow.js rename to src/babel/generation/generators/flow.js diff --git a/lib/babel/generation/generators/jsx.js b/src/babel/generation/generators/jsx.js similarity index 100% rename from lib/babel/generation/generators/jsx.js rename to src/babel/generation/generators/jsx.js diff --git a/lib/babel/generation/generators/methods.js b/src/babel/generation/generators/methods.js similarity index 100% rename from lib/babel/generation/generators/methods.js rename to src/babel/generation/generators/methods.js diff --git a/lib/babel/generation/generators/modules.js b/src/babel/generation/generators/modules.js similarity index 100% rename from lib/babel/generation/generators/modules.js rename to src/babel/generation/generators/modules.js diff --git a/lib/babel/generation/generators/playground.js b/src/babel/generation/generators/playground.js similarity index 100% rename from lib/babel/generation/generators/playground.js rename to src/babel/generation/generators/playground.js diff --git a/lib/babel/generation/generators/statements.js b/src/babel/generation/generators/statements.js similarity index 100% rename from lib/babel/generation/generators/statements.js rename to src/babel/generation/generators/statements.js diff --git a/lib/babel/generation/generators/template-literals.js b/src/babel/generation/generators/template-literals.js similarity index 100% rename from lib/babel/generation/generators/template-literals.js rename to src/babel/generation/generators/template-literals.js diff --git a/lib/babel/generation/generators/types.js b/src/babel/generation/generators/types.js similarity index 100% rename from lib/babel/generation/generators/types.js rename to src/babel/generation/generators/types.js diff --git a/lib/babel/generation/index.js b/src/babel/generation/index.js similarity index 100% rename from lib/babel/generation/index.js rename to src/babel/generation/index.js diff --git a/lib/babel/generation/node/index.js b/src/babel/generation/node/index.js similarity index 100% rename from lib/babel/generation/node/index.js rename to src/babel/generation/node/index.js diff --git a/lib/babel/generation/node/parentheses.js b/src/babel/generation/node/parentheses.js similarity index 100% rename from lib/babel/generation/node/parentheses.js rename to src/babel/generation/node/parentheses.js diff --git a/lib/babel/generation/node/whitespace.js b/src/babel/generation/node/whitespace.js similarity index 100% rename from lib/babel/generation/node/whitespace.js rename to src/babel/generation/node/whitespace.js diff --git a/lib/babel/generation/position.js b/src/babel/generation/position.js similarity index 100% rename from lib/babel/generation/position.js rename to src/babel/generation/position.js diff --git a/lib/babel/generation/source-map.js b/src/babel/generation/source-map.js similarity index 100% rename from lib/babel/generation/source-map.js rename to src/babel/generation/source-map.js diff --git a/lib/babel/generation/whitespace.js b/src/babel/generation/whitespace.js similarity index 100% rename from lib/babel/generation/whitespace.js rename to src/babel/generation/whitespace.js diff --git a/lib/babel/helpers/code-frame.js b/src/babel/helpers/code-frame.js similarity index 100% rename from lib/babel/helpers/code-frame.js rename to src/babel/helpers/code-frame.js diff --git a/lib/babel/helpers/normalize-ast.js b/src/babel/helpers/normalize-ast.js similarity index 100% rename from lib/babel/helpers/normalize-ast.js rename to src/babel/helpers/normalize-ast.js diff --git a/lib/babel/helpers/object.js b/src/babel/helpers/object.js similarity index 100% rename from lib/babel/helpers/object.js rename to src/babel/helpers/object.js diff --git a/lib/babel/helpers/parse.js b/src/babel/helpers/parse.js similarity index 100% rename from lib/babel/helpers/parse.js rename to src/babel/helpers/parse.js diff --git a/lib/babel/helpers/to-fast-properties.js b/src/babel/helpers/to-fast-properties.js similarity index 100% rename from lib/babel/helpers/to-fast-properties.js rename to src/babel/helpers/to-fast-properties.js diff --git a/lib/babel/messages.js b/src/babel/messages.js similarity index 100% rename from lib/babel/messages.js rename to src/babel/messages.js diff --git a/lib/babel/patch.js b/src/babel/patch.js similarity index 100% rename from lib/babel/patch.js rename to src/babel/patch.js diff --git a/lib/babel/polyfill.js b/src/babel/polyfill.js similarity index 100% rename from lib/babel/polyfill.js rename to src/babel/polyfill.js diff --git a/lib/babel/transformation/file.js b/src/babel/transformation/file.js similarity index 100% rename from lib/babel/transformation/file.js rename to src/babel/transformation/file.js diff --git a/lib/babel/transformation/helpers/build-binary-assignment-operator-transformer.js b/src/babel/transformation/helpers/build-binary-assignment-operator-transformer.js similarity index 100% rename from lib/babel/transformation/helpers/build-binary-assignment-operator-transformer.js rename to src/babel/transformation/helpers/build-binary-assignment-operator-transformer.js diff --git a/lib/babel/transformation/helpers/build-comprehension.js b/src/babel/transformation/helpers/build-comprehension.js similarity index 100% rename from lib/babel/transformation/helpers/build-comprehension.js rename to src/babel/transformation/helpers/build-comprehension.js diff --git a/lib/babel/transformation/helpers/build-conditional-assignment-operator-transformer.js b/src/babel/transformation/helpers/build-conditional-assignment-operator-transformer.js similarity index 100% rename from lib/babel/transformation/helpers/build-conditional-assignment-operator-transformer.js rename to src/babel/transformation/helpers/build-conditional-assignment-operator-transformer.js diff --git a/lib/babel/transformation/helpers/build-react-transformer.js b/src/babel/transformation/helpers/build-react-transformer.js similarity index 100% rename from lib/babel/transformation/helpers/build-react-transformer.js rename to src/babel/transformation/helpers/build-react-transformer.js diff --git a/lib/babel/transformation/helpers/define-map.js b/src/babel/transformation/helpers/define-map.js similarity index 100% rename from lib/babel/transformation/helpers/define-map.js rename to src/babel/transformation/helpers/define-map.js diff --git a/lib/babel/transformation/helpers/explode-assignable-expression.js b/src/babel/transformation/helpers/explode-assignable-expression.js similarity index 100% rename from lib/babel/transformation/helpers/explode-assignable-expression.js rename to src/babel/transformation/helpers/explode-assignable-expression.js diff --git a/lib/babel/transformation/helpers/name-method.js b/src/babel/transformation/helpers/name-method.js similarity index 100% rename from lib/babel/transformation/helpers/name-method.js rename to src/babel/transformation/helpers/name-method.js diff --git a/lib/babel/transformation/helpers/react.js b/src/babel/transformation/helpers/react.js similarity index 100% rename from lib/babel/transformation/helpers/react.js rename to src/babel/transformation/helpers/react.js diff --git a/lib/babel/transformation/helpers/remap-async-to-generator.js b/src/babel/transformation/helpers/remap-async-to-generator.js similarity index 100% rename from lib/babel/transformation/helpers/remap-async-to-generator.js rename to src/babel/transformation/helpers/remap-async-to-generator.js diff --git a/lib/babel/transformation/helpers/replace-supers.js b/src/babel/transformation/helpers/replace-supers.js similarity index 100% rename from lib/babel/transformation/helpers/replace-supers.js rename to src/babel/transformation/helpers/replace-supers.js diff --git a/lib/babel/transformation/helpers/use-strict.js b/src/babel/transformation/helpers/use-strict.js similarity index 100% rename from lib/babel/transformation/helpers/use-strict.js rename to src/babel/transformation/helpers/use-strict.js diff --git a/lib/babel/transformation/index.js b/src/babel/transformation/index.js similarity index 100% rename from lib/babel/transformation/index.js rename to src/babel/transformation/index.js diff --git a/lib/babel/transformation/modules/_default.js b/src/babel/transformation/modules/_default.js similarity index 100% rename from lib/babel/transformation/modules/_default.js rename to src/babel/transformation/modules/_default.js diff --git a/lib/babel/transformation/modules/_strict.js b/src/babel/transformation/modules/_strict.js similarity index 100% rename from lib/babel/transformation/modules/_strict.js rename to src/babel/transformation/modules/_strict.js diff --git a/lib/babel/transformation/modules/amd-strict.js b/src/babel/transformation/modules/amd-strict.js similarity index 100% rename from lib/babel/transformation/modules/amd-strict.js rename to src/babel/transformation/modules/amd-strict.js diff --git a/lib/babel/transformation/modules/amd.js b/src/babel/transformation/modules/amd.js similarity index 100% rename from lib/babel/transformation/modules/amd.js rename to src/babel/transformation/modules/amd.js diff --git a/lib/babel/transformation/modules/common-strict.js b/src/babel/transformation/modules/common-strict.js similarity index 100% rename from lib/babel/transformation/modules/common-strict.js rename to src/babel/transformation/modules/common-strict.js diff --git a/lib/babel/transformation/modules/common.js b/src/babel/transformation/modules/common.js similarity index 100% rename from lib/babel/transformation/modules/common.js rename to src/babel/transformation/modules/common.js diff --git a/lib/babel/transformation/modules/ignore.js b/src/babel/transformation/modules/ignore.js similarity index 100% rename from lib/babel/transformation/modules/ignore.js rename to src/babel/transformation/modules/ignore.js diff --git a/lib/babel/transformation/modules/index.js b/src/babel/transformation/modules/index.js similarity index 100% rename from lib/babel/transformation/modules/index.js rename to src/babel/transformation/modules/index.js diff --git a/lib/babel/transformation/modules/system.js b/src/babel/transformation/modules/system.js similarity index 100% rename from lib/babel/transformation/modules/system.js rename to src/babel/transformation/modules/system.js diff --git a/lib/babel/transformation/modules/umd-strict.js b/src/babel/transformation/modules/umd-strict.js similarity index 100% rename from lib/babel/transformation/modules/umd-strict.js rename to src/babel/transformation/modules/umd-strict.js diff --git a/lib/babel/transformation/modules/umd.js b/src/babel/transformation/modules/umd.js similarity index 100% rename from lib/babel/transformation/modules/umd.js rename to src/babel/transformation/modules/umd.js diff --git a/src/babel/transformation/templates/.babelrc b/src/babel/transformation/templates/.babelrc new file mode 100644 index 0000000000..2dae4b699f --- /dev/null +++ b/src/babel/transformation/templates/.babelrc @@ -0,0 +1,3 @@ +{ + "blacklist": ["useStrict", "es6.blockScoping"] +} diff --git a/lib/babel/transformation/templates/abstract-expression-call.js b/src/babel/transformation/templates/abstract-expression-call.js similarity index 100% rename from lib/babel/transformation/templates/abstract-expression-call.js rename to src/babel/transformation/templates/abstract-expression-call.js diff --git a/lib/babel/transformation/templates/abstract-expression-delete.js b/src/babel/transformation/templates/abstract-expression-delete.js similarity index 100% rename from lib/babel/transformation/templates/abstract-expression-delete.js rename to src/babel/transformation/templates/abstract-expression-delete.js diff --git a/lib/babel/transformation/templates/abstract-expression-get.js b/src/babel/transformation/templates/abstract-expression-get.js similarity index 100% rename from lib/babel/transformation/templates/abstract-expression-get.js rename to src/babel/transformation/templates/abstract-expression-get.js diff --git a/lib/babel/transformation/templates/abstract-expression-set.js b/src/babel/transformation/templates/abstract-expression-set.js similarity index 100% rename from lib/babel/transformation/templates/abstract-expression-set.js rename to src/babel/transformation/templates/abstract-expression-set.js diff --git a/lib/babel/transformation/templates/apply-constructor.js b/src/babel/transformation/templates/apply-constructor.js similarity index 100% rename from lib/babel/transformation/templates/apply-constructor.js rename to src/babel/transformation/templates/apply-constructor.js diff --git a/lib/babel/transformation/templates/array-comprehension-container.js b/src/babel/transformation/templates/array-comprehension-container.js similarity index 100% rename from lib/babel/transformation/templates/array-comprehension-container.js rename to src/babel/transformation/templates/array-comprehension-container.js diff --git a/lib/babel/transformation/templates/array-from.js b/src/babel/transformation/templates/array-from.js similarity index 100% rename from lib/babel/transformation/templates/array-from.js rename to src/babel/transformation/templates/array-from.js diff --git a/lib/babel/transformation/templates/array-push.js b/src/babel/transformation/templates/array-push.js similarity index 100% rename from lib/babel/transformation/templates/array-push.js rename to src/babel/transformation/templates/array-push.js diff --git a/lib/babel/transformation/templates/async-to-generator.js b/src/babel/transformation/templates/async-to-generator.js similarity index 100% rename from lib/babel/transformation/templates/async-to-generator.js rename to src/babel/transformation/templates/async-to-generator.js diff --git a/lib/babel/transformation/templates/bind.js b/src/babel/transformation/templates/bind.js similarity index 100% rename from lib/babel/transformation/templates/bind.js rename to src/babel/transformation/templates/bind.js diff --git a/lib/babel/transformation/templates/call.js b/src/babel/transformation/templates/call.js similarity index 100% rename from lib/babel/transformation/templates/call.js rename to src/babel/transformation/templates/call.js diff --git a/lib/babel/transformation/templates/class-call-check.js b/src/babel/transformation/templates/class-call-check.js similarity index 100% rename from lib/babel/transformation/templates/class-call-check.js rename to src/babel/transformation/templates/class-call-check.js diff --git a/lib/babel/transformation/templates/class-super-constructor-call-loose.js b/src/babel/transformation/templates/class-super-constructor-call-loose.js similarity index 100% rename from lib/babel/transformation/templates/class-super-constructor-call-loose.js rename to src/babel/transformation/templates/class-super-constructor-call-loose.js diff --git a/lib/babel/transformation/templates/class-super-constructor-call.js b/src/babel/transformation/templates/class-super-constructor-call.js similarity index 100% rename from lib/babel/transformation/templates/class-super-constructor-call.js rename to src/babel/transformation/templates/class-super-constructor-call.js diff --git a/lib/babel/transformation/templates/corejs-is-iterator.js b/src/babel/transformation/templates/corejs-is-iterator.js similarity index 100% rename from lib/babel/transformation/templates/corejs-is-iterator.js rename to src/babel/transformation/templates/corejs-is-iterator.js diff --git a/lib/babel/transformation/templates/corejs-iterator.js b/src/babel/transformation/templates/corejs-iterator.js similarity index 100% rename from lib/babel/transformation/templates/corejs-iterator.js rename to src/babel/transformation/templates/corejs-iterator.js diff --git a/lib/babel/transformation/templates/default-parameter.js b/src/babel/transformation/templates/default-parameter.js similarity index 100% rename from lib/babel/transformation/templates/default-parameter.js rename to src/babel/transformation/templates/default-parameter.js diff --git a/lib/babel/transformation/templates/defaults.js b/src/babel/transformation/templates/defaults.js similarity index 100% rename from lib/babel/transformation/templates/defaults.js rename to src/babel/transformation/templates/defaults.js diff --git a/lib/babel/transformation/templates/define-property.js b/src/babel/transformation/templates/define-property.js similarity index 100% rename from lib/babel/transformation/templates/define-property.js rename to src/babel/transformation/templates/define-property.js diff --git a/lib/babel/transformation/templates/exports-assign.js b/src/babel/transformation/templates/exports-assign.js similarity index 100% rename from lib/babel/transformation/templates/exports-assign.js rename to src/babel/transformation/templates/exports-assign.js diff --git a/lib/babel/transformation/templates/exports-default-assign.js b/src/babel/transformation/templates/exports-default-assign.js similarity index 100% rename from lib/babel/transformation/templates/exports-default-assign.js rename to src/babel/transformation/templates/exports-default-assign.js diff --git a/lib/babel/transformation/templates/exports-module-declaration-loose.js b/src/babel/transformation/templates/exports-module-declaration-loose.js similarity index 100% rename from lib/babel/transformation/templates/exports-module-declaration-loose.js rename to src/babel/transformation/templates/exports-module-declaration-loose.js diff --git a/lib/babel/transformation/templates/exports-module-declaration.js b/src/babel/transformation/templates/exports-module-declaration.js similarity index 100% rename from lib/babel/transformation/templates/exports-module-declaration.js rename to src/babel/transformation/templates/exports-module-declaration.js diff --git a/lib/babel/transformation/templates/extends.js b/src/babel/transformation/templates/extends.js similarity index 100% rename from lib/babel/transformation/templates/extends.js rename to src/babel/transformation/templates/extends.js diff --git a/lib/babel/transformation/templates/for-of-loose.js b/src/babel/transformation/templates/for-of-loose.js similarity index 100% rename from lib/babel/transformation/templates/for-of-loose.js rename to src/babel/transformation/templates/for-of-loose.js diff --git a/lib/babel/transformation/templates/for-of.js b/src/babel/transformation/templates/for-of.js similarity index 100% rename from lib/babel/transformation/templates/for-of.js rename to src/babel/transformation/templates/for-of.js diff --git a/lib/babel/transformation/templates/get.js b/src/babel/transformation/templates/get.js similarity index 100% rename from lib/babel/transformation/templates/get.js rename to src/babel/transformation/templates/get.js diff --git a/lib/babel/transformation/templates/has-own.js b/src/babel/transformation/templates/has-own.js similarity index 100% rename from lib/babel/transformation/templates/has-own.js rename to src/babel/transformation/templates/has-own.js diff --git a/lib/babel/transformation/templates/inherits.js b/src/babel/transformation/templates/inherits.js similarity index 100% rename from lib/babel/transformation/templates/inherits.js rename to src/babel/transformation/templates/inherits.js diff --git a/lib/babel/transformation/templates/interop-require-wildcard.js b/src/babel/transformation/templates/interop-require-wildcard.js similarity index 100% rename from lib/babel/transformation/templates/interop-require-wildcard.js rename to src/babel/transformation/templates/interop-require-wildcard.js diff --git a/lib/babel/transformation/templates/interop-require.js b/src/babel/transformation/templates/interop-require.js similarity index 100% rename from lib/babel/transformation/templates/interop-require.js rename to src/babel/transformation/templates/interop-require.js diff --git a/lib/babel/transformation/templates/let-scoping-return.js b/src/babel/transformation/templates/let-scoping-return.js similarity index 100% rename from lib/babel/transformation/templates/let-scoping-return.js rename to src/babel/transformation/templates/let-scoping-return.js diff --git a/lib/babel/transformation/templates/named-function.js b/src/babel/transformation/templates/named-function.js similarity index 100% rename from lib/babel/transformation/templates/named-function.js rename to src/babel/transformation/templates/named-function.js diff --git a/lib/babel/transformation/templates/object-destructuring-empty.js b/src/babel/transformation/templates/object-destructuring-empty.js similarity index 100% rename from lib/babel/transformation/templates/object-destructuring-empty.js rename to src/babel/transformation/templates/object-destructuring-empty.js diff --git a/lib/babel/transformation/templates/object-without-properties.js b/src/babel/transformation/templates/object-without-properties.js similarity index 100% rename from lib/babel/transformation/templates/object-without-properties.js rename to src/babel/transformation/templates/object-without-properties.js diff --git a/lib/babel/transformation/templates/property-method-assignment-wrapper-generator.js b/src/babel/transformation/templates/property-method-assignment-wrapper-generator.js similarity index 100% rename from lib/babel/transformation/templates/property-method-assignment-wrapper-generator.js rename to src/babel/transformation/templates/property-method-assignment-wrapper-generator.js diff --git a/lib/babel/transformation/templates/property-method-assignment-wrapper.js b/src/babel/transformation/templates/property-method-assignment-wrapper.js similarity index 100% rename from lib/babel/transformation/templates/property-method-assignment-wrapper.js rename to src/babel/transformation/templates/property-method-assignment-wrapper.js diff --git a/lib/babel/transformation/templates/prototype-identifier.js b/src/babel/transformation/templates/prototype-identifier.js similarity index 100% rename from lib/babel/transformation/templates/prototype-identifier.js rename to src/babel/transformation/templates/prototype-identifier.js diff --git a/lib/babel/transformation/templates/prototype-properties.js b/src/babel/transformation/templates/prototype-properties.js similarity index 100% rename from lib/babel/transformation/templates/prototype-properties.js rename to src/babel/transformation/templates/prototype-properties.js diff --git a/lib/babel/transformation/templates/require-assign-key.js b/src/babel/transformation/templates/require-assign-key.js similarity index 100% rename from lib/babel/transformation/templates/require-assign-key.js rename to src/babel/transformation/templates/require-assign-key.js diff --git a/lib/babel/transformation/templates/require.js b/src/babel/transformation/templates/require.js similarity index 100% rename from lib/babel/transformation/templates/require.js rename to src/babel/transformation/templates/require.js diff --git a/lib/babel/transformation/templates/rest.js b/src/babel/transformation/templates/rest.js similarity index 100% rename from lib/babel/transformation/templates/rest.js rename to src/babel/transformation/templates/rest.js diff --git a/lib/babel/transformation/templates/self-contained-helpers-head.js b/src/babel/transformation/templates/self-contained-helpers-head.js similarity index 100% rename from lib/babel/transformation/templates/self-contained-helpers-head.js rename to src/babel/transformation/templates/self-contained-helpers-head.js diff --git a/lib/babel/transformation/templates/self-global.js b/src/babel/transformation/templates/self-global.js similarity index 100% rename from lib/babel/transformation/templates/self-global.js rename to src/babel/transformation/templates/self-global.js diff --git a/lib/babel/transformation/templates/set.js b/src/babel/transformation/templates/set.js similarity index 100% rename from lib/babel/transformation/templates/set.js rename to src/babel/transformation/templates/set.js diff --git a/lib/babel/transformation/templates/slice.js b/src/babel/transformation/templates/slice.js similarity index 100% rename from lib/babel/transformation/templates/slice.js rename to src/babel/transformation/templates/slice.js diff --git a/lib/babel/transformation/templates/sliced-to-array.js b/src/babel/transformation/templates/sliced-to-array.js similarity index 100% rename from lib/babel/transformation/templates/sliced-to-array.js rename to src/babel/transformation/templates/sliced-to-array.js diff --git a/lib/babel/transformation/templates/system.js b/src/babel/transformation/templates/system.js similarity index 100% rename from lib/babel/transformation/templates/system.js rename to src/babel/transformation/templates/system.js diff --git a/lib/babel/transformation/templates/tagged-template-literal-loose.js b/src/babel/transformation/templates/tagged-template-literal-loose.js similarity index 100% rename from lib/babel/transformation/templates/tagged-template-literal-loose.js rename to src/babel/transformation/templates/tagged-template-literal-loose.js diff --git a/lib/babel/transformation/templates/tagged-template-literal.js b/src/babel/transformation/templates/tagged-template-literal.js similarity index 100% rename from lib/babel/transformation/templates/tagged-template-literal.js rename to src/babel/transformation/templates/tagged-template-literal.js diff --git a/lib/babel/transformation/templates/tail-call-body.js b/src/babel/transformation/templates/tail-call-body.js similarity index 100% rename from lib/babel/transformation/templates/tail-call-body.js rename to src/babel/transformation/templates/tail-call-body.js diff --git a/lib/babel/transformation/templates/temporal-assert-defined.js b/src/babel/transformation/templates/temporal-assert-defined.js similarity index 100% rename from lib/babel/transformation/templates/temporal-assert-defined.js rename to src/babel/transformation/templates/temporal-assert-defined.js diff --git a/lib/babel/transformation/templates/temporal-undefined.js b/src/babel/transformation/templates/temporal-undefined.js similarity index 100% rename from lib/babel/transformation/templates/temporal-undefined.js rename to src/babel/transformation/templates/temporal-undefined.js diff --git a/lib/babel/transformation/templates/test-exports.js b/src/babel/transformation/templates/test-exports.js similarity index 100% rename from lib/babel/transformation/templates/test-exports.js rename to src/babel/transformation/templates/test-exports.js diff --git a/lib/babel/transformation/templates/test-module.js b/src/babel/transformation/templates/test-module.js similarity index 100% rename from lib/babel/transformation/templates/test-module.js rename to src/babel/transformation/templates/test-module.js diff --git a/lib/babel/transformation/templates/to-array.js b/src/babel/transformation/templates/to-array.js similarity index 100% rename from lib/babel/transformation/templates/to-array.js rename to src/babel/transformation/templates/to-array.js diff --git a/lib/babel/transformation/templates/to-consumable-array.js b/src/babel/transformation/templates/to-consumable-array.js similarity index 100% rename from lib/babel/transformation/templates/to-consumable-array.js rename to src/babel/transformation/templates/to-consumable-array.js diff --git a/lib/babel/transformation/templates/typeof.js b/src/babel/transformation/templates/typeof.js similarity index 100% rename from lib/babel/transformation/templates/typeof.js rename to src/babel/transformation/templates/typeof.js diff --git a/lib/babel/transformation/templates/umd-runner-body.js b/src/babel/transformation/templates/umd-runner-body.js similarity index 100% rename from lib/babel/transformation/templates/umd-runner-body.js rename to src/babel/transformation/templates/umd-runner-body.js diff --git a/lib/babel/transformation/transformer-pass.js b/src/babel/transformation/transformer-pass.js similarity index 100% rename from lib/babel/transformation/transformer-pass.js rename to src/babel/transformation/transformer-pass.js diff --git a/lib/babel/transformation/transformer.js b/src/babel/transformation/transformer.js similarity index 100% rename from lib/babel/transformation/transformer.js rename to src/babel/transformation/transformer.js diff --git a/lib/babel/transformation/transformers/deprecated.json b/src/babel/transformation/transformers/deprecated.json similarity index 100% rename from lib/babel/transformation/transformers/deprecated.json rename to src/babel/transformation/transformers/deprecated.json diff --git a/lib/babel/transformation/transformers/es3/member-expression-literals.js b/src/babel/transformation/transformers/es3/member-expression-literals.js similarity index 100% rename from lib/babel/transformation/transformers/es3/member-expression-literals.js rename to src/babel/transformation/transformers/es3/member-expression-literals.js diff --git a/lib/babel/transformation/transformers/es3/property-literals.js b/src/babel/transformation/transformers/es3/property-literals.js similarity index 100% rename from lib/babel/transformation/transformers/es3/property-literals.js rename to src/babel/transformation/transformers/es3/property-literals.js diff --git a/lib/babel/transformation/transformers/es5/properties.mutators.js b/src/babel/transformation/transformers/es5/properties.mutators.js similarity index 100% rename from lib/babel/transformation/transformers/es5/properties.mutators.js rename to src/babel/transformation/transformers/es5/properties.mutators.js diff --git a/lib/babel/transformation/transformers/es6/arrow-functions.js b/src/babel/transformation/transformers/es6/arrow-functions.js similarity index 100% rename from lib/babel/transformation/transformers/es6/arrow-functions.js rename to src/babel/transformation/transformers/es6/arrow-functions.js diff --git a/lib/babel/transformation/transformers/es6/block-scoping-tdz.js b/src/babel/transformation/transformers/es6/block-scoping-tdz.js similarity index 100% rename from lib/babel/transformation/transformers/es6/block-scoping-tdz.js rename to src/babel/transformation/transformers/es6/block-scoping-tdz.js diff --git a/lib/babel/transformation/transformers/es6/block-scoping.js b/src/babel/transformation/transformers/es6/block-scoping.js similarity index 100% rename from lib/babel/transformation/transformers/es6/block-scoping.js rename to src/babel/transformation/transformers/es6/block-scoping.js diff --git a/lib/babel/transformation/transformers/es6/classes.js b/src/babel/transformation/transformers/es6/classes.js similarity index 100% rename from lib/babel/transformation/transformers/es6/classes.js rename to src/babel/transformation/transformers/es6/classes.js diff --git a/lib/babel/transformation/transformers/es6/constants.js b/src/babel/transformation/transformers/es6/constants.js similarity index 100% rename from lib/babel/transformation/transformers/es6/constants.js rename to src/babel/transformation/transformers/es6/constants.js diff --git a/lib/babel/transformation/transformers/es6/destructuring.js b/src/babel/transformation/transformers/es6/destructuring.js similarity index 100% rename from lib/babel/transformation/transformers/es6/destructuring.js rename to src/babel/transformation/transformers/es6/destructuring.js diff --git a/lib/babel/transformation/transformers/es6/for-of.js b/src/babel/transformation/transformers/es6/for-of.js similarity index 100% rename from lib/babel/transformation/transformers/es6/for-of.js rename to src/babel/transformation/transformers/es6/for-of.js diff --git a/lib/babel/transformation/transformers/es6/modules.js b/src/babel/transformation/transformers/es6/modules.js similarity index 100% rename from lib/babel/transformation/transformers/es6/modules.js rename to src/babel/transformation/transformers/es6/modules.js diff --git a/lib/babel/transformation/transformers/es6/object-super.js b/src/babel/transformation/transformers/es6/object-super.js similarity index 100% rename from lib/babel/transformation/transformers/es6/object-super.js rename to src/babel/transformation/transformers/es6/object-super.js diff --git a/lib/babel/transformation/transformers/es6/parameters.default.js b/src/babel/transformation/transformers/es6/parameters.default.js similarity index 100% rename from lib/babel/transformation/transformers/es6/parameters.default.js rename to src/babel/transformation/transformers/es6/parameters.default.js diff --git a/lib/babel/transformation/transformers/es6/parameters.rest.js b/src/babel/transformation/transformers/es6/parameters.rest.js similarity index 100% rename from lib/babel/transformation/transformers/es6/parameters.rest.js rename to src/babel/transformation/transformers/es6/parameters.rest.js diff --git a/lib/babel/transformation/transformers/es6/properties.computed.js b/src/babel/transformation/transformers/es6/properties.computed.js similarity index 100% rename from lib/babel/transformation/transformers/es6/properties.computed.js rename to src/babel/transformation/transformers/es6/properties.computed.js diff --git a/lib/babel/transformation/transformers/es6/properties.shorthand.js b/src/babel/transformation/transformers/es6/properties.shorthand.js similarity index 100% rename from lib/babel/transformation/transformers/es6/properties.shorthand.js rename to src/babel/transformation/transformers/es6/properties.shorthand.js diff --git a/lib/babel/transformation/transformers/es6/spread.js b/src/babel/transformation/transformers/es6/spread.js similarity index 100% rename from lib/babel/transformation/transformers/es6/spread.js rename to src/babel/transformation/transformers/es6/spread.js diff --git a/lib/babel/transformation/transformers/es6/tail-call.js b/src/babel/transformation/transformers/es6/tail-call.js similarity index 100% rename from lib/babel/transformation/transformers/es6/tail-call.js rename to src/babel/transformation/transformers/es6/tail-call.js diff --git a/lib/babel/transformation/transformers/es6/template-literals.js b/src/babel/transformation/transformers/es6/template-literals.js similarity index 100% rename from lib/babel/transformation/transformers/es6/template-literals.js rename to src/babel/transformation/transformers/es6/template-literals.js diff --git a/lib/babel/transformation/transformers/es6/unicode-regex.js b/src/babel/transformation/transformers/es6/unicode-regex.js similarity index 100% rename from lib/babel/transformation/transformers/es6/unicode-regex.js rename to src/babel/transformation/transformers/es6/unicode-regex.js diff --git a/lib/babel/transformation/transformers/es7/abstract-references.js b/src/babel/transformation/transformers/es7/abstract-references.js similarity index 100% rename from lib/babel/transformation/transformers/es7/abstract-references.js rename to src/babel/transformation/transformers/es7/abstract-references.js diff --git a/lib/babel/transformation/transformers/es7/comprehensions.js b/src/babel/transformation/transformers/es7/comprehensions.js similarity index 100% rename from lib/babel/transformation/transformers/es7/comprehensions.js rename to src/babel/transformation/transformers/es7/comprehensions.js diff --git a/lib/babel/transformation/transformers/es7/exponentiation-operator.js b/src/babel/transformation/transformers/es7/exponentiation-operator.js similarity index 100% rename from lib/babel/transformation/transformers/es7/exponentiation-operator.js rename to src/babel/transformation/transformers/es7/exponentiation-operator.js diff --git a/lib/babel/transformation/transformers/es7/object-rest-spread.js b/src/babel/transformation/transformers/es7/object-rest-spread.js similarity index 100% rename from lib/babel/transformation/transformers/es7/object-rest-spread.js rename to src/babel/transformation/transformers/es7/object-rest-spread.js diff --git a/lib/babel/transformation/transformers/index.js b/src/babel/transformation/transformers/index.js similarity index 100% rename from lib/babel/transformation/transformers/index.js rename to src/babel/transformation/transformers/index.js diff --git a/lib/babel/transformation/transformers/internal/alias-functions.js b/src/babel/transformation/transformers/internal/alias-functions.js similarity index 100% rename from lib/babel/transformation/transformers/internal/alias-functions.js rename to src/babel/transformation/transformers/internal/alias-functions.js diff --git a/lib/babel/transformation/transformers/internal/block-hoist.js b/src/babel/transformation/transformers/internal/block-hoist.js similarity index 100% rename from lib/babel/transformation/transformers/internal/block-hoist.js rename to src/babel/transformation/transformers/internal/block-hoist.js diff --git a/lib/babel/transformation/transformers/internal/cleanup.js b/src/babel/transformation/transformers/internal/cleanup.js similarity index 100% rename from lib/babel/transformation/transformers/internal/cleanup.js rename to src/babel/transformation/transformers/internal/cleanup.js diff --git a/lib/babel/transformation/transformers/internal/declarations.js b/src/babel/transformation/transformers/internal/declarations.js similarity index 100% rename from lib/babel/transformation/transformers/internal/declarations.js rename to src/babel/transformation/transformers/internal/declarations.js diff --git a/lib/babel/transformation/transformers/internal/module-formatter.js b/src/babel/transformation/transformers/internal/module-formatter.js similarity index 100% rename from lib/babel/transformation/transformers/internal/module-formatter.js rename to src/babel/transformation/transformers/internal/module-formatter.js diff --git a/lib/babel/transformation/transformers/internal/modules.js b/src/babel/transformation/transformers/internal/modules.js similarity index 100% rename from lib/babel/transformation/transformers/internal/modules.js rename to src/babel/transformation/transformers/internal/modules.js diff --git a/lib/babel/transformation/transformers/internal/use-strict.js b/src/babel/transformation/transformers/internal/use-strict.js similarity index 100% rename from lib/babel/transformation/transformers/internal/use-strict.js rename to src/babel/transformation/transformers/internal/use-strict.js diff --git a/lib/babel/transformation/transformers/minification/dead-code-elimination.js b/src/babel/transformation/transformers/minification/dead-code-elimination.js similarity index 100% rename from lib/babel/transformation/transformers/minification/dead-code-elimination.js rename to src/babel/transformation/transformers/minification/dead-code-elimination.js diff --git a/lib/babel/transformation/transformers/minification/remove-console-calls.js b/src/babel/transformation/transformers/minification/remove-console-calls.js similarity index 100% rename from lib/babel/transformation/transformers/minification/remove-console-calls.js rename to src/babel/transformation/transformers/minification/remove-console-calls.js diff --git a/lib/babel/transformation/transformers/minification/remove-debugger.js b/src/babel/transformation/transformers/minification/remove-debugger.js similarity index 100% rename from lib/babel/transformation/transformers/minification/remove-debugger.js rename to src/babel/transformation/transformers/minification/remove-debugger.js diff --git a/lib/babel/transformation/transformers/minification/rename-local-variables.js b/src/babel/transformation/transformers/minification/rename-local-variables.js similarity index 100% rename from lib/babel/transformation/transformers/minification/rename-local-variables.js rename to src/babel/transformation/transformers/minification/rename-local-variables.js diff --git a/lib/babel/transformation/transformers/other/async-to-generator.js b/src/babel/transformation/transformers/other/async-to-generator.js similarity index 100% rename from lib/babel/transformation/transformers/other/async-to-generator.js rename to src/babel/transformation/transformers/other/async-to-generator.js diff --git a/lib/babel/transformation/transformers/other/bluebird-coroutines.js b/src/babel/transformation/transformers/other/bluebird-coroutines.js similarity index 100% rename from lib/babel/transformation/transformers/other/bluebird-coroutines.js rename to src/babel/transformation/transformers/other/bluebird-coroutines.js diff --git a/lib/babel/transformation/transformers/other/flow.js b/src/babel/transformation/transformers/other/flow.js similarity index 100% rename from lib/babel/transformation/transformers/other/flow.js rename to src/babel/transformation/transformers/other/flow.js diff --git a/lib/babel/transformation/transformers/other/react-compat.js b/src/babel/transformation/transformers/other/react-compat.js similarity index 100% rename from lib/babel/transformation/transformers/other/react-compat.js rename to src/babel/transformation/transformers/other/react-compat.js diff --git a/lib/babel/transformation/transformers/other/react.js b/src/babel/transformation/transformers/other/react.js similarity index 100% rename from lib/babel/transformation/transformers/other/react.js rename to src/babel/transformation/transformers/other/react.js diff --git a/lib/babel/transformation/transformers/other/regenerator.js b/src/babel/transformation/transformers/other/regenerator.js similarity index 100% rename from lib/babel/transformation/transformers/other/regenerator.js rename to src/babel/transformation/transformers/other/regenerator.js diff --git a/lib/babel/transformation/transformers/other/runtime.js b/src/babel/transformation/transformers/other/runtime.js similarity index 100% rename from lib/babel/transformation/transformers/other/runtime.js rename to src/babel/transformation/transformers/other/runtime.js diff --git a/lib/babel/transformation/transformers/other/use-strict.js b/src/babel/transformation/transformers/other/use-strict.js similarity index 100% rename from lib/babel/transformation/transformers/other/use-strict.js rename to src/babel/transformation/transformers/other/use-strict.js diff --git a/lib/babel/transformation/transformers/playground/mallet-operator.js b/src/babel/transformation/transformers/playground/mallet-operator.js similarity index 100% rename from lib/babel/transformation/transformers/playground/mallet-operator.js rename to src/babel/transformation/transformers/playground/mallet-operator.js diff --git a/lib/babel/transformation/transformers/playground/memoization-operator.js b/src/babel/transformation/transformers/playground/memoization-operator.js similarity index 100% rename from lib/babel/transformation/transformers/playground/memoization-operator.js rename to src/babel/transformation/transformers/playground/memoization-operator.js diff --git a/lib/babel/transformation/transformers/playground/method-binding.js b/src/babel/transformation/transformers/playground/method-binding.js similarity index 100% rename from lib/babel/transformation/transformers/playground/method-binding.js rename to src/babel/transformation/transformers/playground/method-binding.js diff --git a/lib/babel/transformation/transformers/playground/object-getter-memoization.js b/src/babel/transformation/transformers/playground/object-getter-memoization.js similarity index 100% rename from lib/babel/transformation/transformers/playground/object-getter-memoization.js rename to src/babel/transformation/transformers/playground/object-getter-memoization.js diff --git a/lib/babel/transformation/transformers/spec/block-scoped-functions.js b/src/babel/transformation/transformers/spec/block-scoped-functions.js similarity index 100% rename from lib/babel/transformation/transformers/spec/block-scoped-functions.js rename to src/babel/transformation/transformers/spec/block-scoped-functions.js diff --git a/lib/babel/transformation/transformers/spec/function-name.js b/src/babel/transformation/transformers/spec/function-name.js similarity index 100% rename from lib/babel/transformation/transformers/spec/function-name.js rename to src/babel/transformation/transformers/spec/function-name.js diff --git a/lib/babel/transformation/transformers/spec/proto-to-assign.js b/src/babel/transformation/transformers/spec/proto-to-assign.js similarity index 100% rename from lib/babel/transformation/transformers/spec/proto-to-assign.js rename to src/babel/transformation/transformers/spec/proto-to-assign.js diff --git a/lib/babel/transformation/transformers/spec/typeof-symbol.js b/src/babel/transformation/transformers/spec/typeof-symbol.js similarity index 100% rename from lib/babel/transformation/transformers/spec/typeof-symbol.js rename to src/babel/transformation/transformers/spec/typeof-symbol.js diff --git a/lib/babel/transformation/transformers/spec/undefined-to-void.js b/src/babel/transformation/transformers/spec/undefined-to-void.js similarity index 100% rename from lib/babel/transformation/transformers/spec/undefined-to-void.js rename to src/babel/transformation/transformers/spec/undefined-to-void.js diff --git a/lib/babel/transformation/transformers/validation/no-for-in-of-assignment.js b/src/babel/transformation/transformers/validation/no-for-in-of-assignment.js similarity index 100% rename from lib/babel/transformation/transformers/validation/no-for-in-of-assignment.js rename to src/babel/transformation/transformers/validation/no-for-in-of-assignment.js diff --git a/lib/babel/transformation/transformers/validation/react.js b/src/babel/transformation/transformers/validation/react.js similarity index 100% rename from lib/babel/transformation/transformers/validation/react.js rename to src/babel/transformation/transformers/validation/react.js diff --git a/lib/babel/transformation/transformers/validation/setters.js b/src/babel/transformation/transformers/validation/setters.js similarity index 100% rename from lib/babel/transformation/transformers/validation/setters.js rename to src/babel/transformation/transformers/validation/setters.js diff --git a/lib/babel/transformation/transformers/validation/undeclared-variable-check.js b/src/babel/transformation/transformers/validation/undeclared-variable-check.js similarity index 100% rename from lib/babel/transformation/transformers/validation/undeclared-variable-check.js rename to src/babel/transformation/transformers/validation/undeclared-variable-check.js diff --git a/lib/babel/traversal/context.js b/src/babel/traversal/context.js similarity index 100% rename from lib/babel/traversal/context.js rename to src/babel/traversal/context.js diff --git a/lib/babel/traversal/index.js b/src/babel/traversal/index.js similarity index 100% rename from lib/babel/traversal/index.js rename to src/babel/traversal/index.js diff --git a/lib/babel/traversal/path.js b/src/babel/traversal/path.js similarity index 100% rename from lib/babel/traversal/path.js rename to src/babel/traversal/path.js diff --git a/lib/babel/traversal/scope.js b/src/babel/traversal/scope.js similarity index 100% rename from lib/babel/traversal/scope.js rename to src/babel/traversal/scope.js diff --git a/lib/babel/types/alias-keys.json b/src/babel/types/alias-keys.json similarity index 100% rename from lib/babel/types/alias-keys.json rename to src/babel/types/alias-keys.json diff --git a/lib/babel/types/builder-keys.json b/src/babel/types/builder-keys.json similarity index 100% rename from lib/babel/types/builder-keys.json rename to src/babel/types/builder-keys.json diff --git a/lib/babel/types/index.js b/src/babel/types/index.js similarity index 100% rename from lib/babel/types/index.js rename to src/babel/types/index.js diff --git a/lib/babel/types/visitor-keys.json b/src/babel/types/visitor-keys.json similarity index 100% rename from lib/babel/types/visitor-keys.json rename to src/babel/types/visitor-keys.json diff --git a/lib/babel/util.js b/src/babel/util.js similarity index 81% rename from lib/babel/util.js rename to src/babel/util.js index 803e0b4eb4..2b0b935838 100644 --- a/lib/babel/util.js +++ b/src/babel/util.js @@ -2,20 +2,21 @@ require("./patch"); -var cloneDeep = require("lodash/lang/cloneDeep"); -var contains = require("lodash/collection/contains"); -var traverse = require("./traversal"); -var isString = require("lodash/lang/isString"); -var isRegExp = require("lodash/lang/isRegExp"); -var isEmpty = require("lodash/lang/isEmpty"); -var parse = require("./helpers/parse"); -var debug = require("debug/node"); -var path = require("path"); -var util = require("util"); -var each = require("lodash/collection/each"); -var has = require("lodash/object/has"); -var fs = require("fs"); -var t = require("./types"); +var cloneDeep = require("lodash/lang/cloneDeep"); +var isBoolean = require("lodash/lang/isBoolean"); +var contains = require("lodash/collection/contains"); +var traverse = require("./traversal"); +var isString = require("lodash/lang/isString"); +var isRegExp = require("lodash/lang/isRegExp"); +var isEmpty = require("lodash/lang/isEmpty"); +var parse = require("./helpers/parse"); +var debug = require("debug/node"); +var path = require("path"); +var util = require("util"); +var each = require("lodash/collection/each"); +var has = require("lodash/object/has"); +var fs = require("fs"); +var t = require("./types"); exports.inherits = util.inherits; @@ -51,6 +52,7 @@ exports.regexify = function (val) { exports.arrayify = function (val) { if (!val) return []; + if (isBoolean(val)) return [val]; if (isString(val)) return exports.list(val); if (Array.isArray(val)) return val; throw new TypeError("illegal type for arrayify"); diff --git a/test/.babelrc b/test/.babelrc new file mode 100644 index 0000000000..3a8f8eb911 --- /dev/null +++ b/test/.babelrc @@ -0,0 +1,3 @@ +{ + "breakConfig": true +}