-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgulpfile.js
More file actions
69 lines (60 loc) · 1.91 KB
/
gulpfile.js
File metadata and controls
69 lines (60 loc) · 1.91 KB
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
const gulp = require('gulp');
const babel = require('gulp-babel');
const clean = require('gulp-clean');
const shell = require('gulp-shell');
const gulpsync = require('gulp-sync')(gulp);
const imagemin = require('gulp-imagemin');
const postcss = require('gulp-postcss');
const autoprefixer = require('autoprefixer');
const cssnano = require('cssnano');
// var uglify = require('gulp-uglify');
gulp.task('clean', function () {
return gulp
.src('build', {
read: false,
})
.pipe(clean());
});
gulp.task('compile:js', () => {
return gulp.src(['./src/public/**/*.js', '!./src/public/node_modules/**'])
.pipe(babel({ presets: ['env'] }))
.pipe(gulp.dest('./build/public'));
});
gulp.task('compile:css', () => {
const plugins = [
autoprefixer({ browsers: ['last 1 version'] }),
// cssnano()
];
return gulp.src('./src/public/css/*.css')
.pipe(postcss(plugins))
.pipe(gulp.dest('./build/public/css/'));
});
gulp.task('copy:others', () => {
return gulp
.src([
'!./src/public/node_modules',
'./src/**/*.html',
'./src/**/*.handlebars',
'./src/**/*.ttf',
'./src/**/*.otf',
'./src/**/*.eot',
'./src/**/*.svg',
'./src/**/*.woff',
'./src/**/*.woff2',
])
.pipe(gulp.dest('./build'));
});
gulp.task('copy:node', () => {
return gulp
.src(['./src/public/node_modules/**/*'])
.pipe(gulp.dest('./build/public/node_modules'));
});
gulp.task('copy:images', () =>
gulp.src('src/public/img/*')
.pipe(imagemin())
.pipe(gulp.dest('build/public/img'))
);
gulp.task('compile', ['compile:js', 'compile:css']);
gulp.task('copy', ['copy:others', 'copy:images', 'copy:node']);
gulp.task('build', gulpsync.sync(['clean', 'compile', 'copy']));
gulp.task('deploy', ["build"], shell.task(['firebase deploy']));