openapi-mock-generator-cli
Version:
CLI tool to generate mock data from OpenAPI specifications.
38 lines (37 loc) • 1.39 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.loadConfig = loadConfig;
const cosmiconfig_1 = require("cosmiconfig");
const logger_1 = require("./logger");
const FILE_NAME = 'openapiMockGenerator';
/**
* Loads the configuration for the OpenAPI mock generator from a configuration file.
* The configuration file should be named 'openapiMockGenerator' and can be in various formats (e.g., JSON, YAML).
* @returns {Config} - The configuration object containing the paths for OpenAPI files and output schemas.
*/
function loadConfig() {
const explorer = (0, cosmiconfig_1.cosmiconfigSync)(FILE_NAME, {
searchPlaces: [
`${FILE_NAME}.json`,
`${FILE_NAME}.yaml`,
`${FILE_NAME}.yml`,
`${FILE_NAME}.js`,
`${FILE_NAME}.ts`,
`${FILE_NAME}.config.json`,
`${FILE_NAME}.config.yaml`,
`${FILE_NAME}.config.yml`,
`${FILE_NAME}.config.js`,
`${FILE_NAME}.config.ts`
],
stopDir: process.cwd()
});
const result = explorer.search();
if (!result || result.isEmpty) {
logger_1.Logger.warn('No configuration file found. Using default values.');
return {
openApiFilesPath: './openapi',
outputSchemasPath: './mocks/schemas'
};
}
return result.config;
}