import { CleanWebpackPlugin } from "clean-webpack-plugin"; import * as webpack from 'webpack'; import { merge } from 'webpack-merge'; import { VersionPlugin } from '../utils/VersionPlugin'; import common, { buildVersion } from './webpack.common'; import TerserPlugin = require('terser-webpack-plugin'); const config: webpack.Configuration = merge( common, { mode: "production", devtool: "source-map", optimization: { minimizer: [ new TerserPlugin({ parallel: true, terserOptions: { ecma: 2020, sourceMap: true, keep_classnames: true, } }), ] }, plugins: [ new CleanWebpackPlugin({ cleanOnceBeforeBuildPatterns: ["*.main.js*", "*.worker.js*", "*.LICENSE.txt"] }), new VersionPlugin(common.output.path, buildVersion), ] } ); export default config;