forked from vb/lazyframe
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgulpfile.js
38 lines (35 loc) · 965 Bytes
/
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
const gulp = require('gulp'),
rollup = require('rollup'),
sass = require('gulp-sass'),
babel = require('rollup-plugin-babel'),
uglify = require('rollup-plugin-uglify'),
del = require('del'),
fs = require('fs');
gulp.task('scss', () => {
return gulp.src('src/scss/lazyframe.scss')
.pipe(sass({outputStyle: 'compressed'}).on('error', sass.logError))
.pipe(gulp.dest('dist'));
});
gulp.task('js', () => {
return rollup
.rollup({
entry: 'src/lazyframe.js',
plugins: [
babel({
exclude: 'node_modules/**'
}),
uglify()
]
})
.then(bundle => {
const files = bundle.generate({
format: 'umd',
exports: 'default',
moduleName: 'lazyframe',
});
fs.appendFileSync('dist/lazyframe.min.js', files.code);
});
});
gulp.task('build', ['scss', 'js']);
gulp.task('clean', () => del('dist/**/*.js'))
gulp.task('default', ['build', 'server', 'watch'])