super-admin.guard.ts 438 B

12345678910111213
  1. import { Injectable, CanActivate, ExecutionContext } from '@nestjs/common';
  2. import { UserRole } from '../user/user-role.enum';
  3. @Injectable()
  4. export class SuperAdminGuard implements CanActivate {
  5. canActivate(context: ExecutionContext): boolean {
  6. const request = context.switchToHttp().getRequest();
  7. const user = request.user;
  8. return (
  9. user && (user.role === UserRole.SUPER_ADMIN || user.isAdmin === true)
  10. );
  11. }
  12. }