From 0e94e749b03244e5bfb216429b67a24003b4ea39 Mon Sep 17 00:00:00 2001 From: thomas Date: Mon, 1 Apr 2024 20:25:58 +0200 Subject: [PATCH] feat: add leaderboard --- docs/astro.config.mjs | 26 ++++++------- docs/src/components/github/github-store.ts | 4 ++ .../leaderboard/LeaderboardAnswer.svelte | 38 +++++++++++-------- .../leaderboard/LeaderboardChallenge.svelte | 34 ++++++++++------- .../leaderboard/LeaderboardCommit.svelte | 38 +++++++++++-------- 5 files changed, 84 insertions(+), 56 deletions(-) diff --git a/docs/astro.config.mjs b/docs/astro.config.mjs index 98f28c0..bce29de 100644 --- a/docs/astro.config.mjs +++ b/docs/astro.config.mjs @@ -54,19 +54,19 @@ export default defineConfig({ ru: 'Руководство' } }, - // { - // label: 'Leaderboard', - // autogenerate: { - // directory: 'leaderboard', - // collapsed: true - // }, - // translations: { - // es: 'Leaderboard', - // fr: 'Leaderboard', - // pt: 'Leaderboard', - // ru: 'Leaderboard' - // } - // }, + { + label: 'Leaderboard', + autogenerate: { + directory: 'leaderboard', + collapsed: true + }, + translations: { + es: 'Leaderboard', + fr: 'Leaderboard', + pt: 'Leaderboard', + ru: 'Leaderboard' + } + }, { label: 'Challenges', autogenerate: { diff --git a/docs/src/components/github/github-store.ts b/docs/src/components/github/github-store.ts index f3e027c..d186634 100644 --- a/docs/src/components/github/github-store.ts +++ b/docs/src/components/github/github-store.ts @@ -1,6 +1,7 @@ import { derived, writable } from 'svelte/store'; export const token = writable(null); +export const isConnected = writable(false); export const isLoading = writable(true); export const error = writable(false); @@ -18,6 +19,9 @@ export function loadToken() { const persistedToken = localStorage.getItem(TOKEN_KEY); if (persistedToken) { token.set(JSON.parse(persistedToken)); + isConnected.set(true); + } else { + isConnected.set(false); } } diff --git a/docs/src/components/leaderboard/LeaderboardAnswer.svelte b/docs/src/components/leaderboard/LeaderboardAnswer.svelte index 9f56ef4..e18997c 100644 --- a/docs/src/components/leaderboard/LeaderboardAnswer.svelte +++ b/docs/src/components/leaderboard/LeaderboardAnswer.svelte @@ -1,7 +1,7 @@ -{#if loading} - -{:else if error} -

Error: {error}

+{#if !$isConnected} +
Log in to Github to see the list
{:else} -
- {#each users as { avatar, count, login,challengeNumber }, index} - - {count} Answers -
{challengeNumber.join(', ')}
-
- {/each} -
+ {#if loading} + + {:else if error} +

Error: {error}

+ {:else} +
+ {#each users as { avatar, count, login, challengeNumber }, index} + + {count} Answers +
{challengeNumber.join(', ')}
+
+ {/each} +
+ {/if} {/if}