diff --git a/gulp/util/bundle.js b/gulp/util/bundle.js index b797127..7c5de51 100644 --- a/gulp/util/bundle.js +++ b/gulp/util/bundle.js @@ -1,27 +1,39 @@ var path = require('path'), gulp = require('gulp'), gutil = require('gulp-util'), + mirror = require('gulp-mirror'), uglify = require('gulp-uglify'), rename = require('gulp-rename'), source = require('vinyl-source-stream'), + sourcemaps = require('gulp-sourcemaps'), buffer = require('vinyl-buffer'), browserify = require('browserify'), watchify = require('watchify'), - exorcist = require('exorcist'), handleErrors = require('../util/handleErrors'); // TODO - Concat license header to dev/prod build files. function rebundle() { + var debug, min; + + debug = sourcemaps.init({loadMaps: true}); + debug.pipe(sourcemaps.write('./', {sourceRoot: './'})) + .pipe(gulp.dest(paths.out)); + + min = rename({ suffix: '.min' }); + min.pipe(sourcemaps.init({loadMaps: true})) + .pipe(uglify()) + .pipe(sourcemaps.write('./', {sourceRoot: './', addComment: false})) + .pipe(gulp.dest(paths.out)); + return this.bundle() .on('error', handleErrors.handler) .pipe(handleErrors()) - .pipe(exorcist(paths.out + '/pixi.js.map')) .pipe(source('pixi.js')) - .pipe(gulp.dest(paths.out)) .pipe(buffer()) - .pipe(uglify()) - .pipe(rename({ suffix: '.min' })) - .pipe(gulp.dest(paths.out)); + .pipe(mirror( + debug, + min + )); } function createBundler(args) { diff --git a/gulp/util/bundle.js b/gulp/util/bundle.js index b797127..7c5de51 100644 --- a/gulp/util/bundle.js +++ b/gulp/util/bundle.js @@ -1,27 +1,39 @@ var path = require('path'), gulp = require('gulp'), gutil = require('gulp-util'), + mirror = require('gulp-mirror'), uglify = require('gulp-uglify'), rename = require('gulp-rename'), source = require('vinyl-source-stream'), + sourcemaps = require('gulp-sourcemaps'), buffer = require('vinyl-buffer'), browserify = require('browserify'), watchify = require('watchify'), - exorcist = require('exorcist'), handleErrors = require('../util/handleErrors'); // TODO - Concat license header to dev/prod build files. function rebundle() { + var debug, min; + + debug = sourcemaps.init({loadMaps: true}); + debug.pipe(sourcemaps.write('./', {sourceRoot: './'})) + .pipe(gulp.dest(paths.out)); + + min = rename({ suffix: '.min' }); + min.pipe(sourcemaps.init({loadMaps: true})) + .pipe(uglify()) + .pipe(sourcemaps.write('./', {sourceRoot: './', addComment: false})) + .pipe(gulp.dest(paths.out)); + return this.bundle() .on('error', handleErrors.handler) .pipe(handleErrors()) - .pipe(exorcist(paths.out + '/pixi.js.map')) .pipe(source('pixi.js')) - .pipe(gulp.dest(paths.out)) .pipe(buffer()) - .pipe(uglify()) - .pipe(rename({ suffix: '.min' })) - .pipe(gulp.dest(paths.out)); + .pipe(mirror( + debug, + min + )); } function createBundler(args) { diff --git a/package.json b/package.json index 5e3c6fe..f9c4451 100644 --- a/package.json +++ b/package.json @@ -23,15 +23,16 @@ "browserify": "^8.0.2", "chai": "^1.10.0", "del": "^1.1.0", - "exorcist": "^0.1.6", "gulp": "^3.8.10", "gulp-cached": "^1.0.1", "gulp-concat": "^2.5.2", "gulp-debug": "^2.0.0", "gulp-jsdoc": "^0.1.4", "gulp-jshint": "^1.9.0", + "gulp-mirror": "^0.4.0", "gulp-plumber": "^0.6.6", "gulp-rename": "^1.2.0", + "gulp-sourcemaps": "^1.5.0", "gulp-uglify": "^1.0.2", "gulp-util": "^3.0.1", "ink-docstrap": "^0.5.2",