UNPKG

dependency-cruiser

Version:

Validate and visualize dependencies. With your rules. JavaScript, TypeScript, CoffeeScript. ES6, CommonJS, AMD.

33 lines (27 loc) 960 B
import extractDepcruiseConfig from "./extract-depcruise-config/index.mjs"; /** * @import { IConfiguration } from "../../types/configuration.mjs"; * @import { ICruiseOptions } from "../../types/options.mjs"; */ /** * @param {IConfiguration} pConfiguration * @returns {ICruiseOptions} */ function configuration2options(pConfiguration) { /* c8 ignore next 1 */ const lConfiguration = structuredClone(pConfiguration || {}); const lReturnValue = structuredClone(lConfiguration?.options ?? {}); delete lConfiguration.options; lReturnValue.ruleSet = structuredClone(lConfiguration); lReturnValue.validate = Object.keys(lReturnValue.ruleSet).length > 0; return lReturnValue; } /** * * @param {string} pConfigFileName * @returns {Promise<ICruiseOptions>} */ export default async function extractDepcruiseOptions(pConfigFileName) { const lReturnValue = await extractDepcruiseConfig(pConfigFileName); return configuration2options(lReturnValue); }