diff --git a/webpack.config.js b/webpack.config.js index 01944a774..f6c33b782 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -9,7 +9,7 @@ const request = require('request-promise'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin'); -const ManifestPlugin = require('webpack-manifest-plugin'); +const { WebpackManifestPlugin } = require('webpack-manifest-plugin'); const { CleanWebpackPlugin } = require('clean-webpack-plugin'); const CopyPlugin = require('copy-webpack-plugin'); const TerserPlugin = require('terser-webpack-plugin'); @@ -125,6 +125,12 @@ async function webpackConfig() { chunkFilename: '[chunkhash].css', ignoreOrder: false, // Enable to remove warnings about conflicting order }), + new WebpackManifestPlugin({ + fileName: path.resolve(__dirname, 'config', 'webpack.yml'), + publicPath: `wp-${webpackVersion}`, + generate: (seed, files, entrypoints) => Object.keys(entrypoints).reduce((acc, fs) => ({...acc, [fs]: files.filter(file => entrypoints[fs].filter(basename => !(/\.map$/.test(basename))).some(basename => file.path.endsWith(basename))).filter(file => file.isInitial).map(file => file.path)}), {}), + serialize: yaml.dump + }), new CleanWebpackPlugin({ cleanOnceBeforeBuildPatterns: [ path.resolve(__dirname, 'static'), path.resolve(__dirname, 'well-known'),