mirror of
https://github.com/SyncrowIOT/backend.git
synced 2025-07-15 10:25:23 +00:00
Update role types in enums and role guards
This commit is contained in:
@ -1,4 +1,5 @@
|
|||||||
export enum RoleType {
|
export enum RoleType {
|
||||||
USER = 'USER',
|
SUPER_ADMIN = 'SUPER_ADMIN',
|
||||||
ADMIN = 'ADMIN',
|
ADMIN = 'ADMIN',
|
||||||
|
USER = 'USER',
|
||||||
}
|
}
|
||||||
|
@ -4,7 +4,10 @@ import { AuthGuard } from '@nestjs/passport';
|
|||||||
|
|
||||||
export class AdminRoleGuard extends AuthGuard('jwt') {
|
export class AdminRoleGuard extends AuthGuard('jwt') {
|
||||||
handleRequest(err, user) {
|
handleRequest(err, user) {
|
||||||
const isAdmin = user.roles.some((role) => role.type === RoleType.ADMIN);
|
const isAdmin = user.roles.some(
|
||||||
|
(role) =>
|
||||||
|
role.type === RoleType.SUPER_ADMIN || role.type === RoleType.ADMIN,
|
||||||
|
);
|
||||||
if (err || !user) {
|
if (err || !user) {
|
||||||
throw err || new UnauthorizedException();
|
throw err || new UnauthorizedException();
|
||||||
} else {
|
} else {
|
||||||
|
@ -5,7 +5,10 @@ import { AuthGuard } from '@nestjs/passport';
|
|||||||
export class UserRoleGuard extends AuthGuard('jwt') {
|
export class UserRoleGuard extends AuthGuard('jwt') {
|
||||||
handleRequest(err, user) {
|
handleRequest(err, user) {
|
||||||
const isUserOrAdmin = user.roles.some(
|
const isUserOrAdmin = user.roles.some(
|
||||||
(role) => role.type === RoleType.ADMIN || role.type === RoleType.USER,
|
(role) =>
|
||||||
|
role.type === RoleType.SUPER_ADMIN ||
|
||||||
|
role.type === RoleType.ADMIN ||
|
||||||
|
role.type === RoleType.USER,
|
||||||
);
|
);
|
||||||
if (err || !user) {
|
if (err || !user) {
|
||||||
throw err || new UnauthorizedException();
|
throw err || new UnauthorizedException();
|
||||||
|
Reference in New Issue
Block a user