UNPKG

generator-base-backbone

Version:

Backbone.js basic skeleton for webapp development. With RequireJS, Bootstrap, Sass, and templating with Pug and Lodash. Also with JSHint and Grunt.

41 lines (39 loc) 1.27 kB
'use strict'; module.exports = function(grunt) { grunt.registerTask('clean-dist', 'Clean dist folder', function() { var fs = require('fs'); var path = require('path'); function getDirectories(src) { return fs.readdirSync(src).filter(function(file) { return fs.statSync(path.join(src, file)).isDirectory(); }); } function getSubdirectories(path, arr) { var dirs = []; var subdirs = []; var i, ii, iii; for (i = 0; i < arr.length; i++) { dirs.push(path + '/' + arr[i]); subdirs = getDirectories(path + '/' + arr[i]); for (ii = 0; ii < subdirs.length; ii++) { dirs.push(path + '/' + arr[i] + '/' + subdirs[ii]); } var more = getSubdirectories(path + '/' + arr[i], subdirs); for (iii = 0; iii < more.length; iii++) { if (dirs.indexOf(more[iii]) === -1) { dirs.push(more[iii]); } } } return dirs; } var folders = getSubdirectories('dist/lib', getDirectories('dist/lib')); console.log(folders); grunt.config.set('merge-copy.main.options.directories', folders); grunt.config.set('clean.folders.src', folders); /* remove files */ grunt.config.set('clean.files.src', ['dist/lib/bootstrap.less']); // grunt.task.run(['merge-copy', 'clean:folders', 'clean:files']); }); };