From 688f4d7b658b0add5134c7373db710e532caccb1 Mon Sep 17 00:00:00 2001 From: Bob Date: Wed, 7 Aug 2024 20:38:34 +0800 Subject: [PATCH] problem: merits and satflow graph/table has a limited number of colors --- src/components/MeritsAndSatflow.svelte | 13 ++++++++- src/components/Pie.svelte | 37 +++++++++++++++++--------- 2 files changed, 36 insertions(+), 14 deletions(-) diff --git a/src/components/MeritsAndSatflow.svelte b/src/components/MeritsAndSatflow.svelte index c7d10b5..13b2f91 100644 --- a/src/components/MeritsAndSatflow.svelte +++ b/src/components/MeritsAndSatflow.svelte @@ -55,7 +55,18 @@ merits.set(_merits); } - const COLORS = ['bg-pink-800', 'bg-red-800', 'bg-purple-800', 'bg-blue-800']; + const COLORS = [ + 'bg-rose-500', + 'bg-pink-500', + 'bg-teal-500', + 'bg-orange-500', + 'bg-purple-500', + 'bg-sky-500', + 'bg-green-500', + 'bg-yellow-500', + 'bg-zinc-500', + 'bg-light-500' + ]; function c(i: number) { return COLORS[i]; diff --git a/src/components/Pie.svelte b/src/components/Pie.svelte index 92fcc2a..c8554c3 100644 --- a/src/components/Pie.svelte +++ b/src/components/Pie.svelte @@ -2,12 +2,23 @@ import { ndk } from '@/ndk.js'; import { Chart } from 'flowbite-svelte'; import { writable } from 'svelte/store'; - export let data:{pubkey: string; merits: number; sats: number}[] + export let data: { pubkey: string; merits: number; sats: number }[]; - let pubkeys = Array.from(data,(x)=>x.pubkey) + let pubkeys = Array.from(data, (x) => x.pubkey); let options = { - series: Array.from(data,(x)=>x.merits), - colors: ['#9d174d', '#991b1b', '#6b21a8', '#1e40af'], + series: Array.from(data, (x) => x.merits), + colors: [ + '#f43f5e', + '#ec4899', + '#14b8a6', + '#f97316', + '#a855f7', + '#0ea5e9', + '#22c55e', + '#eab308', + '#71717a', + '#f2f2f2' + ], chart: { height: 320, width: '100%', @@ -88,22 +99,22 @@ } }; - let o = writable(options) + let o = writable(options); $: { - let usernames:string[] = [] + let usernames: string[] = []; for (let pk of pubkeys) { - let user = $ndk.getUser({pubkey:pk}) + let user = $ndk.getUser({ pubkey: pk }); if (user && user.profile && user.profile.name) { - usernames.push(user.profile.name) + usernames.push(user.profile.name); } else { - usernames.push(user.npub.substring(0, 10)) + usernames.push(user.npub.substring(0, 10)); } } - o.update(existing=>{ - existing.labels = usernames - return existing - }) + o.update((existing) => { + existing.labels = usernames; + return existing; + }); } //