From bae6b91e7d8959941a6fd52c7977899a91678f21 Mon Sep 17 00:00:00 2001 From: Ian Riley Date: Tue, 2 Jun 2015 17:44:32 -0700 Subject: [PATCH] refactor(angular2/angular2_sfx): Allows no-module integration of Angular2 Translates angular2/angular2_sfx to TypeScript in order to allow Angular2 integration without modules. --- .../{angular2_sfx.es6 => angular2_sfx.ts} | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) rename modules/angular2/{angular2_sfx.es6 => angular2_sfx.ts} (55%) diff --git a/modules/angular2/angular2_sfx.es6 b/modules/angular2/angular2_sfx.ts similarity index 55% rename from modules/angular2/angular2_sfx.es6 rename to modules/angular2/angular2_sfx.ts index 35f5d3914a..ef31e617ec 100644 --- a/modules/angular2/angular2_sfx.es6 +++ b/modules/angular2/angular2_sfx.ts @@ -1,20 +1,30 @@ -import * as angular from './angular2'; +import * as ng from './angular2'; // the router should have its own SFX bundle // But currently the module arithemtic 'angular2/router_sfx - angular2/angular2', // is not support by system builder. import * as router from './router'; +var angular: AngularOne = ng; +(window).angular = angular; + +var _prevAngular = (window).angular; + + angular.router = router; - -var _prevAngular = window.angular; - /** * Calling noConflict will restore window.angular to its pre-angular loading state * and return the angular module object. */ angular.noConflict = function() { - window.angular = _prevAngular; + (window).angular = _prevAngular; return angular; }; -window.angular = angular; +interface AngularOne { + router: any; + noConflict(): any; +} + +interface AngularWindow extends Window { + angular: any; +}