diff options
Diffstat (limited to 'electron/service/config/prod.js')
| -rw-r--r-- | electron/service/config/prod.js | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/electron/service/config/prod.js b/electron/service/config/prod.js new file mode 100644 index 00000000..1d9e8726 --- /dev/null +++ b/electron/service/config/prod.js @@ -0,0 +1,41 @@ +'use strict' + +const { merge } = require('webpack-merge') +const TerserPlugin = require('terser-webpack-plugin') + +const baseWebpackConfig = require('./base') +const cssWebpackConfig = require('./css') +const config = require('../project.config') +const terserOptions = require('./terserOptions') + +module.exports = merge(baseWebpackConfig, cssWebpackConfig, { + mode: 'production', + + output: { + publicPath: config.build.publicPath, + }, + + optimization: { + minimize: true, + minimizer: [new TerserPlugin(terserOptions())], + moduleIds: 'deterministic', + moduleIds: 'named', + splitChunks: { + cacheGroups: { + defaultVendors: { + name: `chunk-vendors`, + test: /[\\/]node_modules[\\/]/, + priority: -10, + chunks: 'initial', + }, + common: { + name: `chunk-common`, + minChunks: 2, + priority: -20, + chunks: 'initial', + reuseExistingChunk: true, + }, + }, + }, + }, +}) |
