diff --git a/client/src/app/components/SeverityShieldAndText.tsx b/client/src/app/components/SeverityShieldAndText.tsx index f5920b1e5..50e41fd00 100644 --- a/client/src/app/components/SeverityShieldAndText.tsx +++ b/client/src/app/components/SeverityShieldAndText.tsx @@ -8,12 +8,16 @@ import type { ExtendedSeverity } from "@app/api/models"; interface SeverityShieldAndTextProps { value: ExtendedSeverity; - hideLabel?: boolean; + score: number | null; + showScore?: boolean; + showLabel?: boolean; } export const SeverityShieldAndText: React.FC = ({ value, - hideLabel, + score, + showScore, + showLabel, }) => { const severityProps = severityList[value]; const label = severityProps.name; @@ -26,15 +30,16 @@ export const SeverityShieldAndText: React.FC = ({ style={{ whiteSpace: "nowrap" }} > - {hideLabel ? ( + {showLabel ? ( + + ) : ( - ) : ( - )} - {!hideLabel && {label}} + {showLabel && {label}} + {showScore && score !== null && ({score})} ); }; diff --git a/client/src/app/hooks/domain-controls/useVulnerabilitiesOfPackage.ts b/client/src/app/hooks/domain-controls/useVulnerabilitiesOfPackage.ts index 711c32374..88457e390 100644 --- a/client/src/app/hooks/domain-controls/useVulnerabilitiesOfPackage.ts +++ b/client/src/app/hooks/domain-controls/useVulnerabilitiesOfPackage.ts @@ -19,13 +19,19 @@ const areVulnerabilityOfPackageEqual = ( }; interface FlatVulnerabilityOfPackage { - vulnerability: VulnerabilityHead & { average_severity: ExtendedSeverity }; + vulnerability: VulnerabilityHead & { + average_severity: ExtendedSeverity; + average_score: number; + }; vulnerabilityStatus: VulnerabilityStatus; advisory: PurlAdvisory; } interface VulnerabilityOfPackage { - vulnerability: VulnerabilityHead & { average_severity: ExtendedSeverity }; + vulnerability: VulnerabilityHead & { + average_severity: ExtendedSeverity; + average_score: number; + }; vulnerabilityStatus: VulnerabilityStatus; relatedSboms: { advisory: PurlAdvisory; @@ -70,6 +76,7 @@ const advisoryToModels = (advisories: PurlAdvisory[]) => { vulnerability: { ...pkgStatus.vulnerability, average_severity: extendedSeverity, + average_score: pkgStatus.average_score, }, vulnerabilityStatus: pkgStatus.status as VulnerabilityStatus, advisory: advisory, diff --git a/client/src/app/pages/advisory-details/overview.tsx b/client/src/app/pages/advisory-details/overview.tsx index 0c17ea92c..e4154faa2 100644 --- a/client/src/app/pages/advisory-details/overview.tsx +++ b/client/src/app/pages/advisory-details/overview.tsx @@ -50,6 +50,9 @@ export const Overview: React.FC = ({ advisory }) => { value={extendedSeverityFromSeverity( advisory.average_severity as Severity, )} + score={advisory.average_score} + showLabel + showScore /> diff --git a/client/src/app/pages/advisory-details/vulnerabilities-by-advisory.tsx b/client/src/app/pages/advisory-details/vulnerabilities-by-advisory.tsx index 19c2721d0..9f5a2067f 100644 --- a/client/src/app/pages/advisory-details/vulnerabilities-by-advisory.tsx +++ b/client/src/app/pages/advisory-details/vulnerabilities-by-advisory.tsx @@ -134,7 +134,12 @@ export const VulnerabilitiesByAdvisory: React.FC< {...getTdProps({ columnKey: "score" })} > {item.severity && ( - + )} { {item.average_severity && ( )} diff --git a/client/src/app/pages/package-details/vulnerabilities-by-package.tsx b/client/src/app/pages/package-details/vulnerabilities-by-package.tsx index b09b061d0..bd2062ff2 100644 --- a/client/src/app/pages/package-details/vulnerabilities-by-package.tsx +++ b/client/src/app/pages/package-details/vulnerabilities-by-package.tsx @@ -152,6 +152,9 @@ export const VulnerabilitiesByPackage: React.FC< {item.vulnerability?.average_severity && ( )} diff --git a/client/src/app/pages/sbom-details/vulnerabilities-by-sbom.tsx b/client/src/app/pages/sbom-details/vulnerabilities-by-sbom.tsx index 946cbbf06..7ec46628e 100644 --- a/client/src/app/pages/sbom-details/vulnerabilities-by-sbom.tsx +++ b/client/src/app/pages/sbom-details/vulnerabilities-by-sbom.tsx @@ -290,6 +290,9 @@ export const VulnerabilitiesBySbom: React.FC = ({ value={extendedSeverityFromSeverity( item.vulnerability.average_severity, )} + score={item.vulnerability.average_score} + showLabel + showScore /> { value={extendedSeverityFromSeverity( vulnerability.average_severity, )} + score={vulnerability.average_score} + showLabel + showScore /> )} diff --git a/client/src/app/pages/vulnerability-list/vulnerability-table.tsx b/client/src/app/pages/vulnerability-list/vulnerability-table.tsx index acc1ed3b6..b6accc506 100644 --- a/client/src/app/pages/vulnerability-list/vulnerability-table.tsx +++ b/client/src/app/pages/vulnerability-list/vulnerability-table.tsx @@ -86,6 +86,9 @@ export const VulnerabilityTable: React.FC = () => { value={extendedSeverityFromSeverity( item.average_severity, )} + score={item.average_score} + showLabel + showScore />