Fix bug where session dropdowns would do nothing.

This commit is contained in:
zkldi
2021-11-13 21:20:21 +00:00
parent 11c51c4a93
commit 0c7d7aa930
2 changed files with 14 additions and 2 deletions
@@ -8,7 +8,7 @@ import { APIFetchV1 } from "util/api";
import { SpecificSessionReturns } from "types/api-returns";
import Loading from "components/util/Loading";
import DebugContent from "components/util/DebugContent";
import { CreateChartMap, CreateChartIDMap, CreateSongMap } from "util/data";
import { CreateChartMap, CreateChartIDMap, CreateSongMap, CreateScoreIDMap } from "util/data";
import {
Lamps,
Grades,
@@ -236,7 +236,7 @@ function SessionScoreStatBreakdown({
}) {
const songMap = CreateSongMap(sessionData.songs);
const chartMap = CreateChartMap(sessionData.charts);
const scoreMap = CreateChartIDMap(sessionData.scores);
const scoreMap = CreateScoreIDMap(sessionData.scores);
const [newLamps, newGrades] = useMemo(() => {
const newLamps: Partial<Record<
@@ -280,6 +280,7 @@ function SessionScoreStatBreakdown({
}
}
}
return [newLamps, newGrades];
}, [chartIDs, filter]);
+11
View File
@@ -7,6 +7,7 @@ import {
SongDocument,
ScoreDocument,
PublicUserDocument,
PBScoreDocument,
} from "tachi-common";
export function GetPBs(scoreInfo: SessionScoreInfo[]) {
@@ -53,6 +54,16 @@ export function CreateChartMap<I extends IDStrings = IDStrings>(charts: ChartDoc
return chartMap;
}
export function CreateScoreIDMap<I extends IDStrings = IDStrings>(scores: ScoreDocument<I>[]) {
const scoreMap = new Map<string, ScoreDocument<I>>();
for (const score of scores) {
scoreMap.set(score.scoreID, score);
}
return scoreMap;
}
export function CreateChartLink(chart: ChartDocument, game: Game) {
if (chart.isPrimary) {
return `/dashboard/games/${game}/${chart.playtype}/songs/${