UNPKG

@codechecks/lighthouse-keeper

Version:

Keep an eye on Google Lighthouse score changes

43 lines 1.43 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const lodash_1 = require("lodash"); function compareReports(base, head) { const metricsComparison = compareMetrics(base ? base.metrics : {}, head.metrics); const failedAudits = getNewFailedAudits(base ? base.audits : [], head.audits); return { metricsComparison, failedAudits, }; } exports.compareReports = compareReports; function compareMetrics(base, head) { function diffFor(key, name) { if (!head[key]) { return undefined; } return { name, key, value: head[key], diff: head[key] - (base[key] || 0), }; } return [ diffFor("performance", "Performance"), diffFor("accessibility", "Accessibility"), diffFor("best-practices", "Best practices"), diffFor("seo", "SEO"), diffFor("pwa", "PWA"), ].filter(d => Boolean(d)); } function getNewFailedAudits(base, head) { function getFailedAudits(audits) { const failedAudits = audits.filter(a => a.score === 0); return failedAudits; } const failedBaseAudits = getFailedAudits(base); const failedHeadAudits = getFailedAudits(head); const newFailedAudits = lodash_1.differenceBy(failedHeadAudits, failedBaseAudits, "id"); return newFailedAudits; } //# sourceMappingURL=compareReports.js.map