import { Body, Controller, HttpCode, HttpStatus, Post, UseGuards, } from '@nestjs/common'; import { UserService } from './user.service'; import { UpdateUserDto } from './dto/update-user.dto'; import { AuthUser } from '../../common/decorators/auth-user.decorator'; import { JwtAuthGuard } from '../../common/guards/jwt-auth.guard'; import { AuthWorkspace } from '../../common/decorators/auth-workspace.decorator'; import { User, Workspace } from '@docmost/db/types/entity.types'; @UseGuards(JwtAuthGuard) @Controller('users') export class UserController { constructor(private readonly userService: UserService) {} @HttpCode(HttpStatus.OK) @Post('me') async getUserIno( @AuthUser() authUser: User, @AuthWorkspace() workspace: Workspace, ) { return { user: authUser, workspace }; } @HttpCode(HttpStatus.OK) @Post('update') async updateUser( @Body() updateUserDto: UpdateUserDto, @AuthUser() user: User, @AuthWorkspace() workspace: Workspace, ) { return this.userService.update(updateUserDto, user.id, workspace.id); } }