From 4aa7f0ef67af5fa9fb8fe5f55c61f59c53002c7e Mon Sep 17 00:00:00 2001 From: Ferdi Koomen Date: Mon, 23 Dec 2019 15:51:55 +0100 Subject: [PATCH] - Simplified schema generation --- bin/index.js | 4 +- package.json | 2 +- src/index.ts | 2 +- src/templates/core/Schema.ts | 40 - src/templates/core/getSchema.ts | 17 - src/templates/index.hbs | 26 + src/templates/index.ts | 12 - src/templates/{models => }/model.hbs | 2 +- src/templates/models/index.hbs | 8 - .../{exportGeneric.hbs => exportType.hbs} | 0 src/templates/{schemas => }/schema.hbs | 6 +- src/templates/schemas/$Dictionary.ts | 8 - src/templates/schemas/index.hbs | 8 - src/templates/{services => }/service.hbs | 0 src/templates/services/index.hbs | 8 - src/utils/readHandlebarsTemplates.spec.ts | 7 +- src/utils/readHandlebarsTemplates.ts | 14 +- src/utils/writeClient.spec.ts | 4 +- src/utils/writeClient.ts | 4 +- src/utils/writeClientIndex.spec.ts | 36 + src/utils/writeClientIndex.ts | 30 + src/utils/writeClientModels.spec.ts | 4 +- src/utils/writeClientModels.ts | 7 - src/utils/writeClientSchemas.spec.ts | 4 +- src/utils/writeClientSchemas.ts | 7 - src/utils/writeClientServices.spec.ts | 5 +- src/utils/writeClientServices.ts | 7 - test/__snapshots__/index.spec.js.snap | 910 +++++------------- 28 files changed, 354 insertions(+), 828 deletions(-) delete mode 100644 src/templates/core/Schema.ts delete mode 100644 src/templates/core/getSchema.ts create mode 100644 src/templates/index.hbs delete mode 100644 src/templates/index.ts rename src/templates/{models => }/model.hbs (94%) delete mode 100644 src/templates/models/index.hbs rename src/templates/partials/{exportGeneric.hbs => exportType.hbs} (100%) rename src/templates/{schemas => }/schema.hbs (53%) delete mode 100644 src/templates/schemas/$Dictionary.ts delete mode 100644 src/templates/schemas/index.hbs rename src/templates/{services => }/service.hbs (100%) delete mode 100644 src/templates/services/index.hbs create mode 100644 src/utils/writeClientIndex.spec.ts create mode 100644 src/utils/writeClientIndex.ts diff --git a/bin/index.js b/bin/index.js index 7b83a8f4..0e150e9f 100755 --- a/bin/index.js +++ b/bin/index.js @@ -10,7 +10,7 @@ program .version(pkg.version) .option('--input [value]', 'Path to swagger specification', './spec.json') .option('--output [value]', 'Output directory', './generated') - .option('--http-client [value]', 'HTTP client to generate [fetch, xhr]', 'fetch') + .option('--client [value]', 'HTTP client to generate [fetch, xhr]', 'fetch') .parse(process.argv); const SwaggerCodegen = require(path.resolve(__dirname, '../dist/index.js')); @@ -19,6 +19,6 @@ if (SwaggerCodegen) { SwaggerCodegen.generate( program.input, program.output, - program.httpClient + program.client ); } diff --git a/package.json b/package.json index 672ac095..f486082c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "openapi-typescript-codegen", - "version": "0.1.7", + "version": "0.1.8", "description": "NodeJS library that generates Typescript or Javascript clients based on the OpenAPI specification.", "author": "Ferdi Koomen", "homepage": "https://github.com/ferdikoomen/openapi-typescript-codegen", diff --git a/src/index.ts b/src/index.ts index 91be41c6..297b69bf 100644 --- a/src/index.ts +++ b/src/index.ts @@ -18,7 +18,7 @@ export enum HttpClient { * service layer, etc. * @param input The relative location of the OpenAPI spec. * @param output The relative location of the output directory. - * @param httpClient: The selected httpClient (fetch or XHR). + * @param httpClient The selected httpClient (fetch or XHR). */ export function generate(input: string, output: string, httpClient: HttpClient = HttpClient.FETCH): void { const inputPath = path.resolve(process.cwd(), input); diff --git a/src/templates/core/Schema.ts b/src/templates/core/Schema.ts deleted file mode 100644 index 9662b142..00000000 --- a/src/templates/core/Schema.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export type FieldSchema = { - readonly type?: string; - readonly isReadOnly?: boolean; - readonly isRequired?: boolean; - readonly isNullable?: boolean; - readonly format?: string; - readonly maximum?: number; - readonly exclusiveMaximum?: boolean; - readonly minimum?: number; - readonly exclusiveMinimum?: boolean; - readonly multipleOf?: number; - readonly maxLength?: number; - readonly minLength?: number; - readonly pattern?: string; - readonly maxItems?: number; - readonly minItems?: number; - readonly uniqueItems?: boolean; - readonly maxProperties?: number; - readonly minProperties?: number; -} - -export type ObjectSchema = FieldSchema & { - properties?: { - readonly [K in keyof T]: Schema; - } -} - -export type Schema = - T extends string ? FieldSchema : - T extends number ? FieldSchema : - T extends boolean ? FieldSchema : - T extends File ? FieldSchema : - T extends Blob ? FieldSchema : - T extends Object ? ObjectSchema : - FieldSchema diff --git a/src/templates/core/getSchema.ts b/src/templates/core/getSchema.ts deleted file mode 100644 index eeac2c4e..00000000 --- a/src/templates/core/getSchema.ts +++ /dev/null @@ -1,17 +0,0 @@ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -import * as schemas from '../schemas'; - -/** - * Get a schema object for a given model name. - * @param model The model name to return the schema from. - */ -export function getSchema(model: K) { - if (schemas.hasOwnProperty(model)) { - return schemas[model]; - } - return null; -} diff --git a/src/templates/index.hbs b/src/templates/index.hbs new file mode 100644 index 00000000..a7b6032d --- /dev/null +++ b/src/templates/index.hbs @@ -0,0 +1,26 @@ +/* istanbul ignore file */ +/* tslint:disable */ +/* eslint-disable */ +/* prettier-ignore */ + +export { ApiError } from './core/ApiError'; +export { isSuccess } from './core/isSuccess'; +export { OpenAPI } from './core/OpenAPI'; +{{#if models}} + +{{#each models}} +export { {{{this}}} } from './models/{{{this}}}'; +{{/each}} +{{/if}} +{{#if models}} + +{{#each models}} +export { ${{{this}}} } from './schemas/${{{this}}}'; +{{/each}} +{{/if}} +{{#if services}} + +{{#each services}} +export { {{{this}}} } from './services/{{{this}}}'; +{{/each}} +{{/if}} diff --git a/src/templates/index.ts b/src/templates/index.ts deleted file mode 100644 index 14a6951b..00000000 --- a/src/templates/index.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export { ApiError } from './core/ApiError'; -export { getSchema } from './core/getSchema'; -export { isSuccess } from './core/isSuccess'; -export { OpenAPI } from './core/OpenAPI'; -export { FieldSchema, Schema, ObjectSchema } from './core/Schema'; -export * from './models/'; -export * from './services/'; diff --git a/src/templates/models/model.hbs b/src/templates/model.hbs similarity index 94% rename from src/templates/models/model.hbs rename to src/templates/model.hbs index 098ad7ff..860565cf 100644 --- a/src/templates/models/model.hbs +++ b/src/templates/model.hbs @@ -14,5 +14,5 @@ import { {{{this}}} } from './{{{this}}}'; {{else equals export 'enum'}} {{>exportEnum}} {{else}} -{{>exportGeneric}} +{{>exportType}} {{/equals}} diff --git a/src/templates/models/index.hbs b/src/templates/models/index.hbs deleted file mode 100644 index da6c7b7f..00000000 --- a/src/templates/models/index.hbs +++ /dev/null @@ -1,8 +0,0 @@ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -{{#each models}} -export { {{{this}}} } from './{{{this}}}'; -{{/each}} diff --git a/src/templates/partials/exportGeneric.hbs b/src/templates/partials/exportType.hbs similarity index 100% rename from src/templates/partials/exportGeneric.hbs rename to src/templates/partials/exportType.hbs diff --git a/src/templates/schemas/schema.hbs b/src/templates/schema.hbs similarity index 53% rename from src/templates/schemas/schema.hbs rename to src/templates/schema.hbs index 43571a9a..578a3b79 100644 --- a/src/templates/schemas/schema.hbs +++ b/src/templates/schema.hbs @@ -2,13 +2,11 @@ /* tslint:disable */ /* eslint-disable */ /* prettier-ignore */ - {{#if extends}} + {{#each extends}} import { ${{{this}}} } from './${{{this}}}'; {{/each}} {{/if}} -import { Schema as __Schema } from '../core/Schema'; -import { {{{name}}} } from '../models/{{{name}}}'; -export const ${{{name}}}: __Schema<{{{name}}}> = {{>schema}}; +export const ${{{name}}} = {{>schema}}; diff --git a/src/templates/schemas/$Dictionary.ts b/src/templates/schemas/$Dictionary.ts deleted file mode 100644 index e0c607bb..00000000 --- a/src/templates/schemas/$Dictionary.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export const $Dictionary = { - type: 'Dictionary' -}; diff --git a/src/templates/schemas/index.hbs b/src/templates/schemas/index.hbs deleted file mode 100644 index 74d9d18a..00000000 --- a/src/templates/schemas/index.hbs +++ /dev/null @@ -1,8 +0,0 @@ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -{{#each schemas}} -export { ${{{this}}} as {{{this}}} } from './${{{this}}}'; -{{/each}} diff --git a/src/templates/services/service.hbs b/src/templates/service.hbs similarity index 100% rename from src/templates/services/service.hbs rename to src/templates/service.hbs diff --git a/src/templates/services/index.hbs b/src/templates/services/index.hbs deleted file mode 100644 index 8c48a42e..00000000 --- a/src/templates/services/index.hbs +++ /dev/null @@ -1,8 +0,0 @@ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -{{#each services}} -export { {{{this}}} } from './{{{this}}}'; -{{/each}} diff --git a/src/utils/readHandlebarsTemplates.spec.ts b/src/utils/readHandlebarsTemplates.spec.ts index 0e60c9bf..531b1f72 100644 --- a/src/utils/readHandlebarsTemplates.spec.ts +++ b/src/utils/readHandlebarsTemplates.spec.ts @@ -1,6 +1,5 @@ import * as fs from 'fs'; import * as glob from 'glob'; -import { Language } from '../index'; import { readHandlebarsTemplates } from './readHandlebarsTemplates'; jest.mock('fs'); @@ -19,15 +18,13 @@ describe('readHandlebarsTemplates', () => { const template = readHandlebarsTemplates(); expect(template).toBeDefined(); + expect(template.index).toBeDefined(); expect(template.model).toBeDefined(); - expect(template.models).toBeDefined(); expect(template.service).toBeDefined(); - expect(template.services).toBeDefined(); expect(template.settings).toBeDefined(); + expect(template.index({ message: 'Hello World!' })).toEqual('Hello World!'); expect(template.model({ message: 'Hello World!' })).toEqual('Hello World!'); - expect(template.models({ message: 'Hello World!' })).toEqual('Hello World!'); expect(template.service({ message: 'Hello World!' })).toEqual('Hello World!'); - expect(template.services({ message: 'Hello World!' })).toEqual('Hello World!'); expect(template.settings({ message: 'Hello World!' })).toEqual('Hello World!'); }); }); diff --git a/src/utils/readHandlebarsTemplates.ts b/src/utils/readHandlebarsTemplates.ts index cd06667c..c7792374 100644 --- a/src/utils/readHandlebarsTemplates.ts +++ b/src/utils/readHandlebarsTemplates.ts @@ -5,11 +5,9 @@ import { readHandlebarsTemplate } from './readHandlebarsTemplate'; import { registerHandlebarHelpers } from './registerHandlebarHelpers'; export interface Templates { - models: Handlebars.TemplateDelegate; + index: Handlebars.TemplateDelegate; model: Handlebars.TemplateDelegate; - schemas: Handlebars.TemplateDelegate; schema: Handlebars.TemplateDelegate; - services: Handlebars.TemplateDelegate; service: Handlebars.TemplateDelegate; settings: Handlebars.TemplateDelegate; } @@ -23,12 +21,10 @@ export function readHandlebarsTemplates(): Templates { registerHandlebarHelpers(); const templates: Templates = { - models: readHandlebarsTemplate(path.resolve(__dirname, `../../src/templates/models/index.hbs`)), - model: readHandlebarsTemplate(path.resolve(__dirname, `../../src/templates/models/model.hbs`)), - schemas: readHandlebarsTemplate(path.resolve(__dirname, `../../src/templates/schemas/index.hbs`)), - schema: readHandlebarsTemplate(path.resolve(__dirname, `../../src/templates/schemas/schema.hbs`)), - services: readHandlebarsTemplate(path.resolve(__dirname, `../../src/templates/services/index.hbs`)), - service: readHandlebarsTemplate(path.resolve(__dirname, `../../src/templates/services/service.hbs`)), + index: readHandlebarsTemplate(path.resolve(__dirname, `../../src/templates/index.hbs`)), + model: readHandlebarsTemplate(path.resolve(__dirname, `../../src/templates/model.hbs`)), + schema: readHandlebarsTemplate(path.resolve(__dirname, `../../src/templates/schema.hbs`)), + service: readHandlebarsTemplate(path.resolve(__dirname, `../../src/templates/service.hbs`)), settings: readHandlebarsTemplate(path.resolve(__dirname, `../../src/templates/core/OpenAPI.hbs`)), }; diff --git a/src/utils/writeClient.spec.ts b/src/utils/writeClient.spec.ts index 8b2c98a3..95d7bc28 100644 --- a/src/utils/writeClient.spec.ts +++ b/src/utils/writeClient.spec.ts @@ -27,12 +27,10 @@ describe('writeClient', () => { }; const templates: Templates = { + index: () => 'dummy', model: () => 'dummy', - models: () => 'dummy', schema: () => 'dummy', - schemas: () => 'dummy', service: () => 'dummy', - services: () => 'dummy', settings: () => 'dummy', }; diff --git a/src/utils/writeClient.ts b/src/utils/writeClient.ts index a8bc1b9c..1d742401 100644 --- a/src/utils/writeClient.ts +++ b/src/utils/writeClient.ts @@ -6,6 +6,7 @@ import * as rimraf from 'rimraf'; import { Client } from '../client/interfaces/Client'; import { HttpClient } from '../index'; import { Templates } from './readHandlebarsTemplates'; +import { writeClientIndex } from './writeClientIndex'; import { writeClientModels } from './writeClientModels'; import { writeClientSchemas } from './writeClientSchemas'; import { writeClientServices } from './writeClientServices'; @@ -53,8 +54,9 @@ export function writeClient(client: Client, httpClient: HttpClient, templates: T }); // Write the client files - writeClientSettings(client, httpClient, templates, outputPathCore); writeClientModels(client.models, templates, outputPathModels); writeClientSchemas(client.models, templates, outputPathSchemas); writeClientServices(client.services, templates, outputPathServices); + writeClientSettings(client, httpClient, templates, outputPathCore); + writeClientIndex(client, templates, outputPath); } diff --git a/src/utils/writeClientIndex.spec.ts b/src/utils/writeClientIndex.spec.ts new file mode 100644 index 00000000..db19737b --- /dev/null +++ b/src/utils/writeClientIndex.spec.ts @@ -0,0 +1,36 @@ +import * as fs from 'fs'; +import * as glob from 'glob'; +import { Client } from '../client/interfaces/Client'; +import { Templates } from './readHandlebarsTemplates'; +import { writeClientIndex } from './writeClientIndex'; + +jest.mock('fs'); +jest.mock('glob'); + +const fsWriteFileSync = fs.writeFileSync as jest.MockedFunction; +const globSync = glob.sync as jest.MockedFunction; + +describe('writeClientIndex', () => { + it('should write to filesystem', () => { + const client: Client = { + server: 'http://localhost:8080', + version: '1.0', + models: [], + services: [], + }; + + const templates: Templates = { + index: () => 'dummy', + model: () => 'dummy', + schema: () => 'dummy', + service: () => 'dummy', + settings: () => 'dummy', + }; + + globSync.mockReturnValue([]); + + writeClientIndex(client, templates, '/'); + + expect(fsWriteFileSync).toBeCalledWith('/index.ts', 'dummy'); + }); +}); diff --git a/src/utils/writeClientIndex.ts b/src/utils/writeClientIndex.ts new file mode 100644 index 00000000..7c47042a --- /dev/null +++ b/src/utils/writeClientIndex.ts @@ -0,0 +1,30 @@ +import * as fs from 'fs'; +import * as path from 'path'; +import { Client } from '../client/interfaces/Client'; +import { Templates } from './readHandlebarsTemplates'; +import { getModelNames } from './getModelNames'; +import { getServiceNames } from './getServiceNames'; + +/** + * Generate the OpenAPI client index file using the Handlebar template and write it to disk. + * The index file just contains all the exports you need to use the client as a standalone + * library. But yuo can also import individual models and services directly. + * @param client Client object, containing, models, schemas and services. + * @param templates The loaded handlebar templates. + * @param outputPath + */ +export function writeClientIndex(client: Client, templates: Templates, outputPath: string): void { + try { + fs.writeFileSync( + path.resolve(outputPath, 'index.ts'), + templates.index({ + server: client.server, + version: client.version, + models: getModelNames(client.models), + services: getServiceNames(client.services), + }) + ); + } catch (e) { + throw new Error(`Could not write index`); + } +} diff --git a/src/utils/writeClientModels.spec.ts b/src/utils/writeClientModels.spec.ts index b3882420..cedacb51 100644 --- a/src/utils/writeClientModels.spec.ts +++ b/src/utils/writeClientModels.spec.ts @@ -30,12 +30,10 @@ describe('writeClientModels', () => { }); const templates: Templates = { + index: () => 'dummy', model: () => 'dummy', - models: () => 'dummy', schema: () => 'dummy', - schemas: () => 'dummy', service: () => 'dummy', - services: () => 'dummy', settings: () => 'dummy', }; diff --git a/src/utils/writeClientModels.ts b/src/utils/writeClientModels.ts index 1cca133c..a0820bf4 100644 --- a/src/utils/writeClientModels.ts +++ b/src/utils/writeClientModels.ts @@ -4,7 +4,6 @@ import { Model } from '../client/interfaces/Model'; import { Templates } from './readHandlebarsTemplates'; import { exportModel } from './exportModel'; import { format } from './format'; -import { getModelNames } from './getModelNames'; /** * Generate Models using the Handlebar template and write to disk. @@ -19,10 +18,4 @@ export function writeClientModels(models: Model[], templates: Templates, outputP const templateResult = templates.model(templateData); fs.writeFileSync(file, format(templateResult)); }); - - const file = path.resolve(outputPath, 'index.ts'); - const templateResult = templates.models({ - models: getModelNames(models), - }); - fs.writeFileSync(file, format(templateResult)); } diff --git a/src/utils/writeClientSchemas.spec.ts b/src/utils/writeClientSchemas.spec.ts index b3882420..cedacb51 100644 --- a/src/utils/writeClientSchemas.spec.ts +++ b/src/utils/writeClientSchemas.spec.ts @@ -30,12 +30,10 @@ describe('writeClientModels', () => { }); const templates: Templates = { + index: () => 'dummy', model: () => 'dummy', - models: () => 'dummy', schema: () => 'dummy', - schemas: () => 'dummy', service: () => 'dummy', - services: () => 'dummy', settings: () => 'dummy', }; diff --git a/src/utils/writeClientSchemas.ts b/src/utils/writeClientSchemas.ts index 0e3751c6..2132f39a 100644 --- a/src/utils/writeClientSchemas.ts +++ b/src/utils/writeClientSchemas.ts @@ -4,7 +4,6 @@ import { Model } from '../client/interfaces/Model'; import { Templates } from './readHandlebarsTemplates'; import { exportModel } from './exportModel'; import { format } from './format'; -import { getModelNames } from './getModelNames'; /** * Generate Schemas using the Handlebar template and write to disk. @@ -19,10 +18,4 @@ export function writeClientSchemas(models: Model[], templates: Templates, output const templateResult = templates.schema(templateData); fs.writeFileSync(file, format(templateResult)); }); - - const file = path.resolve(outputPath, 'index.ts'); - const templateResult = templates.schemas({ - schemas: getModelNames(models), - }); - fs.writeFileSync(file, format(templateResult)); } diff --git a/src/utils/writeClientServices.spec.ts b/src/utils/writeClientServices.spec.ts index 763a8e59..e7e5e2db 100644 --- a/src/utils/writeClientServices.spec.ts +++ b/src/utils/writeClientServices.spec.ts @@ -1,5 +1,4 @@ import * as fs from 'fs'; -import { Language } from '../index'; import { Service } from '../client/interfaces/Service'; import { Templates } from './readHandlebarsTemplates'; import { writeClientServices } from './writeClientServices'; @@ -18,12 +17,10 @@ describe('writeClientServices', () => { }); const templates: Templates = { + index: () => 'dummy', model: () => 'dummy', - models: () => 'dummy', schema: () => 'dummy', - schemas: () => 'dummy', service: () => 'dummy', - services: () => 'dummy', settings: () => 'dummy', }; diff --git a/src/utils/writeClientServices.ts b/src/utils/writeClientServices.ts index 5c54179d..1189ee05 100644 --- a/src/utils/writeClientServices.ts +++ b/src/utils/writeClientServices.ts @@ -4,7 +4,6 @@ import { Service } from '../client/interfaces/Service'; import { Templates } from './readHandlebarsTemplates'; import { exportService } from './exportService'; import { format } from './format'; -import { getServiceNames } from './getServiceNames'; /** * Generate Services using the Handlebar template and write to disk. @@ -19,10 +18,4 @@ export function writeClientServices(services: Service[], templates: Templates, o const templateResult = templates.service(templateData); fs.writeFileSync(file, format(templateResult)); }); - - const file = path.resolve(outputPath, 'index.ts'); - const templateResult = templates.services({ - services: getServiceNames(services), - }); - fs.writeFileSync(file, format(templateResult)); } diff --git a/test/__snapshots__/index.spec.js.snap b/test/__snapshots__/index.spec.js.snap index c34f0e2d..be484add 100644 --- a/test/__snapshots__/index.spec.js.snap +++ b/test/__snapshots__/index.spec.js.snap @@ -109,50 +109,6 @@ export interface Result { " `; -exports[`generation v2 file(./test/result/v2/core/Schema.ts): ./test/result/v2/core/Schema.ts 1`] = ` -"/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export type FieldSchema = { - readonly type?: string; - readonly isReadOnly?: boolean; - readonly isRequired?: boolean; - readonly isNullable?: boolean; - readonly format?: string; - readonly maximum?: number; - readonly exclusiveMaximum?: boolean; - readonly minimum?: number; - readonly exclusiveMinimum?: boolean; - readonly multipleOf?: number; - readonly maxLength?: number; - readonly minLength?: number; - readonly pattern?: string; - readonly maxItems?: number; - readonly minItems?: number; - readonly uniqueItems?: boolean; - readonly maxProperties?: number; - readonly minProperties?: number; -} - -export type ObjectSchema = FieldSchema & { - properties?: { - readonly [K in keyof T]: Schema; - } -} - -export type Schema = - T extends string ? FieldSchema : - T extends number ? FieldSchema : - T extends boolean ? FieldSchema : - T extends File ? FieldSchema : - T extends Blob ? FieldSchema : - T extends Object ? ObjectSchema : - FieldSchema -" -`; - exports[`generation v2 file(./test/result/v2/core/getFormData.ts): ./test/result/v2/core/getFormData.ts 1`] = ` "/* istanbul ignore file */ /* tslint:disable */ @@ -214,27 +170,6 @@ export function getQueryString(params: { [key: string]: any }): string { " `; -exports[`generation v2 file(./test/result/v2/core/getSchema.ts): ./test/result/v2/core/getSchema.ts 1`] = ` -"/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -import * as schemas from '../schemas'; - -/** - * Get a schema object for a given model name. - * @param model The model name to return the schema from. - */ -export function getSchema(model: K) { - if (schemas.hasOwnProperty(model)) { - return schemas[model]; - } - return null; -} -" -`; - exports[`generation v2 file(./test/result/v2/core/isSuccess.ts): ./test/result/v2/core/isSuccess.ts 1`] = ` "/* istanbul ignore file */ /* tslint:disable */ @@ -473,12 +408,91 @@ exports[`generation v2 file(./test/result/v2/index.ts): ./test/result/v2/index.t /* prettier-ignore */ export { ApiError } from './core/ApiError'; -export { getSchema } from './core/getSchema'; export { isSuccess } from './core/isSuccess'; export { OpenAPI } from './core/OpenAPI'; -export { FieldSchema, Schema, ObjectSchema } from './core/Schema'; -export * from './models/'; -export * from './services/'; + +export { ArrayWithArray } from './models/ArrayWithArray'; +export { ArrayWithBooleans } from './models/ArrayWithBooleans'; +export { ArrayWithNumbers } from './models/ArrayWithNumbers'; +export { ArrayWithProperties } from './models/ArrayWithProperties'; +export { ArrayWithReferences } from './models/ArrayWithReferences'; +export { ArrayWithStrings } from './models/ArrayWithStrings'; +export { DictionaryWithArray } from './models/DictionaryWithArray'; +export { DictionaryWithDictionary } from './models/DictionaryWithDictionary'; +export { DictionaryWithProperties } from './models/DictionaryWithProperties'; +export { DictionaryWithReference } from './models/DictionaryWithReference'; +export { DictionaryWithString } from './models/DictionaryWithString'; +export { EnumFromDescription } from './models/EnumFromDescription'; +export { EnumWithNumbers } from './models/EnumWithNumbers'; +export { EnumWithStrings } from './models/EnumWithStrings'; +export { ModelLink } from './models/ModelLink'; +export { ModelThatExtends } from './models/ModelThatExtends'; +export { ModelThatExtendsExtends } from './models/ModelThatExtendsExtends'; +export { ModelWithArray } from './models/ModelWithArray'; +export { ModelWithBoolean } from './models/ModelWithBoolean'; +export { ModelWithCircularReference } from './models/ModelWithCircularReference'; +export { ModelWithDictionary } from './models/ModelWithDictionary'; +export { ModelWithDuplicateImports } from './models/ModelWithDuplicateImports'; +export { ModelWithDuplicateProperties } from './models/ModelWithDuplicateProperties'; +export { ModelWithEnum } from './models/ModelWithEnum'; +export { ModelWithEnumFromDescription } from './models/ModelWithEnumFromDescription'; +export { ModelWithInteger } from './models/ModelWithInteger'; +export { ModelWithLink } from './models/ModelWithLink'; +export { ModelWithNestedEnums } from './models/ModelWithNestedEnums'; +export { ModelWithNestedProperties } from './models/ModelWithNestedProperties'; +export { ModelWithProperties } from './models/ModelWithProperties'; +export { ModelWithReference } from './models/ModelWithReference'; +export { ModelWithString } from './models/ModelWithString'; +export { SimpleBoolean } from './models/SimpleBoolean'; +export { SimpleFile } from './models/SimpleFile'; +export { SimpleInteger } from './models/SimpleInteger'; +export { SimpleReference } from './models/SimpleReference'; +export { SimpleString } from './models/SimpleString'; + +export { $ArrayWithArray } from './schemas/$ArrayWithArray'; +export { $ArrayWithBooleans } from './schemas/$ArrayWithBooleans'; +export { $ArrayWithNumbers } from './schemas/$ArrayWithNumbers'; +export { $ArrayWithProperties } from './schemas/$ArrayWithProperties'; +export { $ArrayWithReferences } from './schemas/$ArrayWithReferences'; +export { $ArrayWithStrings } from './schemas/$ArrayWithStrings'; +export { $DictionaryWithArray } from './schemas/$DictionaryWithArray'; +export { $DictionaryWithDictionary } from './schemas/$DictionaryWithDictionary'; +export { $DictionaryWithProperties } from './schemas/$DictionaryWithProperties'; +export { $DictionaryWithReference } from './schemas/$DictionaryWithReference'; +export { $DictionaryWithString } from './schemas/$DictionaryWithString'; +export { $EnumFromDescription } from './schemas/$EnumFromDescription'; +export { $EnumWithNumbers } from './schemas/$EnumWithNumbers'; +export { $EnumWithStrings } from './schemas/$EnumWithStrings'; +export { $ModelLink } from './schemas/$ModelLink'; +export { $ModelThatExtends } from './schemas/$ModelThatExtends'; +export { $ModelThatExtendsExtends } from './schemas/$ModelThatExtendsExtends'; +export { $ModelWithArray } from './schemas/$ModelWithArray'; +export { $ModelWithBoolean } from './schemas/$ModelWithBoolean'; +export { $ModelWithCircularReference } from './schemas/$ModelWithCircularReference'; +export { $ModelWithDictionary } from './schemas/$ModelWithDictionary'; +export { $ModelWithDuplicateImports } from './schemas/$ModelWithDuplicateImports'; +export { $ModelWithDuplicateProperties } from './schemas/$ModelWithDuplicateProperties'; +export { $ModelWithEnum } from './schemas/$ModelWithEnum'; +export { $ModelWithEnumFromDescription } from './schemas/$ModelWithEnumFromDescription'; +export { $ModelWithInteger } from './schemas/$ModelWithInteger'; +export { $ModelWithLink } from './schemas/$ModelWithLink'; +export { $ModelWithNestedEnums } from './schemas/$ModelWithNestedEnums'; +export { $ModelWithNestedProperties } from './schemas/$ModelWithNestedProperties'; +export { $ModelWithProperties } from './schemas/$ModelWithProperties'; +export { $ModelWithReference } from './schemas/$ModelWithReference'; +export { $ModelWithString } from './schemas/$ModelWithString'; +export { $SimpleBoolean } from './schemas/$SimpleBoolean'; +export { $SimpleFile } from './schemas/$SimpleFile'; +export { $SimpleInteger } from './schemas/$SimpleInteger'; +export { $SimpleReference } from './schemas/$SimpleReference'; +export { $SimpleString } from './schemas/$SimpleString'; + +export { ComplexService } from './services/ComplexService'; +export { DefaultsService } from './services/DefaultsService'; +export { ParametersService } from './services/ParametersService'; +export { ResponseService } from './services/ResponseService'; +export { SimpleService } from './services/SimpleService'; +export { TypesService } from './services/TypesService'; " `; @@ -1130,62 +1144,13 @@ exports[`generation v2 file(./test/result/v2/models/SimpleString.ts): ./test/res export type SimpleString = string;" `; -exports[`generation v2 file(./test/result/v2/models/index.ts): ./test/result/v2/models/index.ts 1`] = ` -"/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export { ArrayWithArray } from './ArrayWithArray'; -export { ArrayWithBooleans } from './ArrayWithBooleans'; -export { ArrayWithNumbers } from './ArrayWithNumbers'; -export { ArrayWithProperties } from './ArrayWithProperties'; -export { ArrayWithReferences } from './ArrayWithReferences'; -export { ArrayWithStrings } from './ArrayWithStrings'; -export { DictionaryWithArray } from './DictionaryWithArray'; -export { DictionaryWithDictionary } from './DictionaryWithDictionary'; -export { DictionaryWithProperties } from './DictionaryWithProperties'; -export { DictionaryWithReference } from './DictionaryWithReference'; -export { DictionaryWithString } from './DictionaryWithString'; -export { EnumFromDescription } from './EnumFromDescription'; -export { EnumWithNumbers } from './EnumWithNumbers'; -export { EnumWithStrings } from './EnumWithStrings'; -export { ModelLink } from './ModelLink'; -export { ModelThatExtends } from './ModelThatExtends'; -export { ModelThatExtendsExtends } from './ModelThatExtendsExtends'; -export { ModelWithArray } from './ModelWithArray'; -export { ModelWithBoolean } from './ModelWithBoolean'; -export { ModelWithCircularReference } from './ModelWithCircularReference'; -export { ModelWithDictionary } from './ModelWithDictionary'; -export { ModelWithDuplicateImports } from './ModelWithDuplicateImports'; -export { ModelWithDuplicateProperties } from './ModelWithDuplicateProperties'; -export { ModelWithEnum } from './ModelWithEnum'; -export { ModelWithEnumFromDescription } from './ModelWithEnumFromDescription'; -export { ModelWithInteger } from './ModelWithInteger'; -export { ModelWithLink } from './ModelWithLink'; -export { ModelWithNestedEnums } from './ModelWithNestedEnums'; -export { ModelWithNestedProperties } from './ModelWithNestedProperties'; -export { ModelWithProperties } from './ModelWithProperties'; -export { ModelWithReference } from './ModelWithReference'; -export { ModelWithString } from './ModelWithString'; -export { SimpleBoolean } from './SimpleBoolean'; -export { SimpleFile } from './SimpleFile'; -export { SimpleInteger } from './SimpleInteger'; -export { SimpleReference } from './SimpleReference'; -export { SimpleString } from './SimpleString'; -" -`; - exports[`generation v2 file(./test/result/v2/schemas/$ArrayWithArray.ts): ./test/result/v2/schemas/$ArrayWithArray.ts 1`] = ` "/* istanbul ignore file */ /* tslint:disable */ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ArrayWithArray } from '../models/ArrayWithArray'; - -export const $ArrayWithArray: __Schema = { +export const $ArrayWithArray = { type: 'Array', };" `; @@ -1196,10 +1161,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ArrayWithBooleans.ts): ./t /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ArrayWithBooleans } from '../models/ArrayWithBooleans'; - -export const $ArrayWithBooleans: __Schema = { +export const $ArrayWithBooleans = { type: 'Array', };" `; @@ -1210,10 +1172,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ArrayWithNumbers.ts): ./te /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ArrayWithNumbers } from '../models/ArrayWithNumbers'; - -export const $ArrayWithNumbers: __Schema = { +export const $ArrayWithNumbers = { type: 'Array', };" `; @@ -1224,10 +1183,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ArrayWithProperties.ts): . /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ArrayWithProperties } from '../models/ArrayWithProperties'; - -export const $ArrayWithProperties: __Schema = { +export const $ArrayWithProperties = { type: 'Array', };" `; @@ -1238,10 +1194,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ArrayWithReferences.ts): . /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ArrayWithReferences } from '../models/ArrayWithReferences'; - -export const $ArrayWithReferences: __Schema = { +export const $ArrayWithReferences = { type: 'Array', };" `; @@ -1252,36 +1205,18 @@ exports[`generation v2 file(./test/result/v2/schemas/$ArrayWithStrings.ts): ./te /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ArrayWithStrings } from '../models/ArrayWithStrings'; - -export const $ArrayWithStrings: __Schema = { +export const $ArrayWithStrings = { type: 'Array', };" `; -exports[`generation v2 file(./test/result/v2/schemas/$Dictionary.ts): ./test/result/v2/schemas/$Dictionary.ts 1`] = ` -"/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export const $Dictionary = { - type: 'Dictionary' -}; -" -`; - exports[`generation v2 file(./test/result/v2/schemas/$DictionaryWithArray.ts): ./test/result/v2/schemas/$DictionaryWithArray.ts 1`] = ` "/* istanbul ignore file */ /* tslint:disable */ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { DictionaryWithArray } from '../models/DictionaryWithArray'; - -export const $DictionaryWithArray: __Schema = { +export const $DictionaryWithArray = { type: 'Dictionary', };" `; @@ -1292,10 +1227,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$DictionaryWithDictionary.t /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { DictionaryWithDictionary } from '../models/DictionaryWithDictionary'; - -export const $DictionaryWithDictionary: __Schema = { +export const $DictionaryWithDictionary = { type: 'Dictionary', };" `; @@ -1306,10 +1238,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$DictionaryWithProperties.t /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { DictionaryWithProperties } from '../models/DictionaryWithProperties'; - -export const $DictionaryWithProperties: __Schema = { +export const $DictionaryWithProperties = { type: 'Dictionary', };" `; @@ -1320,10 +1249,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$DictionaryWithReference.ts /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { DictionaryWithReference } from '../models/DictionaryWithReference'; - -export const $DictionaryWithReference: __Schema = { +export const $DictionaryWithReference = { type: 'Dictionary', };" `; @@ -1334,10 +1260,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$DictionaryWithString.ts): /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { DictionaryWithString } from '../models/DictionaryWithString'; - -export const $DictionaryWithString: __Schema = { +export const $DictionaryWithString = { type: 'Dictionary', };" `; @@ -1348,10 +1271,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$EnumFromDescription.ts): . /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { EnumFromDescription } from '../models/EnumFromDescription'; - -export const $EnumFromDescription: __Schema = { +export const $EnumFromDescription = { type: 'Enum', };" `; @@ -1362,10 +1282,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$EnumWithNumbers.ts): ./tes /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { EnumWithNumbers } from '../models/EnumWithNumbers'; - -export const $EnumWithNumbers: __Schema = { +export const $EnumWithNumbers = { type: 'Enum', };" `; @@ -1376,10 +1293,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$EnumWithStrings.ts): ./tes /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { EnumWithStrings } from '../models/EnumWithStrings'; - -export const $EnumWithStrings: __Schema = { +export const $EnumWithStrings = { type: 'Enum', };" `; @@ -1390,10 +1304,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelLink.ts): ./test/resu /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelLink } from '../models/ModelLink'; - -export const $ModelLink: __Schema = { +export const $ModelLink = { properties: { id: { type: 'string', @@ -1409,10 +1320,8 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelThatExtends.ts): ./te /* prettier-ignore */ import { $ModelWithString } from './$ModelWithString'; -import { Schema as __Schema } from '../core/Schema'; -import { ModelThatExtends } from '../models/ModelThatExtends'; -export const $ModelThatExtends: __Schema = { +export const $ModelThatExtends = { properties: { ...$ModelWithString.properties, propExtendsA: { @@ -1433,10 +1342,8 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelThatExtendsExtends.ts import { $ModelWithString } from './$ModelWithString'; import { $ModelThatExtends } from './$ModelThatExtends'; -import { Schema as __Schema } from '../core/Schema'; -import { ModelThatExtendsExtends } from '../models/ModelThatExtendsExtends'; -export const $ModelThatExtendsExtends: __Schema = { +export const $ModelThatExtendsExtends = { properties: { ...$ModelWithString.properties, ...$ModelThatExtends.properties, @@ -1456,10 +1363,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithArray.ts): ./test /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithArray } from '../models/ModelWithArray'; - -export const $ModelWithArray: __Schema = { +export const $ModelWithArray = { properties: { prop: { type: 'Array', @@ -1480,10 +1384,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithBoolean.ts): ./te /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithBoolean } from '../models/ModelWithBoolean'; - -export const $ModelWithBoolean: __Schema = { +export const $ModelWithBoolean = { properties: { prop: { type: 'boolean', @@ -1498,10 +1399,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithCircularReference /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithCircularReference } from '../models/ModelWithCircularReference'; - -export const $ModelWithCircularReference: __Schema = { +export const $ModelWithCircularReference = { properties: { prop: { type: 'ModelWithCircularReference', @@ -1516,10 +1414,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithDictionary.ts): . /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithDictionary } from '../models/ModelWithDictionary'; - -export const $ModelWithDictionary: __Schema = { +export const $ModelWithDictionary = { properties: { prop: { type: 'Dictionary', @@ -1534,10 +1429,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithDuplicateImports. /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithDuplicateImports } from '../models/ModelWithDuplicateImports'; - -export const $ModelWithDuplicateImports: __Schema = { +export const $ModelWithDuplicateImports = { properties: { propA: { type: 'ModelWithString', @@ -1558,10 +1450,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithDuplicateProperti /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithDuplicateProperties } from '../models/ModelWithDuplicateProperties'; - -export const $ModelWithDuplicateProperties: __Schema = { +export const $ModelWithDuplicateProperties = { properties: { prop: { type: 'ModelWithString', @@ -1576,10 +1465,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithEnum.ts): ./test/ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithEnum } from '../models/ModelWithEnum'; - -export const $ModelWithEnum: __Schema = { +export const $ModelWithEnum = { properties: { test: { type: 'Enum', @@ -1594,10 +1480,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithEnumFromDescripti /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithEnumFromDescription } from '../models/ModelWithEnumFromDescription'; - -export const $ModelWithEnumFromDescription: __Schema = { +export const $ModelWithEnumFromDescription = { properties: { test: { type: 'Enum', @@ -1612,10 +1495,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithInteger.ts): ./te /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithInteger } from '../models/ModelWithInteger'; - -export const $ModelWithInteger: __Schema = { +export const $ModelWithInteger = { properties: { prop: { type: 'number', @@ -1630,10 +1510,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithLink.ts): ./test/ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithLink } from '../models/ModelWithLink'; - -export const $ModelWithLink: __Schema = { +export const $ModelWithLink = { properties: { prop: { type: 'ModelLink', @@ -1648,10 +1525,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithNestedEnums.ts): /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithNestedEnums } from '../models/ModelWithNestedEnums'; - -export const $ModelWithNestedEnums: __Schema = { +export const $ModelWithNestedEnums = { properties: { arrayWithDescription: { type: 'Array', @@ -1675,10 +1549,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithNestedProperties. /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithNestedProperties } from '../models/ModelWithNestedProperties'; - -export const $ModelWithNestedProperties: __Schema = { +export const $ModelWithNestedProperties = { properties: { first: { properties: { @@ -1707,10 +1578,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithProperties.ts): . /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithProperties } from '../models/ModelWithProperties'; - -export const $ModelWithProperties: __Schema = { +export const $ModelWithProperties = { properties: { boolean: { type: 'boolean', @@ -1743,10 +1611,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithReference.ts): ./ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithReference } from '../models/ModelWithReference'; - -export const $ModelWithReference: __Schema = { +export const $ModelWithReference = { properties: { prop: { type: 'ModelWithProperties', @@ -1761,10 +1626,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$ModelWithString.ts): ./tes /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithString } from '../models/ModelWithString'; - -export const $ModelWithString: __Schema = { +export const $ModelWithString = { properties: { prop: { type: 'string', @@ -1779,10 +1641,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$SimpleBoolean.ts): ./test/ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { SimpleBoolean } from '../models/SimpleBoolean'; - -export const $SimpleBoolean: __Schema = { +export const $SimpleBoolean = { type: 'boolean', };" `; @@ -1793,10 +1652,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$SimpleFile.ts): ./test/res /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { SimpleFile } from '../models/SimpleFile'; - -export const $SimpleFile: __Schema = { +export const $SimpleFile = { type: 'File', };" `; @@ -1807,10 +1663,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$SimpleInteger.ts): ./test/ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { SimpleInteger } from '../models/SimpleInteger'; - -export const $SimpleInteger: __Schema = { +export const $SimpleInteger = { type: 'number', };" `; @@ -1821,10 +1674,7 @@ exports[`generation v2 file(./test/result/v2/schemas/$SimpleReference.ts): ./tes /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { SimpleReference } from '../models/SimpleReference'; - -export const $SimpleReference: __Schema = { +export const $SimpleReference = { type: 'ModelWithString', };" `; @@ -1835,60 +1685,11 @@ exports[`generation v2 file(./test/result/v2/schemas/$SimpleString.ts): ./test/r /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { SimpleString } from '../models/SimpleString'; - -export const $SimpleString: __Schema = { +export const $SimpleString = { type: 'string', };" `; -exports[`generation v2 file(./test/result/v2/schemas/index.ts): ./test/result/v2/schemas/index.ts 1`] = ` -"/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export { $ArrayWithArray as ArrayWithArray } from './$ArrayWithArray'; -export { $ArrayWithBooleans as ArrayWithBooleans } from './$ArrayWithBooleans'; -export { $ArrayWithNumbers as ArrayWithNumbers } from './$ArrayWithNumbers'; -export { $ArrayWithProperties as ArrayWithProperties } from './$ArrayWithProperties'; -export { $ArrayWithReferences as ArrayWithReferences } from './$ArrayWithReferences'; -export { $ArrayWithStrings as ArrayWithStrings } from './$ArrayWithStrings'; -export { $DictionaryWithArray as DictionaryWithArray } from './$DictionaryWithArray'; -export { $DictionaryWithDictionary as DictionaryWithDictionary } from './$DictionaryWithDictionary'; -export { $DictionaryWithProperties as DictionaryWithProperties } from './$DictionaryWithProperties'; -export { $DictionaryWithReference as DictionaryWithReference } from './$DictionaryWithReference'; -export { $DictionaryWithString as DictionaryWithString } from './$DictionaryWithString'; -export { $EnumFromDescription as EnumFromDescription } from './$EnumFromDescription'; -export { $EnumWithNumbers as EnumWithNumbers } from './$EnumWithNumbers'; -export { $EnumWithStrings as EnumWithStrings } from './$EnumWithStrings'; -export { $ModelLink as ModelLink } from './$ModelLink'; -export { $ModelThatExtends as ModelThatExtends } from './$ModelThatExtends'; -export { $ModelThatExtendsExtends as ModelThatExtendsExtends } from './$ModelThatExtendsExtends'; -export { $ModelWithArray as ModelWithArray } from './$ModelWithArray'; -export { $ModelWithBoolean as ModelWithBoolean } from './$ModelWithBoolean'; -export { $ModelWithCircularReference as ModelWithCircularReference } from './$ModelWithCircularReference'; -export { $ModelWithDictionary as ModelWithDictionary } from './$ModelWithDictionary'; -export { $ModelWithDuplicateImports as ModelWithDuplicateImports } from './$ModelWithDuplicateImports'; -export { $ModelWithDuplicateProperties as ModelWithDuplicateProperties } from './$ModelWithDuplicateProperties'; -export { $ModelWithEnum as ModelWithEnum } from './$ModelWithEnum'; -export { $ModelWithEnumFromDescription as ModelWithEnumFromDescription } from './$ModelWithEnumFromDescription'; -export { $ModelWithInteger as ModelWithInteger } from './$ModelWithInteger'; -export { $ModelWithLink as ModelWithLink } from './$ModelWithLink'; -export { $ModelWithNestedEnums as ModelWithNestedEnums } from './$ModelWithNestedEnums'; -export { $ModelWithNestedProperties as ModelWithNestedProperties } from './$ModelWithNestedProperties'; -export { $ModelWithProperties as ModelWithProperties } from './$ModelWithProperties'; -export { $ModelWithReference as ModelWithReference } from './$ModelWithReference'; -export { $ModelWithString as ModelWithString } from './$ModelWithString'; -export { $SimpleBoolean as SimpleBoolean } from './$SimpleBoolean'; -export { $SimpleFile as SimpleFile } from './$SimpleFile'; -export { $SimpleInteger as SimpleInteger } from './$SimpleInteger'; -export { $SimpleReference as SimpleReference } from './$SimpleReference'; -export { $SimpleString as SimpleString } from './$SimpleString'; -" -`; - exports[`generation v2 file(./test/result/v2/services/ComplexService.ts): ./test/result/v2/services/ComplexService.ts 1`] = ` "/* istanbul ignore file */ /* tslint:disable */ @@ -2308,21 +2109,6 @@ export class TypesService { }" `; -exports[`generation v2 file(./test/result/v2/services/index.ts): ./test/result/v2/services/index.ts 1`] = ` -"/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export { ComplexService } from './ComplexService'; -export { DefaultsService } from './DefaultsService'; -export { ParametersService } from './ParametersService'; -export { ResponseService } from './ResponseService'; -export { SimpleService } from './SimpleService'; -export { TypesService } from './TypesService'; -" -`; - exports[`generation v3 file(./test/result/v3/core/ApiError.ts): ./test/result/v3/core/ApiError.ts 1`] = ` "/* istanbul ignore file */ /* tslint:disable */ @@ -2432,50 +2218,6 @@ export interface Result { " `; -exports[`generation v3 file(./test/result/v3/core/Schema.ts): ./test/result/v3/core/Schema.ts 1`] = ` -"/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export type FieldSchema = { - readonly type?: string; - readonly isReadOnly?: boolean; - readonly isRequired?: boolean; - readonly isNullable?: boolean; - readonly format?: string; - readonly maximum?: number; - readonly exclusiveMaximum?: boolean; - readonly minimum?: number; - readonly exclusiveMinimum?: boolean; - readonly multipleOf?: number; - readonly maxLength?: number; - readonly minLength?: number; - readonly pattern?: string; - readonly maxItems?: number; - readonly minItems?: number; - readonly uniqueItems?: boolean; - readonly maxProperties?: number; - readonly minProperties?: number; -} - -export type ObjectSchema = FieldSchema & { - properties?: { - readonly [K in keyof T]: Schema; - } -} - -export type Schema = - T extends string ? FieldSchema : - T extends number ? FieldSchema : - T extends boolean ? FieldSchema : - T extends File ? FieldSchema : - T extends Blob ? FieldSchema : - T extends Object ? ObjectSchema : - FieldSchema -" -`; - exports[`generation v3 file(./test/result/v3/core/getFormData.ts): ./test/result/v3/core/getFormData.ts 1`] = ` "/* istanbul ignore file */ /* tslint:disable */ @@ -2537,27 +2279,6 @@ export function getQueryString(params: { [key: string]: any }): string { " `; -exports[`generation v3 file(./test/result/v3/core/getSchema.ts): ./test/result/v3/core/getSchema.ts 1`] = ` -"/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -import * as schemas from '../schemas'; - -/** - * Get a schema object for a given model name. - * @param model The model name to return the schema from. - */ -export function getSchema(model: K) { - if (schemas.hasOwnProperty(model)) { - return schemas[model]; - } - return null; -} -" -`; - exports[`generation v3 file(./test/result/v3/core/isSuccess.ts): ./test/result/v3/core/isSuccess.ts 1`] = ` "/* istanbul ignore file */ /* tslint:disable */ @@ -2796,12 +2517,92 @@ exports[`generation v3 file(./test/result/v3/index.ts): ./test/result/v3/index.t /* prettier-ignore */ export { ApiError } from './core/ApiError'; -export { getSchema } from './core/getSchema'; export { isSuccess } from './core/isSuccess'; export { OpenAPI } from './core/OpenAPI'; -export { FieldSchema, Schema, ObjectSchema } from './core/Schema'; -export * from './models/'; -export * from './services/'; + +export { ArrayWithArray } from './models/ArrayWithArray'; +export { ArrayWithBooleans } from './models/ArrayWithBooleans'; +export { ArrayWithNumbers } from './models/ArrayWithNumbers'; +export { ArrayWithProperties } from './models/ArrayWithProperties'; +export { ArrayWithReferences } from './models/ArrayWithReferences'; +export { ArrayWithStrings } from './models/ArrayWithStrings'; +export { DictionaryWithArray } from './models/DictionaryWithArray'; +export { DictionaryWithDictionary } from './models/DictionaryWithDictionary'; +export { DictionaryWithProperties } from './models/DictionaryWithProperties'; +export { DictionaryWithReference } from './models/DictionaryWithReference'; +export { DictionaryWithString } from './models/DictionaryWithString'; +export { EnumFromDescription } from './models/EnumFromDescription'; +export { EnumWithNumbers } from './models/EnumWithNumbers'; +export { EnumWithStrings } from './models/EnumWithStrings'; +export { ModelLink } from './models/ModelLink'; +export { ModelThatExtends } from './models/ModelThatExtends'; +export { ModelThatExtendsExtends } from './models/ModelThatExtendsExtends'; +export { ModelWithArray } from './models/ModelWithArray'; +export { ModelWithBoolean } from './models/ModelWithBoolean'; +export { ModelWithCircularReference } from './models/ModelWithCircularReference'; +export { ModelWithDictionary } from './models/ModelWithDictionary'; +export { ModelWithDuplicateImports } from './models/ModelWithDuplicateImports'; +export { ModelWithDuplicateProperties } from './models/ModelWithDuplicateProperties'; +export { ModelWithEnum } from './models/ModelWithEnum'; +export { ModelWithEnumFromDescription } from './models/ModelWithEnumFromDescription'; +export { ModelWithInteger } from './models/ModelWithInteger'; +export { ModelWithLink } from './models/ModelWithLink'; +export { ModelWithNestedEnums } from './models/ModelWithNestedEnums'; +export { ModelWithNestedProperties } from './models/ModelWithNestedProperties'; +export { ModelWithProperties } from './models/ModelWithProperties'; +export { ModelWithReference } from './models/ModelWithReference'; +export { ModelWithString } from './models/ModelWithString'; +export { SimpleBoolean } from './models/SimpleBoolean'; +export { SimpleFile } from './models/SimpleFile'; +export { SimpleInteger } from './models/SimpleInteger'; +export { SimpleReference } from './models/SimpleReference'; +export { SimpleString } from './models/SimpleString'; + +export { $ArrayWithArray } from './schemas/$ArrayWithArray'; +export { $ArrayWithBooleans } from './schemas/$ArrayWithBooleans'; +export { $ArrayWithNumbers } from './schemas/$ArrayWithNumbers'; +export { $ArrayWithProperties } from './schemas/$ArrayWithProperties'; +export { $ArrayWithReferences } from './schemas/$ArrayWithReferences'; +export { $ArrayWithStrings } from './schemas/$ArrayWithStrings'; +export { $DictionaryWithArray } from './schemas/$DictionaryWithArray'; +export { $DictionaryWithDictionary } from './schemas/$DictionaryWithDictionary'; +export { $DictionaryWithProperties } from './schemas/$DictionaryWithProperties'; +export { $DictionaryWithReference } from './schemas/$DictionaryWithReference'; +export { $DictionaryWithString } from './schemas/$DictionaryWithString'; +export { $EnumFromDescription } from './schemas/$EnumFromDescription'; +export { $EnumWithNumbers } from './schemas/$EnumWithNumbers'; +export { $EnumWithStrings } from './schemas/$EnumWithStrings'; +export { $ModelLink } from './schemas/$ModelLink'; +export { $ModelThatExtends } from './schemas/$ModelThatExtends'; +export { $ModelThatExtendsExtends } from './schemas/$ModelThatExtendsExtends'; +export { $ModelWithArray } from './schemas/$ModelWithArray'; +export { $ModelWithBoolean } from './schemas/$ModelWithBoolean'; +export { $ModelWithCircularReference } from './schemas/$ModelWithCircularReference'; +export { $ModelWithDictionary } from './schemas/$ModelWithDictionary'; +export { $ModelWithDuplicateImports } from './schemas/$ModelWithDuplicateImports'; +export { $ModelWithDuplicateProperties } from './schemas/$ModelWithDuplicateProperties'; +export { $ModelWithEnum } from './schemas/$ModelWithEnum'; +export { $ModelWithEnumFromDescription } from './schemas/$ModelWithEnumFromDescription'; +export { $ModelWithInteger } from './schemas/$ModelWithInteger'; +export { $ModelWithLink } from './schemas/$ModelWithLink'; +export { $ModelWithNestedEnums } from './schemas/$ModelWithNestedEnums'; +export { $ModelWithNestedProperties } from './schemas/$ModelWithNestedProperties'; +export { $ModelWithProperties } from './schemas/$ModelWithProperties'; +export { $ModelWithReference } from './schemas/$ModelWithReference'; +export { $ModelWithString } from './schemas/$ModelWithString'; +export { $SimpleBoolean } from './schemas/$SimpleBoolean'; +export { $SimpleFile } from './schemas/$SimpleFile'; +export { $SimpleInteger } from './schemas/$SimpleInteger'; +export { $SimpleReference } from './schemas/$SimpleReference'; +export { $SimpleString } from './schemas/$SimpleString'; + +export { ComplexService } from './services/ComplexService'; +export { DefaultsService } from './services/DefaultsService'; +export { MultipartService } from './services/MultipartService'; +export { ParametersService } from './services/ParametersService'; +export { ResponseService } from './services/ResponseService'; +export { SimpleService } from './services/SimpleService'; +export { TypesService } from './services/TypesService'; " `; @@ -3454,62 +3255,13 @@ exports[`generation v3 file(./test/result/v3/models/SimpleString.ts): ./test/res export type SimpleString = string;" `; -exports[`generation v3 file(./test/result/v3/models/index.ts): ./test/result/v3/models/index.ts 1`] = ` -"/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export { ArrayWithArray } from './ArrayWithArray'; -export { ArrayWithBooleans } from './ArrayWithBooleans'; -export { ArrayWithNumbers } from './ArrayWithNumbers'; -export { ArrayWithProperties } from './ArrayWithProperties'; -export { ArrayWithReferences } from './ArrayWithReferences'; -export { ArrayWithStrings } from './ArrayWithStrings'; -export { DictionaryWithArray } from './DictionaryWithArray'; -export { DictionaryWithDictionary } from './DictionaryWithDictionary'; -export { DictionaryWithProperties } from './DictionaryWithProperties'; -export { DictionaryWithReference } from './DictionaryWithReference'; -export { DictionaryWithString } from './DictionaryWithString'; -export { EnumFromDescription } from './EnumFromDescription'; -export { EnumWithNumbers } from './EnumWithNumbers'; -export { EnumWithStrings } from './EnumWithStrings'; -export { ModelLink } from './ModelLink'; -export { ModelThatExtends } from './ModelThatExtends'; -export { ModelThatExtendsExtends } from './ModelThatExtendsExtends'; -export { ModelWithArray } from './ModelWithArray'; -export { ModelWithBoolean } from './ModelWithBoolean'; -export { ModelWithCircularReference } from './ModelWithCircularReference'; -export { ModelWithDictionary } from './ModelWithDictionary'; -export { ModelWithDuplicateImports } from './ModelWithDuplicateImports'; -export { ModelWithDuplicateProperties } from './ModelWithDuplicateProperties'; -export { ModelWithEnum } from './ModelWithEnum'; -export { ModelWithEnumFromDescription } from './ModelWithEnumFromDescription'; -export { ModelWithInteger } from './ModelWithInteger'; -export { ModelWithLink } from './ModelWithLink'; -export { ModelWithNestedEnums } from './ModelWithNestedEnums'; -export { ModelWithNestedProperties } from './ModelWithNestedProperties'; -export { ModelWithProperties } from './ModelWithProperties'; -export { ModelWithReference } from './ModelWithReference'; -export { ModelWithString } from './ModelWithString'; -export { SimpleBoolean } from './SimpleBoolean'; -export { SimpleFile } from './SimpleFile'; -export { SimpleInteger } from './SimpleInteger'; -export { SimpleReference } from './SimpleReference'; -export { SimpleString } from './SimpleString'; -" -`; - exports[`generation v3 file(./test/result/v3/schemas/$ArrayWithArray.ts): ./test/result/v3/schemas/$ArrayWithArray.ts 1`] = ` "/* istanbul ignore file */ /* tslint:disable */ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ArrayWithArray } from '../models/ArrayWithArray'; - -export const $ArrayWithArray: __Schema = { +export const $ArrayWithArray = { type: 'Array', };" `; @@ -3520,10 +3272,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ArrayWithBooleans.ts): ./t /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ArrayWithBooleans } from '../models/ArrayWithBooleans'; - -export const $ArrayWithBooleans: __Schema = { +export const $ArrayWithBooleans = { type: 'Array', };" `; @@ -3534,10 +3283,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ArrayWithNumbers.ts): ./te /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ArrayWithNumbers } from '../models/ArrayWithNumbers'; - -export const $ArrayWithNumbers: __Schema = { +export const $ArrayWithNumbers = { type: 'Array', };" `; @@ -3548,10 +3294,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ArrayWithProperties.ts): . /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ArrayWithProperties } from '../models/ArrayWithProperties'; - -export const $ArrayWithProperties: __Schema = { +export const $ArrayWithProperties = { type: 'Array', };" `; @@ -3562,10 +3305,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ArrayWithReferences.ts): . /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ArrayWithReferences } from '../models/ArrayWithReferences'; - -export const $ArrayWithReferences: __Schema = { +export const $ArrayWithReferences = { type: 'Array', };" `; @@ -3576,36 +3316,18 @@ exports[`generation v3 file(./test/result/v3/schemas/$ArrayWithStrings.ts): ./te /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ArrayWithStrings } from '../models/ArrayWithStrings'; - -export const $ArrayWithStrings: __Schema = { +export const $ArrayWithStrings = { type: 'Array', };" `; -exports[`generation v3 file(./test/result/v3/schemas/$Dictionary.ts): ./test/result/v3/schemas/$Dictionary.ts 1`] = ` -"/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export const $Dictionary = { - type: 'Dictionary' -}; -" -`; - exports[`generation v3 file(./test/result/v3/schemas/$DictionaryWithArray.ts): ./test/result/v3/schemas/$DictionaryWithArray.ts 1`] = ` "/* istanbul ignore file */ /* tslint:disable */ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { DictionaryWithArray } from '../models/DictionaryWithArray'; - -export const $DictionaryWithArray: __Schema = { +export const $DictionaryWithArray = { type: 'Dictionary', };" `; @@ -3616,10 +3338,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$DictionaryWithDictionary.t /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { DictionaryWithDictionary } from '../models/DictionaryWithDictionary'; - -export const $DictionaryWithDictionary: __Schema = { +export const $DictionaryWithDictionary = { type: 'Dictionary', };" `; @@ -3630,10 +3349,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$DictionaryWithProperties.t /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { DictionaryWithProperties } from '../models/DictionaryWithProperties'; - -export const $DictionaryWithProperties: __Schema = { +export const $DictionaryWithProperties = { type: 'Dictionary', };" `; @@ -3644,10 +3360,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$DictionaryWithReference.ts /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { DictionaryWithReference } from '../models/DictionaryWithReference'; - -export const $DictionaryWithReference: __Schema = { +export const $DictionaryWithReference = { type: 'Dictionary', };" `; @@ -3658,10 +3371,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$DictionaryWithString.ts): /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { DictionaryWithString } from '../models/DictionaryWithString'; - -export const $DictionaryWithString: __Schema = { +export const $DictionaryWithString = { type: 'Dictionary', };" `; @@ -3672,10 +3382,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$EnumFromDescription.ts): . /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { EnumFromDescription } from '../models/EnumFromDescription'; - -export const $EnumFromDescription: __Schema = { +export const $EnumFromDescription = { type: 'Enum', };" `; @@ -3686,10 +3393,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$EnumWithNumbers.ts): ./tes /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { EnumWithNumbers } from '../models/EnumWithNumbers'; - -export const $EnumWithNumbers: __Schema = { +export const $EnumWithNumbers = { type: 'Enum', };" `; @@ -3700,10 +3404,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$EnumWithStrings.ts): ./tes /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { EnumWithStrings } from '../models/EnumWithStrings'; - -export const $EnumWithStrings: __Schema = { +export const $EnumWithStrings = { type: 'Enum', };" `; @@ -3714,10 +3415,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelLink.ts): ./test/resu /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelLink } from '../models/ModelLink'; - -export const $ModelLink: __Schema = { +export const $ModelLink = { properties: { id: { type: 'string', @@ -3733,10 +3431,8 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelThatExtends.ts): ./te /* prettier-ignore */ import { $ModelWithString } from './$ModelWithString'; -import { Schema as __Schema } from '../core/Schema'; -import { ModelThatExtends } from '../models/ModelThatExtends'; -export const $ModelThatExtends: __Schema = { +export const $ModelThatExtends = { properties: { ...$ModelWithString.properties, propExtendsA: { @@ -3757,10 +3453,8 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelThatExtendsExtends.ts import { $ModelWithString } from './$ModelWithString'; import { $ModelThatExtends } from './$ModelThatExtends'; -import { Schema as __Schema } from '../core/Schema'; -import { ModelThatExtendsExtends } from '../models/ModelThatExtendsExtends'; -export const $ModelThatExtendsExtends: __Schema = { +export const $ModelThatExtendsExtends = { properties: { ...$ModelWithString.properties, ...$ModelThatExtends.properties, @@ -3780,10 +3474,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithArray.ts): ./test /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithArray } from '../models/ModelWithArray'; - -export const $ModelWithArray: __Schema = { +export const $ModelWithArray = { properties: { prop: { type: 'Array', @@ -3804,10 +3495,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithBoolean.ts): ./te /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithBoolean } from '../models/ModelWithBoolean'; - -export const $ModelWithBoolean: __Schema = { +export const $ModelWithBoolean = { properties: { prop: { type: 'boolean', @@ -3822,10 +3510,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithCircularReference /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithCircularReference } from '../models/ModelWithCircularReference'; - -export const $ModelWithCircularReference: __Schema = { +export const $ModelWithCircularReference = { properties: { prop: { type: 'ModelWithCircularReference', @@ -3840,10 +3525,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithDictionary.ts): . /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithDictionary } from '../models/ModelWithDictionary'; - -export const $ModelWithDictionary: __Schema = { +export const $ModelWithDictionary = { properties: { prop: { type: 'Dictionary', @@ -3858,10 +3540,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithDuplicateImports. /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithDuplicateImports } from '../models/ModelWithDuplicateImports'; - -export const $ModelWithDuplicateImports: __Schema = { +export const $ModelWithDuplicateImports = { properties: { propA: { type: 'ModelWithString', @@ -3882,10 +3561,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithDuplicateProperti /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithDuplicateProperties } from '../models/ModelWithDuplicateProperties'; - -export const $ModelWithDuplicateProperties: __Schema = { +export const $ModelWithDuplicateProperties = { properties: { prop: { type: 'ModelWithString', @@ -3900,10 +3576,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithEnum.ts): ./test/ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithEnum } from '../models/ModelWithEnum'; - -export const $ModelWithEnum: __Schema = { +export const $ModelWithEnum = { properties: { Test: { type: 'Enum', @@ -3918,10 +3591,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithEnumFromDescripti /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithEnumFromDescription } from '../models/ModelWithEnumFromDescription'; - -export const $ModelWithEnumFromDescription: __Schema = { +export const $ModelWithEnumFromDescription = { properties: { Test: { type: 'Enum', @@ -3936,10 +3606,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithInteger.ts): ./te /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithInteger } from '../models/ModelWithInteger'; - -export const $ModelWithInteger: __Schema = { +export const $ModelWithInteger = { properties: { prop: { type: 'number', @@ -3954,10 +3621,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithLink.ts): ./test/ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithLink } from '../models/ModelWithLink'; - -export const $ModelWithLink: __Schema = { +export const $ModelWithLink = { properties: { prop: { type: 'ModelLink', @@ -3972,10 +3636,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithNestedEnums.ts): /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithNestedEnums } from '../models/ModelWithNestedEnums'; - -export const $ModelWithNestedEnums: __Schema = { +export const $ModelWithNestedEnums = { properties: { arrayWithDescription: { type: 'Array', @@ -3999,10 +3660,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithNestedProperties. /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithNestedProperties } from '../models/ModelWithNestedProperties'; - -export const $ModelWithNestedProperties: __Schema = { +export const $ModelWithNestedProperties = { properties: { first: { properties: { @@ -4034,10 +3692,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithProperties.ts): . /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithProperties } from '../models/ModelWithProperties'; - -export const $ModelWithProperties: __Schema = { +export const $ModelWithProperties = { properties: { boolean: { type: 'boolean', @@ -4075,10 +3730,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithReference.ts): ./ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithReference } from '../models/ModelWithReference'; - -export const $ModelWithReference: __Schema = { +export const $ModelWithReference = { properties: { prop: { type: 'ModelWithProperties', @@ -4093,10 +3745,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$ModelWithString.ts): ./tes /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { ModelWithString } from '../models/ModelWithString'; - -export const $ModelWithString: __Schema = { +export const $ModelWithString = { properties: { prop: { type: 'string', @@ -4111,10 +3760,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$SimpleBoolean.ts): ./test/ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { SimpleBoolean } from '../models/SimpleBoolean'; - -export const $SimpleBoolean: __Schema = { +export const $SimpleBoolean = { type: 'boolean', };" `; @@ -4125,10 +3771,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$SimpleFile.ts): ./test/res /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { SimpleFile } from '../models/SimpleFile'; - -export const $SimpleFile: __Schema = { +export const $SimpleFile = { type: 'File', };" `; @@ -4139,10 +3782,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$SimpleInteger.ts): ./test/ /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { SimpleInteger } from '../models/SimpleInteger'; - -export const $SimpleInteger: __Schema = { +export const $SimpleInteger = { type: 'number', };" `; @@ -4153,10 +3793,7 @@ exports[`generation v3 file(./test/result/v3/schemas/$SimpleReference.ts): ./tes /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { SimpleReference } from '../models/SimpleReference'; - -export const $SimpleReference: __Schema = { +export const $SimpleReference = { type: 'ModelWithString', };" `; @@ -4167,60 +3804,11 @@ exports[`generation v3 file(./test/result/v3/schemas/$SimpleString.ts): ./test/r /* eslint-disable */ /* prettier-ignore */ -import { Schema as __Schema } from '../core/Schema'; -import { SimpleString } from '../models/SimpleString'; - -export const $SimpleString: __Schema = { +export const $SimpleString = { type: 'string', };" `; -exports[`generation v3 file(./test/result/v3/schemas/index.ts): ./test/result/v3/schemas/index.ts 1`] = ` -"/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export { $ArrayWithArray as ArrayWithArray } from './$ArrayWithArray'; -export { $ArrayWithBooleans as ArrayWithBooleans } from './$ArrayWithBooleans'; -export { $ArrayWithNumbers as ArrayWithNumbers } from './$ArrayWithNumbers'; -export { $ArrayWithProperties as ArrayWithProperties } from './$ArrayWithProperties'; -export { $ArrayWithReferences as ArrayWithReferences } from './$ArrayWithReferences'; -export { $ArrayWithStrings as ArrayWithStrings } from './$ArrayWithStrings'; -export { $DictionaryWithArray as DictionaryWithArray } from './$DictionaryWithArray'; -export { $DictionaryWithDictionary as DictionaryWithDictionary } from './$DictionaryWithDictionary'; -export { $DictionaryWithProperties as DictionaryWithProperties } from './$DictionaryWithProperties'; -export { $DictionaryWithReference as DictionaryWithReference } from './$DictionaryWithReference'; -export { $DictionaryWithString as DictionaryWithString } from './$DictionaryWithString'; -export { $EnumFromDescription as EnumFromDescription } from './$EnumFromDescription'; -export { $EnumWithNumbers as EnumWithNumbers } from './$EnumWithNumbers'; -export { $EnumWithStrings as EnumWithStrings } from './$EnumWithStrings'; -export { $ModelLink as ModelLink } from './$ModelLink'; -export { $ModelThatExtends as ModelThatExtends } from './$ModelThatExtends'; -export { $ModelThatExtendsExtends as ModelThatExtendsExtends } from './$ModelThatExtendsExtends'; -export { $ModelWithArray as ModelWithArray } from './$ModelWithArray'; -export { $ModelWithBoolean as ModelWithBoolean } from './$ModelWithBoolean'; -export { $ModelWithCircularReference as ModelWithCircularReference } from './$ModelWithCircularReference'; -export { $ModelWithDictionary as ModelWithDictionary } from './$ModelWithDictionary'; -export { $ModelWithDuplicateImports as ModelWithDuplicateImports } from './$ModelWithDuplicateImports'; -export { $ModelWithDuplicateProperties as ModelWithDuplicateProperties } from './$ModelWithDuplicateProperties'; -export { $ModelWithEnum as ModelWithEnum } from './$ModelWithEnum'; -export { $ModelWithEnumFromDescription as ModelWithEnumFromDescription } from './$ModelWithEnumFromDescription'; -export { $ModelWithInteger as ModelWithInteger } from './$ModelWithInteger'; -export { $ModelWithLink as ModelWithLink } from './$ModelWithLink'; -export { $ModelWithNestedEnums as ModelWithNestedEnums } from './$ModelWithNestedEnums'; -export { $ModelWithNestedProperties as ModelWithNestedProperties } from './$ModelWithNestedProperties'; -export { $ModelWithProperties as ModelWithProperties } from './$ModelWithProperties'; -export { $ModelWithReference as ModelWithReference } from './$ModelWithReference'; -export { $ModelWithString as ModelWithString } from './$ModelWithString'; -export { $SimpleBoolean as SimpleBoolean } from './$SimpleBoolean'; -export { $SimpleFile as SimpleFile } from './$SimpleFile'; -export { $SimpleInteger as SimpleInteger } from './$SimpleInteger'; -export { $SimpleReference as SimpleReference } from './$SimpleReference'; -export { $SimpleString as SimpleString } from './$SimpleString'; -" -`; - exports[`generation v3 file(./test/result/v3/services/ComplexService.ts): ./test/result/v3/services/ComplexService.ts 1`] = ` "/* istanbul ignore file */ /* tslint:disable */ @@ -4681,19 +4269,3 @@ export class TypesService { }" `; - -exports[`generation v3 file(./test/result/v3/services/index.ts): ./test/result/v3/services/index.ts 1`] = ` -"/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/* prettier-ignore */ - -export { ComplexService } from './ComplexService'; -export { DefaultsService } from './DefaultsService'; -export { MultipartService } from './MultipartService'; -export { ParametersService } from './ParametersService'; -export { ResponseService } from './ResponseService'; -export { SimpleService } from './SimpleService'; -export { TypesService } from './TypesService'; -" -`;