From e569e0b1eee3526cffd351de3d10ea39adcc932b Mon Sep 17 00:00:00 2001 From: Alex Eagle Date: Wed, 18 Mar 2015 14:42:18 -0700 Subject: [PATCH 1/4] First hook in the angular build to run ts2dart. This expects files we are interested in to have the '.ts' extension. --- gulpfile.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gulpfile.js b/gulpfile.js index dfabb414cd..da0aad5af0 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -314,6 +314,14 @@ gulp.task('build/transpile.dart', transpile(gulp, gulpPlugins, { srcFolderInsertion: CONFIG.srcFolderInsertion.dart })); +var ts2dart = require('gulp-ts2dart'); +gulp.task('build/transpile.dart.experimental', function() { + gulp.src('modules/**/*.ts') + .pipe(ts2dart.transpile()) + .pipe(ts2dart.format()) + .pipe(gulp.dest(CONFIG.dest.dart)) +}); + // ------------ // html From 853c24f4d4a88b6a71a68ca9e2f7e391632a7417 Mon Sep 17 00:00:00 2001 From: Martin Probst Date: Wed, 18 Mar 2015 18:51:43 -0700 Subject: [PATCH 2/4] Transpile .js files, experimentally. --- gulpfile.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gulpfile.js b/gulpfile.js index da0aad5af0..b256ad1ad3 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -316,7 +316,7 @@ gulp.task('build/transpile.dart', transpile(gulp, gulpPlugins, { var ts2dart = require('gulp-ts2dart'); gulp.task('build/transpile.dart.experimental', function() { - gulp.src('modules/**/*.ts') + gulp.src('modules/**/*.js') .pipe(ts2dart.transpile()) .pipe(ts2dart.format()) .pipe(gulp.dest(CONFIG.dest.dart)) From fb6b8b22a16ad123bcc3f7da069234e735f2e5cd Mon Sep 17 00:00:00 2001 From: Alex Eagle Date: Thu, 19 Mar 2015 11:00:45 -0700 Subject: [PATCH 3/4] transpile the js files in one package, and fail the build if it fails --- gulpfile.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gulpfile.js b/gulpfile.js index d57b2efc86..0def90d722 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -343,11 +343,11 @@ gulp.task('build/transpile.dart', transpile(gulp, gulpPlugins, { })); var ts2dart = require('gulp-ts2dart'); -gulp.task('build/transpile.dart.experimental', function() { - gulp.src('modules/**/*.ts') +gulp.task('build/transpile.dart.ts2dart', function() { + gulp.src('modules/angular2/src/di/*.js') .pipe(ts2dart.transpile()) .pipe(ts2dart.format()) - .pipe(gulp.dest(CONFIG.dest.dart)) + .pipe(gulp.dest('dist/dart.ts2dart')) }); // ------------ @@ -649,7 +649,7 @@ gulp.task('tests/transform.dart', function() { // Builds all Dart packages, but does not compile them gulp.task('build/packages.dart', function(done) { runSequence( - ['build/transpile.dart', 'build/html.dart', 'build/copy.dart', 'build/multicopy.dart'], + ['build/transpile.dart.ts2dart', 'build/transpile.dart', 'build/html.dart', 'build/copy.dart', 'build/multicopy.dart'], 'tests/transform.dart', 'build/format.dart', 'build/pubspec.dart', From cdc83730dfbba45328ec983f20bbf7859cbca061 Mon Sep 17 00:00:00 2001 From: Alex Eagle Date: Fri, 20 Mar 2015 12:08:32 -0700 Subject: [PATCH 4/4] Use the newer dart formatter, which gives better errors --- gulpfile.js | 14 ++++++++++++-- modules/angular2/src/di/injector.js | 2 +- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/gulpfile.js b/gulpfile.js index 0def90d722..cfc098a386 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -344,11 +344,21 @@ gulp.task('build/transpile.dart', transpile(gulp, gulpPlugins, { var ts2dart = require('gulp-ts2dart'); gulp.task('build/transpile.dart.ts2dart', function() { - gulp.src('modules/angular2/src/di/*.js') + gulp.src(['modules/angular2/src/di/*.js', 'modules/angular2/test/di/*.js', 'modules/angular2/src/test_lib/*.js']) .pipe(ts2dart.transpile()) - .pipe(ts2dart.format()) .pipe(gulp.dest('dist/dart.ts2dart')) }); +gulp.task('build/format.dart.ts2dart', rundartpackage(gulp, gulpPlugins, { + pub: DART_SDK.PUB, + packageName: CONFIG.formatDart.packageName, + args: ['dart_style:format', '-w', 'dist/dart.ts2dart'] +})); +gulp.task('ts2dart', function(done) { + runSequence( + ['build/transpile.dart.ts2dart', 'build/format.dart.ts2dart'], + done + ); +}); // ------------ // html diff --git a/modules/angular2/src/di/injector.js b/modules/angular2/src/di/injector.js index 3807abfabe..e76ee671cf 100644 --- a/modules/angular2/src/di/injector.js +++ b/modules/angular2/src/di/injector.js @@ -27,7 +27,7 @@ export class Injector { _defaultBindings:boolean; _asyncStrategy: _AsyncInjectorStrategy; _syncStrategy:_SyncInjectorStrategy; - constructor(bindings:List, {parent=null, defaultBindings=false}={}) { + constructor(bindings:List, parent=null, defaultBindings=false) { var flatten = _flattenBindings(bindings, MapWrapper.create()); this._bindings = this._createListOfBindings(flatten); this._instances = this._createInstances();