FarmMapsLib/projects/common/src/fm/services/package-guard.service.ts
Mark van der Wal 39993e75da
All checks were successful
FarmMaps.Develop/FarmMapsLib/pipeline/head This commit looks good
added a package guard
2021-02-05 12:51:43 +01:00

20 lines
640 B
TypeScript

import {Injectable} from '@angular/core';
import {ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot} from '@angular/router';
import {PackageService} from './package.service';
@Injectable({
providedIn: 'root',
})
export class PackageGuardService implements CanActivate {
constructor(private packageService: PackageService) { }
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean {
return route.data && route.data.package && this.hasPackageForRoute(route.data.package);
}
private hasPackageForRoute(packageId: string): boolean {
return this.packageService.hasPackage(packageId);
}
}