grunt-ps-sass
Version:
GruntJS plugin to compile Sass files
44 lines (36 loc) • 999 B
JavaScript
/*
* grunt-ps-sass
*
* Copyright (c) 2023 Peter Selvaraj
* Licensed under the MIT license.
*/
;
const log = require('grunt-ps-log');
const SassOptimizedSvc = require('./services/sass');
module.exports = function (grunt) {
grunt.registerMultiTask('psSass', 'Compile Sass files...', function () {
log.log(`Starting ${this.target} task...`);
const files = [];
const done = this.async();
const options = this.options({
maxConcurrency: 4,
skipUnchanged: true,
verbose: false
});
this.files.forEach(item => {
item.src.forEach(src => {
files.push({
src,
dest: item.dest
});
});
});
// Initialize optimized service with options
const sassService = new SassOptimizedSvc(options);
// Use the modern async API
sassService.compileFiles(files, () => {
log.ok(`Task ${this.target} is complete!`);
done();
});
});
};