From c21361877789531a111810c4b25ba9b7d33d26b4 Mon Sep 17 00:00:00 2001 From: Jeongho Nam Date: Wed, 20 Mar 2024 14:13:43 +0900 Subject: [PATCH] Fix #837: critical change from NestJS 10.3.4 --- package.json | 2 +- packages/core/package.json | 2 +- packages/sdk/package.json | 2 +- packages/sdk/src/analyses/ReflectAnalyzer.ts | 64 ++++++++++++++----- packages/sdk/src/structures/ParamCategory.ts | 2 +- test/features/all/swagger.json | 2 +- ...i_api_internal_bbs_articles_comments_at.ts | 19 ------ ...pi_internal_bbs_articles_comments_index.ts | 20 ------ ...pi_internal_bbs_articles_comments_store.ts | 19 ------ ...i_internal_bbs_articles_comments_update.ts | 20 ------ ...est_api_api_internal_bbs_articles_index.ts | 18 ------ ...est_api_api_internal_bbs_articles_store.ts | 17 ----- ...est_api_api_internal_v1_bbs_articles_at.ts | 18 ------ ..._api_api_internal_v1_bbs_articles_index.ts | 18 ------ .../test_api_api_internal_v1_health_get.ts | 10 --- ...est_api_api_internal_v1_performance_get.ts | 13 ---- ..._api_api_internal_v2_bbs_articles_index.ts | 18 ------ ...api_api_internal_v2_bbs_articles_update.ts | 19 ------ .../app-globalPrefix-versionUri/swagger.json | 2 +- test/features/app-globalPrefix/swagger.json | 2 +- test/features/app/swagger.json | 2 +- test/features/headers-decompose/swagger.json | 2 +- test/features/headers/swagger.json | 2 +- test/package.json | 8 +-- website/package.json | 2 +- 25 files changed, 63 insertions(+), 240 deletions(-) delete mode 100644 test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_at.ts delete mode 100644 test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_index.ts delete mode 100644 test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_store.ts delete mode 100644 test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_update.ts delete mode 100644 test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_index.ts delete mode 100644 test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_store.ts delete mode 100644 test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_bbs_articles_at.ts delete mode 100644 test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_bbs_articles_index.ts delete mode 100644 test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_health_get.ts delete mode 100644 test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_performance_get.ts delete mode 100644 test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v2_bbs_articles_index.ts delete mode 100644 test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v2_bbs_articles_update.ts diff --git a/package.json b/package.json index c3f70889e..0a1c94b6b 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@nestia/station", - "version": "2.5.16-dev.20240320", + "version": "2.5.16-dev.20240320-2", "description": "Nestia station", "main": "prettier.config.js", "scripts": { diff --git a/packages/core/package.json b/packages/core/package.json index 1c6abdf37..1cd82f906 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -36,7 +36,7 @@ }, "homepage": "https://nestia.io", "dependencies": { - "@nestia/fetcher": "^2.5.16-dev.20240320", + "@nestia/fetcher": "D:\\github\\samchon\\nestia\\packages\\fetcher\\nestia-fetcher-2.5.16-dev.20240320.tgz", "@nestjs/common": ">=7.0.1", "@nestjs/core": ">=7.0.1", "detect-ts-node": "^1.0.5", diff --git a/packages/sdk/package.json b/packages/sdk/package.json index 1c8c76887..c5d8741a8 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -32,7 +32,7 @@ }, "homepage": "https://nestia.io", "dependencies": { - "@nestia/fetcher": "^2.5.16-dev.20240320", + "@nestia/fetcher": "D:\\github\\samchon\\nestia\\packages\\fetcher\\nestia-fetcher-2.5.16-dev.20240320.tgz", "cli": "^1.0.1", "get-function-location": "^2.0.0", "glob": "^7.2.0", diff --git a/packages/sdk/src/analyses/ReflectAnalyzer.ts b/packages/sdk/src/analyses/ReflectAnalyzer.ts index d7cdcd4a2..97504d671 100644 --- a/packages/sdk/src/analyses/ReflectAnalyzer.ts +++ b/packages/sdk/src/analyses/ReflectAnalyzer.ts @@ -1,6 +1,7 @@ import * as Constants from "@nestjs/common/constants"; import { VERSION_NEUTRAL, VersionValue } from "@nestjs/common/interfaces"; import "reflect-metadata"; +import { Singleton } from "tstl"; import { equal } from "tstl/ranges"; import { IController } from "../structures/IController"; @@ -361,7 +362,7 @@ export namespace ReflectAnalyzer { const typeIndex: number = Number(symbol[0]); if (isNaN(typeIndex) === true) return null; - const type: ParamCategory | undefined = NEST_PARAMETER_TYPES[typeIndex]; + const type: ParamCategory | undefined = nestParameterType.get()[typeIndex]; if (type === undefined) return null; return { @@ -452,18 +453,49 @@ const METHODS = [ "HEAD", ]; -// node_modules/@nestjs/common/lib/route-paramtypes.enum.ts -const NEST_PARAMETER_TYPES = [ - undefined, - undefined, - undefined, - "body", - "query", - "param", - "headers", - undefined, - undefined, - undefined, - undefined, - undefined, -] as const; +// node_modules/@nestjs/common/enums/route-paramtypes.enum.ts +const nestParameterType = new Singleton>( + () => { + const { version } = require("@nestjs/common/package.json"); + const [major, minor, patch] = version.split(".").map(Number); + const rawBody: boolean = [ + major >= 10, + major > 10 || minor >= 3, + major > 10 || + (major === 10 && minor > 3) || + (major === 10 && + minor === 3 && + ((isNaN(patch) && version.split(".")[2] >= "4") || patch >= 4)), + ].every((b) => b); + return rawBody + ? [ + undefined, + undefined, + undefined, + "body", + "rawBody", + "query", + "param", + "headers", + undefined, + undefined, + undefined, + undefined, + undefined, + ] + : [ + undefined, + undefined, + undefined, + "body", + "query", + "param", + "headers", + undefined, + undefined, + undefined, + undefined, + undefined, + ]; + }, +); diff --git a/packages/sdk/src/structures/ParamCategory.ts b/packages/sdk/src/structures/ParamCategory.ts index 8acf9e69a..08bb0071c 100644 --- a/packages/sdk/src/structures/ParamCategory.ts +++ b/packages/sdk/src/structures/ParamCategory.ts @@ -1 +1 @@ -export type ParamCategory = "param" | "query" | "body" | "headers"; +export type ParamCategory = "param" | "query" | "body" | "rawBody" | "headers"; diff --git a/test/features/all/swagger.json b/test/features/all/swagger.json index 50bb49f4f..fbfde3eee 100644 --- a/test/features/all/swagger.json +++ b/test/features/all/swagger.json @@ -7,7 +7,7 @@ } ], "info": { - "version": "2.5.15", + "version": "2.5.16-dev.20240320", "title": "@nestia/test", "description": "Test program of Nestia", "license": { diff --git a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_at.ts b/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_at.ts deleted file mode 100644 index 94b346344..000000000 --- a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_at.ts +++ /dev/null @@ -1,19 +0,0 @@ -import type { Primitive } from "@nestia/fetcher"; -import typia from "typia"; -import type { Format } from "typia/lib/tags/Format"; - -import api from "../../../../api"; -import type { IBbsComment } from "../../../../api/structures/IBbsComment"; - -export const test_api_api_internal_bbs_articles_comments_at = async ( - connection: api.IConnection, -) => { - const output: Primitive = - await api.functional.api.internal.bbs.articles.comments.at( - connection, - typia.random(), - typia.random>(), - typia.random>(), - ); - typia.assert(output); -}; diff --git a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_index.ts b/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_index.ts deleted file mode 100644 index 7a62aa763..000000000 --- a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_index.ts +++ /dev/null @@ -1,20 +0,0 @@ -import type { Primitive } from "@nestia/fetcher"; -import typia from "typia"; -import type { Format } from "typia/lib/tags/Format"; - -import api from "../../../../api"; -import type { IBbsComment } from "../../../../api/structures/IBbsComment"; -import type { IPage } from "../../../../api/structures/IPage"; - -export const test_api_api_internal_bbs_articles_comments_index = async ( - connection: api.IConnection, -) => { - const output: Primitive> = - await api.functional.api.internal.bbs.articles.comments.index( - connection, - typia.random(), - typia.random>(), - typia.random(), - ); - typia.assert(output); -}; diff --git a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_store.ts b/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_store.ts deleted file mode 100644 index 068611113..000000000 --- a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_store.ts +++ /dev/null @@ -1,19 +0,0 @@ -import type { Primitive } from "@nestia/fetcher"; -import typia from "typia"; -import type { Format } from "typia/lib/tags/Format"; - -import api from "../../../../api"; -import type { IBbsComment } from "../../../../api/structures/IBbsComment"; - -export const test_api_api_internal_bbs_articles_comments_store = async ( - connection: api.IConnection, -) => { - const output: Primitive = - await api.functional.api.internal.bbs.articles.comments.store( - connection, - typia.random(), - typia.random>(), - typia.random(), - ); - typia.assert(output); -}; diff --git a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_update.ts b/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_update.ts deleted file mode 100644 index 8ed59d401..000000000 --- a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_comments_update.ts +++ /dev/null @@ -1,20 +0,0 @@ -import type { Primitive } from "@nestia/fetcher"; -import typia from "typia"; -import type { Format } from "typia/lib/tags/Format"; - -import api from "../../../../api"; -import type { IBbsComment } from "../../../../api/structures/IBbsComment"; - -export const test_api_api_internal_bbs_articles_comments_update = async ( - connection: api.IConnection, -) => { - const output: Primitive = - await api.functional.api.internal.bbs.articles.comments.update( - connection, - typia.random(), - typia.random>(), - typia.random>(), - typia.random(), - ); - typia.assert(output); -}; diff --git a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_index.ts b/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_index.ts deleted file mode 100644 index a01a70cc8..000000000 --- a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_index.ts +++ /dev/null @@ -1,18 +0,0 @@ -import type { Primitive } from "@nestia/fetcher"; -import typia from "typia"; - -import api from "../../../../api"; -import type { IBbsArticle } from "../../../../api/structures/IBbsArticle"; -import type { IPage } from "../../../../api/structures/IPage"; - -export const test_api_api_internal_bbs_articles_index = async ( - connection: api.IConnection, -) => { - const output: Primitive> = - await api.functional.api.internal.bbs.articles.index( - connection, - typia.random(), - typia.random(), - ); - typia.assert(output); -}; diff --git a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_store.ts b/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_store.ts deleted file mode 100644 index 91b33e9d8..000000000 --- a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_bbs_articles_store.ts +++ /dev/null @@ -1,17 +0,0 @@ -import type { Primitive } from "@nestia/fetcher"; -import typia from "typia"; - -import api from "../../../../api"; -import type { IBbsArticle } from "../../../../api/structures/IBbsArticle"; - -export const test_api_api_internal_bbs_articles_store = async ( - connection: api.IConnection, -) => { - const output: Primitive = - await api.functional.api.internal.bbs.articles.store( - connection, - typia.random(), - typia.random(), - ); - typia.assert(output); -}; diff --git a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_bbs_articles_at.ts b/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_bbs_articles_at.ts deleted file mode 100644 index 4a17daf89..000000000 --- a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_bbs_articles_at.ts +++ /dev/null @@ -1,18 +0,0 @@ -import type { Primitive } from "@nestia/fetcher"; -import typia from "typia"; -import type { Format } from "typia/lib/tags/Format"; - -import api from "../../../../api"; -import type { IBbsArticle } from "../../../../api/structures/IBbsArticle"; - -export const test_api_api_internal_v1_bbs_articles_at = async ( - connection: api.IConnection, -) => { - const output: Primitive = - await api.functional.api.internal.v1.bbs.articles.at( - connection, - typia.random(), - typia.random>(), - ); - typia.assert(output); -}; diff --git a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_bbs_articles_index.ts b/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_bbs_articles_index.ts deleted file mode 100644 index ee5571d76..000000000 --- a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_bbs_articles_index.ts +++ /dev/null @@ -1,18 +0,0 @@ -import type { Primitive } from "@nestia/fetcher"; -import typia from "typia"; - -import api from "../../../../api"; -import type { IBbsArticle } from "../../../../api/structures/IBbsArticle"; -import type { IPage } from "../../../../api/structures/IPage"; - -export const test_api_api_internal_v1_bbs_articles_index = async ( - connection: api.IConnection, -) => { - const output: Primitive> = - await api.functional.api.internal.v1.bbs.articles.index( - connection, - typia.random(), - typia.random(), - ); - typia.assert(output); -}; diff --git a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_health_get.ts b/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_health_get.ts deleted file mode 100644 index e3db0755e..000000000 --- a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_health_get.ts +++ /dev/null @@ -1,10 +0,0 @@ -import typia from "typia"; - -import api from "../../../../api"; - -export const test_api_api_internal_v1_health_get = async ( - connection: api.IConnection, -) => { - const output = await api.functional.api.internal.v1.health.get(connection); - typia.assert(output); -}; diff --git a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_performance_get.ts b/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_performance_get.ts deleted file mode 100644 index 97a70a29d..000000000 --- a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v1_performance_get.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { Primitive } from "@nestia/fetcher"; -import typia from "typia"; - -import api from "../../../../api"; -import type { IPerformance } from "../../../../api/structures/IPerformance"; - -export const test_api_api_internal_v1_performance_get = async ( - connection: api.IConnection, -) => { - const output: Primitive = - await api.functional.api.internal.v1.performance.get(connection); - typia.assert(output); -}; diff --git a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v2_bbs_articles_index.ts b/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v2_bbs_articles_index.ts deleted file mode 100644 index 756c5fe7b..000000000 --- a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v2_bbs_articles_index.ts +++ /dev/null @@ -1,18 +0,0 @@ -import type { Primitive } from "@nestia/fetcher"; -import typia from "typia"; - -import api from "../../../../api"; -import type { IBbsArticle } from "../../../../api/structures/IBbsArticle"; -import type { IPage } from "../../../../api/structures/IPage"; - -export const test_api_api_internal_v2_bbs_articles_index = async ( - connection: api.IConnection, -) => { - const output: Primitive> = - await api.functional.api.internal.v2.bbs.articles.index( - connection, - typia.random(), - typia.random(), - ); - typia.assert(output); -}; diff --git a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v2_bbs_articles_update.ts b/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v2_bbs_articles_update.ts deleted file mode 100644 index dc950c3a4..000000000 --- a/test/features/app-globalPrefix-versionUri/src/test/features/api/automated/test_api_api_internal_v2_bbs_articles_update.ts +++ /dev/null @@ -1,19 +0,0 @@ -import type { Primitive } from "@nestia/fetcher"; -import typia from "typia"; -import type { Format } from "typia/lib/tags/Format"; - -import api from "../../../../api"; -import type { IBbsArticle } from "../../../../api/structures/IBbsArticle"; - -export const test_api_api_internal_v2_bbs_articles_update = async ( - connection: api.IConnection, -) => { - const output: Primitive = - await api.functional.api.internal.v2.bbs.articles.update( - connection, - typia.random(), - typia.random>(), - typia.random(), - ); - typia.assert(output); -}; diff --git a/test/features/app-globalPrefix-versionUri/swagger.json b/test/features/app-globalPrefix-versionUri/swagger.json index 199641e86..c7f1fe746 100644 --- a/test/features/app-globalPrefix-versionUri/swagger.json +++ b/test/features/app-globalPrefix-versionUri/swagger.json @@ -1 +1 @@ -{"openapi":"3.0.1","servers":[{"url":"https://github.com/samchon/nestia","description":"insert your server url"}],"info":{"version":"2.5.15","title":"@nestia/test","description":"Test program of Nestia","license":{"name":"MIT"}},"paths":{"/api/internal/v1/health":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":""}}}},"/api/internal/v1/performance":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPerformance"}}}}}}},"/api/internal/v1/bbs/{section}/articles":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsArticle.ISummary"}}}}}}},"/api/internal/v2/bbs/{section}/articles":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsArticle.ISummary"}}}}}}},"/api/internal/bbs/{section}/articles":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsArticle.ISummary"}}}}}},"post":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Section code","required":true}],"requestBody":{"description":"Content to store","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"201":{"description":"Newly archived article","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Store a new article","description":"Store a new article."}},"/api/internal/v1/bbs/{section}/articles/{id}":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}}}},"/api/internal/v2/bbs/{section}/articles/{id}":{"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Section code","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"Target article ID","required":true}],"requestBody":{"description":"Content to update","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"200":{"description":"Updated content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Update an article","description":"Update an article."}},"/api/internal/bbs/{section}/articles/{articleId}/comments":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsComment"}}}}}},"post":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment.IStore"}}},"required":true},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}}},"/api/internal/bbs/{section}/articles/{articleId}/comments/{id}":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}},"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment.IStore"}}},"required":true},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}}}},"components":{"schemas":{"IPerformance":{"type":"object","properties":{"cpu":{"$ref":"#/components/schemas/process.global.NodeJS.CpuUsage"},"memory":{"$ref":"#/components/schemas/process.global.NodeJS.MemoryUsage"},"resource":{"$ref":"#/components/schemas/process.global.NodeJS.ResourceUsage"}},"nullable":false,"required":["cpu","memory","resource"],"description":"Performance info."},"process.global.NodeJS.CpuUsage":{"type":"object","properties":{"user":{"type":"number"},"system":{"type":"number"}},"nullable":false,"required":["user","system"]},"process.global.NodeJS.MemoryUsage":{"type":"object","properties":{"rss":{"type":"number"},"heapTotal":{"type":"number"},"heapUsed":{"type":"number"},"external":{"type":"number"},"arrayBuffers":{"type":"number"}},"nullable":false,"required":["rss","heapTotal","heapUsed","external","arrayBuffers"]},"process.global.NodeJS.ResourceUsage":{"type":"object","properties":{"fsRead":{"type":"number"},"fsWrite":{"type":"number"},"involuntaryContextSwitches":{"type":"number"},"ipcReceived":{"type":"number"},"ipcSent":{"type":"number"},"majorPageFault":{"type":"number"},"maxRSS":{"type":"number"},"minorPageFault":{"type":"number"},"sharedMemorySize":{"type":"number"},"signalsCount":{"type":"number"},"swappedOut":{"type":"number"},"systemCPUTime":{"type":"number"},"unsharedDataSize":{"type":"number"},"unsharedStackSize":{"type":"number"},"userCPUTime":{"type":"number"},"voluntaryContextSwitches":{"type":"number"}},"nullable":false,"required":["fsRead","fsWrite","involuntaryContextSwitches","ipcReceived","ipcSent","majorPageFault","maxRSS","minorPageFault","sharedMemorySize","signalsCount","swappedOut","systemCPUTime","unsharedDataSize","unsharedStackSize","userCPUTime","voluntaryContextSwitches"]},"IPage.IRequest":{"type":"object","properties":{"page":{"type":"integer","nullable":true},"limit":{"type":"integer","nullable":true}},"nullable":false,"description":"Page request data"},"IPageIBbsArticle.ISummary":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IBbsArticle.ISummary"}},"pagination":{"$ref":"#/components/schemas/IPage.IPagination"}},"nullable":false,"required":["data","pagination"]},"IBbsArticle.ISummary":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"section":{"type":"string"},"writer":{"type":"string"},"title":{"type":"string","maxLength":50,"minLength":3},"created_at":{"type":"string","format":"date-time"}},"nullable":false,"required":["id","section","writer","title","created_at"]},"IPage.IPagination":{"type":"object","properties":{"current":{"type":"integer"},"limit":{"type":"integer"},"records":{"type":"integer"},"pages":{"type":"integer"}},"nullable":false,"required":["current","limit","records","pages"],"description":"Page information."},"IBbsArticle":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"section":{"type":"string"},"created_at":{"type":"string","format":"date-time"},"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","section","created_at","title","body","files"]},"IAttachmentFile":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"minLength":1,"nullable":true},"extension":{"type":"string","maxLength":8,"minLength":1,"nullable":true},"url":{"type":"string","format":"uri","nullable":true}},"nullable":false,"required":["name","extension","url"]},"IBbsArticle.IStore":{"type":"object","properties":{"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["title","body","files"]},"IPageIBbsComment":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IBbsComment"}},"pagination":{"$ref":"#/components/schemas/IPage.IPagination"}},"nullable":false,"required":["data","pagination"]},"IBbsComment":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"created_at":{"type":"string","format":"date-time"},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","created_at","body","files"]},"IBbsComment.IStore":{"type":"object","properties":{"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["body","files"]}},"securitySchemes":{"bearer":{"type":"apiKey","in":"header","name":"Authorization"}}}} \ No newline at end of file +{"openapi":"3.0.1","servers":[{"url":"https://github.com/samchon/nestia","description":"insert your server url"}],"info":{"version":"2.5.16-dev.20240320","title":"@nestia/test","description":"Test program of Nestia","license":{"name":"MIT"}},"paths":{"/api/internal/v1/health":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":""}}}},"/api/internal/v1/performance":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPerformance"}}}}}}},"/api/internal/v1/bbs/{section}/articles":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsArticle.ISummary"}}}}}}},"/api/internal/v2/bbs/{section}/articles":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsArticle.ISummary"}}}}}}},"/api/internal/bbs/{section}/articles":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsArticle.ISummary"}}}}}},"post":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Section code","required":true}],"requestBody":{"description":"Content to store","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"201":{"description":"Newly archived article","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Store a new article","description":"Store a new article."}},"/api/internal/v1/bbs/{section}/articles/{id}":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}}}},"/api/internal/v2/bbs/{section}/articles/{id}":{"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Section code","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"Target article ID","required":true}],"requestBody":{"description":"Content to update","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"200":{"description":"Updated content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Update an article","description":"Update an article."}},"/api/internal/bbs/{section}/articles/{articleId}/comments":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsComment"}}}}}},"post":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment.IStore"}}},"required":true},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}}},"/api/internal/bbs/{section}/articles/{articleId}/comments/{id}":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}},"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment.IStore"}}},"required":true},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}}}},"components":{"schemas":{"IPerformance":{"type":"object","properties":{"cpu":{"$ref":"#/components/schemas/process.global.NodeJS.CpuUsage"},"memory":{"$ref":"#/components/schemas/process.global.NodeJS.MemoryUsage"},"resource":{"$ref":"#/components/schemas/process.global.NodeJS.ResourceUsage"}},"nullable":false,"required":["cpu","memory","resource"],"description":"Performance info."},"process.global.NodeJS.CpuUsage":{"type":"object","properties":{"user":{"type":"number"},"system":{"type":"number"}},"nullable":false,"required":["user","system"]},"process.global.NodeJS.MemoryUsage":{"type":"object","properties":{"rss":{"type":"number"},"heapTotal":{"type":"number"},"heapUsed":{"type":"number"},"external":{"type":"number"},"arrayBuffers":{"type":"number"}},"nullable":false,"required":["rss","heapTotal","heapUsed","external","arrayBuffers"]},"process.global.NodeJS.ResourceUsage":{"type":"object","properties":{"fsRead":{"type":"number"},"fsWrite":{"type":"number"},"involuntaryContextSwitches":{"type":"number"},"ipcReceived":{"type":"number"},"ipcSent":{"type":"number"},"majorPageFault":{"type":"number"},"maxRSS":{"type":"number"},"minorPageFault":{"type":"number"},"sharedMemorySize":{"type":"number"},"signalsCount":{"type":"number"},"swappedOut":{"type":"number"},"systemCPUTime":{"type":"number"},"unsharedDataSize":{"type":"number"},"unsharedStackSize":{"type":"number"},"userCPUTime":{"type":"number"},"voluntaryContextSwitches":{"type":"number"}},"nullable":false,"required":["fsRead","fsWrite","involuntaryContextSwitches","ipcReceived","ipcSent","majorPageFault","maxRSS","minorPageFault","sharedMemorySize","signalsCount","swappedOut","systemCPUTime","unsharedDataSize","unsharedStackSize","userCPUTime","voluntaryContextSwitches"]},"IPage.IRequest":{"type":"object","properties":{"page":{"type":"integer","nullable":true},"limit":{"type":"integer","nullable":true}},"nullable":false,"description":"Page request data"},"IPageIBbsArticle.ISummary":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IBbsArticle.ISummary"}},"pagination":{"$ref":"#/components/schemas/IPage.IPagination"}},"nullable":false,"required":["data","pagination"]},"IBbsArticle.ISummary":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"section":{"type":"string"},"writer":{"type":"string"},"title":{"type":"string","maxLength":50,"minLength":3},"created_at":{"type":"string","format":"date-time"}},"nullable":false,"required":["id","section","writer","title","created_at"]},"IPage.IPagination":{"type":"object","properties":{"current":{"type":"integer"},"limit":{"type":"integer"},"records":{"type":"integer"},"pages":{"type":"integer"}},"nullable":false,"required":["current","limit","records","pages"],"description":"Page information."},"IBbsArticle":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"section":{"type":"string"},"created_at":{"type":"string","format":"date-time"},"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","section","created_at","title","body","files"]},"IAttachmentFile":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"minLength":1,"nullable":true},"extension":{"type":"string","maxLength":8,"minLength":1,"nullable":true},"url":{"type":"string","format":"uri","nullable":true}},"nullable":false,"required":["name","extension","url"]},"IBbsArticle.IStore":{"type":"object","properties":{"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["title","body","files"]},"IPageIBbsComment":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IBbsComment"}},"pagination":{"$ref":"#/components/schemas/IPage.IPagination"}},"nullable":false,"required":["data","pagination"]},"IBbsComment":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"created_at":{"type":"string","format":"date-time"},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","created_at","body","files"]},"IBbsComment.IStore":{"type":"object","properties":{"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["body","files"]}},"securitySchemes":{"bearer":{"type":"apiKey","in":"header","name":"Authorization"}}}} \ No newline at end of file diff --git a/test/features/app-globalPrefix/swagger.json b/test/features/app-globalPrefix/swagger.json index e8938942f..11ee6e797 100644 --- a/test/features/app-globalPrefix/swagger.json +++ b/test/features/app-globalPrefix/swagger.json @@ -1 +1 @@ -{"openapi":"3.0.1","servers":[{"url":"https://github.com/samchon/nestia","description":"insert your server url"}],"info":{"version":"2.5.15","title":"@nestia/test","description":"Test program of Nestia","license":{"name":"MIT"}},"paths":{"/health":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":""}}}},"/performance":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPerformance"}}}}}}},"/bbs/{section}/articles":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsArticle.ISummary"}}}}}},"post":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Section code","required":true}],"requestBody":{"description":"Content to store","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"201":{"description":"Newly archived article","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Store a new article","description":"Store a new article."}},"/bbs/{section}/articles/{id}":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}}},"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Section code","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"Target article ID","required":true}],"requestBody":{"description":"Content to update","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"200":{"description":"Updated content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Update an article","description":"Update an article."}},"/bbs/{section}/articles/{articleId}/comments":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsComment"}}}}}},"post":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment.IStore"}}},"required":true},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}}},"/bbs/{section}/articles/{articleId}/comments/{id}":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}},"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment.IStore"}}},"required":true},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}}}},"components":{"schemas":{"IPerformance":{"type":"object","properties":{"cpu":{"$ref":"#/components/schemas/process.global.NodeJS.CpuUsage"},"memory":{"$ref":"#/components/schemas/process.global.NodeJS.MemoryUsage"},"resource":{"$ref":"#/components/schemas/process.global.NodeJS.ResourceUsage"}},"nullable":false,"required":["cpu","memory","resource"],"description":"Performance info."},"process.global.NodeJS.CpuUsage":{"type":"object","properties":{"user":{"type":"number"},"system":{"type":"number"}},"nullable":false,"required":["user","system"]},"process.global.NodeJS.MemoryUsage":{"type":"object","properties":{"rss":{"type":"number"},"heapTotal":{"type":"number"},"heapUsed":{"type":"number"},"external":{"type":"number"},"arrayBuffers":{"type":"number"}},"nullable":false,"required":["rss","heapTotal","heapUsed","external","arrayBuffers"]},"process.global.NodeJS.ResourceUsage":{"type":"object","properties":{"fsRead":{"type":"number"},"fsWrite":{"type":"number"},"involuntaryContextSwitches":{"type":"number"},"ipcReceived":{"type":"number"},"ipcSent":{"type":"number"},"majorPageFault":{"type":"number"},"maxRSS":{"type":"number"},"minorPageFault":{"type":"number"},"sharedMemorySize":{"type":"number"},"signalsCount":{"type":"number"},"swappedOut":{"type":"number"},"systemCPUTime":{"type":"number"},"unsharedDataSize":{"type":"number"},"unsharedStackSize":{"type":"number"},"userCPUTime":{"type":"number"},"voluntaryContextSwitches":{"type":"number"}},"nullable":false,"required":["fsRead","fsWrite","involuntaryContextSwitches","ipcReceived","ipcSent","majorPageFault","maxRSS","minorPageFault","sharedMemorySize","signalsCount","swappedOut","systemCPUTime","unsharedDataSize","unsharedStackSize","userCPUTime","voluntaryContextSwitches"]},"IPage.IRequest":{"type":"object","properties":{"page":{"type":"integer","nullable":true},"limit":{"type":"integer","nullable":true}},"nullable":false,"description":"Page request data"},"IPageIBbsArticle.ISummary":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IBbsArticle.ISummary"}},"pagination":{"$ref":"#/components/schemas/IPage.IPagination"}},"nullable":false,"required":["data","pagination"]},"IBbsArticle.ISummary":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"section":{"type":"string"},"writer":{"type":"string"},"title":{"type":"string","maxLength":50,"minLength":3},"created_at":{"type":"string","format":"date-time"}},"nullable":false,"required":["id","section","writer","title","created_at"]},"IPage.IPagination":{"type":"object","properties":{"current":{"type":"integer"},"limit":{"type":"integer"},"records":{"type":"integer"},"pages":{"type":"integer"}},"nullable":false,"required":["current","limit","records","pages"],"description":"Page information."},"IBbsArticle":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"section":{"type":"string"},"created_at":{"type":"string","format":"date-time"},"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","section","created_at","title","body","files"]},"IAttachmentFile":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"minLength":1,"nullable":true},"extension":{"type":"string","maxLength":8,"minLength":1,"nullable":true},"url":{"type":"string","format":"uri","nullable":true}},"nullable":false,"required":["name","extension","url"]},"IBbsArticle.IStore":{"type":"object","properties":{"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["title","body","files"]},"IPageIBbsComment":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IBbsComment"}},"pagination":{"$ref":"#/components/schemas/IPage.IPagination"}},"nullable":false,"required":["data","pagination"]},"IBbsComment":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"created_at":{"type":"string","format":"date-time"},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","created_at","body","files"]},"IBbsComment.IStore":{"type":"object","properties":{"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["body","files"]}},"securitySchemes":{"bearer":{"type":"apiKey","in":"header","name":"Authorization"}}}} \ No newline at end of file +{"openapi":"3.0.1","servers":[{"url":"https://github.com/samchon/nestia","description":"insert your server url"}],"info":{"version":"2.5.16-dev.20240320","title":"@nestia/test","description":"Test program of Nestia","license":{"name":"MIT"}},"paths":{"/health":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":""}}}},"/performance":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPerformance"}}}}}}},"/bbs/{section}/articles":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsArticle.ISummary"}}}}}},"post":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Section code","required":true}],"requestBody":{"description":"Content to store","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"201":{"description":"Newly archived article","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Store a new article","description":"Store a new article."}},"/bbs/{section}/articles/{id}":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}}},"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Section code","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"Target article ID","required":true}],"requestBody":{"description":"Content to update","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"200":{"description":"Updated content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Update an article","description":"Update an article."}},"/bbs/{section}/articles/{articleId}/comments":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsComment"}}}}}},"post":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment.IStore"}}},"required":true},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}}},"/bbs/{section}/articles/{articleId}/comments/{id}":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}},"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment.IStore"}}},"required":true},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}}}},"components":{"schemas":{"IPerformance":{"type":"object","properties":{"cpu":{"$ref":"#/components/schemas/process.global.NodeJS.CpuUsage"},"memory":{"$ref":"#/components/schemas/process.global.NodeJS.MemoryUsage"},"resource":{"$ref":"#/components/schemas/process.global.NodeJS.ResourceUsage"}},"nullable":false,"required":["cpu","memory","resource"],"description":"Performance info."},"process.global.NodeJS.CpuUsage":{"type":"object","properties":{"user":{"type":"number"},"system":{"type":"number"}},"nullable":false,"required":["user","system"]},"process.global.NodeJS.MemoryUsage":{"type":"object","properties":{"rss":{"type":"number"},"heapTotal":{"type":"number"},"heapUsed":{"type":"number"},"external":{"type":"number"},"arrayBuffers":{"type":"number"}},"nullable":false,"required":["rss","heapTotal","heapUsed","external","arrayBuffers"]},"process.global.NodeJS.ResourceUsage":{"type":"object","properties":{"fsRead":{"type":"number"},"fsWrite":{"type":"number"},"involuntaryContextSwitches":{"type":"number"},"ipcReceived":{"type":"number"},"ipcSent":{"type":"number"},"majorPageFault":{"type":"number"},"maxRSS":{"type":"number"},"minorPageFault":{"type":"number"},"sharedMemorySize":{"type":"number"},"signalsCount":{"type":"number"},"swappedOut":{"type":"number"},"systemCPUTime":{"type":"number"},"unsharedDataSize":{"type":"number"},"unsharedStackSize":{"type":"number"},"userCPUTime":{"type":"number"},"voluntaryContextSwitches":{"type":"number"}},"nullable":false,"required":["fsRead","fsWrite","involuntaryContextSwitches","ipcReceived","ipcSent","majorPageFault","maxRSS","minorPageFault","sharedMemorySize","signalsCount","swappedOut","systemCPUTime","unsharedDataSize","unsharedStackSize","userCPUTime","voluntaryContextSwitches"]},"IPage.IRequest":{"type":"object","properties":{"page":{"type":"integer","nullable":true},"limit":{"type":"integer","nullable":true}},"nullable":false,"description":"Page request data"},"IPageIBbsArticle.ISummary":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IBbsArticle.ISummary"}},"pagination":{"$ref":"#/components/schemas/IPage.IPagination"}},"nullable":false,"required":["data","pagination"]},"IBbsArticle.ISummary":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"section":{"type":"string"},"writer":{"type":"string"},"title":{"type":"string","maxLength":50,"minLength":3},"created_at":{"type":"string","format":"date-time"}},"nullable":false,"required":["id","section","writer","title","created_at"]},"IPage.IPagination":{"type":"object","properties":{"current":{"type":"integer"},"limit":{"type":"integer"},"records":{"type":"integer"},"pages":{"type":"integer"}},"nullable":false,"required":["current","limit","records","pages"],"description":"Page information."},"IBbsArticle":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"section":{"type":"string"},"created_at":{"type":"string","format":"date-time"},"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","section","created_at","title","body","files"]},"IAttachmentFile":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"minLength":1,"nullable":true},"extension":{"type":"string","maxLength":8,"minLength":1,"nullable":true},"url":{"type":"string","format":"uri","nullable":true}},"nullable":false,"required":["name","extension","url"]},"IBbsArticle.IStore":{"type":"object","properties":{"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["title","body","files"]},"IPageIBbsComment":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IBbsComment"}},"pagination":{"$ref":"#/components/schemas/IPage.IPagination"}},"nullable":false,"required":["data","pagination"]},"IBbsComment":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"created_at":{"type":"string","format":"date-time"},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","created_at","body","files"]},"IBbsComment.IStore":{"type":"object","properties":{"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["body","files"]}},"securitySchemes":{"bearer":{"type":"apiKey","in":"header","name":"Authorization"}}}} \ No newline at end of file diff --git a/test/features/app/swagger.json b/test/features/app/swagger.json index 750988b7f..31860fb47 100644 --- a/test/features/app/swagger.json +++ b/test/features/app/swagger.json @@ -1 +1 @@ -{"openapi":"3.0.1","servers":[{"url":"https://github.com/samchon/nestia","description":"insert your server url"}],"info":{"version":"2.5.15","title":"@nestia/test","description":"Test program of Nestia","license":{"name":"MIT"}},"paths":{"/health":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":""}}}},"/performance":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPerformance"}}}}}}},"/bbs/{section}/articles":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsArticle.ISummary"}}}}}},"post":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Section code","required":true}],"requestBody":{"description":"Content to store","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"201":{"description":"Newly archived article","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Store a new article","description":"Store a new article."}},"/bbs/{section}/articles/{id}":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}}},"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Section code","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"Target article ID","required":true}],"requestBody":{"description":"Content to update","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"200":{"description":"Updated content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Update an article","description":"Update an article."}},"/{section}/articles/{articleId}/comments":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsComment"}}}}}},"post":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment.IStore"}}},"required":true},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}}},"/{section}/articles/{articleId}/comments/{id}":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}},"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment.IStore"}}},"required":true},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}}}},"components":{"schemas":{"IPerformance":{"type":"object","properties":{"cpu":{"$ref":"#/components/schemas/process.global.NodeJS.CpuUsage"},"memory":{"$ref":"#/components/schemas/process.global.NodeJS.MemoryUsage"},"resource":{"$ref":"#/components/schemas/process.global.NodeJS.ResourceUsage"}},"nullable":false,"required":["cpu","memory","resource"],"description":"Performance info."},"process.global.NodeJS.CpuUsage":{"type":"object","properties":{"user":{"type":"number"},"system":{"type":"number"}},"nullable":false,"required":["user","system"]},"process.global.NodeJS.MemoryUsage":{"type":"object","properties":{"rss":{"type":"number"},"heapTotal":{"type":"number"},"heapUsed":{"type":"number"},"external":{"type":"number"},"arrayBuffers":{"type":"number"}},"nullable":false,"required":["rss","heapTotal","heapUsed","external","arrayBuffers"]},"process.global.NodeJS.ResourceUsage":{"type":"object","properties":{"fsRead":{"type":"number"},"fsWrite":{"type":"number"},"involuntaryContextSwitches":{"type":"number"},"ipcReceived":{"type":"number"},"ipcSent":{"type":"number"},"majorPageFault":{"type":"number"},"maxRSS":{"type":"number"},"minorPageFault":{"type":"number"},"sharedMemorySize":{"type":"number"},"signalsCount":{"type":"number"},"swappedOut":{"type":"number"},"systemCPUTime":{"type":"number"},"unsharedDataSize":{"type":"number"},"unsharedStackSize":{"type":"number"},"userCPUTime":{"type":"number"},"voluntaryContextSwitches":{"type":"number"}},"nullable":false,"required":["fsRead","fsWrite","involuntaryContextSwitches","ipcReceived","ipcSent","majorPageFault","maxRSS","minorPageFault","sharedMemorySize","signalsCount","swappedOut","systemCPUTime","unsharedDataSize","unsharedStackSize","userCPUTime","voluntaryContextSwitches"]},"IPage.IRequest":{"type":"object","properties":{"page":{"type":"integer","nullable":true},"limit":{"type":"integer","nullable":true}},"nullable":false,"description":"Page request data"},"IPageIBbsArticle.ISummary":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IBbsArticle.ISummary"}},"pagination":{"$ref":"#/components/schemas/IPage.IPagination"}},"nullable":false,"required":["data","pagination"]},"IBbsArticle.ISummary":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"section":{"type":"string"},"writer":{"type":"string"},"title":{"type":"string","maxLength":50,"minLength":3},"created_at":{"type":"string","format":"date-time"}},"nullable":false,"required":["id","section","writer","title","created_at"]},"IPage.IPagination":{"type":"object","properties":{"current":{"type":"integer"},"limit":{"type":"integer"},"records":{"type":"integer"},"pages":{"type":"integer"}},"nullable":false,"required":["current","limit","records","pages"],"description":"Page information."},"IBbsArticle":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"section":{"type":"string"},"created_at":{"type":"string","format":"date-time"},"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","section","created_at","title","body","files"]},"IAttachmentFile":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"minLength":1,"nullable":true},"extension":{"type":"string","maxLength":8,"minLength":1,"nullable":true},"url":{"type":"string","format":"uri","nullable":true}},"nullable":false,"required":["name","extension","url"]},"IBbsArticle.IStore":{"type":"object","properties":{"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["title","body","files"]},"IPageIBbsComment":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IBbsComment"}},"pagination":{"$ref":"#/components/schemas/IPage.IPagination"}},"nullable":false,"required":["data","pagination"]},"IBbsComment":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"created_at":{"type":"string","format":"date-time"},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","created_at","body","files"]},"IBbsComment.IStore":{"type":"object","properties":{"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["body","files"]}},"securitySchemes":{"bearer":{"type":"apiKey","in":"header","name":"Authorization"}}}} \ No newline at end of file +{"openapi":"3.0.1","servers":[{"url":"https://github.com/samchon/nestia","description":"insert your server url"}],"info":{"version":"2.5.16-dev.20240320","title":"@nestia/test","description":"Test program of Nestia","license":{"name":"MIT"}},"paths":{"/health":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":""}}}},"/performance":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPerformance"}}}}}}},"/bbs/{section}/articles":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsArticle.ISummary"}}}}}},"post":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Section code","required":true}],"requestBody":{"description":"Content to store","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"201":{"description":"Newly archived article","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Store a new article","description":"Store a new article."}},"/bbs/{section}/articles/{id}":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}}},"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Section code","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"Target article ID","required":true}],"requestBody":{"description":"Content to update","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"200":{"description":"Updated content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Update an article","description":"Update an article."}},"/{section}/articles/{articleId}/comments":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"query","in":"query","schema":{"$ref":"#/components/schemas/IPage.IRequest"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPageIBbsComment"}}}}}},"post":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment.IStore"}}},"required":true},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}}},"/{section}/articles/{articleId}/comments/{id}":{"get":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}},"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"articleId","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment.IStore"}}},"required":true},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsComment"}}}}}}}},"components":{"schemas":{"IPerformance":{"type":"object","properties":{"cpu":{"$ref":"#/components/schemas/process.global.NodeJS.CpuUsage"},"memory":{"$ref":"#/components/schemas/process.global.NodeJS.MemoryUsage"},"resource":{"$ref":"#/components/schemas/process.global.NodeJS.ResourceUsage"}},"nullable":false,"required":["cpu","memory","resource"],"description":"Performance info."},"process.global.NodeJS.CpuUsage":{"type":"object","properties":{"user":{"type":"number"},"system":{"type":"number"}},"nullable":false,"required":["user","system"]},"process.global.NodeJS.MemoryUsage":{"type":"object","properties":{"rss":{"type":"number"},"heapTotal":{"type":"number"},"heapUsed":{"type":"number"},"external":{"type":"number"},"arrayBuffers":{"type":"number"}},"nullable":false,"required":["rss","heapTotal","heapUsed","external","arrayBuffers"]},"process.global.NodeJS.ResourceUsage":{"type":"object","properties":{"fsRead":{"type":"number"},"fsWrite":{"type":"number"},"involuntaryContextSwitches":{"type":"number"},"ipcReceived":{"type":"number"},"ipcSent":{"type":"number"},"majorPageFault":{"type":"number"},"maxRSS":{"type":"number"},"minorPageFault":{"type":"number"},"sharedMemorySize":{"type":"number"},"signalsCount":{"type":"number"},"swappedOut":{"type":"number"},"systemCPUTime":{"type":"number"},"unsharedDataSize":{"type":"number"},"unsharedStackSize":{"type":"number"},"userCPUTime":{"type":"number"},"voluntaryContextSwitches":{"type":"number"}},"nullable":false,"required":["fsRead","fsWrite","involuntaryContextSwitches","ipcReceived","ipcSent","majorPageFault","maxRSS","minorPageFault","sharedMemorySize","signalsCount","swappedOut","systemCPUTime","unsharedDataSize","unsharedStackSize","userCPUTime","voluntaryContextSwitches"]},"IPage.IRequest":{"type":"object","properties":{"page":{"type":"integer","nullable":true},"limit":{"type":"integer","nullable":true}},"nullable":false,"description":"Page request data"},"IPageIBbsArticle.ISummary":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IBbsArticle.ISummary"}},"pagination":{"$ref":"#/components/schemas/IPage.IPagination"}},"nullable":false,"required":["data","pagination"]},"IBbsArticle.ISummary":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"section":{"type":"string"},"writer":{"type":"string"},"title":{"type":"string","maxLength":50,"minLength":3},"created_at":{"type":"string","format":"date-time"}},"nullable":false,"required":["id","section","writer","title","created_at"]},"IPage.IPagination":{"type":"object","properties":{"current":{"type":"integer"},"limit":{"type":"integer"},"records":{"type":"integer"},"pages":{"type":"integer"}},"nullable":false,"required":["current","limit","records","pages"],"description":"Page information."},"IBbsArticle":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"section":{"type":"string"},"created_at":{"type":"string","format":"date-time"},"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","section","created_at","title","body","files"]},"IAttachmentFile":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"minLength":1,"nullable":true},"extension":{"type":"string","maxLength":8,"minLength":1,"nullable":true},"url":{"type":"string","format":"uri","nullable":true}},"nullable":false,"required":["name","extension","url"]},"IBbsArticle.IStore":{"type":"object","properties":{"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["title","body","files"]},"IPageIBbsComment":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/IBbsComment"}},"pagination":{"$ref":"#/components/schemas/IPage.IPagination"}},"nullable":false,"required":["data","pagination"]},"IBbsComment":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"created_at":{"type":"string","format":"date-time"},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","created_at","body","files"]},"IBbsComment.IStore":{"type":"object","properties":{"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["body","files"]}},"securitySchemes":{"bearer":{"type":"apiKey","in":"header","name":"Authorization"}}}} \ No newline at end of file diff --git a/test/features/headers-decompose/swagger.json b/test/features/headers-decompose/swagger.json index f123bf175..3d8c50c17 100644 --- a/test/features/headers-decompose/swagger.json +++ b/test/features/headers-decompose/swagger.json @@ -1 +1 @@ -{"openapi":"3.0.1","servers":[{"url":"https://github.com/samchon/nestia","description":"insert your server url"}],"info":{"version":"2.5.8","title":"@nestia/test","description":"Test program of Nestia","license":{"name":"MIT"}},"paths":{"/headers/{section}":{"patch":{"tags":[],"parameters":[{"name":"x-category","in":"header","schema":{"type":"string","enum":["x","y","z"]},"required":true},{"name":"x-memo","in":"header","schema":{"type":"string"},"required":false},{"name":"x-name","in":"header","schema":{"type":"string","default":"Samchon"},"required":false},{"name":"x-values","in":"header","schema":{"type":"array","items":{"type":"number"}},"required":true},{"name":"x-flags","in":"header","schema":{"type":"array","items":{"type":"boolean"}},"required":true},{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IHeaders"}}}}}},"post":{"tags":[],"parameters":[{"name":"x-category","in":"header","schema":{"type":"string","enum":["x","y","z"]},"required":true},{"name":"x-memo","in":"header","schema":{"type":"string"},"required":false},{"name":"x-name","in":"header","schema":{"type":"string","default":"Samchon"},"required":false},{"name":"x-values","in":"header","schema":{"type":"array","items":{"type":"number"}},"required":true},{"name":"x-flags","in":"header","schema":{"type":"array","items":{"type":"boolean"}},"required":true},{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}}}},"/headers/{section}/{id}":{"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"x-name","in":"header","schema":{"type":"string"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"200":{"description":""}}}},"/health":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":""}}}},"/performance":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPerformance"}}}}}}}},"components":{"schemas":{"IHeaders":{"type":"object","properties":{"x-category":{"type":"string","enum":["x","y","z"]},"x-memo":{"type":"string"},"x-name":{"type":"string","default":"Samchon"},"x-values":{"type":"array","items":{"type":"number"}},"x-flags":{"type":"array","items":{"type":"boolean"}}},"nullable":false,"required":["x-category","x-values","x-flags"]},"IBbsArticle.IStore":{"type":"object","properties":{"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["title","body","files"]},"IAttachmentFile":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"nullable":true},"extension":{"type":"string","maxLength":8,"minLength":1,"nullable":true},"url":{"type":"string","format":"uri"}},"nullable":false,"required":["name","extension","url"]},"IBbsArticle":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"created_at":{"type":"string","format":"date-time"},"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","created_at","title","body","files"]},"IPerformance":{"type":"object","properties":{"cpu":{"$ref":"#/components/schemas/process.global.NodeJS.CpuUsage"},"memory":{"$ref":"#/components/schemas/process.global.NodeJS.MemoryUsage"},"resource":{"$ref":"#/components/schemas/process.global.NodeJS.ResourceUsage"}},"nullable":false,"required":["cpu","memory","resource"],"description":"Performance info."},"process.global.NodeJS.CpuUsage":{"type":"object","properties":{"user":{"type":"number"},"system":{"type":"number"}},"nullable":false,"required":["user","system"]},"process.global.NodeJS.MemoryUsage":{"type":"object","properties":{"rss":{"type":"number"},"heapTotal":{"type":"number"},"heapUsed":{"type":"number"},"external":{"type":"number"},"arrayBuffers":{"type":"number"}},"nullable":false,"required":["rss","heapTotal","heapUsed","external","arrayBuffers"]},"process.global.NodeJS.ResourceUsage":{"type":"object","properties":{"fsRead":{"type":"number"},"fsWrite":{"type":"number"},"involuntaryContextSwitches":{"type":"number"},"ipcReceived":{"type":"number"},"ipcSent":{"type":"number"},"majorPageFault":{"type":"number"},"maxRSS":{"type":"number"},"minorPageFault":{"type":"number"},"sharedMemorySize":{"type":"number"},"signalsCount":{"type":"number"},"swappedOut":{"type":"number"},"systemCPUTime":{"type":"number"},"unsharedDataSize":{"type":"number"},"unsharedStackSize":{"type":"number"},"userCPUTime":{"type":"number"},"voluntaryContextSwitches":{"type":"number"}},"nullable":false,"required":["fsRead","fsWrite","involuntaryContextSwitches","ipcReceived","ipcSent","majorPageFault","maxRSS","minorPageFault","sharedMemorySize","signalsCount","swappedOut","systemCPUTime","unsharedDataSize","unsharedStackSize","userCPUTime","voluntaryContextSwitches"]}},"securitySchemes":{"bearer":{"type":"apiKey","in":"header","name":"Authorization"}}}} \ No newline at end of file +{"openapi":"3.0.1","servers":[{"url":"https://github.com/samchon/nestia","description":"insert your server url"}],"info":{"version":"2.5.16-dev.20240320","title":"@nestia/test","description":"Test program of Nestia","license":{"name":"MIT"}},"paths":{"/headers/{section}":{"patch":{"tags":[],"parameters":[{"name":"x-category","in":"header","schema":{"type":"string","enum":["x","y","z"]},"required":true},{"name":"x-memo","in":"header","schema":{"type":"string"},"required":false},{"name":"x-name","in":"header","schema":{"type":"string","default":"Samchon"},"required":false},{"name":"x-values","in":"header","schema":{"type":"array","items":{"type":"number"}},"required":true},{"name":"x-flags","in":"header","schema":{"type":"array","items":{"type":"boolean"}},"required":true},{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IHeaders"}}}}}},"post":{"tags":[],"parameters":[{"name":"x-category","in":"header","schema":{"type":"string","enum":["x","y","z"]},"required":true},{"name":"x-memo","in":"header","schema":{"type":"string"},"required":false},{"name":"x-name","in":"header","schema":{"type":"string","default":"Samchon"},"required":false},{"name":"x-values","in":"header","schema":{"type":"array","items":{"type":"number"}},"required":true},{"name":"x-flags","in":"header","schema":{"type":"array","items":{"type":"boolean"}},"required":true},{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}}}},"/headers/{section}/{id}":{"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"","required":true},{"name":"x-name","in":"header","schema":{"type":"string"},"description":"","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"200":{"description":""}}}},"/health":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":""}}}},"/performance":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPerformance"}}}}}}}},"components":{"schemas":{"IHeaders":{"type":"object","properties":{"x-category":{"type":"string","enum":["x","y","z"]},"x-memo":{"type":"string"},"x-name":{"type":"string","default":"Samchon"},"x-values":{"type":"array","items":{"type":"number"}},"x-flags":{"type":"array","items":{"type":"boolean"}}},"nullable":false,"required":["x-category","x-values","x-flags"]},"IBbsArticle.IStore":{"type":"object","properties":{"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["title","body","files"]},"IAttachmentFile":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"nullable":true},"extension":{"type":"string","maxLength":8,"minLength":1,"nullable":true},"url":{"type":"string","format":"uri"}},"nullable":false,"required":["name","extension","url"]},"IBbsArticle":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"created_at":{"type":"string","format":"date-time"},"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","created_at","title","body","files"]},"IPerformance":{"type":"object","properties":{"cpu":{"$ref":"#/components/schemas/process.global.NodeJS.CpuUsage"},"memory":{"$ref":"#/components/schemas/process.global.NodeJS.MemoryUsage"},"resource":{"$ref":"#/components/schemas/process.global.NodeJS.ResourceUsage"}},"nullable":false,"required":["cpu","memory","resource"],"description":"Performance info."},"process.global.NodeJS.CpuUsage":{"type":"object","properties":{"user":{"type":"number"},"system":{"type":"number"}},"nullable":false,"required":["user","system"]},"process.global.NodeJS.MemoryUsage":{"type":"object","properties":{"rss":{"type":"number"},"heapTotal":{"type":"number"},"heapUsed":{"type":"number"},"external":{"type":"number"},"arrayBuffers":{"type":"number"}},"nullable":false,"required":["rss","heapTotal","heapUsed","external","arrayBuffers"]},"process.global.NodeJS.ResourceUsage":{"type":"object","properties":{"fsRead":{"type":"number"},"fsWrite":{"type":"number"},"involuntaryContextSwitches":{"type":"number"},"ipcReceived":{"type":"number"},"ipcSent":{"type":"number"},"majorPageFault":{"type":"number"},"maxRSS":{"type":"number"},"minorPageFault":{"type":"number"},"sharedMemorySize":{"type":"number"},"signalsCount":{"type":"number"},"swappedOut":{"type":"number"},"systemCPUTime":{"type":"number"},"unsharedDataSize":{"type":"number"},"unsharedStackSize":{"type":"number"},"userCPUTime":{"type":"number"},"voluntaryContextSwitches":{"type":"number"}},"nullable":false,"required":["fsRead","fsWrite","involuntaryContextSwitches","ipcReceived","ipcSent","majorPageFault","maxRSS","minorPageFault","sharedMemorySize","signalsCount","swappedOut","systemCPUTime","unsharedDataSize","unsharedStackSize","userCPUTime","voluntaryContextSwitches"]}},"securitySchemes":{"bearer":{"type":"apiKey","in":"header","name":"Authorization"}}}} \ No newline at end of file diff --git a/test/features/headers/swagger.json b/test/features/headers/swagger.json index 254096463..25f881053 100644 --- a/test/features/headers/swagger.json +++ b/test/features/headers/swagger.json @@ -1 +1 @@ -{"openapi":"3.0.1","servers":[{"url":"https://github.com/samchon/nestia","description":"insert your server url"}],"info":{"version":"2.5.8","title":"@nestia/test","description":"Test program of Nestia","license":{"name":"MIT"}},"paths":{"/headers/{section}":{"patch":{"tags":[],"parameters":[{"name":"headers","in":"header","schema":{"$ref":"#/components/schemas/IHeaders"},"description":"","required":true},{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IHeaders"}}}}}},"post":{"tags":[],"parameters":[{"name":"headers","in":"header","schema":{"$ref":"#/components/schemas/IHeaders"},"description":"Headers for authentication","required":true},{"name":"section","in":"path","schema":{"type":"string"},"description":"Target section code","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"201":{"description":"Store article","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Store a new article","description":"Store a new article."}},"/headers/{section}/{id}":{"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Target section code","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"Target article id","required":true},{"name":"x-name","in":"header","schema":{"type":"string"},"description":"Name in header for authentication","required":true}],"requestBody":{"description":"Content to update","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"200":{"description":""}},"summary":"Update an article","description":"Update an article."}},"/health":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":""}}}},"/performance":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPerformance"}}}}}}}},"components":{"schemas":{"IHeaders":{"type":"object","properties":{"x-category":{"type":"string","enum":["x","y","z"]},"x-memo":{"type":"string"},"x-nAme":{"type":"string","default":"Samchon"},"x-values":{"type":"array","items":{"type":"number"}},"x-fLags":{"type":"array","items":{"type":"boolean"}}},"nullable":false,"required":["x-category","x-values","x-fLags"]},"IBbsArticle.IStore":{"type":"object","properties":{"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["title","body","files"]},"IAttachmentFile":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"nullable":true},"extension":{"type":"string","maxLength":8,"minLength":1,"nullable":true},"url":{"type":"string","format":"uri"}},"nullable":false,"required":["name","extension","url"]},"IBbsArticle":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"created_at":{"type":"string","format":"date-time"},"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","created_at","title","body","files"]},"IPerformance":{"type":"object","properties":{"cpu":{"$ref":"#/components/schemas/process.global.NodeJS.CpuUsage"},"memory":{"$ref":"#/components/schemas/process.global.NodeJS.MemoryUsage"},"resource":{"$ref":"#/components/schemas/process.global.NodeJS.ResourceUsage"}},"nullable":false,"required":["cpu","memory","resource"],"description":"Performance info."},"process.global.NodeJS.CpuUsage":{"type":"object","properties":{"user":{"type":"number"},"system":{"type":"number"}},"nullable":false,"required":["user","system"]},"process.global.NodeJS.MemoryUsage":{"type":"object","properties":{"rss":{"type":"number"},"heapTotal":{"type":"number"},"heapUsed":{"type":"number"},"external":{"type":"number"},"arrayBuffers":{"type":"number"}},"nullable":false,"required":["rss","heapTotal","heapUsed","external","arrayBuffers"]},"process.global.NodeJS.ResourceUsage":{"type":"object","properties":{"fsRead":{"type":"number"},"fsWrite":{"type":"number"},"involuntaryContextSwitches":{"type":"number"},"ipcReceived":{"type":"number"},"ipcSent":{"type":"number"},"majorPageFault":{"type":"number"},"maxRSS":{"type":"number"},"minorPageFault":{"type":"number"},"sharedMemorySize":{"type":"number"},"signalsCount":{"type":"number"},"swappedOut":{"type":"number"},"systemCPUTime":{"type":"number"},"unsharedDataSize":{"type":"number"},"unsharedStackSize":{"type":"number"},"userCPUTime":{"type":"number"},"voluntaryContextSwitches":{"type":"number"}},"nullable":false,"required":["fsRead","fsWrite","involuntaryContextSwitches","ipcReceived","ipcSent","majorPageFault","maxRSS","minorPageFault","sharedMemorySize","signalsCount","swappedOut","systemCPUTime","unsharedDataSize","unsharedStackSize","userCPUTime","voluntaryContextSwitches"]}},"securitySchemes":{"bearer":{"type":"apiKey","in":"header","name":"Authorization"}}}} \ No newline at end of file +{"openapi":"3.0.1","servers":[{"url":"https://github.com/samchon/nestia","description":"insert your server url"}],"info":{"version":"2.5.16-dev.20240320","title":"@nestia/test","description":"Test program of Nestia","license":{"name":"MIT"}},"paths":{"/headers/{section}":{"patch":{"tags":[],"parameters":[{"name":"headers","in":"header","schema":{"$ref":"#/components/schemas/IHeaders"},"description":"","required":true},{"name":"section","in":"path","schema":{"type":"string"},"description":"","required":true}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IHeaders"}}}}}},"post":{"tags":[],"parameters":[{"name":"headers","in":"header","schema":{"$ref":"#/components/schemas/IHeaders"},"description":"Headers for authentication","required":true},{"name":"section","in":"path","schema":{"type":"string"},"description":"Target section code","required":true}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"201":{"description":"Store article","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle"}}}}},"summary":"Store a new article","description":"Store a new article."}},"/headers/{section}/{id}":{"put":{"tags":[],"parameters":[{"name":"section","in":"path","schema":{"type":"string"},"description":"Target section code","required":true},{"name":"id","in":"path","schema":{"type":"string","format":"uuid"},"description":"Target article id","required":true},{"name":"x-name","in":"header","schema":{"type":"string"},"description":"Name in header for authentication","required":true}],"requestBody":{"description":"Content to update","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IBbsArticle.IStore"}}},"required":true},"responses":{"200":{"description":""}},"summary":"Update an article","description":"Update an article."}},"/health":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":""}}}},"/performance":{"get":{"tags":[],"parameters":[],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IPerformance"}}}}}}}},"components":{"schemas":{"IHeaders":{"type":"object","properties":{"x-category":{"type":"string","enum":["x","y","z"]},"x-memo":{"type":"string"},"x-nAme":{"type":"string","default":"Samchon"},"x-values":{"type":"array","items":{"type":"number"}},"x-fLags":{"type":"array","items":{"type":"boolean"}}},"nullable":false,"required":["x-category","x-values","x-fLags"]},"IBbsArticle.IStore":{"type":"object","properties":{"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["title","body","files"]},"IAttachmentFile":{"type":"object","properties":{"name":{"type":"string","maxLength":255,"nullable":true},"extension":{"type":"string","maxLength":8,"minLength":1,"nullable":true},"url":{"type":"string","format":"uri"}},"nullable":false,"required":["name","extension","url"]},"IBbsArticle":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"created_at":{"type":"string","format":"date-time"},"title":{"type":"string","maxLength":50,"minLength":3},"body":{"type":"string"},"files":{"type":"array","items":{"$ref":"#/components/schemas/IAttachmentFile"}}},"nullable":false,"required":["id","created_at","title","body","files"]},"IPerformance":{"type":"object","properties":{"cpu":{"$ref":"#/components/schemas/process.global.NodeJS.CpuUsage"},"memory":{"$ref":"#/components/schemas/process.global.NodeJS.MemoryUsage"},"resource":{"$ref":"#/components/schemas/process.global.NodeJS.ResourceUsage"}},"nullable":false,"required":["cpu","memory","resource"],"description":"Performance info."},"process.global.NodeJS.CpuUsage":{"type":"object","properties":{"user":{"type":"number"},"system":{"type":"number"}},"nullable":false,"required":["user","system"]},"process.global.NodeJS.MemoryUsage":{"type":"object","properties":{"rss":{"type":"number"},"heapTotal":{"type":"number"},"heapUsed":{"type":"number"},"external":{"type":"number"},"arrayBuffers":{"type":"number"}},"nullable":false,"required":["rss","heapTotal","heapUsed","external","arrayBuffers"]},"process.global.NodeJS.ResourceUsage":{"type":"object","properties":{"fsRead":{"type":"number"},"fsWrite":{"type":"number"},"involuntaryContextSwitches":{"type":"number"},"ipcReceived":{"type":"number"},"ipcSent":{"type":"number"},"majorPageFault":{"type":"number"},"maxRSS":{"type":"number"},"minorPageFault":{"type":"number"},"sharedMemorySize":{"type":"number"},"signalsCount":{"type":"number"},"swappedOut":{"type":"number"},"systemCPUTime":{"type":"number"},"unsharedDataSize":{"type":"number"},"unsharedStackSize":{"type":"number"},"userCPUTime":{"type":"number"},"voluntaryContextSwitches":{"type":"number"}},"nullable":false,"required":["fsRead","fsWrite","involuntaryContextSwitches","ipcReceived","ipcSent","majorPageFault","maxRSS","minorPageFault","sharedMemorySize","signalsCount","swappedOut","systemCPUTime","unsharedDataSize","unsharedStackSize","userCPUTime","voluntaryContextSwitches"]}},"securitySchemes":{"bearer":{"type":"apiKey","in":"header","name":"Authorization"}}}} \ No newline at end of file diff --git a/test/package.json b/test/package.json index 7ec2f2800..bbc6f94cb 100644 --- a/test/package.json +++ b/test/package.json @@ -26,7 +26,7 @@ }, "homepage": "https://nestia.io", "devDependencies": { - "@nestia/sdk": "^2.5.16-dev.20240320", + "@nestia/sdk": "D:\\github\\samchon\\nestia\\packages\\sdk\\nestia-sdk-2.5.16-dev.20240320.tgz", "@nestjs/swagger": "^7.1.2", "@types/express": "^4.17.17", "@types/node": "20.11.16", @@ -39,15 +39,15 @@ }, "dependencies": { "@fastify/multipart": "^8.1.0", - "@nestia/core": "^2.5.16-dev.20240320", + "@nestia/core": "D:\\github\\samchon\\nestia\\packages\\core\\nestia-core-2.5.16-dev.20240320.tgz", "@nestia/e2e": "^0.3.6", - "@nestia/fetcher": "^2.5.16-dev.20240320", + "@nestia/fetcher": "D:\\github\\samchon\\nestia\\packages\\fetcher\\nestia-fetcher-2.5.16-dev.20240320.tgz", "@nestjs/common": "^10.3.4", "@nestjs/core": "^10.3.4", "@nestjs/platform-express": "^10.3.4", "@nestjs/platform-fastify": "^10.3.4", "tstl": "^2.5.13", - "typia": "^5.4.5", + "typia": "^5.5.7", "uuid": "^9.0.1" } } \ No newline at end of file diff --git a/website/package.json b/website/package.json index a7325b0bc..60cd21768 100644 --- a/website/package.json +++ b/website/package.json @@ -32,7 +32,7 @@ "react": "18.2.0", "react-dom": "18.2.0", "react-mui-fileuploader": "^0.5.2", - "typia": "^5.4.9" + "typia": "^5.5.7" }, "devDependencies": { "@trivago/prettier-plugin-sort-imports": "^4.3.0",