UNPKG

swagger-ts-generator

Version:

Given a swagger.json file, generates a number of TypeScript files which can be used as models and model-driven forms in Angular 2 (and above)

57 lines (52 loc) 1.84 kB
'use strict'; module.exports = config(); function config() { var root = './test-gen/'; var srcAppFolder = root + 'app/'; var folders = { // root root: root, // sources srcWebapiFolder: srcAppFolder + 'models/webapi/', srcLanguagesFolder: root + 'assets/i18n/', enumI18NHtmlOutputFolder: srcAppFolder + '/+i18n/enum-i18n/', // swagger swaggerFolder: root + 'swagger/' }; var files = { swaggerJson: 'swagger.json' }; var swagger = { url: 'https://petstore3.swagger.io/api/v3/openapi.json', // url: 'http://petstore.swagger.io/v2/swagger.json', swaggerFile: folders.swaggerFolder + files.swaggerJson, swaggerFolder: folders.swaggerFolder, swaggerTSGeneratorOptions: { modelFolder: folders.srcWebapiFolder, enumTSFile: folders.srcWebapiFolder + 'enums.ts', enumI18NHtmlFile: folders.enumI18NHtmlOutputFolder + 'enum-i18n.component.html', enumLanguageFiles: [folders.srcLanguagesFolder + 'nl.json', folders.srcLanguagesFolder + 'en.json'], generateBarrelFiles: false, generateClasses: true, generateValidatorFile: false, modelModuleName: 'webapi.models', sortModelProperties: true, enumModuleName: 'webapi.enums', enumRef: './enums', sortEnumTypes: true, subTypePropertyName: 'typeSelector', namespacePrefixesToRemove: [], typeNameSuffixesToRemove: [], typesToFilter: [ 'ModelAndView', // Springfox artifact 'View' // Springfox artifact ] } }; var config = { root: root, files: files, swagger: swagger }; return config; }