Adding logic to filter by vulnerability severity.

This commit is contained in:
Federico Builes
2022-05-31 16:50:39 +02:00
parent e622e72c6f
commit f0a04841ce
8 changed files with 8510 additions and 8 deletions
+25
View File
@@ -0,0 +1,25 @@
import { Changes } from './schemas'
import { Severity, SEVERITIES } from './config'
export function filterChangesBySeverity(severity: Severity, changes: Changes): Changes {
const severityIdx = SEVERITIES.indexOf(severity)
for (let change of changes) {
if (change === undefined ||
change.vulnerabilities === undefined ||
change.vulnerabilities.length === 0) {
continue
}
change.vulnerabilities = change.vulnerabilities.filter((vuln: any) => {
const vulnIdx = SEVERITIES.indexOf(vuln.severity)
if (vulnIdx <= severityIdx) {
return true
}
})
}
// don't want to deal with changes with no vulnerabilities
changes = changes.filter((change: any) => change.vulnerabilities.length > 0)
return changes
}