diff --git a/frontend/src/lib/@api/candidate.ts b/frontend/src/lib/@api/candidate.ts index 61fde39..212b8c9 100644 --- a/frontend/src/lib/@api/candidate.ts +++ b/frontend/src/lib/@api/candidate.ts @@ -1,5 +1,5 @@ import axios, { type AxiosProgressEvent } from 'axios'; -import type { CandidateData, CandidateLogin } from '$lib/stores/candidate'; +import type { CandidateData, CandidateLogin, CreateCandidate } from '$lib/stores/candidate'; import type { SubmissionProgress } from '$lib/stores/portfolio'; import { API_URL, errorHandler, type Fetch } from '.'; import DOMPurify from 'isomorphic-dompurify'; @@ -12,7 +12,6 @@ export const apiLogout = async (fetchSsr?: Fetch) => { method: 'POST', credentials: 'include' }); - return await res.json(); } catch (e) { throw errorHandler(e, 'Logout failed'); } @@ -52,7 +51,7 @@ export const apiFetchSubmissionProgress = async (fetchSsr?: Fetch): Promise => { +export const apiWhoami = async (fetchSsr?: Fetch): Promise => { const apiFetch = fetchSsr || fetch; try { console.log(API_URL + '/candidate/whoami'); @@ -63,7 +62,7 @@ export const apiWhoami = async (fetchSsr?: Fetch): Promise => { if (res.status != 200) { throw Error(await res.text()); } - return await res.text(); + return await res.json(); } catch (e) { throw errorHandler(e, 'Failed to fetch whoami'); } diff --git a/frontend/src/lib/components/dashboard/DashboardInfoCard.svelte b/frontend/src/lib/components/dashboard/DashboardInfoCard.svelte index db45d0f..8bdc33d 100644 --- a/frontend/src/lib/components/dashboard/DashboardInfoCard.svelte +++ b/frontend/src/lib/components/dashboard/DashboardInfoCard.svelte @@ -1,12 +1,12 @@
-
+
(showDetails = !showDetails)} + on:logout={logout} />
@@ -82,11 +88,23 @@
- - -
-

{title}

+
+

{title}

+ + + +
@@ -103,6 +121,8 @@ }} class="mt-4 flex flex-col justify-between leading-10" > + Ev. č. přihlášky: {$baseCandidateData.applicationId} + Obor: {$candidateData.candidate.study} Adresa: {$candidateData.candidate.address} Datum narození: {$candidateData.candidate.birthdate} { dispatch('download'); }; + + const logout = () => { + dispatch('logout'); + }; {/if} + logout()} + on:keydown={(_) => logout()} + class="icon logoutIcon ml-1 hover:cursor-pointer"> + + +