aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPinapelz <yukais@pinapelz.com>2025-10-23 11:50:05 -0700
committerPinapelz <yukais@pinapelz.com>2025-10-23 11:50:05 -0700
commitdb1140ebce2c1a8ac473a01d719c48c245b00119 (patch)
treeb3e843cc876120e816654f71a7c128d234717a33
parent59ee072b1501608431174f0cf93592c4bc5668a5 (diff)
refactor: more display refactor, remove invisible mainkey mappings
-rw-r--r--frontend/src/components/displays/DancearoundScoreDisplay.tsx2
-rw-r--r--frontend/src/components/displays/DancerushScoreDisplay.tsx2
-rw-r--r--frontend/src/components/displays/DivaScoreDisplay.tsx7
-rw-r--r--frontend/src/components/displays/MusicDiverScoreDisplay.tsx28
-rw-r--r--frontend/src/components/displays/NostalgiaScoreDisplay.tsx32
-rw-r--r--frontend/src/components/displays/ReflecBeatScoreDisplay.tsx35
6 files changed, 31 insertions, 75 deletions
diff --git a/frontend/src/components/displays/DancearoundScoreDisplay.tsx b/frontend/src/components/displays/DancearoundScoreDisplay.tsx
index a98179d..28ba9ed 100644
--- a/frontend/src/components/displays/DancearoundScoreDisplay.tsx
+++ b/frontend/src/components/displays/DancearoundScoreDisplay.tsx
@@ -37,6 +37,8 @@ const DancearoundScoreDisplay: React.FC<ScoreDisplayProps> = ({
}) => {
// Key mappings for better display names. Hit or miss
const keyDisplayNames: Record<string, string> = {
+ title: "Title",
+ artist: "Artist",
score: "Score",
difficulty: "Difficulty",
lamp: "Rank",
diff --git a/frontend/src/components/displays/DancerushScoreDisplay.tsx b/frontend/src/components/displays/DancerushScoreDisplay.tsx
index fcdc254..d1350ad 100644
--- a/frontend/src/components/displays/DancerushScoreDisplay.tsx
+++ b/frontend/src/components/displays/DancerushScoreDisplay.tsx
@@ -37,6 +37,8 @@ const DancerushScoreDisplay: React.FC<ScoreDisplayProps> = ({
}) => {
// Key mappings for better display names. Hit or miss
const keyDisplayNames: Record<string, string> = {
+ title: "Title",
+ artist: "Artist",
score: "Score",
difficulty: "Level",
lamp: "Rank",
diff --git a/frontend/src/components/displays/DivaScoreDisplay.tsx b/frontend/src/components/displays/DivaScoreDisplay.tsx
index 2646b6b..ddbdf0c 100644
--- a/frontend/src/components/displays/DivaScoreDisplay.tsx
+++ b/frontend/src/components/displays/DivaScoreDisplay.tsx
@@ -44,11 +44,18 @@ const DivaScoreDisplay: React.FC<ScoreDisplayProps> = ({
}) => {
// Key mappings for better display names. Hit or miss
const keyDisplayNames: Record<string, string> = {
+ title: "Title",
+ artist: "Artist",
score: "SCORE",
difficulty: "Difficulty Rating",
lamp: "CLEAR RANK",
diff_lamp: "Chart Difficulty",
timestamp: "Date",
+ sad: "Sad",
+ cool: "Cool",
+ fine: "Fine",
+ safe: "Safe",
+ worst: "Worst",
judgements: "Judgements",
maxCombo: "Max Combo",
username: "Username",
diff --git a/frontend/src/components/displays/MusicDiverScoreDisplay.tsx b/frontend/src/components/displays/MusicDiverScoreDisplay.tsx
index 2b7d186..dcc57e3 100644
--- a/frontend/src/components/displays/MusicDiverScoreDisplay.tsx
+++ b/frontend/src/components/displays/MusicDiverScoreDisplay.tsx
@@ -37,32 +37,18 @@ const MusicDiverDisplay: React.FC<ScoreDisplayProps> = ({
artist: "Artist",
score: "Score",
difficulty: "Difficulty",
- lamp: "Lamp",
diff_lamp: "Lamp",
timestamp: "Date",
judgements: "Judgements",
- maxCombo: "Max Combo",
perfect: "Perfect",
great: "Great",
good: "Good",
bad: "Bad",
miss: "Miss",
- rating: "Rating",
- percent: "Percent",
- chart: "Chart",
- song: "Song",
- ranking: "Ranking",
- combo: "Combo",
- grade: "Grade",
+ critical: "Critical",
level: "Level",
- bpm: "BPM",
- notes: "Notes",
- duration: "Duration",
- playcount: "Play Count",
date: "Date",
- time: "Time",
username: "Username",
- num_players: "Players"
};
const mainStatKeys = [
@@ -76,9 +62,7 @@ const MusicDiverDisplay: React.FC<ScoreDisplayProps> = ({
"grade",
];
const expandableKeys = ["judgements", "optional"];
- const skipKeys = ["user", "username"]
- // get ?game=
- const internalGameName =new URLSearchParams(window.location.search).get("game") || "dancerush";
+ const gameParam = new URLSearchParams(window.location.search).get("game") || "musicdiver";
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const formatValue = (value: any, key: string): string => {
if (value === null || value === undefined) return "N/A";
@@ -270,11 +254,9 @@ const MusicDiverDisplay: React.FC<ScoreDisplayProps> = ({
return (
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-2 xl:grid-cols-3 gap-4 sm:gap-6">
{sortedScores.map((score, index) => {
- const chartIdHash = SHA1(`${internalGameName}${score.title}${score.artist}`).toString();
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
- const { mainStats, expandable, others: rawOthers, timestamp } =
+ const chartIdHash = SHA1(`${gameParam}${score.title}${score.artist}`).toString();
+ const { mainStats, expandable, others, timestamp } =
getScoreEntries(score);
- const others = rawOthers.filter(([key]) => !skipKeys.includes(key));
return (
@@ -286,7 +268,7 @@ const MusicDiverDisplay: React.FC<ScoreDisplayProps> = ({
<div className="flex items-start justify-between mb-4">
<div className="flex-1 min-w-0">
{!hideTitleArtist && (
- <Link to={`/chart?chartId=${chartIdHash}&game=${internalGameName}`}>
+ <Link to={`/chart?chartId=${chartIdHash}&game=${gameParam}`}>
<h3 className="text-base sm:text-lg font-semibold text-white mb-1 break-words leading-tight">
{score.title || score.song || "Unknown Title"}
</h3>
diff --git a/frontend/src/components/displays/NostalgiaScoreDisplay.tsx b/frontend/src/components/displays/NostalgiaScoreDisplay.tsx
index bb01379..063d449 100644
--- a/frontend/src/components/displays/NostalgiaScoreDisplay.tsx
+++ b/frontend/src/components/displays/NostalgiaScoreDisplay.tsx
@@ -38,31 +38,21 @@ const NostalgiaScoreDisplay: React.FC<ScoreDisplayProps> = ({
score: "Score",
difficulty: "Difficulty",
lamp: "Lamp",
- diff_lamp: "Lamp",
timestamp: "Date",
judgements: "Judgements",
maxCombo: "Max Combo",
perfect: "Perfect",
- great: "Great",
+ fast: "Fast",
+ slow: "Slow",
good: "Good",
- bad: "Bad",
+ just: "Just",
miss: "Miss",
- rating: "Rating",
- percent: "Percent",
- chart: "Chart",
- song: "Song",
- ranking: "Ranking",
- combo: "Combo",
- grade: "Grade",
+ near: "Near",
+ marvelous: "Marvelous",
level: "Level",
- bpm: "BPM",
notes: "Notes",
- duration: "Duration",
- playcount: "Play Count",
date: "Date",
- time: "Time",
username: "Username",
- num_players: "Players"
};
const mainStatKeys = [
@@ -77,9 +67,7 @@ const NostalgiaScoreDisplay: React.FC<ScoreDisplayProps> = ({
"level"
];
const expandableKeys = ["judgements", "optional"];
- const skipKeys = ["user", "username"]
- // get ?game=
- const internalGameName =new URLSearchParams(window.location.search).get("game") || "dancerush";
+ const gameParam = new URLSearchParams(window.location.search).get("game") || "nostalgia";
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const formatValue = (value: any, key: string): string => {
if (value === null || value === undefined) return "N/A";
@@ -272,11 +260,9 @@ const NostalgiaScoreDisplay: React.FC<ScoreDisplayProps> = ({
return (
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-2 xl:grid-cols-3 gap-4 sm:gap-6">
{sortedScores.map((score, index) => {
- const chartIdHash = SHA1(`${internalGameName}${score.title}${score.artist}`).toString();
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
- const { mainStats, expandable, others: rawOthers, timestamp } =
+ const chartIdHash = SHA1(`${gameParam}${score.title}${score.artist}`).toString();
+ const { mainStats, expandable, others, timestamp } =
getScoreEntries(score);
- const others = rawOthers.filter(([key]) => !skipKeys.includes(key));
return (
@@ -288,7 +274,7 @@ const NostalgiaScoreDisplay: React.FC<ScoreDisplayProps> = ({
<div className="flex items-start justify-between mb-4">
<div className="flex-1 min-w-0">
{!hideTitleArtist && (
- <Link to={`/chart?chartId=${chartIdHash}&game=${internalGameName}`}>
+ <Link to={`/chart?chartId=${chartIdHash}&game=${gameParam}`}>
<h3 className="text-base sm:text-lg font-semibold text-white mb-1 break-words leading-tight">
{score.title || score.song || "Unknown Title"}
</h3>
diff --git a/frontend/src/components/displays/ReflecBeatScoreDisplay.tsx b/frontend/src/components/displays/ReflecBeatScoreDisplay.tsx
index b11983e..9de1403 100644
--- a/frontend/src/components/displays/ReflecBeatScoreDisplay.tsx
+++ b/frontend/src/components/displays/ReflecBeatScoreDisplay.tsx
@@ -39,49 +39,28 @@ const ReflecBeatScoreDisplay: React.FC<ScoreDisplayProps> = ({
difficulty: "Difficulty",
lifeLeft: "Life Remaining",
lamp: "Lamp",
- diff_lamp: "Lamp",
timestamp: "Date",
judgements: "Judgements",
- maxCombo: "Max Combo",
- perfect: "Perfect",
+ justreflec: "JustReflec",
+ just: "Just",
great: "Great",
good: "Good",
- bad: "Bad",
miss: "Miss",
scorePercent: "Score %",
- rating: "Rating",
- percent: "Percent",
- chart: "Chart",
- song: "Song",
- ranking: "Ranking",
- combo: "Combo",
- grade: "Grade",
level: "Level",
- bpm: "BPM",
- notes: "Notes",
- duration: "Duration",
- playcount: "Play Count",
date: "Date",
time: "Time",
username: "Username",
- num_players: "Players"
};
const mainStatKeys = [
"score",
"difficulty",
"lamp",
- "rank",
- "diff_lamp",
- "percent",
- "rating",
- "grade",
"scorePercent"
];
const expandableKeys = ["judgements", "optional"];
- const skipKeys = ["user", "username"]
- // get ?game=
- const internalGameName =new URLSearchParams(window.location.search).get("game") || "dancerush";
+ const gameParam = new URLSearchParams(window.location.search).get("game") || "reflecbeat";
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const formatValue = (value: any, key: string): string => {
if (value === null || value === undefined) return "N/A";
@@ -278,11 +257,9 @@ const ReflecBeatScoreDisplay: React.FC<ScoreDisplayProps> = ({
return (
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-2 xl:grid-cols-3 gap-4 sm:gap-6">
{sortedScores.map((score, index) => {
- const chartIdHash = SHA1(`${internalGameName}${score.title}${score.artist}`).toString();
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
- const { mainStats, expandable, others: rawOthers, timestamp } =
+ const chartIdHash = SHA1(`${gameParam}${score.title}${score.artist}`).toString();
+ const { mainStats, expandable, others, timestamp } =
getScoreEntries(score);
- const others = rawOthers.filter(([key]) => !skipKeys.includes(key));
return (
@@ -294,7 +271,7 @@ const ReflecBeatScoreDisplay: React.FC<ScoreDisplayProps> = ({
<div className="flex items-start justify-between mb-4">
<div className="flex-1 min-w-0">
{!hideTitleArtist && (
- <Link to={`/chart?chartId=${chartIdHash}&game=${internalGameName}`}>
+ <Link to={`/chart?chartId=${chartIdHash}&game=${gameParam}`}>
<h3 className="text-base sm:text-lg font-semibold text-white mb-1 break-words leading-tight">
{score.title || score.song || "Unknown Title"}
</h3>
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage