From d067868eaf7d9f8d1a43373e5fe904eecbb97a46 Mon Sep 17 00:00:00 2001 From: erdemcaygor Date: Mon, 1 Sep 2025 18:33:33 +0300 Subject: [PATCH] auth flow updated --- .../packages/core/src/lib/guards/permission.guard.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/npm/ng-packs/packages/core/src/lib/guards/permission.guard.ts b/npm/ng-packs/packages/core/src/lib/guards/permission.guard.ts index 82ff84d8a5..8d1e478864 100644 --- a/npm/ng-packs/packages/core/src/lib/guards/permission.guard.ts +++ b/npm/ng-packs/packages/core/src/lib/guards/permission.guard.ts @@ -1,4 +1,4 @@ -import { Injectable, inject } from '@angular/core'; +import { Injectable, inject, PLATFORM_ID } from '@angular/core'; import { ActivatedRouteSnapshot, CanActivateFn, @@ -11,6 +11,7 @@ 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'; +import { isPlatformServer } from '@angular/common'; /** * @deprecated Use `permissionGuard` *function* instead. */ @@ -57,6 +58,7 @@ export const permissionGuard: CanActivateFn = ( const authService = inject(AuthService); const permissionService = inject(PermissionService); const httpErrorReporter = inject(HttpErrorReporterService); + const platformId = inject(PLATFORM_ID); let { requiredPolicy } = route.data || {}; @@ -69,6 +71,11 @@ export const permissionGuard: CanActivateFn = ( return of(true); } + //TODO enable permission check on ssr + if (isPlatformServer(platformId)) { + return of(true); + } + return permissionService.getGrantedPolicy$(requiredPolicy).pipe( filter(Boolean), take(1),