@toolsjs-cli/build-analyzer
Version:
构建分析工具,支持增量构建分析、大小分析等功能
18 lines (17 loc) • 684 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.DiffAnalyzer = void 0;
class DiffAnalyzer {
analyze(current, last) {
const currentMap = new Map(current.map(c => [c.filepath, c]));
const lastMap = new Map(last.map(l => [l.filepath, l]));
const add = current.filter(c => !lastMap.has(c.filepath));
const update = current.filter(c => {
const lastFile = lastMap.get(c.filepath);
return lastFile && lastFile.hash !== c.hash;
});
const remove = last.filter(l => !currentMap.has(l.filepath));
return { add, update, remove };
}
}
exports.DiffAnalyzer = DiffAnalyzer;