UNPKG

openapi-route-expander

Version:

A utility for resolving $ref in OpenAPI YAML routes, generating new YAML files without $ref, ready for OpenAPI processing.

25 lines 1.55 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.resolveRefsInRoutes = resolveRefsInRoutes; const fs_1 = __importDefault(require("fs")); const validation_1 = require("./validation"); const file_util_1 = require("./util/file.util"); const openapi_json_1 = require("./openapi-json"); const y_a_m_l_util_1 = require("./util/y-a-m-l.util"); function resolveRefsInRoutes(inputFilePath, outputFilePath) { validation_1.Validation.absolutePaths([inputFilePath, outputFilePath]); validation_1.Validation.pathExist(inputFilePath); file_util_1.FileUtil.createDirector(file_util_1.FileUtil.getDirectory(outputFilePath)); let openApiJSON = file_util_1.FileUtil.readYaml(inputFilePath); const fileName = (0, openapi_json_1.extractFileName)(inputFilePath); openApiJSON = (0, openapi_json_1.replaceRelativeToAbsolutePath)(openApiJSON, file_util_1.FileUtil.getDirectory(inputFilePath), fileName); openApiJSON.paths = (0, openapi_json_1.mergeNestedPaths)(openApiJSON.paths, inputFilePath); openApiJSON = (0, openapi_json_1.fixOpenApiAbsoluteRoute)(openApiJSON, file_util_1.FileUtil.getDirectory(outputFilePath)); let openAPIYaml = y_a_m_l_util_1.YAMLUtil.stringify(openApiJSON); openAPIYaml = (0, openapi_json_1.fixOpenApiYamlStringIssue)(openAPIYaml); fs_1.default.writeFileSync(outputFilePath, openAPIYaml, 'utf-8'); } //# sourceMappingURL=index.js.map