From 0dd7315621c77dbc7d2dd407958e72ba1eaf9099 Mon Sep 17 00:00:00 2001 From: EETagent Date: Sun, 1 Jan 2023 16:16:40 +0100 Subject: [PATCH 1/2] feat: add csv to API --- frontend/src/lib/@api/admin.ts | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/frontend/src/lib/@api/admin.ts b/frontend/src/lib/@api/admin.ts index 5fd7321..d77f283 100644 --- a/frontend/src/lib/@api/admin.ts +++ b/frontend/src/lib/@api/admin.ts @@ -120,3 +120,23 @@ export const apiFetchCandidate = async (id: number, fetchSsr?: Fetch): Promise => { + const apiFetch = fetchSsr || fetch; + try { + const res = await apiFetch(API_URL + '/admin/list/candidates_csv', { + method: 'GET', + credentials: 'include' + }); + if (res.status != 200) { + throw Error(await res.text()); + } + return await res.blob(); + } catch (e) { + throw errorHandler(e, 'List candidates CSV failed'); + } +}; From dafb23cde3688f3eb3ffbfbf4a7ca3d26c5751b5 Mon Sep 17 00:00:00 2001 From: EETagent Date: Sun, 1 Jan 2023 16:16:50 +0100 Subject: [PATCH 2/2] feat: download csv on admin page --- .../(authenticated)/dashboard/+page.svelte | 24 ++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/frontend/src/routes/(admin)/admin/(authenticated)/dashboard/+page.svelte b/frontend/src/routes/(admin)/admin/(authenticated)/dashboard/+page.svelte index c50249c..ad4d307 100644 --- a/frontend/src/routes/(admin)/admin/(authenticated)/dashboard/+page.svelte +++ b/frontend/src/routes/(admin)/admin/(authenticated)/dashboard/+page.svelte @@ -1,5 +1,5 @@ {#if createCandidateModal} @@ -99,9 +112,14 @@ + {#if scrollTop > 200}
@@ -113,7 +131,7 @@
{/if} - deleteCandidate(event.detail.id)} /> +
deleteCandidate(event.detail.id)} />