-
Notifications
You must be signed in to change notification settings - Fork 18
Support appending to current options object instead of always replacing. #13
Comments
@simoncent thanks a lot for opening this issue! I'm keen on reviewing this as long as it works with the latest CRA. Have you tested with that? |
this feature would be great. |
Hi @simoncent, will the PR support PostCSS 8? If so, I would love to see your PR :) Thank you so much! Best wishes, |
I finally made it works for PostCSS 8 by editing the above code // This function is borrowed & modified from the 'react-app-rewire-postcss' plugin
const rewirePostCss = (config, additionalPlugins) => {
const filterPostCSSLoader = (array) => array.filter((object) => JSON.stringify(object).includes('postcss-loader'));
// find any first matching rule that contains postcss-loader
filterPostCSSLoader(config.module.rules).forEach((rule) => {
filterPostCSSLoader(rule.oneOf).forEach((oneOf) => {
filterPostCSSLoader(oneOf.use || oneOf.loader).forEach((use) => {
// use the latest version of postcss-loader
use.loader = require.resolve('postcss-loader');
// change use.options.plugins to use.options.postcssOptions.plugins -> for supporting PostCSS 8
use.options.postcssOptions.plugins = [...use.options.postcssOptions.plugins, ...additionalPlugins];
});
});
});
// return the mutated configuration
return config;
}; Note: the Best wishes, |
Hi,
We're currently using a modified version of this because we don;t want to replace the existing config, we only want to append a new plugin without duplicating the existing CRA postcss config ourselves. Is there any appetite for adding support for this functionality to this plugin itself? I'd be happy to consider putting a PR together if you're interested in adding support.
We're currently using it like this, in case it's useful:
Thanks!
The text was updated successfully, but these errors were encountered: