UNPKG

openapi-modifier

Version:

This package allows you to automate the process of modifying OpenAPI specifications by applying a set of predefined rules

42 lines (41 loc) 1.91 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseAnyComponentWithCorrectionDescriptor = exports.parseSimpleComponentWithCorrectionDescriptor = void 0; const parse_simple_descriptor_1 = require("./parse-simple-descriptor"); const parseSimpleComponentWithCorrectionDescriptor = (componentDescriptor) => { if (typeof componentDescriptor === 'string') { const parsedSimpleDescriptor = (0, parse_simple_descriptor_1.parseSimpleDescriptor)(componentDescriptor, { isContainsName: true }); if (!parsedSimpleDescriptor) { return null; } const { name, correction } = parsedSimpleDescriptor; if (!name) { return null; } return { componentName: name, correction: correction || undefined, }; } return null; }; exports.parseSimpleComponentWithCorrectionDescriptor = parseSimpleComponentWithCorrectionDescriptor; const parseAnyComponentWithCorrectionDescriptor = (componentDescriptor, logger) => { if (typeof componentDescriptor === "object" && "componentName" in componentDescriptor) { return componentDescriptor; } if (typeof componentDescriptor === 'string') { const parsedComponentDescriptor = (0, exports.parseSimpleComponentWithCorrectionDescriptor)(componentDescriptor); if (!parsedComponentDescriptor) { logger.errorMessage(` Failed to parse component descriptor: "${componentDescriptor}". Use format: "{componentName}.{path}", for example: "TestDto.foo.bar[].test" `); return null; } return parsedComponentDescriptor; } logger.errorMessage(`Wrong component descriptor: ${JSON.stringify(componentDescriptor)}`); return null; }; exports.parseAnyComponentWithCorrectionDescriptor = parseAnyComponentWithCorrectionDescriptor;