Skip to content

Commit

Permalink
Use local babelOptions defined by package
Browse files Browse the repository at this point in the history
  • Loading branch information
matthewp committed Jul 19, 2018
1 parent 17bf502 commit 0f75e27
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 25 deletions.
61 changes: 39 additions & 22 deletions lib/graph/treeshake.js
Expand Up @@ -132,32 +132,47 @@ function loadFromGraph(getNode) {

function transpile(getNode, data) {
let loader = data.loader;
let opts = loader.babelOptions || {};
let required = ["es2015", {loose: false, modules: false}];

opts.presets = processBabelPresets({
baseURL: loader.baseURL,
babelOptions: opts,
loaderEnv: loader.getEnv()
});
function getBabelOptions(node) {
let opts = loader.babelOptions || {};
var npmPkg = node.load.metadata.npmPackage;
if(npmPkg) {
var pkgSteal = npmPkg.steal || npmPkg.system;
if(pkgSteal && pkgSteal.babelOptions) {
opts = pkgSteal.babelOptions;
}
}
return opts;
}

opts.plugins = processBabelPlugins({
baseURL: loader.baseURL,
babelOptions: opts,
loaderEnv: loader.getEnv()
});
function setBabelOptions(opts) {
let required = ["es2015", {loose: false, modules: false}];

if(opts.presets && opts.presets.length) {
opts.presets = [required].concat(opts.presets);
} else {
opts.presets = [
"react",
"stage-0",
required
];
}
opts.presets = processBabelPresets({
baseURL: loader.baseURL,
babelOptions: opts,
loaderEnv: loader.getEnv()
});

opts.sourceMaps = true;
opts.plugins = processBabelPlugins({
baseURL: loader.baseURL,
babelOptions: opts,
loaderEnv: loader.getEnv()
});

if(opts.presets && opts.presets.length) {
opts.presets = [required].concat(opts.presets);
} else {
opts.presets = [
"react",
"stage-0",
required
];
}

opts.sourceMaps = true;
return opts;
}

return {
transform: function(code, id) {
Expand All @@ -166,6 +181,8 @@ function transpile(getNode, data) {
return code;
}

let opts = setBabelOptions(getBabelOptions(node));

let result = babel.transform(code, opts);

for(let depName of node.load.metadata.dependencies) {
Expand Down
3 changes: 2 additions & 1 deletion test/dev_bundle_forward/dev.html
Expand Up @@ -8,10 +8,11 @@
</head>
<body>
<script
src="../../node_modules/steal/steal-sans-promises.js"
src="../../node_modules/steal/steal.js"
base-url="."
config-main="package.json!npm"
dev-bundle
main
></script>
</body>
</html>
5 changes: 3 additions & 2 deletions test/dev_bundles_minify/dev.html
Expand Up @@ -7,10 +7,11 @@
<title>Minified development bundles</title>
</head>
<body>
<script src="../../node_modules/steal/steal-sans-promises.js"
<script src="../../node_modules/steal/steal.js"
base-url="."
config-main="package.json!npm"
deps-bundle="dev-bundle"
main
></script>
</body>
</html>
</html>

0 comments on commit 0f75e27

Please sign in to comment.