From 09b9c3d4d088808883e9e6f09cd14e4389902c80 Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Tue, 7 Dec 2021 14:28:09 +0000 Subject: [PATCH] Fix postcss-loader config The configuration keys have some issues across different versions of postcss --- config/webpack/environment.js | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/config/webpack/environment.js b/config/webpack/environment.js index d16d9af743..e45ef1fca9 100644 --- a/config/webpack/environment.js +++ b/config/webpack/environment.js @@ -1,3 +1,23 @@ const { environment } = require('@rails/webpacker') module.exports = environment + +function hotfixPostcssLoaderConfig (subloader) { + const subloaderName = subloader.loader + if (subloaderName === 'postcss-loader') { + if (subloader.options.postcssOptions) { + console.log( + '\x1b[31m%s\x1b[0m', + 'Remove postcssOptions workaround in config/webpack/environment.js' + ) + } else { + subloader.options.postcssOptions = subloader.options.config; + delete subloader.options.config; + } + } +} + +environment.loaders.keys().forEach(loaderName => { + const loader = environment.loaders.get(loaderName); + loader.use.forEach(hotfixPostcssLoaderConfig); +});