diff --git a/public/docs/_examples/upgrade-adapter/e2e-spec.ts b/public/docs/_examples/upgrade-adapter/e2e-spec.ts index 17c36edaed..2994022c72 100644 --- a/public/docs/_examples/upgrade-adapter/e2e-spec.ts +++ b/public/docs/_examples/upgrade-adapter/e2e-spec.ts @@ -62,9 +62,8 @@ describe('Upgrade Tests', function () { describe('Upgraded component with IO', function() { beforeAll(function () { + setProtractorToHybridMode(); browser.get('/index-upgrade-io.html'); - setProtractorToNg1Mode(); - waitForNg1AsyncBootstrap(); }); it('has inputs', function () { diff --git a/public/docs/_examples/upgrade-adapter/ts/app/upgrade-io/app.module.ts b/public/docs/_examples/upgrade-adapter/ts/app/upgrade-io/app.module.ts index 7e672c888c..3e0641f152 100644 --- a/public/docs/_examples/upgrade-adapter/ts/app/upgrade-io/app.module.ts +++ b/public/docs/_examples/upgrade-adapter/ts/app/upgrade-io/app.module.ts @@ -1,16 +1,36 @@ -import { heroDetail } from './hero-detail.component'; -import { ContainerComponent } from './container.component'; -import { upgradeAdapter } from './upgrade_adapter'; - - declare var angular: any; +import { NgModule } from '@angular/core'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; +import { BrowserModule } from '@angular/platform-browser'; +import { UpgradeModule, downgradeComponent } from '@angular/upgrade/static'; + +import { heroDetail, HeroDetailComponent } from './hero-detail.component'; +import { ContainerComponent } from './container.component'; + +// #docregion heroupgrade +@NgModule({ + imports: [ + BrowserModule, + UpgradeModule + ], + declarations: [ + ContainerComponent, + HeroDetailComponent + ], + entryComponents: [ + ContainerComponent + ] +}) +export class AppModule { + ngDoBootstrap() {} +} +// #enddocregion heroupgrade angular.module('heroApp', []) .component('heroDetail', heroDetail) - .directive('myContainer', upgradeAdapter.downgradeNg2Component(ContainerComponent)); + .directive('myContainer', downgradeComponent({component: ContainerComponent})); -upgradeAdapter.bootstrap( - document.querySelector('hero-app'), - ['heroApp'], - {strictDi: true} -); +platformBrowserDynamic().bootstrapModule(AppModule).then(platformRef => { + let upgrade = platformRef.injector.get(UpgradeModule); + upgrade.bootstrap(document.body, ['heroApp'], {strictDi: true}); +}); diff --git a/public/docs/_examples/upgrade-adapter/ts/app/upgrade-io/hero-detail.component.ts b/public/docs/_examples/upgrade-adapter/ts/app/upgrade-io/hero-detail.component.ts index 175c1ed317..07f9ad5b2a 100644 --- a/public/docs/_examples/upgrade-adapter/ts/app/upgrade-io/hero-detail.component.ts +++ b/public/docs/_examples/upgrade-adapter/ts/app/upgrade-io/hero-detail.component.ts @@ -15,3 +15,20 @@ export const heroDetail = { }; } }; + + +import { Directive, ElementRef, Injector, Input, Output, EventEmitter } from '@angular/core'; +import { UpgradeComponent } from '@angular/upgrade/static'; +import { Hero } from '../hero'; + +@Directive({ + selector: 'hero-detail' +}) +export class HeroDetailComponent extends UpgradeComponent { + @Input() hero: Hero; + @Output() deleted: EventEmitter; + + constructor(elementRef: ElementRef, injector: Injector) { + super('heroDetail', elementRef, injector); + } +} diff --git a/public/docs/_examples/upgrade-adapter/ts/app/upgrade-io/upgrade_adapter.ts b/public/docs/_examples/upgrade-adapter/ts/app/upgrade-io/upgrade_adapter.ts deleted file mode 100644 index b0f947c8e5..0000000000 --- a/public/docs/_examples/upgrade-adapter/ts/app/upgrade-io/upgrade_adapter.ts +++ /dev/null @@ -1,20 +0,0 @@ -// #docregion -import { UpgradeAdapter } from '@angular/upgrade'; -import { NgModule, forwardRef } from '@angular/core'; -import { BrowserModule } from '@angular/platform-browser'; - -import { ContainerComponent } from './container.component'; - -export const upgradeAdapter = new UpgradeAdapter(forwardRef(() => AppModule)); -const HeroDetail = upgradeAdapter.upgradeNg1Component('heroDetail'); - -@NgModule({ - imports: [ BrowserModule ], - declarations: [ ContainerComponent, HeroDetail ] -}) -export class AppModule {} - -angular.module('heroApp', []) - .controller('MainCtrl', function() { - this.message = 'Hello world'; - });