Server : nginx/1.18.0 System : Linux localhost 6.14.3-x86_64-linode168 #1 SMP PREEMPT_DYNAMIC Mon Apr 21 19:47:55 EDT 2025 x86_64 User : www-data ( 33) PHP Version : 8.0.16 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /var/www/ecommerce/node_modules/laravel-mix/src/components/ |
let AutomaticComponent = require('./AutomaticComponent');
class Css extends AutomaticComponent {
/**
* webpack rules to be appended to the master config.
*/
webpackRules() {
return [
{
test: /\.css$/,
loaders: [
'style-loader',
{ loader: 'css-loader', options: { importLoaders: 1 } },
{
loader: 'postcss-loader',
options: this.postCssOptions()
}
]
},
{
test: /\.scss$/,
exclude: this.excludePathsFor('sass'),
loaders: [
'style-loader',
'css-loader',
{
loader: 'postcss-loader',
options: this.postCssOptions()
},
{
loader: 'sass-loader',
options: {
sassOptions: {
precision: 8,
outputStyle: 'expanded'
}
}
}
]
},
{
test: /\.sass$/,
exclude: this.excludePathsFor('sass'),
loaders: [
'style-loader',
'css-loader',
{
loader: 'postcss-loader',
options: this.postCssOptions()
},
{
loader: 'sass-loader',
options: {
sassOptions: {
precision: 8,
outputStyle: 'expanded',
indentedSyntax: true
}
}
}
]
},
{
test: /\.less$/,
exclude: this.excludePathsFor('less'),
loaders: [
'style-loader',
'css-loader',
{
loader: 'postcss-loader',
options: this.postCssOptions()
},
'less-loader'
]
},
{
test: /\.styl(us)?$/,
exclude: this.excludePathsFor('stylus'),
loaders: [
'style-loader',
'css-loader',
{
loader: 'postcss-loader',
options: this.postCssOptions()
},
'stylus-loader'
]
}
];
}
/**
* Paths to be excluded from the loader.
*
* @param {string} preprocessor
*/
excludePathsFor(preprocessor) {
let exclusions = Mix.components.get(preprocessor);
return exclusions
? exclusions.details.map(preprocessor => preprocessor.src.path())
: [];
}
/**
* Fetch the appropriate postcss plugins for the compile.
*/
postCssOptions() {
if (Mix.components.get('postCss')) {
return {
plugins: Mix.components.get('postCss').details[0].postCssPlugins
};
}
// If the user has a postcss.config.js file in their project root,
// postcss-loader will automatically read and fetch the plugins.
if (File.exists(Mix.paths.root('postcss.config.js'))) {
return {};
}
return { plugins: Config.postCss };
}
}
module.exports = Css;