openapi-codegen-typescript
Version:
OpenApi codegen for generating types an mocks from swagger json file
22 lines (21 loc) • 1.17 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var types_1 = require("../types");
var convertToTypesFromSchemaProperties_1 = require("./convertToTypesFromSchemaProperties");
var parseRefType_1 = require("./parseRefType");
exports.parseObject = function (_a) {
var schema = _a.schema, schemaKey = _a.schemaKey;
if (schema[types_1.SwaggerProps.AllOf] && Array.isArray(schema[types_1.SwaggerProps.AllOf])) {
var interfacesNames = schema[types_1.SwaggerProps.AllOf]
.filter(function (e) { return e[types_1.SwaggerProps.$ref]; })
.map(function (obj) {
var refType = obj[types_1.SwaggerProps.$ref].split('/');
return parseRefType_1.parseRefType(refType);
});
var obj = schema[types_1.SwaggerProps.AllOf].find(function (schema) { return schema.type; });
return convertToTypesFromSchemaProperties_1.convertToTypesFromSchemaProperties({ schemaKey: schemaKey, schema: obj, interfaces: interfacesNames });
}
else {
return convertToTypesFromSchemaProperties_1.convertToTypesFromSchemaProperties({ schemaKey: schemaKey, schema: schema });
}
};