From 54dd811e3308af7d167c9cb5d2a190db07f6142a Mon Sep 17 00:00:00 2001
From: Ronnie Friman <L4168@student.jamk.fi>
Date: Tue, 2 Jul 2019 19:22:13 +0300
Subject: [PATCH] added nested validation errors

---
 src/shared/validation.pipe.ts | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/src/shared/validation.pipe.ts b/src/shared/validation.pipe.ts
index 68eb4e8..cff51f1 100644
--- a/src/shared/validation.pipe.ts
+++ b/src/shared/validation.pipe.ts
@@ -7,6 +7,7 @@ import {
 } from '@nestjs/common';
 import { validate } from 'class-validator';
 import { plainToClass } from 'class-transformer';
+import { AdvancedConsoleLogger } from 'typeorm';
 
 @Injectable()
 export class ValidationPipe implements PipeTransform<any> {
@@ -44,13 +45,20 @@ export class ValidationPipe implements PipeTransform<any> {
   private formatErrors(errors: any[]) {
     return errors
       .map(err => {
-        for (let property in err.constraints) {
-          return err.constraints[property];
-        }
+        return this.returnError(err);
       })
       .join(', ');
   }
 
+  private returnError(err) {
+    if (err['children'] !== undefined && err['children'].length != 0) {
+      return this.formatErrors(err['children']);
+    }
+    for (let property in err.constraints) {
+      return err.constraints[property];
+    }
+  }
+
   private isEmpty(value: any) {
     return Object.keys(value).length > 0 ? false : true;
   }
-- 
GitLab