diff --git a/.gitignore b/.gitignore index 945397b5..208ac7c2 100644 --- a/.gitignore +++ b/.gitignore @@ -9,5 +9,6 @@ junit.xml .vscode *.iml dist +archive coverage test/result diff --git a/src/client/interfaces/Model.d.ts b/src/client/interfaces/Model.d.ts index 8c2d2064..fb84771c 100644 --- a/src/client/interfaces/Model.d.ts +++ b/src/client/interfaces/Model.d.ts @@ -1,5 +1,5 @@ import { Enum } from './Enum'; -import { Schema } from './Schema'; +import {Schema} from "./Schema"; export interface Model extends Schema { name: string; @@ -10,10 +10,6 @@ export interface Model extends Schema { link: Model | null; description: string | null; default?: any; - isProperty: boolean; - isReadOnly: boolean; - isRequired: boolean; - isNullable: boolean; imports: string[]; extends: string[]; enum: Enum[]; diff --git a/src/client/interfaces/OperationResult.d.ts b/src/client/interfaces/OperationResult.d.ts deleted file mode 100644 index 62748e96..00000000 --- a/src/client/interfaces/OperationResult.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export interface OperationResult { - type: string; - imports: string[]; -} diff --git a/src/client/interfaces/Schema.d.ts b/src/client/interfaces/Schema.d.ts new file mode 100644 index 00000000..d03baaf5 --- /dev/null +++ b/src/client/interfaces/Schema.d.ts @@ -0,0 +1,20 @@ +export interface Schema { + isProperty: boolean; + isReadOnly: boolean; + isRequired: boolean; + isNullable: boolean; + format?: 'int32' | 'int64' | 'float' | 'double' | 'string' | 'boolean' | 'byte' | 'binary' | 'date' | 'date-time' | 'password'; + maximum?: number; + exclusiveMaximum?: boolean; + minimum?: number; + exclusiveMinimum?: boolean; + multipleOf?: number; + maxLength?: number; + minLength?: number; + pattern?: string; + maxItems?: number; + minItems?: number; + uniqueItems?: boolean; + maxProperties?: number; + minProperties?: number; +} diff --git a/src/openApi/v2/index.ts b/src/openApi/v2/index.ts index 734b80d4..e668f82e 100644 --- a/src/openApi/v2/index.ts +++ b/src/openApi/v2/index.ts @@ -1,9 +1,9 @@ -import { Client } from '../../client/interfaces/Client'; -import { OpenApi } from './interfaces/OpenApi'; -import { getModels } from './parser/getModels'; -import { getServer } from './parser/getServer'; -import { getServiceVersion } from './parser/getServiceVersion'; -import { getServices } from './parser/getServices'; +import {Client} from '../../client/interfaces/Client'; +import {OpenApi} from './interfaces/OpenApi'; +import {getModels} from './parser/getModels'; +import {getServer} from './parser/getServer'; +import {getServiceVersion} from './parser/getServiceVersion'; +import {getServices} from './parser/getServices'; /** * Parse the OpenAPI specification to a Client model that contains diff --git a/src/openApi/v2/interfaces/OpenApi.d.ts b/src/openApi/v2/interfaces/OpenApi.d.ts index 04629930..407a3f20 100644 --- a/src/openApi/v2/interfaces/OpenApi.d.ts +++ b/src/openApi/v2/interfaces/OpenApi.d.ts @@ -1,13 +1,13 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiExternalDocs } from './OpenApiExternalDocs'; -import { OpenApiInfo } from './OpenApiInfo'; -import { OpenApiParameter } from './OpenApiParameter'; -import { OpenApiPath } from './OpenApiPath'; -import { OpenApiResponse } from './OpenApiResponse'; -import { OpenApiSchema } from './OpenApiSchema'; -import { OpenApiSecurityRequirement } from './OpenApiSecurityRequirement'; -import { OpenApiSecurityScheme } from './OpenApiSecurityScheme'; -import { OpenApiTag } from './OpenApiTag'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiExternalDocs} from './OpenApiExternalDocs'; +import {OpenApiInfo} from './OpenApiInfo'; +import {OpenApiParameter} from './OpenApiParameter'; +import {OpenApiPath} from './OpenApiPath'; +import {OpenApiResponse} from './OpenApiResponse'; +import {OpenApiSchema} from './OpenApiSchema'; +import {OpenApiSecurityRequirement} from './OpenApiSecurityRequirement'; +import {OpenApiSecurityScheme} from './OpenApiSecurityScheme'; +import {OpenApiTag} from './OpenApiTag'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md diff --git a/src/openApi/v2/interfaces/OpenApiHeader.d.ts b/src/openApi/v2/interfaces/OpenApiHeader.d.ts index bd0c6087..5d9a8756 100644 --- a/src/openApi/v2/interfaces/OpenApiHeader.d.ts +++ b/src/openApi/v2/interfaces/OpenApiHeader.d.ts @@ -1,5 +1,5 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiItems } from './OpenApiItems'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiItems} from './OpenApiItems'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#headerObject diff --git a/src/openApi/v2/interfaces/OpenApiInfo.d.ts b/src/openApi/v2/interfaces/OpenApiInfo.d.ts index efa6d8ba..a72f99ce 100644 --- a/src/openApi/v2/interfaces/OpenApiInfo.d.ts +++ b/src/openApi/v2/interfaces/OpenApiInfo.d.ts @@ -1,5 +1,5 @@ -import { OpenApiContact } from './OpenApiContact'; -import { OpenApiLicense } from './OpenApiLicense'; +import {OpenApiContact} from './OpenApiContact'; +import {OpenApiLicense} from './OpenApiLicense'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#infoObject diff --git a/src/openApi/v2/interfaces/OpenApiOperation.d.ts b/src/openApi/v2/interfaces/OpenApiOperation.d.ts index d3881e88..587c795d 100644 --- a/src/openApi/v2/interfaces/OpenApiOperation.d.ts +++ b/src/openApi/v2/interfaces/OpenApiOperation.d.ts @@ -1,7 +1,7 @@ -import { OpenApiExternalDocs } from './OpenApiExternalDocs'; -import { OpenApiParameter } from './OpenApiParameter'; -import { OpenApiResponses } from './OpenApiResponses'; -import { OpenApiSecurityRequirement } from './OpenApiSecurityRequirement'; +import {OpenApiExternalDocs} from './OpenApiExternalDocs'; +import {OpenApiParameter} from './OpenApiParameter'; +import {OpenApiResponses} from './OpenApiResponses'; +import {OpenApiSecurityRequirement} from './OpenApiSecurityRequirement'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#operationObject diff --git a/src/openApi/v2/interfaces/OpenApiParameter.d.ts b/src/openApi/v2/interfaces/OpenApiParameter.d.ts index d6b56960..9359705d 100644 --- a/src/openApi/v2/interfaces/OpenApiParameter.d.ts +++ b/src/openApi/v2/interfaces/OpenApiParameter.d.ts @@ -1,6 +1,6 @@ -import { OpenApiItems } from './OpenApiItems'; -import { OpenApiReference } from './OpenApiReference'; -import { OpenApiSchema } from './OpenApiSchema'; +import {OpenApiItems} from './OpenApiItems'; +import {OpenApiReference} from './OpenApiReference'; +import {OpenApiSchema} from './OpenApiSchema'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#parameterObject diff --git a/src/openApi/v2/interfaces/OpenApiPath.d.ts b/src/openApi/v2/interfaces/OpenApiPath.d.ts index 4e9fcd79..07fab176 100644 --- a/src/openApi/v2/interfaces/OpenApiPath.d.ts +++ b/src/openApi/v2/interfaces/OpenApiPath.d.ts @@ -1,6 +1,6 @@ -import { OpenApiOperation } from './OpenApiOperation'; -import { OpenApiParameter } from './OpenApiParameter'; -import { OpenApiReference } from './OpenApiReference'; +import {OpenApiOperation} from './OpenApiOperation'; +import {OpenApiParameter} from './OpenApiParameter'; +import {OpenApiReference} from './OpenApiReference'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#pathItemObject diff --git a/src/openApi/v2/interfaces/OpenApiResponse.d.ts b/src/openApi/v2/interfaces/OpenApiResponse.d.ts index 6b42777c..6e20af74 100644 --- a/src/openApi/v2/interfaces/OpenApiResponse.d.ts +++ b/src/openApi/v2/interfaces/OpenApiResponse.d.ts @@ -1,8 +1,8 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiExample } from './OpenApiExample'; -import { OpenApiHeader } from './OpenApiHeader'; -import { OpenApiReference } from './OpenApiReference'; -import { OpenApiSchema } from './OpenApiSchema'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiExample} from './OpenApiExample'; +import {OpenApiHeader} from './OpenApiHeader'; +import {OpenApiReference} from './OpenApiReference'; +import {OpenApiSchema} from './OpenApiSchema'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#responseObject diff --git a/src/openApi/v2/interfaces/OpenApiResponses.d.ts b/src/openApi/v2/interfaces/OpenApiResponses.d.ts index 5d35b944..90703505 100644 --- a/src/openApi/v2/interfaces/OpenApiResponses.d.ts +++ b/src/openApi/v2/interfaces/OpenApiResponses.d.ts @@ -1,4 +1,4 @@ -import { OpenApiResponse } from './OpenApiResponse'; +import {OpenApiResponse} from './OpenApiResponse'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#responsesObject diff --git a/src/openApi/v2/interfaces/OpenApiSchema.d.ts b/src/openApi/v2/interfaces/OpenApiSchema.d.ts index 7f36b6fa..e00fc181 100644 --- a/src/openApi/v2/interfaces/OpenApiSchema.d.ts +++ b/src/openApi/v2/interfaces/OpenApiSchema.d.ts @@ -1,7 +1,7 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiExternalDocs } from './OpenApiExternalDocs'; -import { OpenApiReference } from './OpenApiReference'; -import { OpenApiXml } from './OpenApiXml'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiExternalDocs} from './OpenApiExternalDocs'; +import {OpenApiReference} from './OpenApiReference'; +import {OpenApiXml} from './OpenApiXml'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#schemaObject diff --git a/src/openApi/v2/interfaces/OpenApiSecurityScheme.d.ts b/src/openApi/v2/interfaces/OpenApiSecurityScheme.d.ts index 0e94a7ef..bf370f9c 100644 --- a/src/openApi/v2/interfaces/OpenApiSecurityScheme.d.ts +++ b/src/openApi/v2/interfaces/OpenApiSecurityScheme.d.ts @@ -1,4 +1,4 @@ -import { Dictionary } from '../../../utils/types'; +import {Dictionary} from '../../../utils/types'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#securitySchemeObject diff --git a/src/openApi/v2/interfaces/OpenApiTag.d.ts b/src/openApi/v2/interfaces/OpenApiTag.d.ts index 7b935e78..0428b158 100644 --- a/src/openApi/v2/interfaces/OpenApiTag.d.ts +++ b/src/openApi/v2/interfaces/OpenApiTag.d.ts @@ -1,4 +1,4 @@ -import { OpenApiExternalDocs } from './OpenApiExternalDocs'; +import {OpenApiExternalDocs} from './OpenApiExternalDocs'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md#tagObject diff --git a/src/openApi/v2/parser/getComment.ts b/src/openApi/v2/parser/getComment.ts index d9af7afa..d382a1c4 100644 --- a/src/openApi/v2/parser/getComment.ts +++ b/src/openApi/v2/parser/getComment.ts @@ -1,4 +1,4 @@ -import { EOL } from 'os'; +import {EOL} from 'os'; export function getComment(comment?: string): string | null { if (comment) { diff --git a/src/openApi/v2/parser/getEnum.ts b/src/openApi/v2/parser/getEnum.ts index 094a552d..10e0e5c1 100644 --- a/src/openApi/v2/parser/getEnum.ts +++ b/src/openApi/v2/parser/getEnum.ts @@ -1,5 +1,5 @@ -import { Enum } from '../../../client/interfaces/Enum'; -import { PrimaryType } from './constants'; +import {Enum} from '../../../client/interfaces/Enum'; +import {PrimaryType} from './constants'; export function getEnum(values?: (string | number)[]): Enum[] { if (Array.isArray(values)) { diff --git a/src/openApi/v2/parser/getEnumFromDescription.ts b/src/openApi/v2/parser/getEnumFromDescription.ts index 60696e7e..3af003fd 100644 --- a/src/openApi/v2/parser/getEnumFromDescription.ts +++ b/src/openApi/v2/parser/getEnumFromDescription.ts @@ -1,5 +1,5 @@ -import { Enum } from '../../../client/interfaces/Enum'; -import { PrimaryType } from './constants'; +import {Enum} from '../../../client/interfaces/Enum'; +import {PrimaryType} from './constants'; export function getEnumFromDescription(description: string): Enum[] { // Check if we can find this special format string: diff --git a/src/openApi/v2/parser/getEnumValues.ts b/src/openApi/v2/parser/getEnumValues.ts index 348208fe..ece088dc 100644 --- a/src/openApi/v2/parser/getEnumValues.ts +++ b/src/openApi/v2/parser/getEnumValues.ts @@ -1,4 +1,4 @@ -import { Enum } from '../../../client/interfaces/Enum'; +import {Enum} from '../../../client/interfaces/Enum'; export function getEnumValues(enumerators: Enum[]): string[] { // Fetch values from the symbols, just to be sure we filter out diff --git a/src/openApi/v2/parser/getMappedType.spec.ts b/src/openApi/v2/parser/getMappedType.spec.ts index b437f85d..e0a8bf5a 100644 --- a/src/openApi/v2/parser/getMappedType.spec.ts +++ b/src/openApi/v2/parser/getMappedType.spec.ts @@ -1,4 +1,4 @@ -import { getMappedType } from './getMappedType'; +import {getMappedType} from './getMappedType'; describe('getMappedType', () => { it('should map types to the basics', () => { diff --git a/src/openApi/v2/parser/getMappedType.ts b/src/openApi/v2/parser/getMappedType.ts index ca11fa7e..3b6c122a 100644 --- a/src/openApi/v2/parser/getMappedType.ts +++ b/src/openApi/v2/parser/getMappedType.ts @@ -1,4 +1,4 @@ -import { PrimaryType, TYPE_MAPPINGS } from './constants'; +import {PrimaryType, TYPE_MAPPINGS} from './constants'; /** * Get mapped type for given type to any basic Typescript/Javascript type. diff --git a/src/openApi/v2/parser/getModel.ts b/src/openApi/v2/parser/getModel.ts index e69546a0..8e96974a 100644 --- a/src/openApi/v2/parser/getModel.ts +++ b/src/openApi/v2/parser/getModel.ts @@ -1,12 +1,12 @@ -import { Model } from '../../../client/interfaces/Model'; -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiSchema } from '../interfaces/OpenApiSchema'; -import { PrimaryType } from './constants'; -import { getComment } from './getComment'; -import { getEnum } from './getEnum'; -import { getEnumFromDescription } from './getEnumFromDescription'; -import { getModelProperties } from './getModelProperties'; -import { getType } from './getType'; +import {Model} from '../../../client/interfaces/Model'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiSchema} from '../interfaces/OpenApiSchema'; +import {PrimaryType} from './constants'; +import {getComment} from './getComment'; +import {getEnum} from './getEnum'; +import {getEnumFromDescription} from './getEnumFromDescription'; +import {getModelProperties} from './getModelProperties'; +import {getType} from './getType'; export function getModel(openApi: OpenApi, definition: OpenApiSchema, isProperty: boolean = false, name: string = ''): Model { const model: Model = { @@ -21,6 +21,20 @@ export function getModel(openApi: OpenApi, definition: OpenApiSchema, isProperty isReadOnly: definition.readOnly === true, isNullable: false, isRequired: false, + format: definition.format, + maximum: definition.maximum, + exclusiveMaximum: definition.exclusiveMaximum, + minimum: definition.minimum, + exclusiveMinimum: definition.exclusiveMinimum, + multipleOf: definition.multipleOf, + maxLength: definition.maxLength, + minLength: definition.minLength, + pattern: definition.pattern, + maxItems: definition.maxItems, + minItems: definition.minItems, + uniqueItems: definition.uniqueItems, + maxProperties: definition.maxProperties, + minProperties: definition.minProperties, imports: [], extends: [], enum: [], diff --git a/src/openApi/v2/parser/getModelProperties.ts b/src/openApi/v2/parser/getModelProperties.ts index 4378a527..b6bb6f75 100644 --- a/src/openApi/v2/parser/getModelProperties.ts +++ b/src/openApi/v2/parser/getModelProperties.ts @@ -1,9 +1,9 @@ -import { Model } from '../../../client/interfaces/Model'; -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiSchema } from '../interfaces/OpenApiSchema'; -import { getComment } from './getComment'; -import { getModel } from './getModel'; -import { getType } from './getType'; +import {Model} from '../../../client/interfaces/Model'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiSchema} from '../interfaces/OpenApiSchema'; +import {getComment} from './getComment'; +import {getModel} from './getModel'; +import {getType} from './getType'; export function getModelProperties(openApi: OpenApi, definition: OpenApiSchema): Model[] { const models: Model[] = []; @@ -25,6 +25,20 @@ export function getModelProperties(openApi: OpenApi, definition: OpenApiSchema): isReadOnly: property.readOnly === true, isRequired: propertyRequired === true, isNullable: false, + format: property.format, + maximum: property.maximum, + exclusiveMaximum: property.exclusiveMaximum, + minimum: property.minimum, + exclusiveMinimum: property.exclusiveMinimum, + multipleOf: property.multipleOf, + maxLength: property.maxLength, + minLength: property.minLength, + pattern: property.pattern, + maxItems: property.maxItems, + minItems: property.minItems, + uniqueItems: property.uniqueItems, + maxProperties: property.maxProperties, + minProperties: property.minProperties, imports: model.imports, extends: [], enum: [], @@ -45,6 +59,20 @@ export function getModelProperties(openApi: OpenApi, definition: OpenApiSchema): isReadOnly: property.readOnly === true, isRequired: propertyRequired === true, isNullable: false, + format: property.format, + maximum: property.maximum, + exclusiveMaximum: property.exclusiveMaximum, + minimum: property.minimum, + exclusiveMinimum: property.exclusiveMinimum, + multipleOf: property.multipleOf, + maxLength: property.maxLength, + minLength: property.minLength, + pattern: property.pattern, + maxItems: property.maxItems, + minItems: property.minItems, + uniqueItems: property.uniqueItems, + maxProperties: property.maxProperties, + minProperties: property.minProperties, imports: model.imports, extends: model.extends, enum: model.enum, diff --git a/src/openApi/v2/parser/getModelTemplate.spec.ts b/src/openApi/v2/parser/getModelTemplate.spec.ts index 67e46f54..d8922bf1 100644 --- a/src/openApi/v2/parser/getModelTemplate.spec.ts +++ b/src/openApi/v2/parser/getModelTemplate.spec.ts @@ -1,4 +1,4 @@ -import { getModelTemplate } from './getModelTemplate'; +import {getModelTemplate} from './getModelTemplate'; describe('getModelTemplate', () => { it('should return generic for template type', () => { diff --git a/src/openApi/v2/parser/getModelTemplate.ts b/src/openApi/v2/parser/getModelTemplate.ts index f472e784..9f8e2f24 100644 --- a/src/openApi/v2/parser/getModelTemplate.ts +++ b/src/openApi/v2/parser/getModelTemplate.ts @@ -1,4 +1,4 @@ -import { Type } from '../../../client/interfaces/Type'; +import {Type} from '../../../client/interfaces/Type'; /** * If our model has a template type, then we want to generalize that! diff --git a/src/openApi/v2/parser/getModels.ts b/src/openApi/v2/parser/getModels.ts index d654151d..49780e2e 100644 --- a/src/openApi/v2/parser/getModels.ts +++ b/src/openApi/v2/parser/getModels.ts @@ -1,7 +1,7 @@ -import { Model } from '../../../client/interfaces/Model'; -import { OpenApi } from '../interfaces/OpenApi'; -import { getModel } from './getModel'; -import { getType } from './getType'; +import {Model} from '../../../client/interfaces/Model'; +import {OpenApi} from '../interfaces/OpenApi'; +import {getModel} from './getModel'; +import {getType} from './getType'; export function getModels(openApi: OpenApi): Model[] { const models = new Map(); diff --git a/src/openApi/v2/parser/getOperation.ts b/src/openApi/v2/parser/getOperation.ts index 558523d7..8e9fe611 100644 --- a/src/openApi/v2/parser/getOperation.ts +++ b/src/openApi/v2/parser/getOperation.ts @@ -1,14 +1,14 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiOperation } from '../interfaces/OpenApiOperation'; -import { Operation } from '../../../client/interfaces/Operation'; -import { getComment } from './getComment'; -import { getOperationErrors } from './getOperationErrors'; -import { getOperationName } from './getOperationName'; -import { getOperationParameters } from './getOperationParameters'; -import { getOperationPath } from './getOperationPath'; -import { getOperationResponses } from './getOperationResponses'; -import { getOperationResults } from './getOperationResults'; -import { getServiceClassName } from './getServiceClassName'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiOperation} from '../interfaces/OpenApiOperation'; +import {Operation} from '../../../client/interfaces/Operation'; +import {getComment} from './getComment'; +import {getOperationErrors} from './getOperationErrors'; +import {getOperationName} from './getOperationName'; +import {getOperationParameters} from './getOperationParameters'; +import {getOperationPath} from './getOperationPath'; +import {getOperationResponses} from './getOperationResponses'; +import {getOperationResults} from './getOperationResults'; +import {getServiceClassName} from './getServiceClassName'; export function getOperation(openApi: OpenApi, url: string, method: string, op: OpenApiOperation): Operation { const serviceName = (op.tags && op.tags[0]) || 'Service'; diff --git a/src/openApi/v2/parser/getOperationErrors.ts b/src/openApi/v2/parser/getOperationErrors.ts index ab6edbb6..b96c0449 100644 --- a/src/openApi/v2/parser/getOperationErrors.ts +++ b/src/openApi/v2/parser/getOperationErrors.ts @@ -1,5 +1,5 @@ -import { OperationError } from '../../../client/interfaces/OperationError'; -import { OperationResponse } from '../../../client/interfaces/OperationResponse'; +import {OperationError} from '../../../client/interfaces/OperationError'; +import {OperationResponse} from '../../../client/interfaces/OperationResponse'; export function getOperationErrors(operationResponses: OperationResponse[]): OperationError[] { return operationResponses diff --git a/src/openApi/v2/parser/getOperationName.spec.ts b/src/openApi/v2/parser/getOperationName.spec.ts index ba8a5d3d..e01e4cb0 100644 --- a/src/openApi/v2/parser/getOperationName.spec.ts +++ b/src/openApi/v2/parser/getOperationName.spec.ts @@ -1,4 +1,4 @@ -import { getOperationName } from './getOperationName'; +import {getOperationName} from './getOperationName'; describe('getOperationName', () => { it('should produce correct result', () => { diff --git a/src/openApi/v2/parser/getOperationParameter.ts b/src/openApi/v2/parser/getOperationParameter.ts index a59c8ba9..fb241c41 100644 --- a/src/openApi/v2/parser/getOperationParameter.ts +++ b/src/openApi/v2/parser/getOperationParameter.ts @@ -1,14 +1,14 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiParameter } from '../interfaces/OpenApiParameter'; -import { OperationParameter } from '../../../client/interfaces/OperationParameter'; -import { PrimaryType } from './constants'; -import { getComment } from './getComment'; -import { getEnum } from './getEnum'; -import { getEnumFromDescription } from './getEnumFromDescription'; -import { getModel } from './getModel'; -import { getOperationParameterDefault } from './getOperationParameterDefault'; -import { getOperationParameterName } from './getOperationParameterName'; -import { getType } from './getType'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiParameter} from '../interfaces/OpenApiParameter'; +import {OperationParameter} from '../../../client/interfaces/OperationParameter'; +import {PrimaryType} from './constants'; +import {getComment} from './getComment'; +import {getEnum} from './getEnum'; +import {getEnumFromDescription} from './getEnumFromDescription'; +import {getModel} from './getModel'; +import {getOperationParameterDefault} from './getOperationParameterDefault'; +import {getOperationParameterName} from './getOperationParameterName'; +import {getType} from './getType'; export function getOperationParameter(openApi: OpenApi, parameter: OpenApiParameter): OperationParameter { const operationParameter: OperationParameter = { @@ -25,6 +25,18 @@ export function getOperationParameter(openApi: OpenApi, parameter: OpenApiParame isReadOnly: false, isRequired: parameter.required === true, isNullable: false, + format: parameter.format, + maximum: parameter.maximum, + exclusiveMaximum: parameter.exclusiveMaximum, + minimum: parameter.minimum, + exclusiveMinimum: parameter.exclusiveMinimum, + multipleOf: parameter.multipleOf, + maxLength: parameter.maxLength, + minLength: parameter.minLength, + pattern: parameter.pattern, + maxItems: parameter.maxItems, + minItems: parameter.minItems, + uniqueItems: parameter.uniqueItems, imports: [], extends: [], enum: [], diff --git a/src/openApi/v2/parser/getOperationParameterDefault.ts b/src/openApi/v2/parser/getOperationParameterDefault.ts index 4420dd96..f7aae92c 100644 --- a/src/openApi/v2/parser/getOperationParameterDefault.ts +++ b/src/openApi/v2/parser/getOperationParameterDefault.ts @@ -1,5 +1,5 @@ -import { OpenApiParameter } from '../interfaces/OpenApiParameter'; -import { OperationParameter } from '../../../client/interfaces/OperationParameter'; +import {OpenApiParameter} from '../interfaces/OpenApiParameter'; +import {OperationParameter} from '../../../client/interfaces/OperationParameter'; export function getOperationParameterDefault(parameter: OpenApiParameter, operationParameter: OperationParameter): string | null { if (parameter.default === null) { diff --git a/src/openApi/v2/parser/getOperationParameters.ts b/src/openApi/v2/parser/getOperationParameters.ts index 63346fba..71fbc0f4 100644 --- a/src/openApi/v2/parser/getOperationParameters.ts +++ b/src/openApi/v2/parser/getOperationParameters.ts @@ -1,9 +1,9 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiParameter } from '../interfaces/OpenApiParameter'; -import { OperationParameter } from '../../../client/interfaces/OperationParameter'; -import { OperationParameters } from '../../../client/interfaces/OperationParameters'; -import { getOperationParameter } from './getOperationParameter'; -import { getRef } from './getRef'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiParameter} from '../interfaces/OpenApiParameter'; +import {OperationParameter} from '../../../client/interfaces/OperationParameter'; +import {OperationParameters} from '../../../client/interfaces/OperationParameters'; +import {getOperationParameter} from './getOperationParameter'; +import {getRef} from './getRef'; function sortByRequired(a: OperationParameter, b: OperationParameter): number { return a.isRequired && !b.isRequired ? -1 : !a.isRequired && b.isRequired ? 1 : 0; diff --git a/src/openApi/v2/parser/getOperationPath.spec.ts b/src/openApi/v2/parser/getOperationPath.spec.ts index 4ede28f4..c84d9827 100644 --- a/src/openApi/v2/parser/getOperationPath.spec.ts +++ b/src/openApi/v2/parser/getOperationPath.spec.ts @@ -1,4 +1,4 @@ -import { getOperationPath } from './getOperationPath'; +import {getOperationPath} from './getOperationPath'; describe('getOperationPath', () => { it('should produce correct result', () => { diff --git a/src/openApi/v2/parser/getOperationResponse.ts b/src/openApi/v2/parser/getOperationResponse.ts index 200e5700..864b3d74 100644 --- a/src/openApi/v2/parser/getOperationResponse.ts +++ b/src/openApi/v2/parser/getOperationResponse.ts @@ -1,10 +1,10 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiResponse } from '../interfaces/OpenApiResponse'; -import { OperationResponse } from '../../../client/interfaces/OperationResponse'; -import { PrimaryType } from './constants'; -import { getComment } from './getComment'; -import { getModel } from './getModel'; -import { getType } from './getType'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiResponse} from '../interfaces/OpenApiResponse'; +import {OperationResponse} from '../../../client/interfaces/OperationResponse'; +import {PrimaryType} from './constants'; +import {getComment} from './getComment'; +import {getModel} from './getModel'; +import {getType} from './getType'; export function getOperationResponse(openApi: OpenApi, response: OpenApiResponse, responseCode: number): OperationResponse { const operationResponse: OperationResponse = { @@ -46,6 +46,23 @@ export function getOperationResponse(openApi: OpenApi, response: OpenApiResponse operationResponse.base = model.base; operationResponse.template = model.template; operationResponse.link = model.link; + operationResponse.isReadOnly = model.isReadOnly; + operationResponse.isRequired = model.isRequired; + operationResponse.isNullable = model.isNullable; + operationResponse.format = model.format; + operationResponse.maximum = model.maximum; + operationResponse.exclusiveMaximum = model.exclusiveMaximum; + operationResponse.minimum = model.minimum; + operationResponse.exclusiveMinimum = model.exclusiveMinimum; + operationResponse.multipleOf = model.multipleOf; + operationResponse.maxLength = model.maxLength; + operationResponse.minLength = model.minLength; + operationResponse.pattern = model.pattern; + operationResponse.maxItems = model.maxItems; + operationResponse.minItems = model.minItems; + operationResponse.uniqueItems = model.uniqueItems; + operationResponse.maxProperties = model.maxProperties; + operationResponse.minProperties = model.minProperties; operationResponse.imports.push(...model.imports); operationResponse.extends.push(...model.extends); operationResponse.enum.push(...model.enum); diff --git a/src/openApi/v2/parser/getOperationResponses.ts b/src/openApi/v2/parser/getOperationResponses.ts index 87621291..656262b0 100644 --- a/src/openApi/v2/parser/getOperationResponses.ts +++ b/src/openApi/v2/parser/getOperationResponses.ts @@ -1,10 +1,10 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiResponse } from '../interfaces/OpenApiResponse'; -import { OpenApiResponses } from '../interfaces/OpenApiResponses'; -import { OperationResponse } from '../../../client/interfaces/OperationResponse'; -import { getOperationResponse } from './getOperationResponse'; -import { getOperationResponseCode } from './getOperationResponseCode'; -import { getRef } from './getRef'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiResponse} from '../interfaces/OpenApiResponse'; +import {OpenApiResponses} from '../interfaces/OpenApiResponses'; +import {OperationResponse} from '../../../client/interfaces/OperationResponse'; +import {getOperationResponse} from './getOperationResponse'; +import {getOperationResponseCode} from './getOperationResponseCode'; +import {getRef} from './getRef'; export function getOperationResponses(openApi: OpenApi, responses: OpenApiResponses): OperationResponse[] { const operationResponses: OperationResponse[] = []; diff --git a/src/openApi/v2/parser/getOperationResults.ts b/src/openApi/v2/parser/getOperationResults.ts index fdb76359..5870d8ca 100644 --- a/src/openApi/v2/parser/getOperationResults.ts +++ b/src/openApi/v2/parser/getOperationResults.ts @@ -1,6 +1,6 @@ -import { Model } from '../../../client/interfaces/Model'; -import { OperationResponse } from '../../../client/interfaces/OperationResponse'; -import { PrimaryType } from './constants'; +import {Model} from '../../../client/interfaces/Model'; +import {OperationResponse} from '../../../client/interfaces/OperationResponse'; +import {PrimaryType} from './constants'; function areEqual(a: Model, b: Model): boolean { const equal = a.type === b.type && a.base === b.base && a.template === b.template; diff --git a/src/openApi/v2/parser/getRef.ts b/src/openApi/v2/parser/getRef.ts index 303382ba..4f0439f4 100644 --- a/src/openApi/v2/parser/getRef.ts +++ b/src/openApi/v2/parser/getRef.ts @@ -1,5 +1,5 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiReference } from '../interfaces/OpenApiReference'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiReference} from '../interfaces/OpenApiReference'; export function getRef(openApi: OpenApi, item: T & OpenApiReference): T { if (item.$ref) { diff --git a/src/openApi/v2/parser/getServer.spec.ts b/src/openApi/v2/parser/getServer.spec.ts index 4eddc72c..dc26919b 100644 --- a/src/openApi/v2/parser/getServer.spec.ts +++ b/src/openApi/v2/parser/getServer.spec.ts @@ -1,4 +1,4 @@ -import { getServer } from './getServer'; +import {getServer} from './getServer'; describe('getServer', () => { it('should produce correct result', () => { diff --git a/src/openApi/v2/parser/getServer.ts b/src/openApi/v2/parser/getServer.ts index 6037e0c5..4b33e9d8 100644 --- a/src/openApi/v2/parser/getServer.ts +++ b/src/openApi/v2/parser/getServer.ts @@ -1,4 +1,4 @@ -import { OpenApi } from '../interfaces/OpenApi'; +import {OpenApi} from '../interfaces/OpenApi'; /** * Get the base server url. diff --git a/src/openApi/v2/parser/getServiceClassName.spec.ts b/src/openApi/v2/parser/getServiceClassName.spec.ts index 9bcf6e15..dd22c0e6 100644 --- a/src/openApi/v2/parser/getServiceClassName.spec.ts +++ b/src/openApi/v2/parser/getServiceClassName.spec.ts @@ -1,4 +1,4 @@ -import { getServiceClassName } from './getServiceClassName'; +import {getServiceClassName} from './getServiceClassName'; describe('getServiceClassName', () => { it('should produce correct result', () => { diff --git a/src/openApi/v2/parser/getServiceClassName.ts b/src/openApi/v2/parser/getServiceClassName.ts index 94131a3d..0682802d 100644 --- a/src/openApi/v2/parser/getServiceClassName.ts +++ b/src/openApi/v2/parser/getServiceClassName.ts @@ -6,7 +6,7 @@ import camelCase from 'camelcase'; */ export function getServiceClassName(value: string): string { const clean = value.replace(/[^\w\s\-]+/g, '_').trim(); - const name = camelCase(clean, { pascalCase: true }); + const name = camelCase(clean, {pascalCase: true}); if (name && !name.endsWith('Service')) { return `${name}Service`; } diff --git a/src/openApi/v2/parser/getServiceVersion.spec.ts b/src/openApi/v2/parser/getServiceVersion.spec.ts index 3e72898b..bfe819d3 100644 --- a/src/openApi/v2/parser/getServiceVersion.spec.ts +++ b/src/openApi/v2/parser/getServiceVersion.spec.ts @@ -1,4 +1,4 @@ -import { getServiceVersion } from './getServiceVersion'; +import {getServiceVersion} from './getServiceVersion'; describe('getServiceVersion', () => { it('should produce correct result', () => { diff --git a/src/openApi/v2/parser/getServices.ts b/src/openApi/v2/parser/getServices.ts index ac61a2c8..184fb91a 100644 --- a/src/openApi/v2/parser/getServices.ts +++ b/src/openApi/v2/parser/getServices.ts @@ -1,7 +1,7 @@ -import { Method } from './constants'; -import { OpenApi } from '../interfaces/OpenApi'; -import { Service } from '../../../client/interfaces/Service'; -import { getOperation } from './getOperation'; +import {Method} from './constants'; +import {OpenApi} from '../interfaces/OpenApi'; +import {Service} from '../../../client/interfaces/Service'; +import {getOperation} from './getOperation'; /** * Get the OpenAPI services diff --git a/src/openApi/v2/parser/getType.spec.ts b/src/openApi/v2/parser/getType.spec.ts index 9f4ab9a4..6cdc92fb 100644 --- a/src/openApi/v2/parser/getType.spec.ts +++ b/src/openApi/v2/parser/getType.spec.ts @@ -1,4 +1,4 @@ -import { getType } from './getType'; +import {getType} from './getType'; describe('getType', () => { it('should convert int', () => { diff --git a/src/openApi/v2/parser/getType.ts b/src/openApi/v2/parser/getType.ts index 617d68fd..3a324caa 100644 --- a/src/openApi/v2/parser/getType.ts +++ b/src/openApi/v2/parser/getType.ts @@ -1,7 +1,7 @@ -import { PrimaryType } from './constants'; -import { Type } from '../../../client/interfaces/Type'; -import { getMappedType, hasMappedType } from './getMappedType'; -import { stripNamespace } from './stripNamespace'; +import {PrimaryType} from './constants'; +import {Type} from '../../../client/interfaces/Type'; +import {getMappedType, hasMappedType} from './getMappedType'; +import {stripNamespace} from './stripNamespace'; /** * Parse any string value into a type object. diff --git a/src/openApi/v2/parser/isPrimaryType.spec.ts b/src/openApi/v2/parser/isPrimaryType.spec.ts index ed3e1774..d5659ca1 100644 --- a/src/openApi/v2/parser/isPrimaryType.spec.ts +++ b/src/openApi/v2/parser/isPrimaryType.spec.ts @@ -1,4 +1,4 @@ -import { isPrimaryType } from './isPrimaryType'; +import {isPrimaryType} from './isPrimaryType'; describe('isPrimaryType', () => { it('should return true for primary types', () => { diff --git a/src/openApi/v2/parser/isPrimaryType.ts b/src/openApi/v2/parser/isPrimaryType.ts index dfb9e778..383e9ad8 100644 --- a/src/openApi/v2/parser/isPrimaryType.ts +++ b/src/openApi/v2/parser/isPrimaryType.ts @@ -1,4 +1,4 @@ -import { PrimaryType } from './constants'; +import {PrimaryType} from './constants'; /** * Check if given type is a primary type. diff --git a/src/openApi/v2/parser/stripNamespace.spec.ts b/src/openApi/v2/parser/stripNamespace.spec.ts index 796386e2..3b86a405 100644 --- a/src/openApi/v2/parser/stripNamespace.spec.ts +++ b/src/openApi/v2/parser/stripNamespace.spec.ts @@ -1,4 +1,4 @@ -import { stripNamespace } from './stripNamespace'; +import {stripNamespace} from './stripNamespace'; describe('stripNamespace', () => { it('should strip namespace', () => { diff --git a/src/openApi/v3/index.ts b/src/openApi/v3/index.ts index 734b80d4..e668f82e 100644 --- a/src/openApi/v3/index.ts +++ b/src/openApi/v3/index.ts @@ -1,9 +1,9 @@ -import { Client } from '../../client/interfaces/Client'; -import { OpenApi } from './interfaces/OpenApi'; -import { getModels } from './parser/getModels'; -import { getServer } from './parser/getServer'; -import { getServiceVersion } from './parser/getServiceVersion'; -import { getServices } from './parser/getServices'; +import {Client} from '../../client/interfaces/Client'; +import {OpenApi} from './interfaces/OpenApi'; +import {getModels} from './parser/getModels'; +import {getServer} from './parser/getServer'; +import {getServiceVersion} from './parser/getServiceVersion'; +import {getServices} from './parser/getServices'; /** * Parse the OpenAPI specification to a Client model that contains diff --git a/src/openApi/v3/interfaces/OpenApi.d.ts b/src/openApi/v3/interfaces/OpenApi.d.ts index 2d598349..836cbbb6 100644 --- a/src/openApi/v3/interfaces/OpenApi.d.ts +++ b/src/openApi/v3/interfaces/OpenApi.d.ts @@ -1,10 +1,10 @@ -import { OpenApiComponents } from './OpenApiComponents'; -import { OpenApiExternalDocs } from './OpenApiExternalDocs'; -import { OpenApiInfo } from './OpenApiInfo'; -import { OpenApiPaths } from './OpenApiPaths'; -import { OpenApiSecurityRequirement } from './OpenApiSecurityRequirement'; -import { OpenApiServer } from './OpenApiServer'; -import { OpenApiTag } from './OpenApiTag'; +import {OpenApiComponents} from './OpenApiComponents'; +import {OpenApiExternalDocs} from './OpenApiExternalDocs'; +import {OpenApiInfo} from './OpenApiInfo'; +import {OpenApiPaths} from './OpenApiPaths'; +import {OpenApiSecurityRequirement} from './OpenApiSecurityRequirement'; +import {OpenApiServer} from './OpenApiServer'; +import {OpenApiTag} from './OpenApiTag'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md diff --git a/src/openApi/v3/interfaces/OpenApiCallback.d.ts b/src/openApi/v3/interfaces/OpenApiCallback.d.ts index 897ce3a4..f1861a97 100644 --- a/src/openApi/v3/interfaces/OpenApiCallback.d.ts +++ b/src/openApi/v3/interfaces/OpenApiCallback.d.ts @@ -1,5 +1,5 @@ -import { OpenApiPath } from './OpenApiPath'; -import { OpenApiReference } from './OpenApiReference'; +import {OpenApiPath} from './OpenApiPath'; +import {OpenApiReference} from './OpenApiReference'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#callbackObject diff --git a/src/openApi/v3/interfaces/OpenApiComponents.d.ts b/src/openApi/v3/interfaces/OpenApiComponents.d.ts index d740bebb..6cd81a88 100644 --- a/src/openApi/v3/interfaces/OpenApiComponents.d.ts +++ b/src/openApi/v3/interfaces/OpenApiComponents.d.ts @@ -1,13 +1,13 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiCallback } from './OpenApiCallback'; -import { OpenApiExample } from './OpenApiExample'; -import { OpenApiHeader } from './OpenApiHeader'; -import { OpenApiLink } from './OpenApiLink'; -import { OpenApiParameter } from './OpenApiParameter'; -import { OpenApiRequestBody } from './OpenApiRequestBody'; -import { OpenApiResponses } from './OpenApiResponses'; -import { OpenApiSchema } from './OpenApiSchema'; -import { OpenApiSecurityScheme } from './OpenApiSecurityScheme'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiCallback} from './OpenApiCallback'; +import {OpenApiExample} from './OpenApiExample'; +import {OpenApiHeader} from './OpenApiHeader'; +import {OpenApiLink} from './OpenApiLink'; +import {OpenApiParameter} from './OpenApiParameter'; +import {OpenApiRequestBody} from './OpenApiRequestBody'; +import {OpenApiResponses} from './OpenApiResponses'; +import {OpenApiSchema} from './OpenApiSchema'; +import {OpenApiSecurityScheme} from './OpenApiSecurityScheme'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#componentsObject diff --git a/src/openApi/v3/interfaces/OpenApiDiscriminator.d.ts b/src/openApi/v3/interfaces/OpenApiDiscriminator.d.ts index 0655f90d..8dd75d39 100644 --- a/src/openApi/v3/interfaces/OpenApiDiscriminator.d.ts +++ b/src/openApi/v3/interfaces/OpenApiDiscriminator.d.ts @@ -1,4 +1,4 @@ -import { Dictionary } from '../../../utils/types'; +import {Dictionary} from '../../../utils/types'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#discriminatorObject diff --git a/src/openApi/v3/interfaces/OpenApiEncoding.d.ts b/src/openApi/v3/interfaces/OpenApiEncoding.d.ts index 5a60ccf3..9144d393 100644 --- a/src/openApi/v3/interfaces/OpenApiEncoding.d.ts +++ b/src/openApi/v3/interfaces/OpenApiEncoding.d.ts @@ -1,5 +1,5 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiHeader } from './OpenApiHeader'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiHeader} from './OpenApiHeader'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#encodingObject diff --git a/src/openApi/v3/interfaces/OpenApiExample.d.ts b/src/openApi/v3/interfaces/OpenApiExample.d.ts index 48f441d2..fb6b60d9 100644 --- a/src/openApi/v3/interfaces/OpenApiExample.d.ts +++ b/src/openApi/v3/interfaces/OpenApiExample.d.ts @@ -1,4 +1,4 @@ -import { OpenApiReference } from './OpenApiReference'; +import {OpenApiReference} from './OpenApiReference'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#exampleObject diff --git a/src/openApi/v3/interfaces/OpenApiHeader.d.ts b/src/openApi/v3/interfaces/OpenApiHeader.d.ts index 9fb75b1a..ec83c315 100644 --- a/src/openApi/v3/interfaces/OpenApiHeader.d.ts +++ b/src/openApi/v3/interfaces/OpenApiHeader.d.ts @@ -1,7 +1,7 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiExample } from './OpenApiExample'; -import { OpenApiReference } from './OpenApiReference'; -import { OpenApiSchema } from './OpenApiSchema'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiExample} from './OpenApiExample'; +import {OpenApiReference} from './OpenApiReference'; +import {OpenApiSchema} from './OpenApiSchema'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#headerObject diff --git a/src/openApi/v3/interfaces/OpenApiInfo.d.ts b/src/openApi/v3/interfaces/OpenApiInfo.d.ts index d5b2985d..d3de4172 100644 --- a/src/openApi/v3/interfaces/OpenApiInfo.d.ts +++ b/src/openApi/v3/interfaces/OpenApiInfo.d.ts @@ -1,5 +1,5 @@ -import { OpenApiContact } from './OpenApiContact'; -import { OpenApiLicense } from './OpenApiLicense'; +import {OpenApiContact} from './OpenApiContact'; +import {OpenApiLicense} from './OpenApiLicense'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#infoObject diff --git a/src/openApi/v3/interfaces/OpenApiLink.d.ts b/src/openApi/v3/interfaces/OpenApiLink.d.ts index 9797217e..719de8a5 100644 --- a/src/openApi/v3/interfaces/OpenApiLink.d.ts +++ b/src/openApi/v3/interfaces/OpenApiLink.d.ts @@ -1,6 +1,6 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiReference } from './OpenApiReference'; -import { OpenApiServer } from './OpenApiServer'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiReference} from './OpenApiReference'; +import {OpenApiServer} from './OpenApiServer'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#linkObject diff --git a/src/openApi/v3/interfaces/OpenApiMediaType.d.ts b/src/openApi/v3/interfaces/OpenApiMediaType.d.ts index fb11a7da..18fa3426 100644 --- a/src/openApi/v3/interfaces/OpenApiMediaType.d.ts +++ b/src/openApi/v3/interfaces/OpenApiMediaType.d.ts @@ -1,8 +1,8 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiEncoding } from './OpenApiEncoding'; -import { OpenApiExample } from './OpenApiExample'; -import { OpenApiReference } from './OpenApiReference'; -import { OpenApiSchema } from './OpenApiSchema'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiEncoding} from './OpenApiEncoding'; +import {OpenApiExample} from './OpenApiExample'; +import {OpenApiReference} from './OpenApiReference'; +import {OpenApiSchema} from './OpenApiSchema'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#mediaTypeObject diff --git a/src/openApi/v3/interfaces/OpenApiOAuthFlow.d.ts b/src/openApi/v3/interfaces/OpenApiOAuthFlow.d.ts index 6f1827aa..f2730702 100644 --- a/src/openApi/v3/interfaces/OpenApiOAuthFlow.d.ts +++ b/src/openApi/v3/interfaces/OpenApiOAuthFlow.d.ts @@ -1,4 +1,4 @@ -import { Dictionary } from '../../../utils/types'; +import {Dictionary} from '../../../utils/types'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#oauthFlowObject diff --git a/src/openApi/v3/interfaces/OpenApiOAuthFlows.d.ts b/src/openApi/v3/interfaces/OpenApiOAuthFlows.d.ts index a03a6d3d..9eefaecd 100644 --- a/src/openApi/v3/interfaces/OpenApiOAuthFlows.d.ts +++ b/src/openApi/v3/interfaces/OpenApiOAuthFlows.d.ts @@ -1,4 +1,4 @@ -import { OpenApiOAuthFlow } from './OpenApiOAuthFlow'; +import {OpenApiOAuthFlow} from './OpenApiOAuthFlow'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#oauthFlowsObject diff --git a/src/openApi/v3/interfaces/OpenApiOperation.d.ts b/src/openApi/v3/interfaces/OpenApiOperation.d.ts index b2176049..54e4b3e8 100644 --- a/src/openApi/v3/interfaces/OpenApiOperation.d.ts +++ b/src/openApi/v3/interfaces/OpenApiOperation.d.ts @@ -1,11 +1,11 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiCallback } from './OpenApiCallback'; -import { OpenApiExternalDocs } from './OpenApiExternalDocs'; -import { OpenApiParameter } from './OpenApiParameter'; -import { OpenApiRequestBody } from './OpenApiRequestBody'; -import { OpenApiResponses } from './OpenApiResponses'; -import { OpenApiSecurityRequirement } from './OpenApiSecurityRequirement'; -import { OpenApiServer } from './OpenApiServer'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiCallback} from './OpenApiCallback'; +import {OpenApiExternalDocs} from './OpenApiExternalDocs'; +import {OpenApiParameter} from './OpenApiParameter'; +import {OpenApiRequestBody} from './OpenApiRequestBody'; +import {OpenApiResponses} from './OpenApiResponses'; +import {OpenApiSecurityRequirement} from './OpenApiSecurityRequirement'; +import {OpenApiServer} from './OpenApiServer'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#operationObject diff --git a/src/openApi/v3/interfaces/OpenApiParameter.d.ts b/src/openApi/v3/interfaces/OpenApiParameter.d.ts index bb646a70..ff4d9173 100644 --- a/src/openApi/v3/interfaces/OpenApiParameter.d.ts +++ b/src/openApi/v3/interfaces/OpenApiParameter.d.ts @@ -1,7 +1,7 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiExample } from './OpenApiExample'; -import { OpenApiReference } from './OpenApiReference'; -import { OpenApiSchema } from './OpenApiSchema'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiExample} from './OpenApiExample'; +import {OpenApiReference} from './OpenApiReference'; +import {OpenApiSchema} from './OpenApiSchema'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#parameterObject diff --git a/src/openApi/v3/interfaces/OpenApiPath.d.ts b/src/openApi/v3/interfaces/OpenApiPath.d.ts index 047798c9..74caf301 100644 --- a/src/openApi/v3/interfaces/OpenApiPath.d.ts +++ b/src/openApi/v3/interfaces/OpenApiPath.d.ts @@ -1,6 +1,6 @@ -import { OpenApiOperation } from './OpenApiOperation'; -import { OpenApiParameter } from './OpenApiParameter'; -import { OpenApiServer } from './OpenApiServer'; +import {OpenApiOperation} from './OpenApiOperation'; +import {OpenApiParameter} from './OpenApiParameter'; +import {OpenApiServer} from './OpenApiServer'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#pathItemObject diff --git a/src/openApi/v3/interfaces/OpenApiPaths.d.ts b/src/openApi/v3/interfaces/OpenApiPaths.d.ts index 1ad406c7..e9d0e197 100644 --- a/src/openApi/v3/interfaces/OpenApiPaths.d.ts +++ b/src/openApi/v3/interfaces/OpenApiPaths.d.ts @@ -1,4 +1,4 @@ -import { OpenApiPath } from './OpenApiPath'; +import {OpenApiPath} from './OpenApiPath'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#pathsObject diff --git a/src/openApi/v3/interfaces/OpenApiRequestBody.d.ts b/src/openApi/v3/interfaces/OpenApiRequestBody.d.ts index f4215ec4..076761af 100644 --- a/src/openApi/v3/interfaces/OpenApiRequestBody.d.ts +++ b/src/openApi/v3/interfaces/OpenApiRequestBody.d.ts @@ -1,6 +1,6 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiMediaType } from './OpenApiMediaType'; -import { OpenApiReference } from './OpenApiReference'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiMediaType} from './OpenApiMediaType'; +import {OpenApiReference} from './OpenApiReference'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#requestBodyObject diff --git a/src/openApi/v3/interfaces/OpenApiResponse.d.ts b/src/openApi/v3/interfaces/OpenApiResponse.d.ts index 3918fc96..780e2550 100644 --- a/src/openApi/v3/interfaces/OpenApiResponse.d.ts +++ b/src/openApi/v3/interfaces/OpenApiResponse.d.ts @@ -1,8 +1,8 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiHeader } from './OpenApiHeader'; -import { OpenApiLink } from './OpenApiLink'; -import { OpenApiMediaType } from './OpenApiMediaType'; -import { OpenApiReference } from './OpenApiReference'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiHeader} from './OpenApiHeader'; +import {OpenApiLink} from './OpenApiLink'; +import {OpenApiMediaType} from './OpenApiMediaType'; +import {OpenApiReference} from './OpenApiReference'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#responseObject diff --git a/src/openApi/v3/interfaces/OpenApiResponses.d.ts b/src/openApi/v3/interfaces/OpenApiResponses.d.ts index ecc829a7..4f884e2f 100644 --- a/src/openApi/v3/interfaces/OpenApiResponses.d.ts +++ b/src/openApi/v3/interfaces/OpenApiResponses.d.ts @@ -1,5 +1,5 @@ -import { OpenApiReference } from './OpenApiReference'; -import { OpenApiResponse } from './OpenApiResponse'; +import {OpenApiReference} from './OpenApiReference'; +import {OpenApiResponse} from './OpenApiResponse'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#responsesObject diff --git a/src/openApi/v3/interfaces/OpenApiSchema.d.ts b/src/openApi/v3/interfaces/OpenApiSchema.d.ts index 9ff6c1fa..9f38a5b8 100644 --- a/src/openApi/v3/interfaces/OpenApiSchema.d.ts +++ b/src/openApi/v3/interfaces/OpenApiSchema.d.ts @@ -1,8 +1,8 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiDiscriminator } from './OpenApiDiscriminator'; -import { OpenApiExternalDocs } from './OpenApiExternalDocs'; -import { OpenApiReference } from './OpenApiReference'; -import { OpenApiXml } from './OpenApiXml'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiDiscriminator} from './OpenApiDiscriminator'; +import {OpenApiExternalDocs} from './OpenApiExternalDocs'; +import {OpenApiReference} from './OpenApiReference'; +import {OpenApiXml} from './OpenApiXml'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#schemaObject @@ -19,7 +19,7 @@ export interface OpenApiSchema extends OpenApiReference { pattern?: string; maxItems?: number; minItems?: number; - uniqueItems?: number; + uniqueItems?: boolean; maxProperties?: number; minProperties?: number; required?: string[]; diff --git a/src/openApi/v3/interfaces/OpenApiSecurityScheme.d.ts b/src/openApi/v3/interfaces/OpenApiSecurityScheme.d.ts index 0a5a461d..fb4c2c61 100644 --- a/src/openApi/v3/interfaces/OpenApiSecurityScheme.d.ts +++ b/src/openApi/v3/interfaces/OpenApiSecurityScheme.d.ts @@ -1,5 +1,5 @@ -import { OpenApiOAuthFlows } from './OpenApiOAuthFlows'; -import { OpenApiReference } from './OpenApiReference'; +import {OpenApiOAuthFlows} from './OpenApiOAuthFlows'; +import {OpenApiReference} from './OpenApiReference'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#securitySchemeObject diff --git a/src/openApi/v3/interfaces/OpenApiServer.d.ts b/src/openApi/v3/interfaces/OpenApiServer.d.ts index 3220b554..ac4073ac 100644 --- a/src/openApi/v3/interfaces/OpenApiServer.d.ts +++ b/src/openApi/v3/interfaces/OpenApiServer.d.ts @@ -1,5 +1,5 @@ -import { Dictionary } from '../../../utils/types'; -import { OpenApiServerVariable } from './OpenApiServerVariable'; +import {Dictionary} from '../../../utils/types'; +import {OpenApiServerVariable} from './OpenApiServerVariable'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#serverObject diff --git a/src/openApi/v3/interfaces/OpenApiTag.d.ts b/src/openApi/v3/interfaces/OpenApiTag.d.ts index 8cbceb9c..4088fcc2 100644 --- a/src/openApi/v3/interfaces/OpenApiTag.d.ts +++ b/src/openApi/v3/interfaces/OpenApiTag.d.ts @@ -1,4 +1,4 @@ -import { OpenApiExternalDocs } from './OpenApiExternalDocs'; +import {OpenApiExternalDocs} from './OpenApiExternalDocs'; /** * https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#tagObject diff --git a/src/openApi/v3/parser/getComment.ts b/src/openApi/v3/parser/getComment.ts index d9af7afa..d382a1c4 100644 --- a/src/openApi/v3/parser/getComment.ts +++ b/src/openApi/v3/parser/getComment.ts @@ -1,4 +1,4 @@ -import { EOL } from 'os'; +import {EOL} from 'os'; export function getComment(comment?: string): string | null { if (comment) { diff --git a/src/openApi/v3/parser/getContent.ts b/src/openApi/v3/parser/getContent.ts index 9620b6b7..54ca2827 100644 --- a/src/openApi/v3/parser/getContent.ts +++ b/src/openApi/v3/parser/getContent.ts @@ -1,8 +1,8 @@ -import { ContentType } from './constants'; -import { Dictionary } from '../../../utils/types'; -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiMediaType } from '../interfaces/OpenApiMediaType'; -import { OpenApiSchema } from '../interfaces/OpenApiSchema'; +import {ContentType} from './constants'; +import {Dictionary} from '../../../utils/types'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiMediaType} from '../interfaces/OpenApiMediaType'; +import {OpenApiSchema} from '../interfaces/OpenApiSchema'; export function getContent(openApi: OpenApi, content: Dictionary): OpenApiSchema | null { /* prettier-ignore */ diff --git a/src/openApi/v3/parser/getEnum.ts b/src/openApi/v3/parser/getEnum.ts index 094a552d..10e0e5c1 100644 --- a/src/openApi/v3/parser/getEnum.ts +++ b/src/openApi/v3/parser/getEnum.ts @@ -1,5 +1,5 @@ -import { Enum } from '../../../client/interfaces/Enum'; -import { PrimaryType } from './constants'; +import {Enum} from '../../../client/interfaces/Enum'; +import {PrimaryType} from './constants'; export function getEnum(values?: (string | number)[]): Enum[] { if (Array.isArray(values)) { diff --git a/src/openApi/v3/parser/getEnumFromDescription.ts b/src/openApi/v3/parser/getEnumFromDescription.ts index 60696e7e..3af003fd 100644 --- a/src/openApi/v3/parser/getEnumFromDescription.ts +++ b/src/openApi/v3/parser/getEnumFromDescription.ts @@ -1,5 +1,5 @@ -import { Enum } from '../../../client/interfaces/Enum'; -import { PrimaryType } from './constants'; +import {Enum} from '../../../client/interfaces/Enum'; +import {PrimaryType} from './constants'; export function getEnumFromDescription(description: string): Enum[] { // Check if we can find this special format string: diff --git a/src/openApi/v3/parser/getEnumValues.ts b/src/openApi/v3/parser/getEnumValues.ts index 348208fe..ece088dc 100644 --- a/src/openApi/v3/parser/getEnumValues.ts +++ b/src/openApi/v3/parser/getEnumValues.ts @@ -1,4 +1,4 @@ -import { Enum } from '../../../client/interfaces/Enum'; +import {Enum} from '../../../client/interfaces/Enum'; export function getEnumValues(enumerators: Enum[]): string[] { // Fetch values from the symbols, just to be sure we filter out diff --git a/src/openApi/v3/parser/getMappedType.spec.ts b/src/openApi/v3/parser/getMappedType.spec.ts index b437f85d..e0a8bf5a 100644 --- a/src/openApi/v3/parser/getMappedType.spec.ts +++ b/src/openApi/v3/parser/getMappedType.spec.ts @@ -1,4 +1,4 @@ -import { getMappedType } from './getMappedType'; +import {getMappedType} from './getMappedType'; describe('getMappedType', () => { it('should map types to the basics', () => { diff --git a/src/openApi/v3/parser/getMappedType.ts b/src/openApi/v3/parser/getMappedType.ts index ca11fa7e..3b6c122a 100644 --- a/src/openApi/v3/parser/getMappedType.ts +++ b/src/openApi/v3/parser/getMappedType.ts @@ -1,4 +1,4 @@ -import { PrimaryType, TYPE_MAPPINGS } from './constants'; +import {PrimaryType, TYPE_MAPPINGS} from './constants'; /** * Get mapped type for given type to any basic Typescript/Javascript type. diff --git a/src/openApi/v3/parser/getModel.ts b/src/openApi/v3/parser/getModel.ts index 853eb29c..42a228e1 100644 --- a/src/openApi/v3/parser/getModel.ts +++ b/src/openApi/v3/parser/getModel.ts @@ -1,13 +1,13 @@ -import { Model } from '../../../client/interfaces/Model'; -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiSchema } from '../interfaces/OpenApiSchema'; -import { PrimaryType } from './constants'; -import { getComment } from './getComment'; -import { getEnum } from './getEnum'; -import { getEnumFromDescription } from './getEnumFromDescription'; -import { getModelDefault } from './getModelDefault'; -import { getModelProperties } from './getModelProperties'; -import { getType } from './getType'; +import {Model} from '../../../client/interfaces/Model'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiSchema} from '../interfaces/OpenApiSchema'; +import {PrimaryType} from './constants'; +import {getComment} from './getComment'; +import {getEnum} from './getEnum'; +import {getEnumFromDescription} from './getEnumFromDescription'; +import {getModelDefault} from './getModelDefault'; +import {getModelProperties} from './getModelProperties'; +import {getType} from './getType'; export function getModel(openApi: OpenApi, definition: OpenApiSchema, isProperty: boolean = false, name: string = ''): Model { const model: Model = { diff --git a/src/openApi/v3/parser/getModelDefault.ts b/src/openApi/v3/parser/getModelDefault.ts index cfb317ab..8a29e2fc 100644 --- a/src/openApi/v3/parser/getModelDefault.ts +++ b/src/openApi/v3/parser/getModelDefault.ts @@ -1,5 +1,5 @@ -import { Model } from '../../../client/interfaces/Model'; -import { OpenApiSchema } from '../interfaces/OpenApiSchema'; +import {Model} from '../../../client/interfaces/Model'; +import {OpenApiSchema} from '../interfaces/OpenApiSchema'; export function getModelDefault(definition: OpenApiSchema, model?: Model): string | null { if (definition.default === null) { diff --git a/src/openApi/v3/parser/getModelProperties.ts b/src/openApi/v3/parser/getModelProperties.ts index ed1af36f..1296def9 100644 --- a/src/openApi/v3/parser/getModelProperties.ts +++ b/src/openApi/v3/parser/getModelProperties.ts @@ -1,9 +1,9 @@ -import { Model } from '../../../client/interfaces/Model'; -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiSchema } from '../interfaces/OpenApiSchema'; -import { getComment } from './getComment'; -import { getModel } from './getModel'; -import { getType } from './getType'; +import {Model} from '../../../client/interfaces/Model'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiSchema} from '../interfaces/OpenApiSchema'; +import {getComment} from './getComment'; +import {getModel} from './getModel'; +import {getType} from './getType'; export function getModelProperties(openApi: OpenApi, definition: OpenApiSchema): Model[] { const models: Model[] = []; @@ -25,6 +25,20 @@ export function getModelProperties(openApi: OpenApi, definition: OpenApiSchema): isReadOnly: property.readOnly === true, isRequired: propertyRequired === true, isNullable: property.nullable === true, + format: property.format, + maximum: property.maximum, + exclusiveMaximum: property.exclusiveMaximum, + minimum: property.minimum, + exclusiveMinimum: property.exclusiveMinimum, + multipleOf: property.multipleOf, + maxLength: property.maxLength, + minLength: property.minLength, + pattern: property.pattern, + maxItems: property.maxItems, + minItems: property.minItems, + uniqueItems: property.uniqueItems, + maxProperties: property.maxProperties, + minProperties: property.minProperties, imports: model.imports, extends: [], enum: [], @@ -45,6 +59,20 @@ export function getModelProperties(openApi: OpenApi, definition: OpenApiSchema): isReadOnly: property.readOnly === true, isRequired: propertyRequired === true, isNullable: property.nullable === true, + format: property.format, + maximum: property.maximum, + exclusiveMaximum: property.exclusiveMaximum, + minimum: property.minimum, + exclusiveMinimum: property.exclusiveMinimum, + multipleOf: property.multipleOf, + maxLength: property.maxLength, + minLength: property.minLength, + pattern: property.pattern, + maxItems: property.maxItems, + minItems: property.minItems, + uniqueItems: property.uniqueItems, + maxProperties: property.maxProperties, + minProperties: property.minProperties, imports: model.imports, extends: model.extends, enum: model.enum, diff --git a/src/openApi/v3/parser/getModelTemplate.spec.ts b/src/openApi/v3/parser/getModelTemplate.spec.ts index 67e46f54..d8922bf1 100644 --- a/src/openApi/v3/parser/getModelTemplate.spec.ts +++ b/src/openApi/v3/parser/getModelTemplate.spec.ts @@ -1,4 +1,4 @@ -import { getModelTemplate } from './getModelTemplate'; +import {getModelTemplate} from './getModelTemplate'; describe('getModelTemplate', () => { it('should return generic for template type', () => { diff --git a/src/openApi/v3/parser/getModelTemplate.ts b/src/openApi/v3/parser/getModelTemplate.ts index f472e784..9f8e2f24 100644 --- a/src/openApi/v3/parser/getModelTemplate.ts +++ b/src/openApi/v3/parser/getModelTemplate.ts @@ -1,4 +1,4 @@ -import { Type } from '../../../client/interfaces/Type'; +import {Type} from '../../../client/interfaces/Type'; /** * If our model has a template type, then we want to generalize that! diff --git a/src/openApi/v3/parser/getModels.ts b/src/openApi/v3/parser/getModels.ts index 4baa34af..cc485c3b 100644 --- a/src/openApi/v3/parser/getModels.ts +++ b/src/openApi/v3/parser/getModels.ts @@ -1,7 +1,7 @@ -import { Model } from '../../../client/interfaces/Model'; -import { OpenApi } from '../interfaces/OpenApi'; -import { getModel } from './getModel'; -import { getType } from './getType'; +import {Model} from '../../../client/interfaces/Model'; +import {OpenApi} from '../interfaces/OpenApi'; +import {getModel} from './getModel'; +import {getType} from './getType'; export function getModels(openApi: OpenApi): Model[] { const models = new Map(); diff --git a/src/openApi/v3/parser/getOperation.ts b/src/openApi/v3/parser/getOperation.ts index 20ff34fa..4707abef 100644 --- a/src/openApi/v3/parser/getOperation.ts +++ b/src/openApi/v3/parser/getOperation.ts @@ -1,15 +1,15 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiOperation } from '../interfaces/OpenApiOperation'; -import { Operation } from '../../../client/interfaces/Operation'; -import { getComment } from './getComment'; -import { getOperationErrors } from './getOperationErrors'; -import { getOperationName } from './getOperationName'; -import { getOperationParameters } from './getOperationParameters'; -import { getOperationPath } from './getOperationPath'; -import { getOperationRequestBody } from './getOperationRequestBody'; -import { getOperationResponses } from './getOperationResponses'; -import { getOperationResults } from './getOperationResults'; -import { getServiceClassName } from './getServiceClassName'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiOperation} from '../interfaces/OpenApiOperation'; +import {Operation} from '../../../client/interfaces/Operation'; +import {getComment} from './getComment'; +import {getOperationErrors} from './getOperationErrors'; +import {getOperationName} from './getOperationName'; +import {getOperationParameters} from './getOperationParameters'; +import {getOperationPath} from './getOperationPath'; +import {getOperationRequestBody} from './getOperationRequestBody'; +import {getOperationResponses} from './getOperationResponses'; +import {getOperationResults} from './getOperationResults'; +import {getServiceClassName} from './getServiceClassName'; export function getOperation(openApi: OpenApi, url: string, method: string, op: OpenApiOperation): Operation { const serviceName = (op.tags && op.tags[0]) || 'Service'; diff --git a/src/openApi/v3/parser/getOperationErrors.ts b/src/openApi/v3/parser/getOperationErrors.ts index ab6edbb6..b96c0449 100644 --- a/src/openApi/v3/parser/getOperationErrors.ts +++ b/src/openApi/v3/parser/getOperationErrors.ts @@ -1,5 +1,5 @@ -import { OperationError } from '../../../client/interfaces/OperationError'; -import { OperationResponse } from '../../../client/interfaces/OperationResponse'; +import {OperationError} from '../../../client/interfaces/OperationError'; +import {OperationResponse} from '../../../client/interfaces/OperationResponse'; export function getOperationErrors(operationResponses: OperationResponse[]): OperationError[] { return operationResponses diff --git a/src/openApi/v3/parser/getOperationName.spec.ts b/src/openApi/v3/parser/getOperationName.spec.ts index ba8a5d3d..e01e4cb0 100644 --- a/src/openApi/v3/parser/getOperationName.spec.ts +++ b/src/openApi/v3/parser/getOperationName.spec.ts @@ -1,4 +1,4 @@ -import { getOperationName } from './getOperationName'; +import {getOperationName} from './getOperationName'; describe('getOperationName', () => { it('should produce correct result', () => { diff --git a/src/openApi/v3/parser/getOperationParameter.ts b/src/openApi/v3/parser/getOperationParameter.ts index 8d770d41..018898cb 100644 --- a/src/openApi/v3/parser/getOperationParameter.ts +++ b/src/openApi/v3/parser/getOperationParameter.ts @@ -1,12 +1,12 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiParameter } from '../interfaces/OpenApiParameter'; -import { OperationParameter } from '../../../client/interfaces/OperationParameter'; -import { PrimaryType } from './constants'; -import { getComment } from './getComment'; -import { getModel } from './getModel'; -import { getModelDefault } from './getModelDefault'; -import { getOperationParameterName } from './getOperationParameterName'; -import { getType } from './getType'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiParameter} from '../interfaces/OpenApiParameter'; +import {OperationParameter} from '../../../client/interfaces/OperationParameter'; +import {PrimaryType} from './constants'; +import {getComment} from './getComment'; +import {getModel} from './getModel'; +import {getModelDefault} from './getModelDefault'; +import {getOperationParameterName} from './getOperationParameterName'; +import {getType} from './getType'; export function getOperationParameter(openApi: OpenApi, parameter: OpenApiParameter): OperationParameter { const operationParameter: OperationParameter = { @@ -49,6 +49,7 @@ export function getOperationParameter(openApi: OpenApi, parameter: OpenApiParame operationParameter.template = model.template; operationParameter.imports.push(...model.imports); operationParameter.default = getModelDefault(parameter.schema); + operationParameter.isRequired = operationParameter.default || operationParameter.isRequired; return operationParameter; } else { @@ -58,7 +59,25 @@ export function getOperationParameter(openApi: OpenApi, parameter: OpenApiParame operationParameter.base = model.base; operationParameter.template = model.template; operationParameter.link = model.link; + operationParameter.isReadOnly = model.isReadOnly; + operationParameter.isRequired = model.isRequired; + operationParameter.isNullable = model.isNullable; + operationParameter.format = model.format; + operationParameter.maximum = model.maximum; + operationParameter.exclusiveMaximum = model.exclusiveMaximum; + operationParameter.minimum = model.minimum; + operationParameter.exclusiveMinimum = model.exclusiveMinimum; + operationParameter.multipleOf = model.multipleOf; + operationParameter.maxLength = model.maxLength; + operationParameter.minLength = model.minLength; + operationParameter.pattern = model.pattern; + operationParameter.maxItems = model.maxItems; + operationParameter.minItems = model.minItems; + operationParameter.uniqueItems = model.uniqueItems; + operationParameter.maxProperties = model.maxProperties; + operationParameter.minProperties = model.minProperties; operationParameter.default = model.default; + operationParameter.isRequired = model.default || model.isRequired; operationParameter.imports.push(...model.imports); operationParameter.extends.push(...model.extends); operationParameter.enum.push(...model.enum); diff --git a/src/openApi/v3/parser/getOperationParameters.ts b/src/openApi/v3/parser/getOperationParameters.ts index 9ba08031..14f0e8cc 100644 --- a/src/openApi/v3/parser/getOperationParameters.ts +++ b/src/openApi/v3/parser/getOperationParameters.ts @@ -1,9 +1,9 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiParameter } from '../interfaces/OpenApiParameter'; -import { OperationParameter } from '../../../client/interfaces/OperationParameter'; -import { OperationParameters } from '../../../client/interfaces/OperationParameters'; -import { getOperationParameter } from './getOperationParameter'; -import { getRef } from './getRef'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiParameter} from '../interfaces/OpenApiParameter'; +import {OperationParameter} from '../../../client/interfaces/OperationParameter'; +import {OperationParameters} from '../../../client/interfaces/OperationParameters'; +import {getOperationParameter} from './getOperationParameter'; +import {getRef} from './getRef'; function sortByRequired(a: OperationParameter, b: OperationParameter): number { return a.isRequired && !b.isRequired ? -1 : !a.isRequired && b.isRequired ? 1 : 0; diff --git a/src/openApi/v3/parser/getOperationPath.spec.ts b/src/openApi/v3/parser/getOperationPath.spec.ts index 4ede28f4..c84d9827 100644 --- a/src/openApi/v3/parser/getOperationPath.spec.ts +++ b/src/openApi/v3/parser/getOperationPath.spec.ts @@ -1,4 +1,4 @@ -import { getOperationPath } from './getOperationPath'; +import {getOperationPath} from './getOperationPath'; describe('getOperationPath', () => { it('should produce correct result', () => { diff --git a/src/openApi/v3/parser/getOperationRequestBody.ts b/src/openApi/v3/parser/getOperationRequestBody.ts index 662aa385..58666ff6 100644 --- a/src/openApi/v3/parser/getOperationRequestBody.ts +++ b/src/openApi/v3/parser/getOperationRequestBody.ts @@ -1,11 +1,11 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiRequestBody } from '../interfaces/OpenApiRequestBody'; -import { OperationParameter } from '../../../client/interfaces/OperationParameter'; -import { PrimaryType } from './constants'; -import { getComment } from './getComment'; -import { getContent } from './getContent'; -import { getModel } from './getModel'; -import { getType } from './getType'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiRequestBody} from '../interfaces/OpenApiRequestBody'; +import {OperationParameter} from '../../../client/interfaces/OperationParameter'; +import {PrimaryType} from './constants'; +import {getComment} from './getComment'; +import {getContent} from './getContent'; +import {getModel} from './getModel'; +import {getType} from './getType'; export function getOperationRequestBody(openApi: OpenApi, parameter: OpenApiRequestBody): OperationParameter { const requestBody: OperationParameter = { @@ -47,6 +47,23 @@ export function getOperationRequestBody(openApi: OpenApi, parameter: OpenApiRequ requestBody.base = model.base; requestBody.template = model.template; requestBody.link = model.link; + requestBody.isReadOnly = model.isReadOnly; + requestBody.isRequired = model.isRequired; + requestBody.isNullable = model.isNullable; + requestBody.format = model.format; + requestBody.maximum = model.maximum; + requestBody.exclusiveMaximum = model.exclusiveMaximum; + requestBody.minimum = model.minimum; + requestBody.exclusiveMinimum = model.exclusiveMinimum; + requestBody.multipleOf = model.multipleOf; + requestBody.maxLength = model.maxLength; + requestBody.minLength = model.minLength; + requestBody.pattern = model.pattern; + requestBody.maxItems = model.maxItems; + requestBody.minItems = model.minItems; + requestBody.uniqueItems = model.uniqueItems; + requestBody.maxProperties = model.maxProperties; + requestBody.minProperties = model.minProperties; requestBody.imports.push(...model.imports); requestBody.extends.push(...model.extends); requestBody.enum.push(...model.enum); diff --git a/src/openApi/v3/parser/getOperationResponse.ts b/src/openApi/v3/parser/getOperationResponse.ts index 44d7285d..05ff99a9 100644 --- a/src/openApi/v3/parser/getOperationResponse.ts +++ b/src/openApi/v3/parser/getOperationResponse.ts @@ -1,11 +1,11 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiResponse } from '../interfaces/OpenApiResponse'; -import { OperationResponse } from '../../../client/interfaces/OperationResponse'; -import { PrimaryType } from './constants'; -import { getComment } from './getComment'; -import { getContent } from './getContent'; -import { getModel } from './getModel'; -import { getType } from './getType'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiResponse} from '../interfaces/OpenApiResponse'; +import {OperationResponse} from '../../../client/interfaces/OperationResponse'; +import {PrimaryType} from './constants'; +import {getComment} from './getComment'; +import {getContent} from './getContent'; +import {getModel} from './getModel'; +import {getType} from './getType'; export function getOperationResponse(openApi: OpenApi, response: OpenApiResponse, responseCode: number): OperationResponse { const operationResponse: OperationResponse = { @@ -45,6 +45,23 @@ export function getOperationResponse(openApi: OpenApi, response: OpenApiResponse operationResponse.base = model.base; operationResponse.template = model.template; operationResponse.link = model.link; + operationResponse.isReadOnly = model.isReadOnly; + operationResponse.isRequired = model.isRequired; + operationResponse.isNullable = model.isNullable; + operationResponse.format = model.format; + operationResponse.maximum = model.maximum; + operationResponse.exclusiveMaximum = model.exclusiveMaximum; + operationResponse.minimum = model.minimum; + operationResponse.exclusiveMinimum = model.exclusiveMinimum; + operationResponse.multipleOf = model.multipleOf; + operationResponse.maxLength = model.maxLength; + operationResponse.minLength = model.minLength; + operationResponse.pattern = model.pattern; + operationResponse.maxItems = model.maxItems; + operationResponse.minItems = model.minItems; + operationResponse.uniqueItems = model.uniqueItems; + operationResponse.maxProperties = model.maxProperties; + operationResponse.minProperties = model.minProperties; operationResponse.imports.push(...model.imports); operationResponse.extends.push(...model.extends); operationResponse.enum.push(...model.enum); diff --git a/src/openApi/v3/parser/getOperationResponses.ts b/src/openApi/v3/parser/getOperationResponses.ts index 87621291..656262b0 100644 --- a/src/openApi/v3/parser/getOperationResponses.ts +++ b/src/openApi/v3/parser/getOperationResponses.ts @@ -1,10 +1,10 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiResponse } from '../interfaces/OpenApiResponse'; -import { OpenApiResponses } from '../interfaces/OpenApiResponses'; -import { OperationResponse } from '../../../client/interfaces/OperationResponse'; -import { getOperationResponse } from './getOperationResponse'; -import { getOperationResponseCode } from './getOperationResponseCode'; -import { getRef } from './getRef'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiResponse} from '../interfaces/OpenApiResponse'; +import {OpenApiResponses} from '../interfaces/OpenApiResponses'; +import {OperationResponse} from '../../../client/interfaces/OperationResponse'; +import {getOperationResponse} from './getOperationResponse'; +import {getOperationResponseCode} from './getOperationResponseCode'; +import {getRef} from './getRef'; export function getOperationResponses(openApi: OpenApi, responses: OpenApiResponses): OperationResponse[] { const operationResponses: OperationResponse[] = []; diff --git a/src/openApi/v3/parser/getOperationResults.ts b/src/openApi/v3/parser/getOperationResults.ts index fdb76359..5870d8ca 100644 --- a/src/openApi/v3/parser/getOperationResults.ts +++ b/src/openApi/v3/parser/getOperationResults.ts @@ -1,6 +1,6 @@ -import { Model } from '../../../client/interfaces/Model'; -import { OperationResponse } from '../../../client/interfaces/OperationResponse'; -import { PrimaryType } from './constants'; +import {Model} from '../../../client/interfaces/Model'; +import {OperationResponse} from '../../../client/interfaces/OperationResponse'; +import {PrimaryType} from './constants'; function areEqual(a: Model, b: Model): boolean { const equal = a.type === b.type && a.base === b.base && a.template === b.template; diff --git a/src/openApi/v3/parser/getRef.ts b/src/openApi/v3/parser/getRef.ts index 303382ba..4f0439f4 100644 --- a/src/openApi/v3/parser/getRef.ts +++ b/src/openApi/v3/parser/getRef.ts @@ -1,5 +1,5 @@ -import { OpenApi } from '../interfaces/OpenApi'; -import { OpenApiReference } from '../interfaces/OpenApiReference'; +import {OpenApi} from '../interfaces/OpenApi'; +import {OpenApiReference} from '../interfaces/OpenApiReference'; export function getRef(openApi: OpenApi, item: T & OpenApiReference): T { if (item.$ref) { diff --git a/src/openApi/v3/parser/getServer.spec.ts b/src/openApi/v3/parser/getServer.spec.ts index 46a1cc0b..03db0634 100644 --- a/src/openApi/v3/parser/getServer.spec.ts +++ b/src/openApi/v3/parser/getServer.spec.ts @@ -1,4 +1,4 @@ -import { getServer } from './getServer'; +import {getServer} from './getServer'; describe('getServer', () => { it('should produce correct result', () => { diff --git a/src/openApi/v3/parser/getServer.ts b/src/openApi/v3/parser/getServer.ts index aa0180b6..3fb2b834 100644 --- a/src/openApi/v3/parser/getServer.ts +++ b/src/openApi/v3/parser/getServer.ts @@ -1,4 +1,4 @@ -import { OpenApi } from '../interfaces/OpenApi'; +import {OpenApi} from '../interfaces/OpenApi'; export function getServer(openApi: OpenApi): string { const server = openApi.servers && openApi.servers[0]; diff --git a/src/openApi/v3/parser/getServiceClassName.spec.ts b/src/openApi/v3/parser/getServiceClassName.spec.ts index 9bcf6e15..dd22c0e6 100644 --- a/src/openApi/v3/parser/getServiceClassName.spec.ts +++ b/src/openApi/v3/parser/getServiceClassName.spec.ts @@ -1,4 +1,4 @@ -import { getServiceClassName } from './getServiceClassName'; +import {getServiceClassName} from './getServiceClassName'; describe('getServiceClassName', () => { it('should produce correct result', () => { diff --git a/src/openApi/v3/parser/getServiceClassName.ts b/src/openApi/v3/parser/getServiceClassName.ts index 94131a3d..0682802d 100644 --- a/src/openApi/v3/parser/getServiceClassName.ts +++ b/src/openApi/v3/parser/getServiceClassName.ts @@ -6,7 +6,7 @@ import camelCase from 'camelcase'; */ export function getServiceClassName(value: string): string { const clean = value.replace(/[^\w\s\-]+/g, '_').trim(); - const name = camelCase(clean, { pascalCase: true }); + const name = camelCase(clean, {pascalCase: true}); if (name && !name.endsWith('Service')) { return `${name}Service`; } diff --git a/src/openApi/v3/parser/getServiceVersion.spec.ts b/src/openApi/v3/parser/getServiceVersion.spec.ts index 3e72898b..bfe819d3 100644 --- a/src/openApi/v3/parser/getServiceVersion.spec.ts +++ b/src/openApi/v3/parser/getServiceVersion.spec.ts @@ -1,4 +1,4 @@ -import { getServiceVersion } from './getServiceVersion'; +import {getServiceVersion} from './getServiceVersion'; describe('getServiceVersion', () => { it('should produce correct result', () => { diff --git a/src/openApi/v3/parser/getServices.ts b/src/openApi/v3/parser/getServices.ts index ac61a2c8..184fb91a 100644 --- a/src/openApi/v3/parser/getServices.ts +++ b/src/openApi/v3/parser/getServices.ts @@ -1,7 +1,7 @@ -import { Method } from './constants'; -import { OpenApi } from '../interfaces/OpenApi'; -import { Service } from '../../../client/interfaces/Service'; -import { getOperation } from './getOperation'; +import {Method} from './constants'; +import {OpenApi} from '../interfaces/OpenApi'; +import {Service} from '../../../client/interfaces/Service'; +import {getOperation} from './getOperation'; /** * Get the OpenAPI services diff --git a/src/openApi/v3/parser/getType.spec.ts b/src/openApi/v3/parser/getType.spec.ts index a620b21a..3e574e93 100644 --- a/src/openApi/v3/parser/getType.spec.ts +++ b/src/openApi/v3/parser/getType.spec.ts @@ -1,4 +1,4 @@ -import { getType } from './getType'; +import {getType} from './getType'; describe('getType', () => { it('should convert int', () => { diff --git a/src/openApi/v3/parser/getType.ts b/src/openApi/v3/parser/getType.ts index 617d68fd..3a324caa 100644 --- a/src/openApi/v3/parser/getType.ts +++ b/src/openApi/v3/parser/getType.ts @@ -1,7 +1,7 @@ -import { PrimaryType } from './constants'; -import { Type } from '../../../client/interfaces/Type'; -import { getMappedType, hasMappedType } from './getMappedType'; -import { stripNamespace } from './stripNamespace'; +import {PrimaryType} from './constants'; +import {Type} from '../../../client/interfaces/Type'; +import {getMappedType, hasMappedType} from './getMappedType'; +import {stripNamespace} from './stripNamespace'; /** * Parse any string value into a type object. diff --git a/src/openApi/v3/parser/isPrimaryType.spec.ts b/src/openApi/v3/parser/isPrimaryType.spec.ts index ed3e1774..d5659ca1 100644 --- a/src/openApi/v3/parser/isPrimaryType.spec.ts +++ b/src/openApi/v3/parser/isPrimaryType.spec.ts @@ -1,4 +1,4 @@ -import { isPrimaryType } from './isPrimaryType'; +import {isPrimaryType} from './isPrimaryType'; describe('isPrimaryType', () => { it('should return true for primary types', () => { diff --git a/src/openApi/v3/parser/isPrimaryType.ts b/src/openApi/v3/parser/isPrimaryType.ts index dfb9e778..383e9ad8 100644 --- a/src/openApi/v3/parser/isPrimaryType.ts +++ b/src/openApi/v3/parser/isPrimaryType.ts @@ -1,4 +1,4 @@ -import { PrimaryType } from './constants'; +import {PrimaryType} from './constants'; /** * Check if given type is a primary type. diff --git a/src/openApi/v3/parser/stripNamespace.spec.ts b/src/openApi/v3/parser/stripNamespace.spec.ts index 6f6b668c..516f7ff9 100644 --- a/src/openApi/v3/parser/stripNamespace.spec.ts +++ b/src/openApi/v3/parser/stripNamespace.spec.ts @@ -1,4 +1,4 @@ -import { stripNamespace } from './stripNamespace'; +import {stripNamespace} from './stripNamespace'; describe('stripNamespace', () => { it('should strip namespace', () => { diff --git a/src/templates/javascript/partials/comma.hbs b/src/templates/javascript/partials/comma.hbs deleted file mode 100644 index c0347f64..00000000 --- a/src/templates/javascript/partials/comma.hbs +++ /dev/null @@ -1 +0,0 @@ -{{#unless @last}},{{/unless}} diff --git a/src/templates/javascript/partials/exportEnums.hbs b/src/templates/javascript/partials/exportEnums.hbs index 30d7dac7..ecc7f557 100644 --- a/src/templates/javascript/partials/exportEnums.hbs +++ b/src/templates/javascript/partials/exportEnums.hbs @@ -14,7 +14,7 @@ export let {{{name}}}; {{/if}} {{{../name}}}.{{{name}}} = { {{#each enum}} - {{{name}}}: {{{value}}}{{>comma}} + {{{name}}}: {{{value}}}, {{/each}} }; diff --git a/src/templates/javascript/service.hbs b/src/templates/javascript/service.hbs index f65aea99..57a38e60 100644 --- a/src/templates/javascript/service.hbs +++ b/src/templates/javascript/service.hbs @@ -31,34 +31,44 @@ export class {{{name}}} { */ static async {{{name}}}({{#if parameters}} {{#each parameters}} - {{{name}}}{{#if default}} = {{{default}}}{{/if}}{{>comma}} + {{{name}}}{{#if default}} = {{{default}}}{{/if}}, {{/each}} {{/if}}) { const result = await $request({ method: '{{{method}}}', - path: `{{{path}}}`{{#if parametersCookie}}, + path: `{{{path}}}`, + {{#if parametersCookie~}} cookies: { {{#each parametersCookie}} - '{{{prop}}}': {{{name}}}{{>comma}} + '{{{prop}}}': {{{name}}}, {{/each}} - }{{/if}}{{#if parametersCookie}}, + }, + {{/if}} + {{#if parametersHeader~}} headers: { {{#each parametersHeader}} - '{{{prop}}}': {{{name}}}{{>comma}} + '{{{prop}}}': {{{name}}}, {{/each}} - }{{/if}}{{#if parametersQuery}}, + }, + {{/if}} + {{#if parametersQuery~}} query: { {{#each parametersQuery}} - '{{{prop}}}': {{{name}}}{{>comma}} + '{{{prop}}}': {{{name}}}, {{/each}} - }{{/if}}{{#if parametersForm}}, + }, + {{/if}} + {{#if parametersForm~}} formData: { {{#each parametersForm}} - '{{{prop}}}': {{{name}}}{{>comma}} + '{{{prop}}}': {{{name}}}, {{/each}} - }{{/if}}{{#if parametersBody}}, - body: {{{parametersBody.name}}}{{/if}} + }, + {{/if}} + {{#if parametersBody~}} + body: {{{parametersBody.name}}}, + {{/if}} }); {{#if errors}} diff --git a/src/templates/typescript/partials/comma.hbs b/src/templates/typescript/partials/comma.hbs deleted file mode 100644 index c0347f64..00000000 --- a/src/templates/typescript/partials/comma.hbs +++ /dev/null @@ -1 +0,0 @@ -{{#unless @last}},{{/unless}} diff --git a/src/templates/typescript/partials/exportEnum.hbs b/src/templates/typescript/partials/exportEnum.hbs index 3e0bad1a..eafe26d2 100644 --- a/src/templates/typescript/partials/exportEnum.hbs +++ b/src/templates/typescript/partials/exportEnum.hbs @@ -5,6 +5,12 @@ {{/if}} export enum {{{name}}} { {{#each enum}} - {{{name}}} = {{{value}}}{{>comma}} + {{{name}}} = {{{value}}}, {{/each}} } + +export namespace {{{name}}} { + + export const schema = {{>schema}}; + +} diff --git a/src/templates/typescript/partials/exportGeneric.hbs b/src/templates/typescript/partials/exportGeneric.hbs index d4d5b83b..006dbb85 100644 --- a/src/templates/typescript/partials/exportGeneric.hbs +++ b/src/templates/typescript/partials/exportGeneric.hbs @@ -4,3 +4,9 @@ */ {{/if}} export type {{{name}}} = {{>type}}; + +export namespace {{{name}}} { + + export const schema = {{>schema}}; + +} diff --git a/src/templates/typescript/partials/exportInterface.hbs b/src/templates/typescript/partials/exportInterface.hbs index d06a65e7..dd49884f 100644 --- a/src/templates/typescript/partials/exportInterface.hbs +++ b/src/templates/typescript/partials/exportInterface.hbs @@ -16,6 +16,7 @@ export interface {{{name}}}{{>extends}} { export namespace {{{name}}} { + {{#if enums}} {{#each enums}} {{#if description}} /** @@ -24,9 +25,12 @@ export namespace {{{name}}} { {{/if}} export enum {{{name}}} { {{#each enum}} - {{{name}}} = {{{value}}}{{>comma}} + {{{name}}} = {{{value}}}, {{/each}} } {{/each}} + {{/if}} + export const schema = {{>schema}}; + } diff --git a/src/templates/typescript/partials/schema.hbs b/src/templates/typescript/partials/schema.hbs new file mode 100644 index 00000000..68194de6 --- /dev/null +++ b/src/templates/typescript/partials/schema.hbs @@ -0,0 +1,11 @@ +{{#equals export 'interface'}} +{{>schemaInterface}} +{{else equals export 'enum'}} +{{>schemaEnum}} +{{else equals export 'array'}} +{{>schemaArray}} +{{else equals export 'dictionary'}} +{{>schemaDictionary}} +{{else}} +{{>schemaGeneric}} +{{/equals}} diff --git a/src/templates/typescript/partials/schemaArray.hbs b/src/templates/typescript/partials/schemaArray.hbs new file mode 100644 index 00000000..f8127b9c --- /dev/null +++ b/src/templates/typescript/partials/schemaArray.hbs @@ -0,0 +1,17 @@ +{ + type: 'Array', +{{#if link~}} + item: {{>schema link}}, +{{else}} + item: '{{{base}}}', +{{/if}} +{{#if isReadOnly~}} + isReadOnly: {{{isReadOnly}}}, +{{/if}} +{{#if isRequired~}} + isRequired: {{{isRequired}}}, +{{/if}} +{{#if isNullable~}} + isNullable: {{{isNullable}}}, +{{/if}} +} diff --git a/src/templates/typescript/partials/schemaDictionary.hbs b/src/templates/typescript/partials/schemaDictionary.hbs new file mode 100644 index 00000000..9735207f --- /dev/null +++ b/src/templates/typescript/partials/schemaDictionary.hbs @@ -0,0 +1,17 @@ +{ + type: 'Dictionary', +{{#if link~}} + item: {{>schema link}}, +{{else}} + item: '{{{base}}}', +{{/if}} +{{#if isReadOnly~}} + isReadOnly: {{{isReadOnly}}}, +{{/if}} +{{#if isRequired~}} + isRequired: {{{isRequired}}}, +{{/if}} +{{#if isNullable~}} + isNullable: {{{isNullable}}}, +{{/if}} +} diff --git a/src/templates/typescript/partials/schemaEnum.hbs b/src/templates/typescript/partials/schemaEnum.hbs new file mode 100644 index 00000000..9304b253 --- /dev/null +++ b/src/templates/typescript/partials/schemaEnum.hbs @@ -0,0 +1,17 @@ +{ + type: 'enum', + enums: [ + {{#each enum}} + {{{value}}}, + {{/each}} + ], +{{#if isReadOnly~}} + isReadOnly: {{{isReadOnly}}}, +{{/if}} +{{#if isRequired~}} + isRequired: {{{isRequired}}}, +{{/if}} +{{#if isNullable~}} + isNullable: {{{isNullable}}}, +{{/if}} +} diff --git a/src/templates/typescript/partials/schemaGeneric.hbs b/src/templates/typescript/partials/schemaGeneric.hbs new file mode 100644 index 00000000..dd2a60dd --- /dev/null +++ b/src/templates/typescript/partials/schemaGeneric.hbs @@ -0,0 +1,56 @@ +{ +{{#if type~}} + type: '{{{base}}}', +{{/if}} +{{#if isReadOnly~}} + isReadOnly: {{{isReadOnly}}}, +{{/if}} +{{#if isRequired~}} + isRequired: {{{isRequired}}}, +{{/if}} +{{#if isNullable~}} + isNullable: {{{isNullable}}}, +{{/if}} +{{#if format~}} + format: '{{{format}}}', +{{/if}} +{{#if maximum~}} + maximum: {{{maximum}}}, +{{/if}} +{{#if exclusiveMaximum~}} + exclusiveMaximum: {{{exclusiveMaximum}}}, +{{/if}} +{{#if minimum~}} + minimum: {{{minimum}}}, +{{/if}} +{{#if exclusiveMinimum~}} + exclusiveMinimum: {{{exclusiveMinimum}}}, +{{/if}} +{{#if multipleOf~}} + multipleOf: {{{multipleOf}}}, +{{/if}} +{{#if maxLength~}} + maxLength: {{{maxLength}}}, +{{/if}} +{{#if minLength~}} + minLength: {{{minLength}}}, +{{/if}} +{{#if pattern~}} + pattern: '{{{pattern}}}', +{{/if}} +{{#if maxItems~}} + maxItems: {{{maxItems}}}, +{{/if}} +{{#if minItems~}} + minItems: {{{minItems}}}, +{{/if}} +{{#if uniqueItems~}} + uniqueItems: {{{uniqueItems}}}, +{{/if}} +{{#if maxProperties~}} + maxProperties: {{{maxProperties}}}, +{{/if}} +{{#if minProperties~}} + minProperties: {{{minProperties}}}, +{{/if}} +} diff --git a/src/templates/typescript/partials/schemaInterface.hbs b/src/templates/typescript/partials/schemaInterface.hbs new file mode 100644 index 00000000..9e93369b --- /dev/null +++ b/src/templates/typescript/partials/schemaInterface.hbs @@ -0,0 +1,14 @@ +{ +{{#each properties}} + {{{name}}}: {{>schema}}, +{{/each}} +{{#if isReadOnly~}} + isReadOnly: {{{isReadOnly}}}, +{{/if}} +{{#if isRequired~}} + isRequired: {{{isRequired}}}, +{{/if}} +{{#if isNullable~}} + isNullable: {{{isNullable}}}, +{{/if}} +} diff --git a/src/templates/typescript/partials/typeArray.hbs b/src/templates/typescript/partials/typeArray.hbs index 042200cb..e18a72da 100644 --- a/src/templates/typescript/partials/typeArray.hbs +++ b/src/templates/typescript/partials/typeArray.hbs @@ -1,5 +1,5 @@ {{~#if link~}} Array<{{>type link}}>{{>isNullable}} {{~else~}} -Array<{{{type}}}>{{>isNullable}} +Array<{{{base}}}>{{>isNullable}} {{~/if~}} diff --git a/src/templates/typescript/partials/typeDictionary.hbs b/src/templates/typescript/partials/typeDictionary.hbs index fce52e43..7703f01f 100644 --- a/src/templates/typescript/partials/typeDictionary.hbs +++ b/src/templates/typescript/partials/typeDictionary.hbs @@ -1,5 +1,5 @@ {{~#if link~}} Dictionary<{{>type link}}>{{>isNullable}} {{~else~}} -Dictionary<{{{type}}}>{{>isNullable}} +Dictionary<{{{base}}}>{{>isNullable}} {{~/if~}} diff --git a/src/templates/typescript/partials/typeInterface.hbs b/src/templates/typescript/partials/typeInterface.hbs index 80348ffe..d44dab6a 100644 --- a/src/templates/typescript/partials/typeInterface.hbs +++ b/src/templates/typescript/partials/typeInterface.hbs @@ -6,7 +6,7 @@ * {{{description}}} */ {{/if}} -{{>isReadOnly}}{{{name}}}{{>isRequired}}: {{>type}}{{>comma}} +{{>isReadOnly}}{{{name}}}{{>isRequired}}: {{>type}}, {{/each}} }{{>isNullable}} {{~else~}} diff --git a/src/templates/typescript/service.hbs b/src/templates/typescript/service.hbs index a06d238f..827d5f49 100644 --- a/src/templates/typescript/service.hbs +++ b/src/templates/typescript/service.hbs @@ -37,34 +37,44 @@ export class {{{name}}} { */ public static async {{{name}}}({{#if parameters}} {{#each parameters}} - {{{name}}}{{>isRequired}}: {{>type}}{{#if default}} = {{{default}}}{{/if}}{{>comma}} + {{{name}}}{{>isRequired}}: {{>type}}{{#if default}} = {{{default}}}{{/if}}, {{/each}} {{/if}}): Promise<{{>result}}> { const result = await $request({ method: '{{{method}}}', - path: `{{{path}}}`{{#if parametersCookie}}, + path: `{{{path}}}`, + {{#if parametersCookie~}} cookies: { {{#each parametersCookie}} - '{{{prop}}}': {{{name}}}{{>comma}} + '{{{prop}}}': {{{name}}}, {{/each}} - }{{/if}}{{#if parametersCookie}}, + }, + {{/if}} + {{#if parametersHeader~}} headers: { {{#each parametersHeader}} - '{{{prop}}}': {{{name}}}{{>comma}} + '{{{prop}}}': {{{name}}}, {{/each}} - }{{/if}}{{#if parametersQuery}}, + }, + {{/if}} + {{#if parametersQuery~}} query: { {{#each parametersQuery}} - '{{{prop}}}': {{{name}}}{{>comma}} + '{{{prop}}}': {{{name}}}, {{/each}} - }{{/if}}{{#if parametersForm}}, + }, + {{/if}} + {{#if parametersForm~}} formData: { {{#each parametersForm}} - '{{{prop}}}': {{{name}}}{{>comma}} + '{{{prop}}}': {{{name}}}, {{/each}} - }{{/if}}{{#if parametersBody}}, - body: {{{parametersBody.name}}}{{/if}} + }, + {{/if}} + {{#if parametersBody~}} + body: {{{parametersBody.name}}}, + {{/if}} }); {{#if errors}} diff --git a/test/__snapshots__/index.spec.js.snap b/test/__snapshots__/index.spec.js.snap index 5de146cb..8203ee0d 100644 --- a/test/__snapshots__/index.spec.js.snap +++ b/test/__snapshots__/index.spec.js.snap @@ -1563,10 +1563,7 @@ exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelL export interface ModelLink { id?: string; } - -export namespace ModelLink { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelThatExtends.ts): ./test/result/v2/typescript/models/ModelThatExtends.ts 1`] = ` @@ -1584,10 +1581,7 @@ export interface ModelThatExtends extends ModelWithString { propExtendsA?: string; propExtendsB?: ModelWithString; } - -export namespace ModelThatExtends { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelThatExtendsExtends.ts): ./test/result/v2/typescript/models/ModelThatExtendsExtends.ts 1`] = ` @@ -1606,10 +1600,7 @@ export interface ModelThatExtendsExtends extends ModelWithString, ModelThatExten propExtendsC?: string; propExtendsD?: ModelWithString; } - -export namespace ModelThatExtendsExtends { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithArray.ts): ./test/result/v2/typescript/models/ModelWithArray.ts 1`] = ` @@ -1628,10 +1619,7 @@ export interface ModelWithArray { propWithFile?: Array; propWithNumber?: Array; } - -export namespace ModelWithArray { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithBoolean.ts): ./test/result/v2/typescript/models/ModelWithBoolean.ts 1`] = ` @@ -1649,10 +1637,7 @@ export interface ModelWithBoolean { */ prop?: boolean; } - -export namespace ModelWithBoolean { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithCircularReference.ts): ./test/result/v2/typescript/models/ModelWithCircularReference.ts 1`] = ` @@ -1667,10 +1652,7 @@ exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelW export interface ModelWithCircularReference { prop?: ModelWithCircularReference; } - -export namespace ModelWithCircularReference { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithDictionary.ts): ./test/result/v2/typescript/models/ModelWithDictionary.ts 1`] = ` @@ -1687,10 +1669,7 @@ import { Dictionary } from '../models/Dictionary'; export interface ModelWithDictionary { prop?: Dictionary; } - -export namespace ModelWithDictionary { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithDuplicateImports.ts): ./test/result/v2/typescript/models/ModelWithDuplicateImports.ts 1`] = ` @@ -1709,10 +1688,7 @@ export interface ModelWithDuplicateImports { propB?: ModelWithString; propC?: ModelWithString; } - -export namespace ModelWithDuplicateImports { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithDuplicateProperties.ts): ./test/result/v2/typescript/models/ModelWithDuplicateProperties.ts 1`] = ` @@ -1729,10 +1705,7 @@ import { ModelWithString } from '../models/ModelWithString'; export interface ModelWithDuplicateProperties { prop?: ModelWithString; } - -export namespace ModelWithDuplicateProperties { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithEnum.ts): ./test/result/v2/typescript/models/ModelWithEnum.ts 1`] = ` @@ -1762,7 +1735,8 @@ export namespace ModelWithEnum { ERROR = 'Error' } -}" +} +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithEnumFromDescription.ts): ./test/result/v2/typescript/models/ModelWithEnumFromDescription.ts 1`] = ` @@ -1792,7 +1766,8 @@ export namespace ModelWithEnumFromDescription { ERROR = 3 } -}" +} +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithInteger.ts): ./test/result/v2/typescript/models/ModelWithInteger.ts 1`] = ` @@ -1810,10 +1785,7 @@ export interface ModelWithInteger { */ prop?: number; } - -export namespace ModelWithInteger { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithLink.ts): ./test/result/v2/typescript/models/ModelWithLink.ts 1`] = ` @@ -1831,10 +1803,7 @@ import { ModelWithString } from '../models/ModelWithString'; export interface ModelWithLink { prop?: ModelLink; } - -export namespace ModelWithLink { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithNestedEnums.ts): ./test/result/v2/typescript/models/ModelWithNestedEnums.ts 1`] = ` @@ -1854,10 +1823,7 @@ export interface ModelWithNestedEnums { dictionaryWithEnum?: Dictionary<('Success' | 'Warning' | 'Error')>; dictionaryWithEnumFromDescription?: Dictionary<(1 | 2 | 3)>; } - -export namespace ModelWithNestedEnums { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithNestedProperties.ts): ./test/result/v2/typescript/models/ModelWithNestedProperties.ts 1`] = ` @@ -1876,10 +1842,7 @@ export interface ModelWithNestedProperties { } }; } - -export namespace ModelWithNestedProperties { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithProperties.ts): ./test/result/v2/typescript/models/ModelWithProperties.ts 1`] = ` @@ -1901,10 +1864,7 @@ export interface ModelWithProperties { readonly requiredAndReadOnly: string; string?: string; } - -export namespace ModelWithProperties { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithReference.ts): ./test/result/v2/typescript/models/ModelWithReference.ts 1`] = ` @@ -1921,10 +1881,7 @@ import { ModelWithString } from '../models/ModelWithString'; export interface ModelWithReference { prop?: ModelWithString; } - -export namespace ModelWithReference { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/ModelWithString.ts): ./test/result/v2/typescript/models/ModelWithString.ts 1`] = ` @@ -1942,10 +1899,7 @@ export interface ModelWithString { */ prop?: string; } - -export namespace ModelWithString { - -}" +" `; exports[`generation v2 typescript file(./test/result/v2/typescript/models/SimpleBoolean.ts): ./test/result/v2/typescript/models/SimpleBoolean.ts 1`] = ` @@ -2918,22 +2872,22 @@ import { OpenAPI } from '../core/OpenAPI'; export class ComplexService { /** - * @param parameterObject Parameter containing object * @param parameterReference Parameter containing reference + * @param parameterObject Parameter containing object * @result ModelWithString Successful response * @throws ApiError */ static async complexTypes( - parameterObject, - parameterReference + parameterReference, + parameterObject ) { const result = await $request({ method: 'get', path: \`/api/v\${OpenAPI.VERSION}/complex\`, query: { - 'parameterObject': parameterObject, - 'parameterReference': parameterReference + 'parameterReference': parameterReference, + 'parameterObject': parameterObject } }); @@ -3997,10 +3951,7 @@ exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelL export interface ModelLink { id?: string; } - -export namespace ModelLink { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelThatExtends.ts): ./test/result/v3/typescript/models/ModelThatExtends.ts 1`] = ` @@ -4018,10 +3969,7 @@ export interface ModelThatExtends extends ModelWithString { propExtendsA?: string; propExtendsB?: ModelWithString; } - -export namespace ModelThatExtends { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelThatExtendsExtends.ts): ./test/result/v3/typescript/models/ModelThatExtendsExtends.ts 1`] = ` @@ -4040,10 +3988,7 @@ export interface ModelThatExtendsExtends extends ModelWithString, ModelThatExten propExtendsC?: string; propExtendsD?: ModelWithString; } - -export namespace ModelThatExtendsExtends { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithArray.ts): ./test/result/v3/typescript/models/ModelWithArray.ts 1`] = ` @@ -4062,10 +4007,7 @@ export interface ModelWithArray { propWithFile?: Array; propWithNumber?: Array; } - -export namespace ModelWithArray { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithBoolean.ts): ./test/result/v3/typescript/models/ModelWithBoolean.ts 1`] = ` @@ -4083,10 +4025,7 @@ export interface ModelWithBoolean { */ prop?: boolean; } - -export namespace ModelWithBoolean { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithCircularReference.ts): ./test/result/v3/typescript/models/ModelWithCircularReference.ts 1`] = ` @@ -4101,10 +4040,7 @@ exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelW export interface ModelWithCircularReference { prop?: ModelWithCircularReference; } - -export namespace ModelWithCircularReference { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithDictionary.ts): ./test/result/v3/typescript/models/ModelWithDictionary.ts 1`] = ` @@ -4121,10 +4057,7 @@ import { Dictionary } from '../models/Dictionary'; export interface ModelWithDictionary { prop?: Dictionary; } - -export namespace ModelWithDictionary { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithDuplicateImports.ts): ./test/result/v3/typescript/models/ModelWithDuplicateImports.ts 1`] = ` @@ -4143,10 +4076,7 @@ export interface ModelWithDuplicateImports { propB?: ModelWithString; propC?: ModelWithString; } - -export namespace ModelWithDuplicateImports { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithDuplicateProperties.ts): ./test/result/v3/typescript/models/ModelWithDuplicateProperties.ts 1`] = ` @@ -4163,10 +4093,7 @@ import { ModelWithString } from '../models/ModelWithString'; export interface ModelWithDuplicateProperties { prop?: ModelWithString; } - -export namespace ModelWithDuplicateProperties { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithEnum.ts): ./test/result/v3/typescript/models/ModelWithEnum.ts 1`] = ` @@ -4196,7 +4123,8 @@ export namespace ModelWithEnum { ERROR = 'Error' } -}" +} +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithEnumFromDescription.ts): ./test/result/v3/typescript/models/ModelWithEnumFromDescription.ts 1`] = ` @@ -4226,7 +4154,8 @@ export namespace ModelWithEnumFromDescription { ERROR = 3 } -}" +} +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithInteger.ts): ./test/result/v3/typescript/models/ModelWithInteger.ts 1`] = ` @@ -4244,10 +4173,7 @@ export interface ModelWithInteger { */ prop?: number; } - -export namespace ModelWithInteger { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithLink.ts): ./test/result/v3/typescript/models/ModelWithLink.ts 1`] = ` @@ -4265,10 +4191,7 @@ import { ModelWithString } from '../models/ModelWithString'; export interface ModelWithLink { prop?: ModelLink; } - -export namespace ModelWithLink { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithNestedEnums.ts): ./test/result/v3/typescript/models/ModelWithNestedEnums.ts 1`] = ` @@ -4288,10 +4211,7 @@ export interface ModelWithNestedEnums { dictionaryWithEnum?: Dictionary<('Success' | 'Warning' | 'Error')>; dictionaryWithEnumFromDescription?: Dictionary<(1 | 2 | 3)>; } - -export namespace ModelWithNestedEnums { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithNestedProperties.ts): ./test/result/v3/typescript/models/ModelWithNestedProperties.ts 1`] = ` @@ -4310,10 +4230,7 @@ export interface ModelWithNestedProperties { } | null } | null; } - -export namespace ModelWithNestedProperties { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithProperties.ts): ./test/result/v3/typescript/models/ModelWithProperties.ts 1`] = ` @@ -4336,10 +4253,7 @@ export interface ModelWithProperties { readonly requiredAndReadOnly: string; string?: string; } - -export namespace ModelWithProperties { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithReference.ts): ./test/result/v3/typescript/models/ModelWithReference.ts 1`] = ` @@ -4356,10 +4270,7 @@ import { ModelWithString } from '../models/ModelWithString'; export interface ModelWithReference { prop?: ModelWithString; } - -export namespace ModelWithReference { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/ModelWithString.ts): ./test/result/v3/typescript/models/ModelWithString.ts 1`] = ` @@ -4377,10 +4288,7 @@ export interface ModelWithString { */ prop?: string; } - -export namespace ModelWithString { - -}" +" `; exports[`generation v3 typescript file(./test/result/v3/typescript/models/SimpleBoolean.ts): ./test/result/v3/typescript/models/SimpleBoolean.ts 1`] = ` @@ -4459,28 +4367,28 @@ import { OpenAPI } from '../core/OpenAPI'; export class ComplexService { /** - * @param parameterObject Parameter containing object * @param parameterReference Parameter containing reference + * @param parameterObject Parameter containing object * @result ModelWithString Successful response * @throws ApiError */ public static async complexTypes( - parameterObject: { + parameterReference: ModelWithString, + parameterObject?: { first?: { second?: { third?: string } } - }, - parameterReference: ModelWithString + } ): Promise> { const result = await $request({ method: 'get', path: \`/api/v\${OpenAPI.VERSION}/complex\`, query: { - 'parameterObject': parameterObject, - 'parameterReference': parameterReference + 'parameterReference': parameterReference, + 'parameterObject': parameterObject } }); @@ -4521,9 +4429,9 @@ export class DefaultsService { * @throws ApiError */ public static async callWithDefaultParameters( - parameterString?: string | null = 'Hello World!', - parameterNumber?: number | null = 123, - parameterBoolean?: boolean | null = true, + parameterString?: string = 'Hello World!', + parameterNumber?: number = 123, + parameterBoolean?: boolean = true, parameterEnum?: ('Success' | 'Warning' | 'Error') = 'Success', parameterModel?: ModelWithString | null = { \\"prop\\": \\"Hello World\\" @@ -4572,10 +4480,10 @@ export class ParametersService { * @throws ApiError */ public static async callWithParameters( - parameterHeader: string | null, - parameterQuery: string | null, - parameterForm: string | null, - parameterCookie: string | null, + parameterHeader?: string, + parameterQuery?: string, + parameterForm?: string, + parameterCookie?: string, requestBody?: ModelWithString ): Promise { @@ -4837,13 +4745,13 @@ export class TypesService { * @throws ApiError */ public static async types( - parameterNumber: number = 123, - parameterString: string | null = 'default', - parameterBoolean: boolean | null = true, - parameterObject: any = null, - parameterArray: Array | null, - parameterDictionary: any, - parameterEnum: ('Success' | 'Warning' | 'Error') | null, + parameterNumber?: number = 123, + parameterString?: string = 'default', + parameterBoolean?: boolean = true, + parameterObject?: any = null, + parameterArray?: Array, + parameterDictionary?: any, + parameterEnum?: ('Success' | 'Warning' | 'Error'), id?: number ): Promise { diff --git a/test/index.js b/test/index.js index b87a616a..e88c3309 100644 --- a/test/index.js +++ b/test/index.js @@ -28,5 +28,5 @@ OpenAPI.generate( OpenAPI.HttpClient.XHR, ); -OpenAPI.compile('./test/result/v2/typescript/'); -OpenAPI.compile('./test/result/v3/typescript/'); +// OpenAPI.compile('./test/result/v2/typescript/'); +// OpenAPI.compile('./test/result/v3/typescript/');