review-edit-auto
Version:
scan your project, only review edited code in given time-range automatic
26 lines (20 loc) • 732 B
text/typescript
import getChanged from '../git/getChanged';
import execLint from './execLint';
import scan from './scan';
import {ILintRes, IScanParams} from './types';
const path = require('path');
/**
* 执行lint
* @param {*} scanParam 扫描参数
* @param {*} min 最小代码复杂度 , 大于此值不会被添加到结果
*/
export default async function Lint(scanParam: IScanParams): Promise<{
fileCount: number;
result: ILintRes[];
}> {
const {since, min, filterLv, useOutRc} = scanParam;
const files = await scan(scanParam);
const changedFiles = await getChanged(since);
const needLintFiles = changedFiles.filter((i: string) => files.includes(i));
return execLint(needLintFiles, min, since, filterLv, useOutRc);
}