All files / src/auth/decorators current-user.decorator.ts

40% Statements 2/5
0% Branches 0/2
0% Functions 0/1
40% Lines 2/5

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 164x             4x                
import { createParamDecorator, ExecutionContext } from "@nestjs/common";
import { User } from "../../users/user.entity";
 
interface RequestWithUser {
  user: User;
}
 
export const CurrentUser = createParamDecorator(
  (data: keyof User | undefined, ctx: ExecutionContext) => {
    const request = ctx.switchToHttp().getRequest<RequestWithUser>();
    const user = request.user;
 
    return data ? user[data] : user;
  },
);