I installed TailwindCSS & PurgeCSS in an existing application that uses custom CSS as well as some third party libraries. I configured PurgeCSS to only purge a single tailwind file but it for some reason removes css selectors from third party libraries, maybe my config is wrong:
webpack.mix.js
const mix = require("laravel-mix");
const purgeCss = require("@fullhuman/postcss-purgecss")
const tailwindCss = require("tailwindcss")
mix.webpackConfig(require("./webpack.parts"));
// Don't want to purge anything under app.scss, it contains custom css &
// current app related stuff
mix.sass("resources/sass/app.scss", "public/css").version();
// I simply want to add tailwind so I can use it in addition to whatever
// css the app currently uses
mix.postCss("resources/sass/tailwind.pcss", "public/css", [
tailwindCss,
...process.env.NODE_ENV === "production" ? [purgeCss(
{
content: [
"./resources/**/*.js",
"./resources/**/*.blade.php",
],
css: [
"./public/css/tailwind.css"
]
}
)] : []
])
Tried changing css path from ./public/css/tailwind.css to ./resources/sass/tailwind.pcss but did not help
Edit:
Seems like I had to move out some of the dependency imports from the app.scss to get it to work, though I am not sure why:
Added this snippet right before mix.sass(app.scss)
mix.styles(
[
"./node_modules/datatables.net-bs4/css/dataTables.bootstrap4.css",
"./node_modules/bootstrap-datepicker/dist/css/bootstrap-datepicker.standalone.css",
"./node_modules/animate.css/animate.css",
"./node_modules/react-datepicker/dist/react-datepicker.css",
],
"public/css/vendors.css"
).version()
mix.webpackConfig(require("./webpack.parts"));? - Andy Song../../../components/foo.jsI can do@components/foo.jsusingpath.resolve- GGio