-
Notifications
You must be signed in to change notification settings - Fork 0
/
gulpfile.js
48 lines (42 loc) · 1.22 KB
/
gulpfile.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
(function() {
var gulp = require('gulp'),
sass = require('gulp-sass'),
cssnano = require('gulp-cssnano'),
concat = require('gulp-concat'),
autoprefix = require('gulp-autoprefixer'),
webserver = require('gulp-webserver'),
del = require('del');
// Remove the css file
gulp.task("clean-css", () => del(["./css/main.css"]));
//Compiles scss files to css
gulp.task('style', gulp.series("clean-css", function convertSassToCss() {
return gulp.src('**/*.scss', {
cwd: './src'
})
.pipe(concat('main.scss'))
.pipe(sass().on('error', function sassError(err) {
console.log("SASS ERROR: " + err.message);
}))
.pipe(cssnano())
.pipe(autoprefix())
.pipe(gulp.dest('./css'));
}));
//Local webserver
gulp.task('webserver', gulp.series(function setupWebserver() {
return gulp.src('./')
.pipe(webserver({
livereload: {
enable: true
},
fallback: 'index.html',
open: true,
port: 8082
}));
}));
//Default task
gulp.task('default', gulp.series('style', 'webserver', (done) => {
//Watch sass
gulp.watch("**/*.scss", { cwd: "./src/" }, gulp.series("style"))
done();
}));
}());