diff --git a/packages/babel-compiler/.npm/package/npm-shrinkwrap.json b/packages/babel-compiler/.npm/package/npm-shrinkwrap.json index fcb8861ff9..cab253a6e1 100644 --- a/packages/babel-compiler/.npm/package/npm-shrinkwrap.json +++ b/packages/babel-compiler/.npm/package/npm-shrinkwrap.json @@ -1,112 +1,397 @@ { "dependencies": { + "babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.8.0.tgz", + "from": "babel-plugin-transform-es2015-modules-commonjs@6.8.0", + "dependencies": { + "babel-plugin-transform-strict-mode": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.8.0.tgz", + "from": "babel-plugin-transform-strict-mode@>=6.8.0 <7.0.0" + }, + "babel-runtime": { + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.0.tgz", + "from": "babel-runtime@>=6.0.0 <7.0.0", + "dependencies": { + "core-js": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.4.0.tgz", + "from": "core-js@>=2.4.0 <3.0.0" + } + } + }, + "babel-template": { + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.9.0.tgz", + "from": "babel-template@>=6.8.0 <7.0.0", + "dependencies": { + "babel-traverse": { + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.9.0.tgz", + "from": "babel-traverse@>=6.9.0 <7.0.0", + "dependencies": { + "babel-code-frame": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.8.0.tgz", + "from": "babel-code-frame@>=6.8.0 <7.0.0", + "dependencies": { + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "from": "chalk@>=1.1.0 <2.0.0", + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "from": "ansi-styles@>=2.2.1 <3.0.0" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "from": "escape-string-regexp@>=1.0.2 <2.0.0" + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "from": "has-ansi@>=2.0.0 <3.0.0", + "dependencies": { + "ansi-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", + "from": "ansi-regex@>=2.0.0 <3.0.0" + } + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "from": "strip-ansi@>=3.0.0 <4.0.0", + "dependencies": { + "ansi-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", + "from": "ansi-regex@>=2.0.0 <3.0.0" + } + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "from": "supports-color@>=2.0.0 <3.0.0" + } + } + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "from": "esutils@>=2.0.2 <3.0.0" + }, + "js-tokens": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.3.tgz", + "from": "js-tokens@>=1.0.2 <2.0.0" + } + } + }, + "babel-messages": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz", + "from": "babel-messages@>=6.8.0 <7.0.0" + }, + "debug": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "from": "debug@>=2.2.0 <3.0.0", + "dependencies": { + "ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "from": "ms@0.7.1" + } + } + }, + "globals": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-8.18.0.tgz", + "from": "globals@>=8.3.0 <9.0.0" + }, + "invariant": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.1.tgz", + "from": "invariant@>=2.2.0 <3.0.0", + "dependencies": { + "loose-envify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.2.0.tgz", + "from": "loose-envify@>=1.0.0 <2.0.0", + "dependencies": { + "js-tokens": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.3.tgz", + "from": "js-tokens@>=1.0.1 <2.0.0" + } + } + } + } + } + } + }, + "babylon": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.8.0.tgz", + "from": "babylon@>=6.7.0 <7.0.0" + }, + "lodash": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.12.0.tgz", + "from": "lodash@>=4.2.0 <5.0.0" + } + } + }, + "babel-types": { + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.9.0.tgz", + "from": "babel-types@>=6.8.0 <7.0.0", + "dependencies": { + "babel-traverse": { + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.9.0.tgz", + "from": "babel-traverse@>=6.9.0 <7.0.0", + "dependencies": { + "babel-code-frame": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.8.0.tgz", + "from": "babel-code-frame@>=6.8.0 <7.0.0", + "dependencies": { + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "from": "chalk@>=1.1.0 <2.0.0", + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "from": "ansi-styles@>=2.2.1 <3.0.0" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "from": "escape-string-regexp@>=1.0.2 <2.0.0" + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "from": "has-ansi@>=2.0.0 <3.0.0", + "dependencies": { + "ansi-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", + "from": "ansi-regex@>=2.0.0 <3.0.0" + } + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "from": "strip-ansi@>=3.0.0 <4.0.0", + "dependencies": { + "ansi-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", + "from": "ansi-regex@>=2.0.0 <3.0.0" + } + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "from": "supports-color@>=2.0.0 <3.0.0" + } + } + }, + "js-tokens": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.3.tgz", + "from": "js-tokens@>=1.0.2 <2.0.0" + } + } + }, + "babel-messages": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz", + "from": "babel-messages@>=6.8.0 <7.0.0" + }, + "babylon": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.8.0.tgz", + "from": "babylon@>=6.7.0 <7.0.0" + }, + "debug": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", + "from": "debug@>=2.2.0 <3.0.0", + "dependencies": { + "ms": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", + "from": "ms@0.7.1" + } + } + }, + "globals": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-8.18.0.tgz", + "from": "globals@>=8.3.0 <9.0.0" + }, + "invariant": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.1.tgz", + "from": "invariant@>=2.2.0 <3.0.0", + "dependencies": { + "loose-envify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.2.0.tgz", + "from": "loose-envify@>=1.0.0 <2.0.0", + "dependencies": { + "js-tokens": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.3.tgz", + "from": "js-tokens@>=1.0.1 <2.0.0" + } + } + } + } + } + } + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "from": "esutils@>=2.0.2 <3.0.0" + }, + "lodash": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.12.0.tgz", + "from": "lodash@>=4.2.0 <5.0.0" + }, + "to-fast-properties": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.2.tgz", + "from": "to-fast-properties@>=1.0.1 <2.0.0" + } + } + } + } + }, "meteor-babel": { "version": "0.10.2", "resolved": "https://registry.npmjs.org/meteor-babel/-/meteor-babel-0.10.2.tgz", - "from": "meteor-babel@0.10.2", + "from": "https://registry.npmjs.org/meteor-babel/-/meteor-babel-0.10.2.tgz", "dependencies": { "babel-core": { "version": "6.9.0", "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.9.0.tgz", - "from": "babel-core@>=6.9.0 <7.0.0", + "from": "https://registry.npmjs.org/babel-core/-/babel-core-6.9.0.tgz", "dependencies": { "babel-code-frame": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.8.0.tgz", - "from": "babel-code-frame@>=6.8.0 <7.0.0", + "from": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.8.0.tgz", "dependencies": { "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "from": "chalk@>=1.1.0 <2.0.0", + "from": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "dependencies": { "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "from": "ansi-styles@>=2.2.1 <3.0.0" + "from": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz" }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "from": "escape-string-regexp@>=1.0.2 <2.0.0" + "from": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "from": "has-ansi@>=2.0.0 <3.0.0", + "from": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "dependencies": { "ansi-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", - "from": "ansi-regex@>=2.0.0 <3.0.0" + "from": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" } } }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "from": "strip-ansi@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "dependencies": { "ansi-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", - "from": "ansi-regex@>=2.0.0 <3.0.0" + "from": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" } } }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "from": "supports-color@>=2.0.0 <3.0.0" + "from": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" } } }, "esutils": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "from": "esutils@>=2.0.2 <3.0.0" + "from": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz" }, "js-tokens": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.3.tgz", - "from": "js-tokens@>=1.0.2 <2.0.0" + "from": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.3.tgz" } } }, "babel-generator": { "version": "6.9.0", "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.9.0.tgz", - "from": "babel-generator@>=6.9.0 <7.0.0", + "from": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.9.0.tgz", "dependencies": { "detect-indent": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-3.0.1.tgz", - "from": "detect-indent@>=3.0.1 <4.0.0", + "from": "https://registry.npmjs.org/detect-indent/-/detect-indent-3.0.1.tgz", "dependencies": { "get-stdin": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "from": "get-stdin@>=4.0.1 <5.0.0" + "from": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz" }, "minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "from": "minimist@>=1.1.0 <2.0.0" + "from": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz" }, "repeating": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/repeating/-/repeating-1.1.3.tgz", - "from": "repeating@>=1.1.0 <2.0.0", + "from": "https://registry.npmjs.org/repeating/-/repeating-1.1.3.tgz", "dependencies": { "is-finite": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.1.tgz", - "from": "is-finite@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.1.tgz", "dependencies": { "number-is-nan": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.0.tgz", - "from": "number-is-nan@>=1.0.0 <2.0.0" + "from": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.0.tgz" } } } @@ -119,66 +404,66 @@ "babel-helpers": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.8.0.tgz", - "from": "babel-helpers@>=6.8.0 <7.0.0" + "from": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.8.0.tgz" }, "babel-messages": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz", - "from": "babel-messages@>=6.8.0 <7.0.0" + "from": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz" }, "babel-register": { "version": "6.9.0", "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.9.0.tgz", - "from": "babel-register@>=6.9.0 <7.0.0", + "from": "https://registry.npmjs.org/babel-register/-/babel-register-6.9.0.tgz", "dependencies": { "core-js": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.4.0.tgz", - "from": "core-js@>=2.4.0 <3.0.0" + "from": "https://registry.npmjs.org/core-js/-/core-js-2.4.0.tgz" }, "home-or-tmp": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-1.0.0.tgz", - "from": "home-or-tmp@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-1.0.0.tgz", "dependencies": { "os-tmpdir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.1.tgz", - "from": "os-tmpdir@>=1.0.1 <2.0.0" + "from": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.1.tgz" }, "user-home": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz", - "from": "user-home@>=1.1.1 <2.0.0" + "from": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz" } } }, "mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "from": "mkdirp@>=0.5.1 <0.6.0", + "from": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "dependencies": { "minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "from": "minimist@0.0.8" + "from": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" } } }, "source-map-support": { "version": "0.2.10", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.2.10.tgz", - "from": "source-map-support@>=0.2.10 <0.3.0", + "from": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.2.10.tgz", "dependencies": { "source-map": { "version": "0.1.32", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.32.tgz", - "from": "source-map@0.1.32", + "from": "https://registry.npmjs.org/source-map/-/source-map-0.1.32.tgz", "dependencies": { "amdefine": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.0.tgz", - "from": "amdefine@>=0.0.4" + "from": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.0.tgz" } } } @@ -189,39 +474,39 @@ "debug": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", - "from": "debug@>=2.1.1 <3.0.0", + "from": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", "dependencies": { "ms": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "from": "ms@0.7.1" + "from": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz" } } }, "json5": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/json5/-/json5-0.4.0.tgz", - "from": "json5@>=0.4.0 <0.5.0" + "from": "https://registry.npmjs.org/json5/-/json5-0.4.0.tgz" }, "minimatch": { "version": "2.0.10", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", - "from": "minimatch@>=2.0.3 <3.0.0", + "from": "https://registry.npmjs.org/minimatch/-/minimatch-2.0.10.tgz", "dependencies": { "brace-expansion": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", - "from": "brace-expansion@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.4.tgz", "dependencies": { "balanced-match": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.1.tgz", - "from": "balanced-match@>=0.4.1 <0.5.0" + "from": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.1.tgz" }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "from": "concat-map@0.0.1" + "from": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" } } } @@ -230,38 +515,38 @@ "path-exists": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-1.0.0.tgz", - "from": "path-exists@>=1.0.0 <2.0.0" + "from": "https://registry.npmjs.org/path-exists/-/path-exists-1.0.0.tgz" }, "path-is-absolute": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz", - "from": "path-is-absolute@>=1.0.0 <2.0.0" + "from": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz" }, "private": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/private/-/private-0.1.6.tgz", - "from": "private@>=0.1.6 <0.2.0" + "from": "https://registry.npmjs.org/private/-/private-0.1.6.tgz" }, "shebang-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "from": "shebang-regex@>=1.0.0 <2.0.0" + "from": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz" }, "slash": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "from": "slash@>=1.0.0 <2.0.0" + "from": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz" }, "source-map": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", - "from": "source-map@>=0.5.0 <0.6.0" + "from": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" } } }, "babel-preset-meteor": { "version": "6.8.1", - "from": "babel-preset-meteor@>=6.8.1 <7.0.0", + "from": "babel-preset-meteor@6.8.1", "dependencies": { "babel-plugin-check-es2015-constants": { "version": "6.8.0", @@ -570,42 +855,42 @@ "babel-preset-react": { "version": "6.5.0", "resolved": "https://registry.npmjs.org/babel-preset-react/-/babel-preset-react-6.5.0.tgz", - "from": "babel-preset-react@>=6.5.0 <7.0.0", + "from": "https://registry.npmjs.org/babel-preset-react/-/babel-preset-react-6.5.0.tgz", "dependencies": { "babel-plugin-syntax-flow": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.8.0.tgz", - "from": "babel-plugin-syntax-flow@>=6.3.13 <7.0.0" + "from": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.8.0.tgz" }, "babel-plugin-syntax-jsx": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.8.0.tgz", - "from": "babel-plugin-syntax-jsx@>=6.3.13 <7.0.0" + "from": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.8.0.tgz" }, "babel-plugin-transform-flow-strip-types": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.8.0.tgz", - "from": "babel-plugin-transform-flow-strip-types@>=6.3.13 <7.0.0" + "from": "https://registry.npmjs.org/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.8.0.tgz" }, "babel-plugin-transform-react-display-name": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.8.0.tgz", - "from": "babel-plugin-transform-react-display-name@>=6.3.13 <7.0.0" + "from": "https://registry.npmjs.org/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.8.0.tgz" }, "babel-plugin-transform-react-jsx": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.8.0.tgz", - "from": "babel-plugin-transform-react-jsx@>=6.3.13 <7.0.0", + "from": "https://registry.npmjs.org/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.8.0.tgz", "dependencies": { "babel-helper-builder-react-jsx": { "version": "6.9.0", "resolved": "https://registry.npmjs.org/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.9.0.tgz", - "from": "babel-helper-builder-react-jsx@>=6.8.0 <7.0.0", + "from": "https://registry.npmjs.org/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.9.0.tgz", "dependencies": { "esutils": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "from": "esutils@>=2.0.0 <3.0.0" + "from": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz" } } } @@ -614,131 +899,131 @@ "babel-plugin-transform-react-jsx-source": { "version": "6.9.0", "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.9.0.tgz", - "from": "babel-plugin-transform-react-jsx-source@>=6.3.13 <7.0.0" + "from": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.9.0.tgz" } } }, "babel-runtime": { "version": "6.9.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.0.tgz", - "from": "babel-runtime@>=6.9.0 <7.0.0", + "from": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.9.0.tgz", "dependencies": { "core-js": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.4.0.tgz", - "from": "core-js@>=2.4.0 <3.0.0" + "from": "https://registry.npmjs.org/core-js/-/core-js-2.4.0.tgz" } } }, "babel-template": { "version": "6.9.0", "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.9.0.tgz", - "from": "babel-template@>=6.9.0 <7.0.0" + "from": "https://registry.npmjs.org/babel-template/-/babel-template-6.9.0.tgz" }, "babel-traverse": { "version": "6.9.0", "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.9.0.tgz", - "from": "babel-traverse@>=6.9.0 <7.0.0", + "from": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.9.0.tgz", "dependencies": { "babel-code-frame": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.8.0.tgz", - "from": "babel-code-frame@>=6.8.0 <7.0.0", + "from": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.8.0.tgz", "dependencies": { "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "from": "chalk@>=1.1.0 <2.0.0", + "from": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "dependencies": { "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "from": "ansi-styles@>=2.2.1 <3.0.0" + "from": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz" }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "from": "escape-string-regexp@>=1.0.2 <2.0.0" + "from": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "from": "has-ansi@>=2.0.0 <3.0.0", + "from": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "dependencies": { "ansi-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", - "from": "ansi-regex@>=2.0.0 <3.0.0" + "from": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" } } }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "from": "strip-ansi@>=3.0.0 <4.0.0", + "from": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "dependencies": { "ansi-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz", - "from": "ansi-regex@>=2.0.0 <3.0.0" + "from": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.0.0.tgz" } } }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "from": "supports-color@>=2.0.0 <3.0.0" + "from": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" } } }, "esutils": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "from": "esutils@>=2.0.2 <3.0.0" + "from": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz" }, "js-tokens": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.3.tgz", - "from": "js-tokens@>=1.0.2 <2.0.0" + "from": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.3.tgz" } } }, "babel-messages": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz", - "from": "babel-messages@>=6.8.0 <7.0.0" + "from": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.8.0.tgz" }, "debug": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", - "from": "debug@>=2.2.0 <3.0.0", + "from": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", "dependencies": { "ms": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "from": "ms@0.7.1" + "from": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz" } } }, "globals": { "version": "8.18.0", "resolved": "https://registry.npmjs.org/globals/-/globals-8.18.0.tgz", - "from": "globals@>=8.3.0 <9.0.0" + "from": "https://registry.npmjs.org/globals/-/globals-8.18.0.tgz" }, "invariant": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.1.tgz", - "from": "invariant@>=2.2.0 <3.0.0", + "from": "https://registry.npmjs.org/invariant/-/invariant-2.2.1.tgz", "dependencies": { "loose-envify": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.2.0.tgz", - "from": "loose-envify@>=1.0.0 <2.0.0", + "from": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.2.0.tgz", "dependencies": { "js-tokens": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.3.tgz", - "from": "js-tokens@>=1.0.1 <2.0.0" + "from": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.3.tgz" } } } @@ -749,48 +1034,49 @@ "babel-types": { "version": "6.9.0", "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.9.0.tgz", - "from": "babel-types@>=6.9.0 <7.0.0", + "from": "https://registry.npmjs.org/babel-types/-/babel-types-6.9.0.tgz", "dependencies": { "esutils": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "from": "esutils@>=2.0.2 <3.0.0" + "from": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz" }, "to-fast-properties": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.2.tgz", - "from": "to-fast-properties@>=1.0.1 <2.0.0" + "from": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.2.tgz" } } }, "babylon": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.8.0.tgz", - "from": "babylon@>=6.8.0 <7.0.0" + "from": "https://registry.npmjs.org/babylon/-/babylon-6.8.0.tgz" }, "convert-source-map": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.2.0.tgz", - "from": "convert-source-map@>=1.2.0 <2.0.0" + "from": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.2.0.tgz" }, "lodash": { "version": "4.12.0", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.12.0.tgz", - "from": "lodash@>=4.12.0 <5.0.0" + "from": "https://registry.npmjs.org/lodash/-/lodash-4.12.0.tgz" }, "meteor-babel-helpers": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/meteor-babel-helpers/-/meteor-babel-helpers-0.0.3.tgz", - "from": "meteor-babel-helpers@0.0.3" + "from": "https://registry.npmjs.org/meteor-babel-helpers/-/meteor-babel-helpers-0.0.3.tgz" }, "reify": { "version": "0.1.10", - "from": "reify@>=0.1.10 <0.2.0", + "resolved": "https://registry.npmjs.org/reify/-/reify-0.1.10.tgz", + "from": "reify@0.1.10", "dependencies": { "acorn": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.1.0.tgz", - "from": "acorn@>=3.1.0 <3.2.0" + "from": "https://registry.npmjs.org/acorn/-/acorn-3.1.0.tgz" } } } diff --git a/packages/babel-compiler/babel-compiler.js b/packages/babel-compiler/babel-compiler.js index 64f6e53895..169b727b56 100644 --- a/packages/babel-compiler/babel-compiler.js +++ b/packages/babel-compiler/babel-compiler.js @@ -10,6 +10,25 @@ BabelCompiler = function BabelCompiler(extraFeatures) { var BCp = BabelCompiler.prototype; var excludedFileExtensionPattern = /\.es5\.js$/i; +var strictModulesPluginFactory = + Npm.require("babel-plugin-transform-es2015-modules-commonjs"); + +var babelModulesPlugin = [function () { + var plugin = strictModulesPluginFactory.apply(this, arguments); + // Since babel-preset-meteor uses an exact version of the + // babel-plugin-transform-es2015-modules-commonjs transform (6.8.0), we + // can be sure this plugin.inherits property is indeed the + // babel-plugin-transform-strict-mode transform that we wish to disable. + // Otherwise it would be difficult to know exactly what we're deleting + // here, since plugins don't provide much identifying information. + delete plugin.inherits; + return plugin; +}, { + allowTopLevelThis: true, + strict: false, + loose: true +}]; + BCp.processFilesForTarget = function (inputFiles) { var self = this; @@ -48,6 +67,23 @@ BCp.processFilesForTarget = function (inputFiles) { } var babelOptions = Babel.getDefaultOptions(self.extraFeatures); + + if (inputFile.isPackageFile()) { + // When compiling package files, handle import/export syntax using + // the official Babel plugin, so that package authors won't + // publish code that relies on module.import and module.export, + // because such code would fail on Meteor versions before 1.3.3. + // When compiling application files, however, it's fine to rely on + // module.import and module.export, and the developer experience + // will be much better for it: faster compilation, real variables, + // import statements inside conditional statements, etc. + // + // TODO Remove this once we are confident enough developers have + // updated to a version of Meteor that supports module.import and + // module.export. + babelOptions.plugins.push(babelModulesPlugin); + } + inferExtraBabelOptions(inputFile, babelOptions); babelOptions.sourceMap = true; diff --git a/packages/babel-compiler/package.js b/packages/babel-compiler/package.js index 73db484995..8f5870f5c9 100644 --- a/packages/babel-compiler/package.js +++ b/packages/babel-compiler/package.js @@ -10,7 +10,8 @@ Package.describe({ }); Npm.depends({ - 'meteor-babel': '0.10.2' + 'meteor-babel': '0.10.2', + 'babel-plugin-transform-es2015-modules-commonjs': "6.8.0" }); Package.onUse(function (api) { diff --git a/tools/isobuild/compiler-plugin.js b/tools/isobuild/compiler-plugin.js index 83295028d2..7884f35a55 100644 --- a/tools/isobuild/compiler-plugin.js +++ b/tools/isobuild/compiler-plugin.js @@ -224,6 +224,27 @@ class InputFile extends buildPluginModule.InputFile { return self._resourceSlot.packageSourceBatch.unibuild.pkg.name; } + isPackageFile() { + return !! this.getPackageName(); + } + + isApplicationFile() { + return ! this.getPackageName(); + } + + getSourceRoot() { + const sourceRoot = this._resourceSlot.packageSourceBatch.sourceRoot; + + if (! _.isString(sourceRoot)) { + const name = this.getPackageName(); + throw new Error( + "Unknown source root for " + ( + name ? "package " + name : "app")); + } + + return sourceRoot; + } + getPathInPackage() { var self = this; return self._resourceSlot.inputResource.path;