diff --git a/client/src/app/pages/vulnerability-list/vulnerability-context.tsx b/client/src/app/pages/vulnerability-list/vulnerability-context.tsx index f63ce83d..c614772c 100644 --- a/client/src/app/pages/vulnerability-list/vulnerability-context.tsx +++ b/client/src/app/pages/vulnerability-list/vulnerability-context.tsx @@ -17,9 +17,7 @@ import { useFetchVulnerabilities } from "@app/queries/vulnerabilities"; interface IVulnerabilitySearchContext { tableControls: ITableControls< VulnerabilitySummary, - "packages" | "identifier" | "title" | "severity" | "sboms" | "advisories", - never, - "" | "average_severity", + "packages" | "name" | "sboms" | "description" | "published" | "cvss", never, "" | "average_severity", string >; @@ -44,12 +42,12 @@ export const VulnerabilitySearchProvider: React.FunctionComponent< tableName: "vulnerability", persistenceKeyPrefix: TablePersistenceKeyPrefixes.vulnerabilities, columnNames: { - identifier: "Identifier", - title: "Title", - severity: "Severity", + name: "Name", + description: "Description", + cvss: "CVSS", + published: "Published", packages: "Packages", sboms: "SBOMs", - advisories: "Advisories", }, isPaginationEnabled: true, isSortEnabled: true, @@ -64,8 +62,8 @@ export const VulnerabilitySearchProvider: React.FunctionComponent< }, { categoryKey: "average_severity", - title: "Severity", - placeholderText: "Severity", + title: "CVSS", + placeholderText: "CVSS", type: FilterType.multiselect, selectOptions: [ { value: "none", label: "None" }, @@ -76,8 +74,7 @@ export const VulnerabilitySearchProvider: React.FunctionComponent< ], }, ], - isExpansionEnabled: true, - expandableVariant: "compound", + isExpansionEnabled: false, }); const { @@ -90,6 +87,7 @@ export const VulnerabilitySearchProvider: React.FunctionComponent< hubSortFieldKeys: { identifier: "identifier", severity: "average_score", + published: "published", }, }) ); diff --git a/client/src/app/pages/vulnerability-list/vulnerability-table.tsx b/client/src/app/pages/vulnerability-list/vulnerability-table.tsx index 02859eda..85e087b1 100644 --- a/client/src/app/pages/vulnerability-list/vulnerability-table.tsx +++ b/client/src/app/pages/vulnerability-list/vulnerability-table.tsx @@ -3,20 +3,8 @@ import { NavLink } from "react-router-dom"; import { AxiosError } from "axios"; -import { - Card, - CardBody, - CardTitle, - DescriptionList, - DescriptionListDescription, - DescriptionListGroup, - DescriptionListTerm, - Grid, - GridItem, -} from "@patternfly/react-core"; import { ActionsColumn, - ExpandableRowContent, Table, Tbody, Td, @@ -26,7 +14,6 @@ import { } from "@patternfly/react-table"; import { VulnerabilitySummary } from "@app/client"; -import { LoadingWrapper } from "@app/components/LoadingWrapper"; import { NotificationsContext } from "@app/components/NotificationsContext"; import { SeverityShieldAndText } from "@app/components/SeverityShieldAndText"; import { SimplePagination } from "@app/components/SimplePagination"; @@ -35,15 +22,9 @@ import { TableHeaderContentWithControls, TableRowContentWithControls, } from "@app/components/TableControls"; -import { - useDeleteVulnerabilityMutation, - useFetchVulnerabilityById, -} from "@app/queries/vulnerabilities"; +import { useDeleteVulnerabilityMutation } from "@app/queries/vulnerabilities"; import { formatDate } from "@app/utils/utils"; -import { AdvisoriesByVulnerability } from "../vulnerability-details/advisories-by-vulnerability"; -import { PackagesByVulnerability } from "../vulnerability-details/packages-by-vulnerability"; -import { SbomsByVulnerability } from "../vulnerability-details/sboms-by-vulnerability"; import { VulnerabilitySearchContext } from "./vulnerability-context"; export const VulnerabilityTable: React.FC = () => { @@ -87,16 +68,16 @@ export const VulnerabilityTable: React.FC = () => { return ( <> - +
- @@ -115,15 +96,7 @@ export const VulnerabilityTable: React.FC = () => { item={item} rowIndex={rowIndex} > - - - + {...getTdProps({ columnKey: "packages" })} + > + - {isCellExpanded(item) ? ( - - - - ) : null} ); })} @@ -316,34 +156,3 @@ export const VulnerabilityTable: React.FC = () => { ); }; - -export const PackagesByVulnerabilityWrapper: React.FC<{ - vulnerabilityId: string; -}> = ({ vulnerabilityId }) => { - const { vulnerability, isFetching, fetchError } = - useFetchVulnerabilityById(vulnerabilityId); - return ( - - - - ); -}; - -export const SbomsByVulnerabilityWrapper: React.FC<{ - vulnerabilityId: string; -}> = ({ vulnerabilityId }) => { - const { vulnerability, isFetching, fetchError } = - useFetchVulnerabilityById(vulnerabilityId); - return ( - - - - ); -};
- - + + + + -
+ {item.identifier} @@ -131,11 +104,11 @@ export const VulnerabilityTable: React.FC = () => { {item.title || item.description} + {item.average_severity && ( )} @@ -143,165 +116,32 @@ export const VulnerabilityTable: React.FC = () => { - Packages + {formatDate(item?.published)} - SBOMs - - Advisories - - deleteVulnerabilityByIdMutation.mutate( + onClick: () => { + return deleteVulnerabilityByIdMutation.mutate( item.identifier - ), + ); + }, }, ]} />
- -
- {isCellExpanded(item, "identifier") ? ( - <> - - - - General view - - - - - Published - - - {formatDate(item.published)} - - - - - Modified - - - {formatDate(item.modified)} - - - - - Released - - - {formatDate(item.released)} - - - - - Withdrawn - - - {formatDate(item.withdrawn)} - - - - - - - - - Additional info - - - - - CWE - - - {"item.cwe"} - - - - - Non normative - - - {item.normative ? "Yes" : "No"} - - - - - - - - - ) : null} - {isCellExpanded(item, "packages") ? ( - <> - - - ) : null} - {isCellExpanded(item, "sboms") ? ( - <> - - - ) : null} - {isCellExpanded(item, "advisories") ? ( - <> - - - ) : null} -
-
-