UNPKG

spinjs

Version:

<p align="center"><a href="#"><img width="150" src="https://rawgit.com/sysgears/spinjs/master/logo.svg"></a></p>

47 lines 2.16 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var path = require("path"); var JSRuleFinder_1 = require("./shared/JSRuleFinder"); var ES6Plugin = (function () { function ES6Plugin() { } ES6Plugin.prototype.configure = function (builder, spin) { if (builder.stack.hasAll(['es6', 'webpack']) && (!builder.stack.hasAny('dll') || builder.stack.hasAny(['android', 'ios']))) { if (builder.stack.hasAny('es6') && !builder.stack.hasAny('dll')) { builder.config = spin.merge({ entry: { index: ['babel-polyfill'] } }, builder.config); } var jsRuleFinder = new JSRuleFinder_1.default(builder); var jsRule = jsRuleFinder.findAndCreateJSRule(); jsRule.exclude = /node_modules/; jsRule.use = { loader: builder.require.probe('heroku-babel-loader') ? 'heroku-babel-loader' : 'babel-loader', options: spin.merge({ babelrc: false, cacheDirectory: builder.cache === false || (builder.cache === 'auto' && !spin.dev) ? false : path.join(builder.cache === true ? '.cache' : builder.cache, 'babel-loader'), compact: !spin.dev, presets: [ 'babel-preset-react', ['babel-preset-env', { modules: false }], 'babel-preset-stage-0' ].concat(spin.dev ? [] : [['babel-preset-minify', { mangle: false }]]), plugins: [ 'babel-plugin-transform-runtime', 'babel-plugin-transform-decorators-legacy', 'babel-plugin-transform-class-properties' ], only: jsRuleFinder.extensions.map(function (ext) { return '*.' + ext; }) }, builder.babelConfig) }; } }; return ES6Plugin; }()); exports.default = ES6Plugin; //# sourceMappingURL=ES6Plugin.js.map