From 7c5725f7ec0eb6e1db178ac71c47c68aae8c0d89 Mon Sep 17 00:00:00 2001 From: Tom Mirwald <40235770+70mm1@users.noreply.github.com> Date: Thu, 10 Aug 2023 10:24:12 +0200 Subject: [PATCH] 34 provide a way to jump from a resource to all assessment results of the particular resource (#38) * Add filterResourceId query parameter * Fix filterResourceId check * Add button to jump to assessment results * Add results as PageData --- .../(app)/cloud/[id]/assessments/+page.svelte | 13 ++++-- .../(app)/cloud/[id]/assessments/+page.ts | 20 +++++---- .../(app)/cloud/[id]/resources/+page.svelte | 42 ++++++++++++++++--- .../(app)/cloud/[id]/resources/+page.ts | 17 ++++++++ 4 files changed, 75 insertions(+), 17 deletions(-) create mode 100644 src/routes/(app)/cloud/[id]/resources/+page.ts diff --git a/src/routes/(app)/cloud/[id]/assessments/+page.svelte b/src/routes/(app)/cloud/[id]/assessments/+page.svelte index a7d94fd..e216519 100644 --- a/src/routes/(app)/cloud/[id]/assessments/+page.svelte +++ b/src/routes/(app)/cloud/[id]/assessments/+page.svelte @@ -1,9 +1,7 @@ {#if data.resources.length == 0} @@ -141,7 +154,7 @@ scope="col" class="px-3 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider w-40" > - ID + Actions {#each currentData as resource} - + + {#await countAssessmentResults(resource.id) then assessmentResultCount} + + {/await} {resource.properties.name} diff --git a/src/routes/(app)/cloud/[id]/resources/+page.ts b/src/routes/(app)/cloud/[id]/resources/+page.ts new file mode 100644 index 0000000..1e8f218 --- /dev/null +++ b/src/routes/(app)/cloud/[id]/resources/+page.ts @@ -0,0 +1,17 @@ +import { listCloudServiceAssessmentResults } from '$lib/api/orchestrator'; + +import { error } from '@sveltejs/kit'; + +import type { PageLoad } from './$types'; + +export const load = (async ({ fetch, params, url }) => { + if (params.id == undefined) { + throw error(405, 'Required parameter missing'); + } + + const results = await listCloudServiceAssessmentResults(params.id, fetch); + + return { + results + }; +}) satisfies PageLoad;