UNPKG

bespoke-leapmotion

Version:
52 lines (47 loc) 1.67 kB
var gulp = require('gulp'), clean = require('gulp-clean'), jshint = require('gulp-jshint'), header = require('gulp-header'), rename = require('gulp-rename'), uglify = require('gulp-uglify'), gzip = require('gulp-gzip'), pkg = require('./package.json'), browserify = require('browserify'), source = require('vinyl-source-stream'), buffer = require('vinyl-buffer'), template = require('lodash').template; gulp.task('default', ['clean', 'lint', 'compile']); gulp.task('clean', function() { return gulp.src(['dist', 'test/coverage'], { read: false }) .pipe(clean()); }); gulp.task('lint', function() { return gulp.src(['gulpfile.js', 'lib/**/*.js', 'specs/**/*.js']) .pipe(jshint('.jshintrc')) .pipe(jshint.reporter('jshint-stylish')); }); gulp.task('compile', ['clean'], function() { return browserify('./lib/bespoke-leapmotion.js') .bundle({ standalone: 'bespoke.plugins.leapmotion' }) .pipe(source('bespoke-leapmotion.js')) .pipe(buffer()) .pipe(header(template([ '/*!', ' * <%= name %> v<%= version %>', ' *', ' * Copyright <%= new Date().getFullYear() %>, <%= author.name %>', ' * This content is released under the <%= licenses[0].type %> license', ' * <%= licenses[0].url %>', ' */\n\n' ].join('\n'), pkg))) .pipe(gulp.dest('dist')) .pipe(rename('bespoke-leapmotion.min.js')) .pipe(uglify()) .pipe(header(template([ '/*! <%= name %> v<%= version %> ', '© <%= new Date().getFullYear() %> <%= author.name %>, ', '<%= licenses[0].type %> License */\n' ].join(''), pkg))) .pipe(gulp.dest('dist')) .pipe(gzip()); });