Browse Source

Merge pull request #22594 from abpframework/auto-merge/rel-9-2/3624

Merge branch dev with rel-9.2
pull/22595/head
maliming 1 year ago
committed by GitHub
parent
commit
59ebcdb774
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 14
      npm/ng-packs/packages/core/src/lib/guards/permission.guard.ts

14
npm/ng-packs/packages/core/src/lib/guards/permission.guard.ts

@ -7,7 +7,7 @@ import {
} from '@angular/router';
import { HttpErrorResponse } from '@angular/common/http';
import { Observable, of } from 'rxjs';
import { tap } from 'rxjs/operators';
import { filter, take, tap } from 'rxjs/operators';
import { AuthService, IAbpGuard } from '../abstracts';
import { findRoute, getRoutePath } from '../utils/route-utils';
import { RoutesService, PermissionService, HttpErrorReporterService } from '../services';
@ -32,9 +32,13 @@ export class PermissionGuard implements IAbpGuard {
requiredPolicy = routeFound?.requiredPolicy;
}
if (!requiredPolicy) return of(true);
if (!requiredPolicy) {
return of(true);
}
return this.permissionService.getGrantedPolicy$(requiredPolicy).pipe(
filter(Boolean),
take(1),
tap(access => {
if (!access && this.authService.isAuthenticated) {
this.httpErrorReporter.reportError({ status: 403 } as HttpErrorResponse);
@ -61,9 +65,13 @@ export const permissionGuard: CanActivateFn = (
requiredPolicy = routeFound?.requiredPolicy;
}
if (!requiredPolicy) return of(true);
if (!requiredPolicy) {
return of(true);
}
return permissionService.getGrantedPolicy$(requiredPolicy).pipe(
filter(Boolean),
take(1),
tap(access => {
if (!access && authService.isAuthenticated) {
httpErrorReporter.reportError({ status: 403 } as HttpErrorResponse);

Loading…
Cancel
Save