diff --git a/packages/angular/src/directives/ion-nav.ts b/packages/angular/src/directives/ion-nav.ts index 8a40727cf9..b1080a372f 100644 --- a/packages/angular/src/directives/ion-nav.ts +++ b/packages/angular/src/directives/ion-nav.ts @@ -14,8 +14,10 @@ import { ViewChild } from '@angular/core'; -import { NavController, ViewController } from '@ionic/core'; +import { PublicNav, PublicViewController } from '@ionic/core'; + import { App } from '../providers/app'; + import { NavController as InjectableNavController } from '../providers/nav-controller'; @Component({ @@ -36,7 +38,7 @@ export class IonNavDelegate { controllerElement.delegate = this; } - attachViewToDom(nav: NavController, enteringView: ViewController): Promise { + attachViewToDom(nav: PublicNav, enteringView: PublicViewController): Promise { return new Promise((resolve, reject) => { this.zone.run(() => { @@ -45,7 +47,7 @@ export class IonNavDelegate { provide: NavControllerToken, useValue: nav.element, }, { - provide: NavController, useFactory: provideNavControllerInjectable, deps: [NavControllerToken] + provide: InjectableNavController, useFactory: provideNavControllerInjectable, deps: [NavControllerToken] }, { @@ -75,7 +77,7 @@ export class IonNavDelegate { }); } - removeViewFromDom(nav: NavController, viewController: ViewController) { + removeViewFromDom(nav: PublicNav, viewController: PublicViewController) { return new Promise((resolve, reject) => { this.zone.run(() => { diff --git a/packages/angular/src/providers/nav-controller.ts b/packages/angular/src/providers/nav-controller.ts index e3de6d85c1..350bf5cc32 100644 --- a/packages/angular/src/providers/nav-controller.ts +++ b/packages/angular/src/providers/nav-controller.ts @@ -1,8 +1,8 @@ import { Injectable } from '@angular/core'; -import { NavOptions, PublicNavController, ViewController } from '@ionic/core'; +import { NavOptions, PublicNav, PublicViewController } from '@ionic/core'; import { hydrateElement } from '../util/util'; -export class NavController implements PublicNavController { +export class NavController implements PublicNav { constructor(public element: HTMLIonNavElement) { } @@ -54,7 +54,7 @@ export class NavController implements PublicNavController { }); } - removeView(viewController: ViewController, opts?: NavOptions): Promise { + removeView(viewController: PublicViewController, opts?: NavOptions): Promise { return hydrateElement(this.element).then((navElement: HTMLIonNavElement) => { return navElement.removeView(viewController, opts); }); @@ -66,23 +66,23 @@ export class NavController implements PublicNavController { }); } - getActive(): ViewController { + getActive(): PublicViewController { if (this.element.getActive) { return this.element.getActive(); } return null; } - getPrevious(view?: ViewController): ViewController { + getPrevious(view?: PublicViewController): PublicViewController { if (this.element.getPrevious) { return this.element.getPrevious(view); } return null; } - canGoBack(nav: PublicNavController): boolean { + canGoBack(): boolean { if (this.element.canGoBack) { - return this.element.canGoBack(nav as any); + return this.element.canGoBack(); } return false; } @@ -94,7 +94,7 @@ export class NavController implements PublicNavController { return false; } - getFirstView(): ViewController { + getFirstView(): PublicViewController { if (this.element.getFirstView) { return this.element.getFirstView(); }