28 lines
706 B
TypeScript
Raw Normal View History

2022-08-25 13:27:47 +02:00
import { Controller, Get, Post, Request } from '@nestjs/common';
import { AuthService } from 'services/auth';
2022-08-25 23:42:12 +02:00
import { Responses } from '../../dto';
2022-08-25 13:27:47 +02:00
@Controller('api/user')
export default class UserController {
constructor(private authService: AuthService) {}
@Get('info')
async getUserInfo(
@Request() req
): Promise<Responses.User.UserInfoResponse> {
return new Responses.User.UserInfoResponse(
req.user.name,
req.user.isGitlabUser,
this.authService.requiresTfa(req.user)
);
}
@Post('delete')
async deleteUser(
@Request() req
): Promise<Responses.User.DeleteUserResponse> {
await this.authService.deleteUser(req.user);
return new Responses.User.DeleteUserResponse();
}
}