From cec0115a9e6fc65f34aaeb652f47407142279185 Mon Sep 17 00:00:00 2001 From: Kaden Emley Date: Mon, 29 Jul 2024 15:31:28 -0400 Subject: [PATCH] add ability to navigate from vulns to components Signed-off-by: Kaden Emley --- .../cards/controltable/ControlRowCol.vue | 20 + .../cards/sbomview/ComponentTable copy.vue | 450 ------------------ .../cards/sbomview/ComponentTable.vue | 130 +++-- apps/frontend/src/router.ts | 17 +- apps/frontend/src/views/SbomView.vue | 75 +-- 5 files changed, 118 insertions(+), 574 deletions(-) delete mode 100644 apps/frontend/src/components/cards/sbomview/ComponentTable copy.vue diff --git a/apps/frontend/src/components/cards/controltable/ControlRowCol.vue b/apps/frontend/src/components/cards/controltable/ControlRowCol.vue index 81d9a17639..c8ad4f3cc7 100644 --- a/apps/frontend/src/components/cards/controltable/ControlRowCol.vue +++ b/apps/frontend/src/components/cards/controltable/ControlRowCol.vue @@ -28,6 +28,11 @@ class="pa-2 mono pre-formatted" v-html="sanitize_html(result.code_desc.trim())" /> + See component details mdi-view-list-outline @@ -78,6 +83,21 @@ export default class ControlRowCol extends mixins(HtmlSanitizeMixin) { get resultMessage(): string | undefined { return this.result.message || this.result.skip_message; } + + get componentRef(): string | undefined { + const matches = this.result.message?.match(/- bom-ref: (?.+)$/m); + if (matches) { + return matches.groups?.ref; + } + } + + goToComponent() { + if (this.componentRef) + this.$router.push({ + name: 'sbom', + params: {componentRef: this.componentRef} + }); + } } diff --git a/apps/frontend/src/components/cards/sbomview/ComponentTable copy.vue b/apps/frontend/src/components/cards/sbomview/ComponentTable copy.vue deleted file mode 100644 index 8e02de80b1..0000000000 --- a/apps/frontend/src/components/cards/sbomview/ComponentTable copy.vue +++ /dev/null @@ -1,450 +0,0 @@ - - - - - diff --git a/apps/frontend/src/components/cards/sbomview/ComponentTable.vue b/apps/frontend/src/components/cards/sbomview/ComponentTable.vue index 066af4b191..fd2d2d83e7 100644 --- a/apps/frontend/src/components/cards/sbomview/ComponentTable.vue +++ b/apps/frontend/src/components/cards/sbomview/ComponentTable.vue @@ -18,6 +18,7 @@ :items-per-page="-1" :item-key="'bom-ref'" :search="search" + :expanded.sync="expanded" show-expand single-expand hide-default-footer @@ -34,6 +35,7 @@ multiple :items="stringFields" /> + +