UNPKG

dool-build

Version:
99 lines (90 loc) 2.38 kB
'use strict'; 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'];