UNPKG

labo-components

Version:
73 lines (71 loc) 2.35 kB
const path = require('path'); const MiniCssExtractPlugin = require("mini-css-extract-plugin"); const BUILD_DIR = path.resolve(__dirname, '../dist'); const APP_DIR = path.resolve(__dirname, '../app'); const CssMinimizerPlugin = require('css-minimizer-webpack-plugin');//https://github.com/webpack-contrib/css-minimizer-webpack-plugin const TerserPlugin = require('terser-webpack-plugin'); //https://webpack.js.org/plugins/terser-webpack-plugin/ module.exports = { entry: ["@babel/polyfill", APP_DIR + '/index.jsx'], output: { path: BUILD_DIR, filename: 'labo-components.js', libraryTarget: 'umd', library: 'labo' }, optimization: { minimize: true, minimizer: [ new TerserPlugin({ parallel: true, terserOptions: { compress: {toplevel : true}, mangle: {}, // Note `mangle.properties` is `false` by default. keep_fnames: true //deprecated apparently } }), new CssMinimizerPlugin() ], }, module: { rules: [ { test: /\.(js|jsx)$/, exclude: [ path.resolve(__dirname, 'node_modules'), path.resolve(__dirname, 'dist'), path.resolve(__dirname, '__tests__'), path.resolve(__dirname, 'sass'), path.resolve(__dirname, 'webpack_envs'), path.resolve(__dirname, '.github') ], loader: "babel-loader" }, { test: /\.woff($|\?)|\.woff2($|\?)|\.ttf($|\?)|\.eot($|\?)|\.svg($|\?)|\.gif($|\?)/, loader: 'url-loader' }, { test: /\.scss$/, use: [ MiniCssExtractPlugin.loader, { loader: "css-loader" }, "sass-loader" ] } ] }, resolve: { extensions: ['.js', '.jsx'] }, performance: { maxEntrypointSize: 4096000, maxAssetSize: 4096000 }, plugins: [ new MiniCssExtractPlugin({ filename: "labo-components.css" }) ] };