From e6c810e4bce0865796f4945c7fdf23798c7be0c0 Mon Sep 17 00:00:00 2001 From: CD Cabrera Date: Thu, 2 Jul 2026 01:48:12 -0400 Subject: [PATCH] refactor(wpConfigs): css-minimizer to minimizer-webpack-plugin --- cspell.config.json | 1 + .../__snapshots__/standalone.test.js.snap | 32 +++++++++---------- src/__tests__/__snapshots__/wp.test.js.snap | 1 + .../__snapshots__/wpConfigs.test.js.snap | 3 ++ src/standalone.js | 4 +-- src/wpConfigs.js | 7 ++-- 6 files changed, 27 insertions(+), 21 deletions(-) diff --git a/cspell.config.json b/cspell.config.json index 2700fa4..90affe5 100644 --- a/cspell.config.json +++ b/cspell.config.json @@ -6,6 +6,7 @@ "codecov", "cmds", "fnames", + "mimimizer", "nocolor", "oneline", "preprocess", diff --git a/src/__tests__/__snapshots__/standalone.test.js.snap b/src/__tests__/__snapshots__/standalone.test.js.snap index 91fd3f3..02918a9 100644 --- a/src/__tests__/__snapshots__/standalone.test.js.snap +++ b/src/__tests__/__snapshots__/standalone.test.js.snap @@ -78,9 +78,6 @@ exports[`standalone should attempt to createStandalonePackageJson for multiple l [ " * copy-webpack-plugin@X.X.X", ], - [ - " * css-minimizer-webpack-plugin@X.X.X", - ], [ " * html-webpack-plugin@X.X.X", ], @@ -93,6 +90,9 @@ exports[`standalone should attempt to createStandalonePackageJson for multiple l [ " * mini-svg-data-uri@X.X.X", ], + [ + " * minimizer-webpack-plugin@X.X.X", + ], [ " * terser-webpack-plugin@X.X.X", ], @@ -173,9 +173,6 @@ exports[`standalone should attempt to createStandalonePackageJson for multiple l [ " * copy-webpack-plugin@X.X.X", ], - [ - " * css-minimizer-webpack-plugin@X.X.X", - ], [ " * html-webpack-plugin@X.X.X", ], @@ -188,6 +185,9 @@ exports[`standalone should attempt to createStandalonePackageJson for multiple l [ " * mini-svg-data-uri@X.X.X", ], + [ + " * minimizer-webpack-plugin@X.X.X", + ], [ " * terser-webpack-plugin@X.X.X", ], @@ -266,9 +266,6 @@ exports[`standalone should attempt to createStandalonePackageJson for multiple l [ " * copy-webpack-plugin@X.X.X", ], - [ - " * css-minimizer-webpack-plugin@X.X.X", - ], [ " * html-webpack-plugin@X.X.X", ], @@ -281,6 +278,9 @@ exports[`standalone should attempt to createStandalonePackageJson for multiple l [ " * mini-svg-data-uri@X.X.X", ], + [ + " * minimizer-webpack-plugin@X.X.X", + ], [ " * terser-webpack-plugin@X.X.X", ], @@ -365,9 +365,6 @@ exports[`standalone should attempt to createStandalonePackageJson for multiple l [ " * copy-webpack-plugin@X.X.X", ], - [ - " * css-minimizer-webpack-plugin@X.X.X", - ], [ " * html-webpack-plugin@X.X.X", ], @@ -380,6 +377,9 @@ exports[`standalone should attempt to createStandalonePackageJson for multiple l [ " * mini-svg-data-uri@X.X.X", ], + [ + " * minimizer-webpack-plugin@X.X.X", + ], [ " * terser-webpack-plugin@X.X.X", ], @@ -496,10 +496,10 @@ const setupDotenv = require('dotenv'); const { expand: dotenvExpand } = require('dotenv-expand'); const { merge } = require('webpack-merge'); const CopyPlugin = require('copy-webpack-plugin'); -const CssMinimizerPlugin = require('css-minimizer-webpack-plugin'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const HtmlReplaceWebpackPlugin = require('html-replace-webpack-plugin'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); +const MimimizerPlugin = require('minimizer-webpack-plugin'); const SvgToMiniDataURI = require('mini-svg-data-uri'); const TerserJSPlugin = require('terser-webpack-plugin'); const cssLoaderResolve = require.resolve('css-loader'); @@ -627,10 +627,10 @@ const setupDotenv = require('dotenv'); const { expand: dotenvExpand } = require('dotenv-expand'); const { merge } = require('webpack-merge'); const CopyPlugin = require('copy-webpack-plugin'); -const CssMinimizerPlugin = require('css-minimizer-webpack-plugin'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const HtmlReplaceWebpackPlugin = require('html-replace-webpack-plugin'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); +const MimimizerPlugin = require('minimizer-webpack-plugin'); const SvgToMiniDataURI = require('mini-svg-data-uri'); const TerserJSPlugin = require('terser-webpack-plugin'); const cssLoaderResolve = require.resolve('css-loader'); @@ -716,10 +716,10 @@ const setupDotenv = require('dotenv'); const { expand: dotenvExpand } = require('dotenv-expand'); const { merge } = require('webpack-merge'); const CopyPlugin = require('copy-webpack-plugin'); -const CssMinimizerPlugin = require('css-minimizer-webpack-plugin'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const HtmlReplaceWebpackPlugin = require('html-replace-webpack-plugin'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); +const MimimizerPlugin = require('minimizer-webpack-plugin'); const SvgToMiniDataURI = require('mini-svg-data-uri'); const TerserJSPlugin = require('terser-webpack-plugin'); const cssLoaderResolve = require.resolve('css-loader'); @@ -804,10 +804,10 @@ const setupDotenv = require('dotenv'); const { expand: dotenvExpand } = require('dotenv-expand'); const { merge } = require('webpack-merge'); const CopyPlugin = require('copy-webpack-plugin'); -const CssMinimizerPlugin = require('css-minimizer-webpack-plugin'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const HtmlReplaceWebpackPlugin = require('html-replace-webpack-plugin'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); +const MimimizerPlugin = require('minimizer-webpack-plugin'); const SvgToMiniDataURI = require('mini-svg-data-uri'); const TerserJSPlugin = require('terser-webpack-plugin'); const cssLoaderResolve = require.resolve('css-loader'); diff --git a/src/__tests__/__snapshots__/wp.test.js.snap b/src/__tests__/__snapshots__/wp.test.js.snap index d8670a2..818622d 100644 --- a/src/__tests__/__snapshots__/wp.test.js.snap +++ b/src/__tests__/__snapshots__/wp.test.js.snap @@ -338,6 +338,7 @@ exports[`webpack should create a basic webpack config: basic configurations 1`] { "options": { "test": {}, + "extractComments": true, "parallel": true, "minimizer": { "options": { diff --git a/src/__tests__/__snapshots__/wpConfigs.test.js.snap b/src/__tests__/__snapshots__/wpConfigs.test.js.snap index 8c88cf7..022d168 100644 --- a/src/__tests__/__snapshots__/wpConfigs.test.js.snap +++ b/src/__tests__/__snapshots__/wpConfigs.test.js.snap @@ -1059,6 +1059,7 @@ exports[`webpackConfigs should return a production configuration object: product { "options": { "test": {}, + "extractComments": true, "parallel": true, "minimizer": { "options": { @@ -1160,6 +1161,7 @@ exports[`webpackConfigs should return a production configuration object: product { "options": { "test": {}, + "extractComments": true, "parallel": true, "minimizer": { "options": { @@ -1261,6 +1263,7 @@ exports[`webpackConfigs should return a production configuration object: product { "options": { "test": {}, + "extractComments": true, "parallel": true, "minimizer": { "options": { diff --git a/src/standalone.js b/src/standalone.js index 6bd2fa1..2523a2b 100644 --- a/src/standalone.js +++ b/src/standalone.js @@ -156,10 +156,10 @@ const setupDotenv = require('dotenv'); const { expand: dotenvExpand } = require('dotenv-expand'); const { merge } = require('webpack-merge'); const CopyPlugin = require('copy-webpack-plugin'); -const CssMinimizerPlugin = require('css-minimizer-webpack-plugin'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const HtmlReplaceWebpackPlugin = require('html-replace-webpack-plugin'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); +const MimimizerPlugin = require('minimizer-webpack-plugin'); const SvgToMiniDataURI = require('mini-svg-data-uri'); const TerserJSPlugin = require('terser-webpack-plugin'); const cssLoaderResolve = require.resolve('css-loader'); @@ -327,11 +327,11 @@ const createStandalonePackageJson = ( 'dotenv-webpack', 'webpack-merge', 'copy-webpack-plugin', - 'css-minimizer-webpack-plugin', 'html-webpack-plugin', 'html-replace-webpack-plugin', 'mini-css-extract-plugin', 'mini-svg-data-uri', + 'minimizer-webpack-plugin', 'terser-webpack-plugin', 'css-loader' ]; diff --git a/src/wpConfigs.js b/src/wpConfigs.js index cfbd51c..2738aab 100644 --- a/src/wpConfigs.js +++ b/src/wpConfigs.js @@ -1,10 +1,10 @@ const fs = require('fs'); const path = require('path'); const CopyPlugin = require('copy-webpack-plugin'); -const CssMinimizerPlugin = require('css-minimizer-webpack-plugin'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const HtmlReplaceWebpackPlugin = require('html-replace-webpack-plugin'); const MiniCssExtractPlugin = require('mini-css-extract-plugin'); +const MimimizerPlugin = require('minimizer-webpack-plugin'); const SvgToMiniDataURI = require('mini-svg-data-uri'); const TerserJSPlugin = require('terser-webpack-plugin'); const { babelLoaderResolve, babelPresetEnvResolve, cssLoaderResolve, tsLoaderResolve } = require('../lib/packages'); @@ -377,7 +377,7 @@ const development = ( * @param {object} settings * @param {Function} settings.setupWebpackDotenvFilesForEnv * @returns {{mode: string, devtool: undefined, output: {chunkFilename: string, filename: string}, - * optimization: {minimize: boolean, runtimeChunk: string, minimizer: Array, + * optimization: {minimize: boolean, runtimeChunk: string, minimizer: Array, * splitChunks: {chunks: string, cacheGroups: {vendor: {test: RegExp, chunks: string, name: string}}}}, * plugins: Array}} */ @@ -397,7 +397,8 @@ const production = ( new TerserJSPlugin({ parallel: true }), - new CssMinimizerPlugin({ + new MimimizerPlugin({ + minify: MimimizerPlugin.cssnanoMinify, minimizerOptions: { preset: ['default', { mergeLonghand: false }] }