const path = require("path"); const TerserJSPlugin = require('terser-webpack-plugin'); const HtmlPlugin = require("html-webpack-plugin"); const MiniCssExtractPlugin = require("mini-css-extract-plugin"); const CleanWebpackPlugin = require("clean-webpack-plugin"); const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin'); module.exports = { plugins: [ new CleanWebpackPlugin(), new HtmlPlugin({template: "./ui/masterpage-webpack.tpl", filename: "../masterpage.tpl"}), new MiniCssExtractPlugin({filename: "styles.css"}) ], module: { rules: [ { test: /\.(css|scss)$/, use: [ {loader: "style-loader"}, MiniCssExtractPlugin.loader, {loader: "css-loader", options: {url: false,}}, "sass-loader" ] } ] }, optimization: { minimizer: [new TerserJSPlugin({}), new OptimizeCSSAssetsPlugin({})], }, entry: "./ui/js/index.js", output: { path: path.resolve(__dirname, "ui/dist/"), filename: "bundle.js" }, mode: "production" };