Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/dceprojects.corals.io/node_modules/laravel-mix/src/components/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //home/corals/dceprojects.corals.io/node_modules/laravel-mix/src/components/PurifyCss.js
let AutomaticComponent = require('./AutomaticComponent');
let glob = require('glob');

class PurifyCss extends AutomaticComponent {
    /**
     * Required dependencies for the component.
     */
    dependencies() {
        if (Config.purifyCss) {
            this.requiresReload = true;

            return ['purifycss-webpack', 'purify-css'];
        }
    }

    /**
     * Override the generated webpack configuration.
     *
     * @param {Object} config
     */
    webpackConfig(config) {
        if (Config.purifyCss) {
            Config.purifyCss = this.build(Config.purifyCss);

            let CssPurifierPlugin = require('../webpackPlugins/CssPurifierPlugin');

            config.plugins.push(CssPurifierPlugin.build());
        }
    }

    /**
     * Build the CSSPurifier plugin options.
     *
     * @param {Object} options
     */
    build(options) {
        if (typeof options === 'object') {
            if (options.paths) {
                let paths = options.paths;

                paths.forEach(path => {
                    if (!path.includes('*')) return;

                    options.paths.splice(paths.indexOf(path), 1);

                    options.paths = paths.concat(glob.sync(path));
                });
            }
            options.minimize = options.hasOwnProperty('minimize')
                ? options.minimize
                : Mix.inProduction();
        }

        return options;
    }
}

module.exports = PurifyCss;

Spamworldpro Mini