client/pianoroll/gulp/tasks/browserify.js
author rougeronj
Sat, 18 Apr 2015 09:37:57 +0200
changeset 167 2b99fed0285e
parent 84 d7c5bffdd2d8
permissions -rw-r--r--
Update for 'Atelier 3 jour 3' and clean gulpfile

'use strict';

var browserify = require('browserify');
var config = require('../config');
var partialify = require('partialify');
var gulp = require('gulp');
var debug = require('gulp-debug');
var rename = require('gulp-rename');
var source = require('vinyl-source-stream');
var p = require('../../package.json')
var uglify = require('gulp-uglify');

// Vendor
gulp.task('vendor', function() {
  return browserify({debug: true})
    .require('./app/lib/pixi/bin/pixi.js', { expose: 'pixi' })
    .require('./app/lib/randomColor/randomColor.js', {expose: 'randomColor'})
    .bundle()
    .pipe(source('libs-pianoroll.js'))
    .pipe(gulp.dest(config.dist + '/js/'));
});

// Browserify
gulp.task('browserify', function() {
  return browserify({debug: true, standalone: 'pianoroll'})
    .add('./app/js/main.js')
    .external('pixi')
    .external('randomColor')
    .transform(partialify) // Transform to allow requireing of templates
    .bundle()
    .pipe(source(p.name+'.js'))
    .pipe(gulp.dest(config.dist + '/js/'));
});

// Script Dist
gulp.task('scripts:dist', function() {
  return gulp.src([config.dist + '/js/*.js', '!'+config.dist + '/js/*.min.js'], {base: config.dist})
    .pipe(uglify())
    .pipe(rename({extname: '.min.js'}))
    .pipe(gulp.dest(config.dist));
});