@samchon/openapi
Advanced tools
Comparing version 0.4.0 to 0.4.1
@@ -73,3 +73,15 @@ "use strict"; | ||
}; | ||
const convertParameter = (components) => (input) => (Object.assign(Object.assign({}, input), { schema: convertSchema(components)(input.schema) })); | ||
const convertParameter = (components) => (input) => (Object.assign(Object.assign({}, input), { schema: convertSchema(components)(input.schema), examples: input.examples | ||
? Object.fromEntries(Object.entries(input.examples) | ||
.map(([key, value]) => { | ||
var _a, _b; | ||
return [ | ||
key, | ||
TypeChecker.isReference(value) | ||
? (_a = components.examples) === null || _a === void 0 ? void 0 : _a[(_b = value.$ref.split("/").pop()) !== null && _b !== void 0 ? _b : ""] | ||
: value, | ||
]; | ||
}) | ||
.filter(([_, v]) => v !== undefined)) | ||
: undefined })); | ||
const convertRequestBody = (doc) => (input) => { | ||
@@ -123,2 +135,14 @@ var _a, _b, _c, _d; | ||
? convertSchema(components)(value.schema) | ||
: undefined, examples: value.examples | ||
? Object.fromEntries(Object.entries(value.examples) | ||
.map(([key, value]) => { | ||
var _a, _b; | ||
return [ | ||
key, | ||
TypeChecker.isReference(value) | ||
? (_a = components.examples) === null || _a === void 0 ? void 0 : _a[(_b = value.$ref.split("/").pop()) !== null && _b !== void 0 ? _b : ""] | ||
: value, | ||
]; | ||
}) | ||
.filter(([_, v]) => v !== undefined)) | ||
: undefined }), | ||
@@ -125,0 +149,0 @@ ])); |
@@ -59,3 +59,15 @@ "use strict"; | ||
}; | ||
const convertParameter = (components) => (input) => (Object.assign(Object.assign({}, input), { schema: OpenApiV3Converter.convertSchema(components)(input.schema) })); | ||
const convertParameter = (components) => (input) => (Object.assign(Object.assign({}, input), { schema: OpenApiV3Converter.convertSchema(components)(input.schema), examples: input.examples | ||
? Object.fromEntries(Object.entries(input.examples) | ||
.map(([key, value]) => { | ||
var _a, _b; | ||
return [ | ||
key, | ||
TypeChecker.isReference(value) | ||
? (_a = components.examples) === null || _a === void 0 ? void 0 : _a[(_b = value.$ref.split("/").pop()) !== null && _b !== void 0 ? _b : ""] | ||
: value, | ||
]; | ||
}) | ||
.filter(([_, v]) => v !== undefined)) | ||
: undefined })); | ||
const convertRequestBody = (doc) => (input) => { | ||
@@ -109,2 +121,14 @@ var _a, _b, _c, _d; | ||
? OpenApiV3Converter.convertSchema(components)(value.schema) | ||
: undefined, examples: value.examples | ||
? Object.fromEntries(Object.entries(value.examples) | ||
.map(([key, value]) => { | ||
var _a, _b; | ||
return [ | ||
key, | ||
TypeChecker.isReference(value) | ||
? (_a = components.examples) === null || _a === void 0 ? void 0 : _a[(_b = value.$ref.split("/").pop()) !== null && _b !== void 0 ? _b : ""] | ||
: value, | ||
]; | ||
}) | ||
.filter(([_, v]) => v !== undefined)) | ||
: undefined }), | ||
@@ -111,0 +135,0 @@ ])); |
@@ -105,2 +105,3 @@ "use strict"; | ||
schema: convertSchema(input.schema), | ||
example: input.example, | ||
}, | ||
@@ -107,0 +108,0 @@ } |
@@ -75,3 +75,6 @@ "use strict"; | ||
var _a, _b; | ||
return (Object.assign(Object.assign(Object.assign({}, SwaggerV2Downgrader.downgradeSchema(collection)(input.schema)), input), { required: (_a = input.schema) === null || _a === void 0 ? void 0 : _a.required, schema: undefined, name: (_b = input.name) !== null && _b !== void 0 ? _b : `p${i}` })); | ||
return (Object.assign(Object.assign(Object.assign(Object.assign({}, SwaggerV2Downgrader.downgradeSchema(collection)(input.schema)), input), { required: (_a = input.schema) === null || _a === void 0 ? void 0 : _a.required, schema: undefined, name: (_b = input.name) !== null && _b !== void 0 ? _b : `p${i}` }), { | ||
example: undefined, | ||
examples: undefined, | ||
})); | ||
}; | ||
@@ -98,3 +101,6 @@ const downgradeRequestBody = (collection) => (input) => { | ||
key, | ||
Object.assign(Object.assign({}, value), { schema: SwaggerV2Downgrader.downgradeSchema(collection)(value.schema) }), | ||
Object.assign(Object.assign(Object.assign({}, value), { schema: SwaggerV2Downgrader.downgradeSchema(collection)(value.schema) }), { | ||
example: undefined, | ||
examples: undefined, | ||
}), | ||
])) | ||
@@ -101,0 +107,0 @@ : undefined, |
@@ -25,4 +25,5 @@ import { IMigrateDocument } from "./IMigrateDocument"; | ||
* - Operation | ||
* - Merged {@link OpenApiV3_1.IPath.parameters} to {@link OpenApi.IOperation.parameters} | ||
* - Resolved {@link OpenApi.IJsonSchema.IReference references} of {@link OpenApiV3_1.IOperation} members | ||
* - Merge {@link OpenApiV3_1.IPath.parameters} to {@link OpenApi.IOperation.parameters} | ||
* - Resolve {@link OpenApi.IJsonSchema.IReference references} of {@link OpenApiV3_1.IOperation} members | ||
* - Escape references of {@link OpenApiV3_1.IComponent.examples} | ||
* - JSON Schema | ||
@@ -375,2 +376,4 @@ * - Decompose mixed type: {@link OpenApiV3_1.IJsonSchema.IMixed} | ||
description?: string; | ||
example?: any; | ||
examples?: Record<string, IExample>; | ||
} | ||
@@ -404,2 +407,4 @@ /** | ||
schema?: Schema; | ||
example?: any; | ||
examples?: Record<string, IExample>; | ||
} | ||
@@ -412,2 +417,11 @@ /** | ||
/** | ||
* Example of the operation parameter or response. | ||
*/ | ||
interface IExample { | ||
summary?: string; | ||
description?: string; | ||
value?: any; | ||
externalValue?: string; | ||
} | ||
/** | ||
* Reusable components in OpenAPI. | ||
@@ -414,0 +428,0 @@ * |
@@ -33,4 +33,5 @@ "use strict"; | ||
* - Operation | ||
* - Merged {@link OpenApiV3_1.IPath.parameters} to {@link OpenApi.IOperation.parameters} | ||
* - Resolved {@link OpenApi.IJsonSchema.IReference references} of {@link OpenApiV3_1.IOperation} members | ||
* - Merge {@link OpenApiV3_1.IPath.parameters} to {@link OpenApi.IOperation.parameters} | ||
* - Resolve {@link OpenApi.IJsonSchema.IReference references} of {@link OpenApiV3_1.IOperation} members | ||
* - Escape references of {@link OpenApiV3_1.IComponent.examples} | ||
* - JSON Schema | ||
@@ -37,0 +38,0 @@ * - Decompose mixed type: {@link OpenApiV3_1.IJsonSchema.IMixed} |
@@ -84,2 +84,4 @@ /** | ||
description?: string; | ||
example?: any; | ||
examples?: Record<string, IExample | IJsonSchema.IReference<`#/components/examples/${string}`>>; | ||
} | ||
@@ -98,4 +100,12 @@ interface IRequestBody { | ||
schema?: IJsonSchema; | ||
example?: any; | ||
examples?: Record<string, IExample | IJsonSchema.IReference<`#/components/examples/${string}`>>; | ||
} | ||
} | ||
interface IExample { | ||
summary?: string; | ||
description?: string; | ||
value?: any; | ||
externalValue?: string; | ||
} | ||
interface IComponents { | ||
@@ -109,2 +119,3 @@ schemas?: Record<string, IJsonSchema>; | ||
headers?: Record<string, Omit<IOperation.IParameter, "in">>; | ||
examples?: Record<string, IExample>; | ||
} | ||
@@ -111,0 +122,0 @@ type IJsonSchema = IJsonSchema.IMixed | IJsonSchema.IConstant | IJsonSchema.IBoolean | IJsonSchema.IInteger | IJsonSchema.INumber | IJsonSchema.IString | IJsonSchema.IArray | IJsonSchema.IObject | IJsonSchema.IReference | IJsonSchema.IUnknown | IJsonSchema.INull | IJsonSchema.IAllOf | IJsonSchema.IAnyOf | IJsonSchema.IOneOf; |
@@ -81,2 +81,4 @@ /** | ||
description?: string; | ||
example?: any; | ||
examples?: Record<string, IExample | IJsonSchema.IReference<`#/components/examples/${string}`>>; | ||
} | ||
@@ -95,4 +97,12 @@ interface IRequestBody { | ||
schema?: IJsonSchema; | ||
example?: any; | ||
examples?: Record<string, IExample | IJsonSchema.IReference<`#/components/examples/${string}`>>; | ||
} | ||
} | ||
interface IExample { | ||
summary?: string; | ||
description?: string; | ||
value?: any; | ||
externalValue?: string; | ||
} | ||
interface IComponents { | ||
@@ -105,2 +115,3 @@ schemas?: Record<string, IJsonSchema>; | ||
headers?: Record<string, Omit<IOperation.IParameter, "in">>; | ||
examples?: Record<string, IExample>; | ||
} | ||
@@ -107,0 +118,0 @@ type IJsonSchema = IJsonSchema.IBoolean | IJsonSchema.IInteger | IJsonSchema.INumber | IJsonSchema.IString | IJsonSchema.IArray | IJsonSchema.IObject | IJsonSchema.IReference | IJsonSchema.IUnknown | IJsonSchema.INullOnly | IJsonSchema.IAllOf | IJsonSchema.IAnyOf | IJsonSchema.IOneOf; |
@@ -81,2 +81,3 @@ /** | ||
schema?: IJsonSchema; | ||
example?: any; | ||
} | ||
@@ -83,0 +84,0 @@ } |
{ | ||
"name": "@samchon/openapi", | ||
"version": "0.4.0", | ||
"version": "0.4.1", | ||
"description": "OpenAPI definitions and converters for 'typia' and 'nestia'.", | ||
@@ -5,0 +5,0 @@ "main": "./lib/index.js", |
@@ -31,2 +31,3 @@ # `@samchon/openapi` | ||
- Resolve references of `OpenApiV3_1.IOperation` members | ||
- Escape references of `OpenApiV3_1.IComponents.examples` | ||
- JSON Schema | ||
@@ -33,0 +34,0 @@ - Decompose mixed type: `OpenApiV3_1.IJsonSchema.IMixed` |
@@ -129,3 +129,16 @@ import { OpenApi } from "../OpenApi"; | ||
schema: convertSchema(components)(input.schema), | ||
examples: input.examples | ||
? Object.fromEntries( | ||
Object.entries(input.examples) | ||
.map(([key, value]) => [ | ||
key, | ||
TypeChecker.isReference(value) | ||
? components.examples?.[value.$ref.split("/").pop() ?? ""] | ||
: value, | ||
]) | ||
.filter(([_, v]) => v !== undefined), | ||
) | ||
: undefined, | ||
}); | ||
const convertRequestBody = | ||
@@ -225,2 +238,16 @@ (doc: OpenApiV3_1.IDocument) => | ||
: undefined, | ||
examples: value.examples | ||
? Object.fromEntries( | ||
Object.entries(value.examples) | ||
.map(([key, value]) => [ | ||
key, | ||
TypeChecker.isReference(value) | ||
? components.examples?.[ | ||
value.$ref.split("/").pop() ?? "" | ||
] | ||
: value, | ||
]) | ||
.filter(([_, v]) => v !== undefined), | ||
) | ||
: undefined, | ||
}, | ||
@@ -227,0 +254,0 @@ ] as const, |
@@ -101,3 +101,16 @@ import { OpenApi } from "../OpenApi"; | ||
schema: convertSchema(components)(input.schema), | ||
examples: input.examples | ||
? Object.fromEntries( | ||
Object.entries(input.examples) | ||
.map(([key, value]) => [ | ||
key, | ||
TypeChecker.isReference(value) | ||
? components.examples?.[value.$ref.split("/").pop() ?? ""] | ||
: value, | ||
]) | ||
.filter(([_, v]) => v !== undefined), | ||
) | ||
: undefined, | ||
}); | ||
const convertRequestBody = | ||
@@ -197,2 +210,16 @@ (doc: OpenApiV3.IDocument) => | ||
: undefined, | ||
examples: value.examples | ||
? Object.fromEntries( | ||
Object.entries(value.examples) | ||
.map(([key, value]) => [ | ||
key, | ||
TypeChecker.isReference(value) | ||
? components.examples?.[ | ||
value.$ref.split("/").pop() ?? "" | ||
] | ||
: value, | ||
]) | ||
.filter(([_, v]) => v !== undefined), | ||
) | ||
: undefined, | ||
}, | ||
@@ -199,0 +226,0 @@ ] as const, |
@@ -148,2 +148,3 @@ import { OpenApi } from "../OpenApi"; | ||
schema: convertSchema(input.schema), | ||
example: input.example, | ||
}, | ||
@@ -150,0 +151,0 @@ } |
@@ -121,2 +121,6 @@ import { OpenApi } from "../OpenApi"; | ||
name: input.name ?? `p${i}`, | ||
...{ | ||
example: undefined, | ||
examples: undefined, | ||
}, | ||
}) as any; | ||
@@ -154,2 +158,6 @@ | ||
schema: downgradeSchema(collection)(value.schema), | ||
...{ | ||
example: undefined, | ||
examples: undefined, | ||
}, | ||
}, | ||
@@ -156,0 +164,0 @@ ]), |
@@ -32,4 +32,5 @@ import { IMigrateDocument } from "./IMigrateDocument"; | ||
* - Operation | ||
* - Merged {@link OpenApiV3_1.IPath.parameters} to {@link OpenApi.IOperation.parameters} | ||
* - Resolved {@link OpenApi.IJsonSchema.IReference references} of {@link OpenApiV3_1.IOperation} members | ||
* - Merge {@link OpenApiV3_1.IPath.parameters} to {@link OpenApi.IOperation.parameters} | ||
* - Resolve {@link OpenApi.IJsonSchema.IReference references} of {@link OpenApiV3_1.IOperation} members | ||
* - Escape references of {@link OpenApiV3_1.IComponent.examples} | ||
* - JSON Schema | ||
@@ -501,2 +502,4 @@ * - Decompose mixed type: {@link OpenApiV3_1.IJsonSchema.IMixed} | ||
description?: string; | ||
example?: any; | ||
examples?: Record<string, IExample>; | ||
} | ||
@@ -536,2 +539,4 @@ | ||
schema?: Schema; | ||
example?: any; | ||
examples?: Record<string, IExample>; | ||
} | ||
@@ -551,2 +556,12 @@ | ||
/** | ||
* Example of the operation parameter or response. | ||
*/ | ||
export interface IExample { | ||
summary?: string; | ||
description?: string; | ||
value?: any; | ||
externalValue?: string; | ||
} | ||
/* ----------------------------------------------------------- | ||
@@ -553,0 +568,0 @@ SCHEMA DEFINITIONS |
@@ -124,2 +124,7 @@ /** | ||
description?: string; | ||
example?: any; | ||
examples?: Record< | ||
string, | ||
IExample | IJsonSchema.IReference<`#/components/examples/${string}`> | ||
>; | ||
} | ||
@@ -142,5 +147,17 @@ export interface IRequestBody { | ||
schema?: IJsonSchema; | ||
example?: any; | ||
examples?: Record< | ||
string, | ||
IExample | IJsonSchema.IReference<`#/components/examples/${string}`> | ||
>; | ||
} | ||
} | ||
export interface IExample { | ||
summary?: string; | ||
description?: string; | ||
value?: any; | ||
externalValue?: string; | ||
} | ||
/* ----------------------------------------------------------- | ||
@@ -157,2 +174,3 @@ SCHEMA DEFINITIONS | ||
headers?: Record<string, Omit<IOperation.IParameter, "in">>; | ||
examples?: Record<string, IExample>; | ||
} | ||
@@ -159,0 +177,0 @@ |
@@ -118,2 +118,7 @@ /** | ||
description?: string; | ||
example?: any; | ||
examples?: Record< | ||
string, | ||
IExample | IJsonSchema.IReference<`#/components/examples/${string}`> | ||
>; | ||
} | ||
@@ -136,5 +141,17 @@ export interface IRequestBody { | ||
schema?: IJsonSchema; | ||
example?: any; | ||
examples?: Record< | ||
string, | ||
IExample | IJsonSchema.IReference<`#/components/examples/${string}`> | ||
>; | ||
} | ||
} | ||
export interface IExample { | ||
summary?: string; | ||
description?: string; | ||
value?: any; | ||
externalValue?: string; | ||
} | ||
/* ----------------------------------------------------------- | ||
@@ -150,2 +167,3 @@ SCHEMA DEFINITIONS | ||
headers?: Record<string, Omit<IOperation.IParameter, "in">>; | ||
examples?: Record<string, IExample>; | ||
} | ||
@@ -152,0 +170,0 @@ |
@@ -112,2 +112,3 @@ /** | ||
schema?: IJsonSchema; | ||
example?: any; | ||
} | ||
@@ -114,0 +115,0 @@ } |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
722080
11504
88