[F] Fix code suggestions

Closes #20
pull/21/head
Azalea 2024-03-05 14:25:11 -05:00
parent 2b749af917
commit 55804be70e
2 changed files with 8 additions and 15 deletions

View File

@ -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<any> {
const cal = new CalHeatmap() const cal = new CalHeatmap()
return cal.paint({ return cal.paint({
itemSelector: el, itemSelector: el,

View File

@ -9,13 +9,11 @@
import { DATA, GAME } from "../libs/sdk"; import { DATA, GAME } from "../libs/sdk";
import { type GameName, getMult } from "../libs/scoring"; import { type GameName, getMult } from "../libs/scoring";
import StatusOverlays from "../components/StatusOverlays.svelte"; import StatusOverlays from "../components/StatusOverlays.svelte";
import { onMount } from "svelte";
registerChart() registerChart()
export let username: string; export let username: string;
export let game: GameName export let game: GameName = "mai2"
game = game || "mai2"
let calElement: HTMLElement let calElement: HTMLElement
let error: string | null; let error: string | null;
title(`User ${username}`) title(`User ${username}`)
@ -26,7 +24,7 @@
user: GenericGameSummary, user: GenericGameSummary,
trend: TrendEntry[] trend: TrendEntry[]
recent: MusicAndPlay[] recent: MusicAndPlay[]
} | null = null } | null
Promise.all([ Promise.all([
GAME.userSummary(username, game), GAME.userSummary(username, game),
@ -41,15 +39,10 @@
trend: trend.filter(it => it.date >= minDate), trend: trend.filter(it => it.date >= minDate),
recent: user.recent.map(it => {return {...music[it.musicId], ...it}}) 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}})).then(() => {
renderCal(calElement, trend.map(it => {return {date: it.date, value: it.plays}})) // Scroll to the rightmost
calElement.scrollLeft = calElement.scrollWidth - calElement.clientWidth
// 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)
}).catch((e) => error = e.message); }).catch((e) => error = e.message);
const games = {chu3: 'Chuni', mai2: 'Mai', ongeki: 'Ongeki'} const games = {chu3: 'Chuni', mai2: 'Mai', ongeki: 'Ongeki'}
@ -191,7 +184,7 @@
<span class={`lv level-${r.level === 10 ? 3 : r.level}`}> <span class={`lv level-${r.level === 10 ? 3 : r.level}`}>
{ r.notes?.[r.level === 10 ? 0 : r.level]?.lv?.toFixed(1) ?? r.level ?? '0'} { r.notes?.[r.level === 10 ? 0 : r.level]?.lv?.toFixed(1) ?? r.level ?? '0'}
</span> </span>
<span class={"rank-" + ("" + getMult(r.achievement, game)[2])[0]}> <span class={`rank-${getMult(r.achievement, game)[2].toString()[0]}`}>
<span class="rank-text">{("" + getMult(r.achievement, game)[2]).replace("p", "+")}</span> <span class="rank-text">{("" + getMult(r.achievement, game)[2]).replace("p", "+")}</span>
<span class="rank-num">{(r.achievement / 10000).toFixed(2)}%</span> <span class="rank-num">{(r.achievement / 10000).toFixed(2)}%</span>
</span> </span>