postcss-purgecss-laravel

2.0.0 • Public • Published

postcss-purgecss wrapper with sensible defaults for Laravel apps

Software License Latest Version on NPM npm

A simple wrapper around postcss-purgecss with sensible defaults for Laravel apps.

// postcss.config.js
 
module.exports = {
    plugins: [
        require('postcss-purgecss-laravel')({
            whitelistPatterns: [/hljs/],
            extend: {
                content: [content: [path.join(__dirname, 'vendor/spatie/menu/**/*.php')],]
            },
        });
    ],
};

Support us

Image

We invest a lot of resources into creating best in class open source packages. You can support us by buying one of our paid products.

We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall.

Installation

You can install the package with yarn or npm:

yarn add postcss-purgecss-laravel --dev
npm install postcss-purgecss-laravel --save-dev

Usage

Register the PostCSS plugin.

// postcss.config.js
 
module.exports = {
    plugins: [
        require('postcss-purgecss-laravel')(/* ... */);
    ]
}

All options passed to the plugin get passed down to PurgeCSS. Refer to the PurgeCSS docs for an overview of the available options.

// postcss.config.js
 
module.exports = {
    plugins: [
        require('postcss-purgecss-laravel')({
            whitelistPatterns: [/hljs/],
        }),
    ],
};

Options will override the default options this package provides. If you'd rather extend the options, place them in the extend option.

// postcss.config.js
 
module.exports = {
    plugins: [
        require('postcss-purgecss-laravel')({
            extend: {
                whitelistPatterns: [/hljs/],
            },
        }),
    ],
};

In the above example, the /hljs/ pattern will be added to the whitelistPatterns, instead of overriding the default whitelistPatterns option.

These are the defaults this package provides:

const defaultConfig = {
    content: [
        "app/**/*.php",
        "resources/**/*.html",
        "resources/**/*.js",
        "resources/**/*.jsx",
        "resources/**/*.ts",
        "resources/**/*.tsx",
        "resources/**/*.php",
        "resources/**/*.vue",
        "resources/**/*.twig",
    ],
    defaultExtractor: (content) => content.match(/[\w-/.:]+(?<!:)/g) || [],
    whitelistPatterns: [/-active$/, /-enter$/, /-leave-to$/, /show$/],
};

Changelog

Please see CHANGELOG for more information what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email freek@spatie.be instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

Readme

Keywords

Package Sidebar

Install

npm i postcss-purgecss-laravel

Weekly Downloads

8,879

Version

2.0.0

License

MIT

Unpacked Size

11.6 kB

Total Files

12

Last publish

Collaborators

  • spatie