dependency-cruiser
Version:
Validate and visualize dependencies. With your rules. JavaScript, TypeScript, CoffeeScript. ES6, CommonJS, AMD.
23 lines (19 loc) • 901 B
JavaScript
import { assertFormatOptionsValid } from "./options/assert-validity.mjs";
import { normalizeFormatOptions } from "./options/normalize.mjs";
import reportWrap from "./report-wrap.mjs";
import validateCruiseResultSchema from "#schema/cruise-result.validate.mjs";
import { validateErrorsToString } from "#schema/utl.mjs";
function validateResultAgainstSchema(pResult) {
if (!validateCruiseResultSchema(pResult)) {
throw new Error(
`The supplied dependency-cruiser result is not valid: ${validateErrorsToString(validateCruiseResultSchema.errors)}.\n`,
);
}
}
/** @type {import("../../types/dependency-cruiser.js").format} */
export default async function format(pResult, pFormatOptions = {}) {
const lFormatOptions = normalizeFormatOptions(pFormatOptions);
assertFormatOptionsValid(lFormatOptions);
validateResultAgainstSchema(pResult);
return await reportWrap(pResult, lFormatOptions);
}