diff --git a/AquaNet/src/libs/ui.ts b/AquaNet/src/libs/ui.ts index cf1f7173..01abddf4 100644 --- a/AquaNet/src/libs/ui.ts +++ b/AquaNet/src/libs/ui.ts @@ -31,7 +31,7 @@ export function registerChart() { ) } -export function renderCal(el: HTMLElement, d: {date: any, value: any}[]) { +export function renderCal(el: HTMLElement, d: {date: any, value: any}[]): Promise { const cal = new CalHeatmap() return cal.paint({ itemSelector: el, diff --git a/AquaNet/src/pages/UserHome.svelte b/AquaNet/src/pages/UserHome.svelte index cb3fc464..70191ded 100644 --- a/AquaNet/src/pages/UserHome.svelte +++ b/AquaNet/src/pages/UserHome.svelte @@ -9,13 +9,11 @@ import { DATA, GAME } from "../libs/sdk"; import { type GameName, getMult } from "../libs/scoring"; import StatusOverlays from "../components/StatusOverlays.svelte"; - import { onMount } from "svelte"; registerChart() export let username: string; - export let game: GameName - game = game || "mai2" + export let game: GameName = "mai2" let calElement: HTMLElement let error: string | null; title(`User ${username}`) @@ -26,7 +24,7 @@ user: GenericGameSummary, trend: TrendEntry[] recent: MusicAndPlay[] - } | null = null + } | null Promise.all([ GAME.userSummary(username, game), @@ -41,15 +39,10 @@ trend: trend.filter(it => it.date >= minDate), recent: user.recent.map(it => {return {...music[it.musicId], ...it}}) } - localStorage.setItem("tmp-user-details", JSON.stringify(d)) - renderCal(calElement, trend.map(it => {return {date: it.date, value: it.plays}})) - - // When the calendar is rendered, scroll horizontally to the rightmost - const scrollCal = () => calElement.scrollLeft = calElement.scrollWidth - calElement.clientWidth - setTimeout(() => { - if (calElement) scrollCal() - else setTimeout(scrollCal, 300) - }, 300) + renderCal(calElement, trend.map(it => {return {date: it.date, value: it.plays}})).then(() => { + // Scroll to the rightmost + calElement.scrollLeft = calElement.scrollWidth - calElement.clientWidth + }) }).catch((e) => error = e.message); const games = {chu3: 'Chuni', mai2: 'Mai', ongeki: 'Ongeki'} @@ -191,7 +184,7 @@ { r.notes?.[r.level === 10 ? 0 : r.level]?.lv?.toFixed(1) ?? r.level ?? '0'} - + {("" + getMult(r.achievement, game)[2]).replace("p", "+")} {(r.achievement / 10000).toFixed(2)}%