Use browserify.
This commit is contained in:
53
gulpfile.js
53
gulpfile.js
@@ -1,11 +1,13 @@
|
||||
'use strict';
|
||||
|
||||
var gulp = require('gulp')
|
||||
, browserify = require('browserify')
|
||||
, bump = require('gulp-bump')
|
||||
, jshint = require('gulp-jshint')
|
||||
, rename = require('gulp-rename')
|
||||
, rimraf = require('gulp-rimraf')
|
||||
, sass = require('gulp-sass')
|
||||
, transform = require('vinyl-transform')
|
||||
, uglify = require('gulp-uglify');
|
||||
|
||||
gulp.task('lint', function () {
|
||||
@@ -15,38 +17,59 @@ gulp.task('lint', function () {
|
||||
});
|
||||
|
||||
gulp.task('clean:js', function () {
|
||||
return gulp.src('./out/perfect-scrollbar.js', {read: false})
|
||||
return gulp.src('./out/js/perfect-scrollbar.js', {read: false})
|
||||
.pipe(rimraf());
|
||||
});
|
||||
|
||||
gulp.task('uglify', ['clean:js'], function () {
|
||||
return gulp.src('./src/perfect-scrollbar.js')
|
||||
gulp.task('clean:js:min', function () {
|
||||
return gulp.src('./out/js/perfect-scrollbar.min.js', {read: false})
|
||||
.pipe(rimraf());
|
||||
});
|
||||
|
||||
function browserified() {
|
||||
return transform(function (filename) {
|
||||
var b = browserify(filename);
|
||||
return b.bundle();
|
||||
});
|
||||
}
|
||||
|
||||
gulp.task('js', ['clean:js'], function () {
|
||||
return gulp.src('./src/js/main.js')
|
||||
.pipe(browserified())
|
||||
.pipe(rename('perfect-scrollbar.js'))
|
||||
.pipe(gulp.dest('./out/js'));
|
||||
});
|
||||
|
||||
gulp.task('js:min', ['clean:js:min'], function () {
|
||||
return gulp.src('./src/js/main.js')
|
||||
.pipe(browserified())
|
||||
.pipe(uglify())
|
||||
.pipe(rename('perfect-scrollbar.min.js'))
|
||||
.pipe(gulp.dest('./out'));
|
||||
.pipe(gulp.dest('./out/js'));
|
||||
});
|
||||
|
||||
gulp.task('clean:css', function () {
|
||||
return gulp.src('./out/perfect-scrollbar.css', {read: false})
|
||||
return gulp.src('./out/css/perfect-scrollbar.css', {read: false})
|
||||
.pipe(rimraf());
|
||||
});
|
||||
|
||||
gulp.task('clean:css:min', function () {
|
||||
return gulp.src('./out/css/perfect-scrollbar.min.css', {read: false})
|
||||
.pipe(rimraf());
|
||||
});
|
||||
|
||||
gulp.task('sass', ['clean:css'], function () {
|
||||
return gulp.src('./src/perfect-scrollbar.scss')
|
||||
return gulp.src('./src/css/main.scss')
|
||||
.pipe(sass())
|
||||
.pipe(gulp.dest('./out'));
|
||||
});
|
||||
|
||||
gulp.task('clean:css:min', function () {
|
||||
return gulp.src('./out/perfect-scrollbar.css', {read: false})
|
||||
.pipe(rimraf());
|
||||
.pipe(rename('perfect-scrollbar.css'))
|
||||
.pipe(gulp.dest('./out/css'));
|
||||
});
|
||||
|
||||
gulp.task('sass:min', ['clean:css:min'], function () {
|
||||
return gulp.src('./src/perfect-scrollbar.scss')
|
||||
return gulp.src('./src/css/main.scss')
|
||||
.pipe(sass({outputStyle: 'compressed'}))
|
||||
.pipe(rename('perfect-scrollbar.min.css'))
|
||||
.pipe(gulp.dest('./out'));
|
||||
.pipe(gulp.dest('./out/css'));
|
||||
});
|
||||
|
||||
function bumpType() {
|
||||
@@ -67,5 +90,5 @@ gulp.task('bump', function () {
|
||||
|
||||
gulp.task('release', ['bump', 'build']);
|
||||
|
||||
gulp.task('build', ['uglify', 'sass', 'sass:min']);
|
||||
gulp.task('build', ['js', 'js:min', 'sass', 'sass:min']);
|
||||
gulp.task('default', ['lint', 'build']);
|
||||
|
||||
Reference in New Issue
Block a user