diff options
Diffstat (limited to 'config/webpack/shared.js')
-rw-r--r-- | config/webpack/shared.js | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/config/webpack/shared.js b/config/webpack/shared.js index d6199373b..cb4e5a85f 100644 --- a/config/webpack/shared.js +++ b/config/webpack/shared.js @@ -6,7 +6,8 @@ const { sync } = require('glob'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); const AssetsManifestPlugin = require('webpack-assets-manifest'); const extname = require('path-complete-extname'); -const { env, settings, themes, output, loadersDir } = require('./configuration.js'); +const { env, settings, themes, output } = require('./configuration'); +const rules = require('./rules'); const localePackPaths = require('./generateLocalePacks'); const extensionGlob = `**/*{${settings.extensions.join(',')}}*`; @@ -33,8 +34,9 @@ module.exports = { ), output: { - filename: '[name].js', - chunkFilename: '[name].js', + filename: 'js/[name]-[chunkhash].js', + chunkFilename: 'js/[name]-[chunkhash].chunk.js', + hotUpdateChunkFilename: 'js/[id]-[hash].hot-update.js', path: output.path, publicPath: output.publicPath, }, @@ -60,7 +62,7 @@ module.exports = { }, module: { - rules: sync(join(loadersDir, '*.js')).map(loader => require(loader)), + rules: Object.keys(rules).map(key => rules[key]), }, plugins: [ @@ -73,11 +75,14 @@ module.exports = { } ), new MiniCssExtractPlugin({ - filename: env.NODE_ENV === 'production' ? '[name]-[contenthash].css' : '[name].css', + filename: 'css/[name]-[contenthash:8].css', + chunkFilename: 'css/[name]-[contenthash:8].chunk.css', }), new AssetsManifestPlugin({ - publicPath: true, + integrity: false, + entrypoints: true, writeToDisk: true, + publicPath: true, }), ], |