debt-collector
Version:
a nodejs tool to identify, track and mesure technical debt
25 lines (24 loc) • 863 B
JavaScript
import { useArrayForStringKeys } from '../utils/index.js';
export const sanitizeConfig = (userConfig) => {
let sanitizedConfig = userConfig;
sanitizedConfig = useArrayForStringKeys(['include', 'exclude'], sanitizedConfig);
const defaultFileRuleConfig = {
include: '**/*',
matchRule: () => 1,
};
let fileRules = null;
if (sanitizedConfig.fileRules && sanitizedConfig.fileRules.length > 0) {
fileRules = sanitizedConfig.fileRules.map((rule) => {
let sanitizedRule = {
...defaultFileRuleConfig,
...rule,
};
sanitizedRule = useArrayForStringKeys(['include', 'exclude', 'tags'], sanitizedRule);
return sanitizedRule;
});
}
if (fileRules) {
sanitizedConfig.fileRules = fileRules;
}
return sanitizedConfig;
};