Archived
1
0
Fork 0

build-tools: switch grunt for gulp.

This commit is contained in:
Henrik Hautakoski 2018-06-25 14:52:45 +02:00
parent e41c7f776a
commit f40b498ffb
No known key found for this signature in database
GPG key ID: 839F3A7EAFAEAFAA
5 changed files with 3482 additions and 102 deletions

65
gulpfile.js Normal file
View file

@ -0,0 +1,65 @@
var gulp = require('gulp');
var rename = require('gulp-rename');
var less = require('gulp-less');
var cssminify = require('gulp-csso');
var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
// ----------------------------------
// Config
// ----------------------------------
var config = {
lessPattern: 'app/assets/less/**/*.less',
lessSrc: 'app/assets/less/application.less',
cssOutputDir: 'public/css',
jsSrc: [
'node_modules/jquery/dist/jquery.js',
// Bootstrap
'app/assets/js/bootstrap/tooltip.js',
'app/assets/js/bootstrap/affix.js',
'app/assets/js/bootstrap/alert.js',
'app/assets/js/bootstrap/button.js',
'app/assets/js/bootstrap/carousel.js',
'app/assets/js/bootstrap/collapse.js',
'app/assets/js/bootstrap/dropdown.js',
'app/assets/js/bootstrap/modal.js',
'app/assets/js/bootstrap/popover.js',
'app/assets/js/bootstrap/scrollspy.js',
'app/assets/js/bootstrap/tab.js',
'app/assets/js/bootstrap/transition.js',
// Font Awesome
'app/assets/js/font-awesome/fa-regular.js',
'app/assets/js/font-awesome/fa-solid.js',
'app/assets/js/font-awesome/fa-brands.js',
'app/assets/js/font-awesome/fontawesome.js'
],
jsOutputDir: 'public/js'
};
// ----------------------------------
// Tasks
// ----------------------------------
gulp.task('build-css', function () {
return gulp.src(config.lessSrc)
.pipe(less())
.pipe(cssminify())
.pipe(rename({ basename: 'application', suffix: '.min'}))
.pipe(gulp.dest(config.cssOutputDir))
});
gulp.task('build-js', function () {
return gulp.src(config.jsSrc)
.pipe(uglify())
.pipe(concat('application.min.js'))
.pipe(gulp.dest(config.jsOutputDir));
});
gulp.task('watch-less', function() {
gulp.watch(config.lessPattern, ['build-css']);
});
gulp.task('build-assets', ['build-css', 'build-js']);
gulp.task('default', ['watch-less']);