dool-build
Version:
d-band tool & dev tool
99 lines (90 loc) • 2.38 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
var _extractTextWebpackPlugin = require('extract-text-webpack-plugin');
var _extractTextWebpackPlugin2 = _interopRequireDefault(_extractTextWebpackPlugin);
var _babelrc = require('./babelrc');
var _babelrc2 = _interopRequireDefault(_babelrc);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = function (args) {
var css = {
loader: 'css-loader',
options: {
sourceMap: true,
minimize: args.compress
}
};
var postcss = {
loader: 'postcss-loader',
options: {
sourceMap: true,
plugins: function plugins(loader) {
return [require('autoprefixer')({
browsers: ['last 2 versions', 'Firefox ESR', '> 1%', 'ie >= 8', 'iOS >= 8', 'Android >= 4']
})];
}
}
};
var less = {
loader: 'less-loader',
options: {
sourceMap: true
}
};
var babel = {
loader: 'babel-loader',
options: (0, _babelrc2.default)()
};
return [_extends({
key: 'js',
test: /\.js$/,
exclude: /node_modules/
}, babel), _extends({
key: 'jsx',
test: /\.jsx$/
}, babel), {
key: 'css',
test: /\.css$/,
use: args.extract ? _extractTextWebpackPlugin2.default.extract({
use: [css, postcss]
}) : [css, postcss]
}, {
key: 'less',
test: /\.less$/,
use: args.extract ? _extractTextWebpackPlugin2.default.extract({
use: [css, postcss, less]
}) : [css, postcss, less]
}, {
key: 'font',
test: /\.(otf|ttf|woff2?|eot)(\?\S*)?$/,
loader: 'url-loader',
options: {
limit: 10000
}
}, {
key: 'svg',
test: /\.svg(\?\S*)?$/,
loader: 'url-loader',
options: {
limit: 10000
}
}, {
key: 'image',
test: /\.(gif|png|jpe?g)(\?\S*)?$/i,
loader: 'url-loader',
options: {
limit: 10000
}
}, {
key: 'json',
test: /\.json$/,
loader: 'json-loader'
}, {
key: 'atpl',
test: /\.atpl$/,
loader: 'atpl-loader'
}];
};
module.exports = exports['default'];