From 2c3027cb49214034b69c8d1226a4b3b5f4e3271c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=B8ran=20Brekke=20Svaland?= Date: Thu, 6 Jul 2023 09:25:20 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=80=20progress=20work=20on=20project?= =?UTF-8?q?=20and=20secrets=20page?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend-dev/src/queries/create_project.ts | 7 +- frontend-dev/src/queries/delete_project.ts | 2 +- .../src/queries/get_all_credentials.ts | 6 +- frontend-dev/src/routes/projects/+page.svelte | 20 +++-- .../projects/modal-submit-new-project.svelte | 16 ++-- frontend-dev/src/routes/secrets/+page.svelte | 83 ++++++++----------- .../secrets/modal-submit-new-secret.svelte | 9 +- frontend-dev/src/stores/stores.ts | 3 +- 8 files changed, 77 insertions(+), 69 deletions(-) diff --git a/frontend-dev/src/queries/create_project.ts b/frontend-dev/src/queries/create_project.ts index ce2e3433..a46dc91e 100644 --- a/frontend-dev/src/queries/create_project.ts +++ b/frontend-dev/src/queries/create_project.ts @@ -1,8 +1,11 @@ import { gql } from 'graphql-request'; const createProjectMutation = gql` - mutation createProject($project: CreateProjectInput) { - createProject(project: $project) + mutation createProject($project: CreateProjectInput!) { + createProject(project: $project) { + name + id + } } `; diff --git a/frontend-dev/src/queries/delete_project.ts b/frontend-dev/src/queries/delete_project.ts index f4ad49d3..476031ee 100644 --- a/frontend-dev/src/queries/delete_project.ts +++ b/frontend-dev/src/queries/delete_project.ts @@ -1,7 +1,7 @@ import { gql } from 'graphql-request'; const deleteProjectMutation = gql` - mutation deleteProject($projectId: String) { + mutation deleteProject($projectId: String!) { deleteProject(projectId: $projectId) } `; diff --git a/frontend-dev/src/queries/get_all_credentials.ts b/frontend-dev/src/queries/get_all_credentials.ts index 833bd9e6..4567cb63 100644 --- a/frontend-dev/src/queries/get_all_credentials.ts +++ b/frontend-dev/src/queries/get_all_credentials.ts @@ -2,7 +2,11 @@ import { gql } from 'graphql-request'; const allCredentialsQuery = gql` query dockerRegistryCredentials { - dockerRegistryCredentials + dockerRegistryCredentials { + name + server + username + } } `; diff --git a/frontend-dev/src/routes/projects/+page.svelte b/frontend-dev/src/routes/projects/+page.svelte index 244d7ca9..77b8526c 100644 --- a/frontend-dev/src/routes/projects/+page.svelte +++ b/frontend-dev/src/routes/projects/+page.svelte @@ -9,6 +9,7 @@ import { graphQLClient } from '../../stores/stores.js'; import allProjectsQuery from '../../queries/get_all_projects.js'; import { get } from 'svelte/store'; + import deleteProjectMutation from '../../queries/delete_project.js'; const getProjectsList = async (): Promise => { await initKeycloak(); @@ -17,10 +18,7 @@ projects: Project[]; }; }>(allProjectsQuery); - //console.log(response.projects); return response.projects; - // TODO:replace with graphql call - return projects; }; const projectsPromise = getProjectsList(); let checkboxes: Record = {}; @@ -30,7 +28,8 @@ .then((value) => { $projectsList = value; $projectsList.forEach((element) => { - checkboxes[element.name] = false; + console.log(element) + checkboxes[element.id] = false; }); }) .catch(() => { @@ -49,10 +48,15 @@ body: 'Enter details of project', }; - // TODO: replace with actual api call - function onDeleteSelected() { + async function onDeleteSelected() { console.log('Deleting ', Object.keys(checkboxes).filter((item) => checkboxes[item])); - console.log('To be implemented'); + Object.keys(checkboxes).filter((item) => checkboxes[item]).forEach(async (element) => { + const variables = { + projectId: element + } + console.log(element) + const response = await get(graphQLClient).request(deleteProjectMutation, variables); + }); } // to disable onclick propogation for checkbox input @@ -97,7 +101,7 @@ {#each projectsList as project} - handleCheckboxClick(event)} /> + handleCheckboxClick(event)} /> {project.name} {project.createdAt} diff --git a/frontend-dev/src/routes/projects/modal-submit-new-project.svelte b/frontend-dev/src/routes/projects/modal-submit-new-project.svelte index 3c079ca7..2142bcbf 100644 --- a/frontend-dev/src/routes/projects/modal-submit-new-project.svelte +++ b/frontend-dev/src/routes/projects/modal-submit-new-project.svelte @@ -1,20 +1,26 @@ diff --git a/frontend-dev/src/routes/secrets/+page.svelte b/frontend-dev/src/routes/secrets/+page.svelte index 30632a9d..6b7fb5ab 100644 --- a/frontend-dev/src/routes/secrets/+page.svelte +++ b/frontend-dev/src/routes/secrets/+page.svelte @@ -1,11 +1,14 @@ @@ -63,6 +54,9 @@

Secrets

+ {#await credentialsPromise} +

Loading credentials...

+ {:then credentialsPromise} @@ -71,26 +65,21 @@ - - - + - {#each secrets as secret, i} + {#each credentialsList as secret} - - + {/each}
Name UsernameHostPasswordServer
{secret.name} {secret.username}{secret.host} onmousedown(secret.password, i)} - on:mouseup={() => onmouseup(i)}>{password_values[i]}{secret.server}
+ {/await}
diff --git a/frontend-dev/src/routes/secrets/modal-submit-new-secret.svelte b/frontend-dev/src/routes/secrets/modal-submit-new-secret.svelte index f8464183..99df9fd8 100644 --- a/frontend-dev/src/routes/secrets/modal-submit-new-secret.svelte +++ b/frontend-dev/src/routes/secrets/modal-submit-new-secret.svelte @@ -23,7 +23,8 @@ - + + {#if $modalStore[0]}