feat: add contentMediaType and contentEncoding

This commit is contained in:
Alex Varchuk 2021-07-21 20:08:22 +03:00
parent 79ca769f32
commit ba3b2c52e4
5 changed files with 29 additions and 2 deletions

View File

@ -1166,6 +1166,11 @@ components:
description: User status
type: integer
format: int32
image:
description: User image
type: string
contentEncoding: base64
contentMediaType: image/png
xml:
name: User
requestBodies:

View File

@ -76,6 +76,20 @@ export class FieldDetails extends React.PureComponent<FieldProps, { patternShown
&gt;{' '}
</TypeFormat>
)}
{schema.contentEncoding && (
<TypeFormat>
{' '}&lt;
{schema.contentEncoding}
&gt;{' '}
</TypeFormat>
)}
{schema.contentMediaType && (
<TypeFormat>
{' '}&lt;
{schema.contentMediaType}
&gt;{' '}
</TypeFormat>
)}
{schema.title && !hideSchemaTitles && <TypeTitle> ({schema.title}) </TypeTitle>}
<ConstraintsView constraints={schema.constraints} />
{schema.pattern && !hideSchemaPattern && (

View File

@ -61,6 +61,8 @@ export class SchemaModel {
schema: MergedOpenAPISchema;
extensions?: Record<string, any>;
const: any;
contentEncoding?: string;
contentMediaType?: string;
/**
* @param isChild if schema discriminator Child
@ -120,6 +122,8 @@ export class SchemaModel {
this.readOnly = !!schema.readOnly;
this.writeOnly = !!schema.writeOnly;
this.const = schema.const || '';
this.contentEncoding = schema.contentEncoding;
this.contentMediaType = schema.contentMediaType;
if (!!schema.nullable) {
if (Array.isArray(this.type) && !this.type.includes('null')) {

View File

@ -147,6 +147,8 @@ export interface OpenAPISchema {
enum?: any[];
example?: any;
const?: string;
contentEncoding?: string;
contentMediaType?: string;
}
export interface OpenAPIDiscriminator {

View File

@ -83,6 +83,8 @@ const schemaKeywordTypes = {
maxLength: 'string',
minLength: 'string',
pattern: 'string',
contentEncoding: 'string',
contentMediaType: 'string',
items: 'array',
maxItems: 'array',