Эх сурвалжийг харах

Feature: Implement error formatting for login validation

BedirhanOZCAN 1 сар өмнө
parent
commit
6f562c826d

+ 5 - 2
src/actions/auth/login/index.ts

@@ -13,16 +13,19 @@ import {
     LoginInput
 } from "./types";
 import redis from "../../../config/redis";
+import {
+    formatValidationErrors
+} from "../../../utils";
 
 export const login = async (input: LoginInput): Promise<LoginResult> => {
     const dto = plainToInstance(LoginInput, input);
     const errors = await validate(dto);
 
     if (errors.length > 0) {
-        const message = Object.values(errors[0].constraints!)[0];
+        const formattedErrors = formatValidationErrors(errors);
         return {
             code: 400,
-            message,
+            message: formattedErrors[0],
         };
     }
 

+ 7 - 0
src/utils/index.ts

@@ -0,0 +1,7 @@
+import {
+    ValidationError
+} from "class-validator";
+
+export const formatValidationErrors = (errors: ValidationError[]): string[] => {
+    return errors.map(error => Object.values(error.constraints!)[0]);
+};