UNPKG

parse-openapi

Version:

OpenAPI v3 parser

48 lines (47 loc) 1.52 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getOperationResults = void 0; const areEqual = (a, b) => { const equal = a.type === b.type && a.base === b.base && a.template === b.template; if (equal && a.link && b.link) { return areEqual(a.link, b.link); } return equal; }; const getOperationResults = (operationResponses) => { const operationResults = []; // Filter out success response codes, but skip "204 No Content" operationResponses.forEach(operationResponse => { const { code } = operationResponse; if (code && code !== 204 && code >= 200 && code < 300) { operationResults.push(operationResponse); } }); if (!operationResults.length) { operationResults.push({ in: 'response', name: '', code: 200, description: '', export: 'generic', type: 'void', base: 'void', template: null, link: null, isDefinition: false, isReadOnly: false, isRequired: false, isNullable: false, imports: [], enum: [], enums: [], properties: [], }); } return operationResults.filter((operationResult, index, arr) => { return (arr.findIndex(item => { return areEqual(item, operationResult); }) === index); }); }; exports.getOperationResults = getOperationResults;