@gravityforms/gulp-tasks
Version:
Configurable Gulp tasks for use in Gravity Forms projects.
40 lines (37 loc) • 1.43 kB
JavaScript
const gulp = require( 'gulp' );
const cleanCSS = require( '@aptuitiv/gulp-clean-css' );
const sourcemaps = require( 'gulp-sourcemaps' );
const rename = require( 'gulp-rename' );
const getConfig = require('../../config');
const { config } = getConfig();
const { trailingSlashIt } = require( '../utils/tools' );
const cleanCssConfig = config?.cleanCss?.cleanCssConfig || {};
module.exports = Object.assign( {}, {
minifyAssetFiles() {
return gulp.src( config?.cleanCss?.minifyAssetFiles || [] )
.pipe( cleanCSS( cleanCssConfig ) )
.pipe( rename( { extname: '.min.css' } ) )
.pipe( gulp.dest( function( file ) {
// Return the base path of each file to place minified files in the same directory
return file.base;
} ) );
},
minifyFiles() {
return gulp.src( config?.cleanCss?.minifyFiles || [] )
.pipe( cleanCSS( cleanCssConfig ) )
.pipe( rename( { extname: '.min.css' } ) )
.pipe( gulp.dest( function( file ) {
// Return the base path of each file to place minified files in the same directory
return file.base;
} ) );
},
minifyDistFiles() {
return gulp.src( [
`${ trailingSlashIt( config.paths.css_dist ) }**/*.css`,
`!${ trailingSlashIt( config.paths.css_dist ) }**/*.min.css`,
] )
.pipe( cleanCSS( cleanCssConfig ) )
.pipe( rename( { extname: '.min.css' } ) )
.pipe( gulp.dest( config.paths.css_dist ) );
},
}, config?.tasks?.builtins?.['clean-css'] || {} );