import { CanActivate, ExecutionContext } from '@nestjs/common'; import { GqlExecutionContext } from '@nestjs/graphql'; import { Observable } from 'rxjs'; export class AdminPanelGuard implements CanActivate { canActivate( context: ExecutionContext, ): boolean | Promise | Observable { const ctx = GqlExecutionContext.create(context); const request = ctx.getContext().req; return request.user.canAccessFullAdminPanel === true; } }