dependency-cruiser
Version:
Validate and visualize dependencies. With your rules. JavaScript, TypeScript, CoffeeScript. ES6, CommonJS, AMD.
16 lines (14 loc) • 465 B
JavaScript
import { readFile } from "node:fs/promises";
import { extname } from "node:path";
import json5 from "json5";
export default async function readConfig(pAbsolutePathToConfigFile) {
if (
[".js", ".cjs", ".mjs", ""].includes(extname(pAbsolutePathToConfigFile))
) {
const { default: config } = await import(
`file://${pAbsolutePathToConfigFile}`
);
return config;
}
return json5.parse(await readFile(pAbsolutePathToConfigFile, "utf8"));
}