UNPKG

routing-controllers-openapi-extended

Version:

Runtime Swagger v2 / OpenAPI v2 specification generation for routing-controllers

27 lines 2.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const _ = require("lodash"); const parameterParser_1 = require("./parameterParser"); const responseParser_1 = require("./responseParser"); const tagsParser_1 = require("./tagsParser"); const decoratorParser_1 = require("./decoratorParser"); function getOperationId(route) { return `${route.action.target.name}.${route.action.method}`; } function getSummary(route) { return _.capitalize(_.startCase(route.action.method)); } function getOperation(route) { const operation = { operationId: getOperationId(route), summary: getSummary(route), tags: tagsParser_1.getTags(route), parameters: parameterParser_1.getParameters(route), responses: responseParser_1.getResponses(route), }; const operationObj = decoratorParser_1.decoratorParser(route); const mergedOperationObj = _.merge(operation, operationObj); return _.omitBy(mergedOperationObj, _.isEmpty); } exports.getOperation = getOperation; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9uUGFyc2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BhcnNlci9vcGVyYXRpb25QYXJzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw0QkFBMkI7QUFHM0IsdURBQWtEO0FBQ2xELHFEQUFnRDtBQUNoRCw2Q0FBdUM7QUFDdkMsdURBQW9EO0FBRXBELFNBQVMsY0FBYyxDQUFDLEtBQVk7SUFDaEMsT0FBTyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO0FBQ2hFLENBQUM7QUFFRCxTQUFTLFVBQVUsQ0FBQyxLQUFZO0lBQzVCLE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQTtBQUN6RCxDQUFDO0FBRUQsU0FBZ0IsWUFBWSxDQUFDLEtBQVk7SUFDckMsTUFBTSxTQUFTLEdBQXVCO1FBQ3BDLFdBQVcsRUFBRSxjQUFjLENBQUMsS0FBSyxDQUFDO1FBQ2xDLE9BQU8sRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDO1FBQzFCLElBQUksRUFBRSxvQkFBTyxDQUFDLEtBQUssQ0FBQztRQUNwQixVQUFVLEVBQUUsK0JBQWEsQ0FBQyxLQUFLLENBQUM7UUFDaEMsU0FBUyxFQUFFLDZCQUFZLENBQUMsS0FBSyxDQUFDO0tBQy9CLENBQUM7SUFDRixNQUFNLFlBQVksR0FBRyxpQ0FBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsWUFBWSxDQUFDLENBQUE7SUFFM0QsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxPQUFPLENBQXVCLENBQUM7QUFDekUsQ0FBQztBQVpELG9DQVlDIn0=