-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathgulpfile.js
More file actions
56 lines (51 loc) · 1.33 KB
/
Copy pathgulpfile.js
File metadata and controls
56 lines (51 loc) · 1.33 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
/**
* Created by Zed on 2017/8/2.
*/
const gulp = require('gulp');
const gulpLoadPlugins = require('gulp-load-plugins');
const del = require('del');
const $ = gulpLoadPlugins();
function lint(files, options) {
return gulp.src(files)
.pipe($.eslint(options))
.pipe($.eslint.format())
.pipe($.if('.js',$.eslint.failAfterError()));
}
gulp.task('lint', () => {
return lint('src/**/*.js', {
fix: true
})
});
gulp.task('lint:test', () => {
return lint('test/spec/**/*.js', {
fix: true,
env: {
mocha: true
}
})
.pipe(gulp.dest('test/spec/**/*.js'));
});
gulp.task('script',()=>{
return gulp.src('./src/*.js')
.pipe($.umd({
namespace:function () {
return 'WaterBall';
},
exports: function (file) {
return 'WaterBall';
}
}))
.pipe(gulp.dest('./dist'))
})
gulp.task('uglify',()=>{
"use strict";
return gulp.src('./dist/*.js')
.pipe($.uglify())
.pipe($.rename('water-ball.min.js'))
.pipe(gulp.dest('./dist'))
})
gulp.task('clean', del.bind(null, ['.tmp', 'dist']));
gulp.task('min', ['uglify'], () => {
return gulp.src('dist/**/*').pipe($.size({title: 'build', gzip: true}));
})
gulp.task('default', ['clean', 'lint', 'script']);