import { Configuration } from 'webpack'; import { CleanWebpackPlugin } from 'clean-webpack-plugin'; import MiniCssExtractPlugin from 'mini-css-extract-plugin'; import { merge } from 'webpack-merge'; import webpackConfigBase from './webpack.config.base'; const config = merge(webpackConfigBase, { mode: 'production', output: { filename: '[name]-[fullhash:8].js', }, module: { rules: [ { test: /\.css$/i, use: [ 'style-loader', { loader: MiniCssExtractPlugin.loader, options: { esModule: false, }, }, { loader: 'css-loader', options: { importLoaders: 1, }, }, 'postcss-loader', ], }, ], }, plugins: [ new CleanWebpackPlugin(), new MiniCssExtractPlugin({ filename: '[name]-[fullhash:8].css', chunkFilename: '[id]-[fullhash:8].css', }), ], }); export default config;