This repository has been archived on 2025-01-25. You can view files and clone it, but cannot push or open issues or pull requests.
scrum-board/gulpfile.js
Mats van Reenen 28316aa3d3 update gulp
2020-12-31 17:39:17 +01:00

80 lines
2.2 KiB
JavaScript

/**
* scrum-board
*
* @category scrum-board
* @author Vaibhav Mehta <vaibhav@decodingweb.com>
* @copyright Copyright (c) 2016 Vaibhav Mehta <https://github.com/i-break-codes>
* @license http://www.opensource.org/licenses/mit-license.html MIT License
* @version 1.0 Beta
*/
const Gulp = require('gulp');
const BrowserSync = require('browser-sync');
const sass = require('gulp-sass');
const autoprefixer = require('gulp-autoprefixer');
const cleanCSS = require('gulp-clean-css');
const uglify = require('gulp-uglify');
const renameFiles = require('gulp-rename');
const Url = 'http://localhost:8888/scrum/';
const Browser = 'google chrome';
function browserSync(cb){
BrowserSync.init({
server: {
// baseDir: "app",
proxy: Url,
// files: ['app/views/**/*.*', 'public/**/*.css', 'public/**/*.js'],
browser: Browser,
port: 3005,
// open: false
}
}, function (err, bs){
cb();
});
};
function bsReload(cb){
BrowserSync.reload();
cb();
};
function css(){
return Gulp.src('src/stylesheets/**/*.scss')
.pipe(sass().on('error', sass.logError))
.pipe(autoprefixer('last 3 version'))
.pipe(Gulp.dest('app/assets/stylesheets'))
}
function cssMinify(){
return Gulp.src('app/assets/stylesheets/**/*.css')
.pipe(cleanCSS({debug: true}, function(details) {
console.log('Original Size : ' + details.name + ': ' + details.stats.originalSize + ' bytes');
console.log('Minified Size : ' + details.name + ': ' + details.stats.minifiedSize + ' bytes');
}))
.pipe(renameFiles({ suffix: '.min' }))
.pipe(Gulp.dest('app/assets/stylesheets'))
// .pipe(browserSync.reload({ // ??
// stream:true
// }));
};
function jsMinify(){
return Gulp.src('src/javascript/**/*.js')
.pipe(uglify())
.pipe(renameFiles({ suffix: '.min' }))
.pipe(Gulp.dest('app/assets/scripts'))
// .pipe(browserSync.reload({ // ??
// stream: true,
// once: true
// }));
};
const cssTask = Gulp.series(css, cssMinify);
const jsTask = jsMinify
const buildTask = Gulp.parallel(cssTask, jsTask);
exports.server = browserSync;
exports.cssBuild = cssTask;
exports.jsBuild = jsTask;
exports.build = buildTask;
exports.default = Gulp.series(buildTask, browserSync);