@@ -29,9 +29,13 @@ var transformCJSTests = require('./tools/build/transformCJSTests');
2929var tsc = require ( 'gulp-typescript' ) ;
3030var ts2dart = require ( 'gulp-ts2dart' ) ;
3131var util = require ( './tools/build/util' ) ;
32+ var bundler = require ( './tools/build/bundle' ) ;
33+ var concat = require ( 'gulp-concat' ) ;
3234
3335// Note: when DART_SDK is not found, all gulp tasks ending with `.dart` will be skipped.
36+
3437var DART_SDK = require ( './tools/build/dartdetect' ) ( gulp ) ;
38+
3539// -----------------------
3640// configuration
3741
@@ -787,7 +791,71 @@ gulp.task('build.js.cjs', function(done) {
787791 ) ;
788792} ) ;
789793
790- gulp . task ( 'build.js' , [ 'build.js.dev' , 'build.js.prod' , 'build.js.cjs' ] ) ;
794+ var bundleConfig = {
795+ paths : {
796+ "*" : "dist/js/prod/es6/*.es6" ,
797+ "rx/*" : "node_modules/rx/*.js"
798+ }
799+ } ;
800+
801+ // production build
802+ gulp . task ( 'bundle.js.prod' , [ 'build.js.prod' ] , function ( ) {
803+ return bundler . bundle (
804+ bundleConfig ,
805+ 'angular2/angular2' ,
806+ './dist/build/angular2.js' ,
807+ {
808+ sourceMaps : true
809+ } ) ;
810+ } ) ;
811+
812+ gulp . task ( 'bundle.js.prod.deps' , [ 'bundle.js.prod' ] , function ( ) {
813+ return gulp . src ( [ 'node_modules/zone.js/zone.js' , 'dist/build/angular2.js' ] )
814+ . pipe ( concat ( 'angular2.js' ) )
815+ . pipe ( gulp . dest ( 'dist/bundle' ) ) ;
816+ } ) ;
817+
818+ // minified production build
819+ // TODO: minify zone.js?
820+ gulp . task ( 'bundle.js.min' , [ 'build.js.prod' ] , function ( ) {
821+ return bundler . bundle (
822+ bundleConfig ,
823+ 'angular2/angular2' ,
824+ './dist/build/angular2.min.js' ,
825+ {
826+ sourceMaps : true ,
827+ minify : true
828+ } ) ;
829+ } ) ;
830+
831+ gulp . task ( 'bundle.js.min.deps' , [ 'bundle.js.min' ] , function ( ) {
832+ return gulp . src ( [ 'node_modules/zone.js/zone.js' , 'dist/build/angular2.min.js' ] )
833+ . pipe ( concat ( 'angular2.min.js' ) )
834+ . pipe ( gulp . dest ( 'dist/bundle' ) ) ;
835+ } ) ;
836+
837+ // development build
838+ gulp . task ( 'bundle.js.dev' , [ 'build.js.dev' ] , function ( ) {
839+ return bundler . bundle (
840+ merge ( true , bundleConfig , {
841+ "*" : "dist/js/dev/es6/*.es6"
842+ } ) ,
843+ 'angular2/angular2' ,
844+ './dist/build/angular2.dev.js' ,
845+ {
846+ sourceMaps : true
847+ } ) ;
848+ } ) ;
849+
850+ gulp . task ( 'bundle.js.dev.deps' , [ 'bundle.js.dev' ] , function ( ) {
851+ return gulp . src ( [ 'node_modules/zone.js/zone.js' , 'dist/build/angular2.dev.js' ] )
852+ . pipe ( concat ( 'angular2.dev.js' ) )
853+ . pipe ( gulp . dest ( 'dist/bundle' ) ) ;
854+ } ) ;
855+
856+ gulp . task ( 'build.js' , [ 'build.js.dev' , 'build.js.prod' , 'build.js.cjs' , 'bundle.js.deps' ] ) ;
857+
858+ gulp . task ( 'bundle.js.deps' , [ 'bundle.js.prod.deps' , 'bundle.js.dev.deps' , 'bundle.js.min.deps' ] ) ;
791859
792860gulp . task ( 'clean' , [ 'build/clean.js' , 'build/clean.dart' , 'build/clean.docs' ] ) ;
793861
0 commit comments