* @Injectable takes a metadata object that tells Angular how to compile and run module code
*/
@Injectable()
+// eslint-disable-next-line deprecation/deprecation
export class AuthGuardService implements CanActivate {
/** Holds teh instance of AuthService class of type AuthService @private */
private router: Router;
* Returns Observable<boolean> if authorized @public
*/
public canActivate(next: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> {
+ // eslint-disable-next-line deprecation/deprecation
return combineLatest(
this.authService.isLoggedIn,
this.authService.isChangePassword
if (changePassword || isLoggedIn) {
return true;
} else {
- this.router.navigate(['/login']).catch();
+ this.router.navigate(['/login']).catch((): void => {
+ // Catch Navigation Error
+ });
this.authService.destoryToken();
return false;
}