enter image description here
Here is my GitHub code: https://github.com/borisalibeja/EcoFarm
I trying to build auth using RBAC, but I have some problems with the interface declared on the node Modules.
I tried to edit the interface on the node-modules but that produced more errors.
`roles.guard.ts:
import { CanActivate, ExecutionContext, Injectable } from '@nestjs/common';
import { Request } from 'express';
import { Reflector } from '@nestjs/core';
import { Role } from '../enums';
@Injectable()
export class RolesGuard implements CanActivate {
constructor(private reflector: Reflector) {}
canActivate(context: ExecutionContext) {
const requiredRoles = this.reflector.getAllAndOverride<Role[]>('roles', [
context.getHandler(),
context.getClass(),
]);
if (!requiredRoles || requiredRoles.length === 0) return true;
const { session } = context.switchToHttp().getRequest<Request>();
return requiredRoles.some((role) => session.user.roles.includes(role));
}
}
`
New contributor
Boris Alibeja is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.