UNPKG

openapi-diff

Version:

A CLI tool to identify differences between Swagger/OpenAPI specs.

31 lines (30 loc) 1.26 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseOpenApi3RequestBody = void 0; const dereference_object_1 = require("../common/dereference-object"); const parse_openapi3_body_object_json_schema_1 = require("./parse-openapi3-body-object-json-schema"); const toParsedRequestBody = (requestBodyOrReference, pathBuilder, spec) => { const requestBody = (0, dereference_object_1.dereferenceObject)(requestBodyOrReference, spec); const jsonSchema = (0, parse_openapi3_body_object_json_schema_1.parseOpenApi3BodyObjectJsonSchema)(requestBody, pathBuilder, spec); return { jsonSchema, originalValue: { originalPath: pathBuilder.build(), value: requestBody } }; }; const toParsedUndefinedRequestBody = (pathBuilder) => { return { originalValue: { originalPath: pathBuilder.build(), value: undefined } }; }; const parseOpenApi3RequestBody = (requestBodyOrReference, pathBuilder, spec) => { return requestBodyOrReference ? toParsedRequestBody(requestBodyOrReference, pathBuilder, spec) : toParsedUndefinedRequestBody(pathBuilder); }; exports.parseOpenApi3RequestBody = parseOpenApi3RequestBody;