From 8bc784e972288ab6894a959bef06f0bc53c123c0 Mon Sep 17 00:00:00 2001 From: Jeongho Nam Date: Thu, 23 Nov 2023 20:22:19 +0900 Subject: [PATCH] Fix samchon/typia#880 - `any` type comes when `assertClone` option. In nowadays, I've added an option that configure `assertClone` to be `TypedBody()`'s validator. By the way, I've taken a mistake that have not considered the any typed property case from the request body DTO. This PR fixes the problem, by supporting the `any` typed value cloning. --- packages/core/package.json | 6 +++--- packages/core/src/decorators/TypedBody.ts | 3 ++- packages/fetcher/package.json | 2 +- packages/sdk/package.json | 6 +++--- test/package.json | 8 ++++---- 5 files changed, 13 insertions(+), 12 deletions(-) diff --git a/packages/core/package.json b/packages/core/package.json index 044742de4..ec8b883f0 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@nestia/core", - "version": "2.3.10", + "version": "2.3.11", "description": "Super-fast validation decorators of NestJS", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -34,7 +34,7 @@ }, "homepage": "https://nestia.io", "dependencies": { - "@nestia/fetcher": "^2.3.10", + "@nestia/fetcher": "^2.3.11", "@nestjs/common": ">=7.0.1", "@nestjs/core": ">=7.0.1", "@nestjs/platform-express": ">=7.0.1", @@ -47,7 +47,7 @@ "typia": "^5.2.6" }, "peerDependencies": { - "@nestia/fetcher": ">=2.3.10", + "@nestia/fetcher": ">=2.3.11", "@nestjs/common": ">=7.0.1", "@nestjs/core": ">=7.0.1", "@nestjs/platform-express": ">=7.0.1", diff --git a/packages/core/src/decorators/TypedBody.ts b/packages/core/src/decorators/TypedBody.ts index 5ddd28e9c..4b6f9e27d 100644 --- a/packages/core/src/decorators/TypedBody.ts +++ b/packages/core/src/decorators/TypedBody.ts @@ -6,7 +6,7 @@ import { import type express from "express"; import type { FastifyRequest } from "fastify"; -import { assert, is, validate } from "typia"; +import { assert, is, misc, validate } from "typia"; import { IRequestBodyValidator } from "../options/IRequestBodyValidator"; import { validate_request_body } from "./internal/validate_request_body"; @@ -47,6 +47,7 @@ export function TypedBody( })(); } +Object.assign(TypedBody, misc.clone); Object.assign(TypedBody, is); Object.assign(TypedBody, assert); Object.assign(TypedBody, validate); diff --git a/packages/fetcher/package.json b/packages/fetcher/package.json index b91c53b3a..af2714a50 100644 --- a/packages/fetcher/package.json +++ b/packages/fetcher/package.json @@ -1,6 +1,6 @@ { "name": "@nestia/fetcher", - "version": "2.3.10", + "version": "2.3.11", "description": "Fetcher library of Nestia SDK", "main": "lib/index.js", "typings": "lib/index.d.ts", diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 8b6f64c86..98ffb63ec 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@nestia/sdk", - "version": "2.3.10", + "version": "2.3.11", "description": "Nestia SDK and Swagger generator", "main": "lib/index.js", "typings": "lib/index.d.ts", @@ -35,7 +35,7 @@ }, "homepage": "https://nestia.io", "dependencies": { - "@nestia/fetcher": "^2.3.10", + "@nestia/fetcher": "^2.3.11", "cli": "^1.0.1", "get-function-location": "^2.0.0", "glob": "^7.2.0", @@ -47,7 +47,7 @@ "typia": "^5.2.6" }, "peerDependencies": { - "@nestia/fetcher": ">=2.3.10", + "@nestia/fetcher": ">=2.3.11", "@nestjs/common": ">=7.0.1", "@nestjs/core": ">=7.0.1", "reflect-metadata": ">=0.1.12", diff --git a/test/package.json b/test/package.json index 6da445702..4964a7e3f 100644 --- a/test/package.json +++ b/test/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@nestia/test", - "version": "2.3.10", + "version": "2.3.11", "description": "Test program of Nestia", "main": "index.js", "scripts": { @@ -37,9 +37,9 @@ "typia": "^5.2.6", "uuid": "^9.0.0", "nestia": "^4.5.0", - "@nestia/core": "^2.3.10", + "@nestia/core": "^2.3.11", "@nestia/e2e": "^0.3.6", - "@nestia/fetcher": "^2.3.10", - "@nestia/sdk": "^2.3.10" + "@nestia/fetcher": "^2.3.11", + "@nestia/sdk": "^2.3.11" } } \ No newline at end of file