ref: format with prettier

This commit is contained in:
M1000fr 2024-12-02 16:55:44 +01:00
parent ccf496a5d9
commit a6d24cee9d
22 changed files with 345 additions and 367 deletions

View File

@ -5,7 +5,7 @@
"license": "Apache-2.0", "license": "Apache-2.0",
"scripts": { "scripts": {
"build": "nest build", "build": "nest build",
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"", "format": "prettier --write \"src/**/*.ts\"",
"start": "nest start", "start": "nest start",
"start:dev": "nest start --watch", "start:dev": "nest start --watch",
"start:debug": "nest start --debug --watch", "start:debug": "nest start --debug --watch",

View File

@ -27,7 +27,7 @@ async function bootstrap() {
swaggerOptions: { swaggerOptions: {
tryItOutEnabled: true, tryItOutEnabled: true,
persistAuthorization: true, persistAuthorization: true,
} },
}); });
await app.listen(process.env.PORT ?? 3000, "0.0.0.0"); await app.listen(process.env.PORT ?? 3000, "0.0.0.0");

View File

@ -1,22 +1,12 @@
import { import { Controller, Get, Req, Res, UseGuards } from "@nestjs/common";
Body,
Controller,
Get,
Post,
Req,
Res,
UseGuards,
} from "@nestjs/common";
import { ConfigService } from "@nestjs/config"; import { ConfigService } from "@nestjs/config";
import { ApiBearerAuth, ApiBody, ApiOkResponse } from "@nestjs/swagger"; import { ApiBearerAuth, ApiOkResponse } from "@nestjs/swagger";
import { URLSearchParams } from "node:url"; import { URLSearchParams } from "node:url";
import { ResfreshDTO } from "./dto/refresh.dto"; import { AuthService } from "./auth.service";
import { DiscordAuthGuard } from "./guards/discord.guard"; import { DiscordAuthGuard } from "./guards/discord.guard";
import { RefreshJwtAuthGuard } from "./guards/refresh.guard"; import { RefreshJwtAuthGuard } from "./guards/refresh.guard";
import { AuthService } from "./auth.service";
@Controller("auth") @Controller("auth")
export class AuthController { export class AuthController {
@ -70,10 +60,9 @@ export class AuthController {
@Get("refresh") @Get("refresh")
@UseGuards(RefreshJwtAuthGuard) @UseGuards(RefreshJwtAuthGuard)
@ApiBearerAuth() @ApiBearerAuth()
@ApiBody({
type: ResfreshDTO,
})
refresh(@Req() req) { refresh(@Req() req) {
return this.authService.accessToken(req.user); return {
accessToken: this.authService.accessToken(req.user),
};
} }
} }

View File

@ -10,24 +10,24 @@ export class AuthService {
) {} ) {}
accessToken(user: { id: string }) { accessToken(user: { id: string }) {
const payload = { id: user.id }; return this.jwtService.sign(
return { { id: user.id },
accessToken: this.jwtService.sign(payload, { {
secret: this.configService.get<string>("JWT.secret"), secret: this.configService.get<string>("JWT.secret"),
expiresIn: this.configService.get<string>("JWT.expiresIn"), expiresIn: this.configService.get<string>("JWT.expiresIn"),
}), },
}; );
} }
refreshToken(user: { id: string }) { refreshToken(user: { id: string }) {
const payload = { id: user.id }; return this.jwtService.sign(
return { { id: user.id },
refreshToken: this.jwtService.sign(payload, { {
secret: this.configService.get<string>("JWT.refresh.secret"), secret: this.configService.get<string>("JWT.refresh.secret"),
expiresIn: this.configService.get<string>( expiresIn: this.configService.get<string>(
"JWT.refresh.expiresIn", "JWT.refresh.expiresIn",
), ),
}), },
}; );
} }
} }

View File

@ -1,8 +0,0 @@
import { ApiProperty } from "@nestjs/swagger";
import { IsJWT } from "class-validator";
export class ResfreshDTO {
@ApiProperty()
@IsJWT()
refreshToken: string;
}

View File

@ -12,10 +12,7 @@ export class RolesGuard implements CanActivate {
constructor(private readonly reflector: Reflector) {} constructor(private readonly reflector: Reflector) {}
canActivate(context: ExecutionContext): boolean { canActivate(context: ExecutionContext): boolean {
const role = this.reflector.get<string>( const role = this.reflector.get<string>("role", context.getHandler());
"role",
context.getHandler(),
);
if (!role) { if (!role) {
return true; return true;
} }

View File

@ -14,7 +14,7 @@ export class UserEntity {
@Expose() @Expose()
@ApiProperty() @ApiProperty()
role: $Enums.Role role: $Enums.Role;
constructor(partial: Partial<UserEntity>) { constructor(partial: Partial<UserEntity>) {
Object.assign(this, partial); Object.assign(this, partial);

View File

@ -3,7 +3,7 @@ import { Module } from "@nestjs/common";
import { UserService } from "./user.service"; import { UserService } from "./user.service";
import { PrismaService } from "@Modules/prisma/prisma.service"; import { PrismaService } from "@Modules/prisma/prisma.service";
import { UserController } from './user.controller'; import { UserController } from "./user.controller";
@Module({ @Module({
providers: [UserService, PrismaService], providers: [UserService, PrismaService],

View File

@ -1,17 +1,17 @@
import * as Joi from 'joi'; import * as Joi from "joi";
export const envValidation = Joi.object({ export const envValidation = Joi.object({
DATABASE_URL: Joi.string().required(), DATABASE_URL: Joi.string().required(),
JWT_SECRET: Joi.string().required(), JWT_SECRET: Joi.string().required(),
JWT_EXPIRES_IN: Joi.string().required(), JWT_EXPIRES_IN: Joi.string().required(),
REFRESH_JWT_SECRET: Joi.string().required(), REFRESH_JWT_SECRET: Joi.string().required(),
REFRESH_JWT_EXPIRES_IN: Joi.string().required(), REFRESH_JWT_EXPIRES_IN: Joi.string().required(),
DISCORD_CLIENT_ID: Joi.string().required(), DISCORD_CLIENT_ID: Joi.string().required(),
DISCORD_CLIENT_SECRET: Joi.string().required(), DISCORD_CLIENT_SECRET: Joi.string().required(),
DISCORD_CALLBACK_URL: Joi.string().required(), DISCORD_CALLBACK_URL: Joi.string().required(),
PORT: Joi.number().optional(), PORT: Joi.number().optional(),
}); });