|
@@ -1,12 +1,12 @@
|
|
|
import flagLookup from '../../../../domain/flagLookup';
|
|
|
import styles from './ScoreBoard.module.css';
|
|
|
|
|
|
-// TODO redesign this
|
|
|
-
|
|
|
-const PlayerScoreTile = ({ name, guesses, totalScore }) => (
|
|
|
+const PlayerScoreTile = ({ name, guesses, totalScore, winner }) => (
|
|
|
<div className={styles.tile}>
|
|
|
- <span className={styles.name}>{name}</span>
|
|
|
- <span className={styles.total}>Score: {totalScore}</span>
|
|
|
+ <div className={styles.header}>
|
|
|
+ <span className={styles.name}>{name}</span>
|
|
|
+ <span className={styles.total}>{winner && '🏆'} {totalScore}</span>
|
|
|
+ </div>
|
|
|
<div className={styles.scores}>
|
|
|
{Object.entries(guesses)
|
|
|
.map(([ k, v ]) => [ parseInt(k), v ])
|
|
@@ -14,9 +14,10 @@ const PlayerScoreTile = ({ name, guesses, totalScore }) => (
|
|
|
.map(
|
|
|
([ num, { score, country } ]) =>
|
|
|
score !== undefined ? (
|
|
|
- <span key={num}>
|
|
|
- {num}: {score ?? 0} - { flagLookup(country) }
|
|
|
- </span>
|
|
|
+ <div className={styles.round} key={num}>
|
|
|
+ <span className={styles.score}>Round {num}: {score ?? 0}</span>
|
|
|
+ <span className={styles.flag}>{ flagLookup(country) }</span>
|
|
|
+ </div>
|
|
|
) : null
|
|
|
)}
|
|
|
</div>
|
|
@@ -28,7 +29,7 @@ const ScoreBoard = ({ players }) => (
|
|
|
{players
|
|
|
.filter(({ currentRound }) => currentRound === null)
|
|
|
.sort((p1, p2) => (p1.totalScore > p2.totalScore ? -1 : p1.totalScore < p2.totalScore ? 1 : 0))
|
|
|
- .map((data) => <PlayerScoreTile key={data.name} {...data} />)}
|
|
|
+ .map((data, i) => <PlayerScoreTile key={data.name} winner={i === 0} {...data} />)}
|
|
|
</div>
|
|
|
);
|
|
|
|