File size: 1,605 Bytes
d86254c 1809cfd 4554dfb d86254c ebda3a6 c766f4e 8122c36 1f3be9a c766f4e 4554dfb 46d90fa 8122c36 c766f4e 8122c36 dd89937 c766f4e 1809cfd ebda3a6 17851f6 ebda3a6 1809cfd d86254c c766f4e 1809cfd 8122c36 1809cfd 4554dfb 1809cfd c766f4e ebda3a6 c766f4e |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
const path = require('path');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin');
module.exports = {
mode: 'production',
entry: [
'./src/driver.scss',
'./src/index.js',
],
output: {
path: path.join(__dirname, '/../dist'),
publicPath: '/dist/',
filename: 'driver.min.js',
libraryTarget: 'umd',
library: 'Driver',
libraryExport: 'default',
},
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'eslint-loader',
enforce: 'pre',
options: {
failOnWarning: false,
failOnError: true,
},
},
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel-loader',
},
{
test: /.scss$/,
loader: ExtractTextPlugin.extract([
{
loader: 'css-loader',
options: { url: false },
},
'sass-loader',
]),
},
],
},
plugins: [
new ExtractTextPlugin({
filename: 'driver.min.css',
allChunks: true,
}),
new OptimizeCssAssetsPlugin({
assetNameRegExp: /\.min\.css$/g,
// eslint-disable-next-line global-require
cssProcessor: require('cssnano'),
cssProcessorPluginOptions: {
preset: [
'default',
{
discardComments: { removeAll: true },
},
],
},
canPrint: true,
}),
],
stats: {
colors: true,
},
devtool: 'cheap-module-source-map',
};
|