diff --git a/components/Avatar.tsx b/components/Avatar.tsx index 22b57242..38b0564e 100644 --- a/components/Avatar.tsx +++ b/components/Avatar.tsx @@ -12,6 +12,7 @@ export default function Avatar(props: { onClick?: () => void | undefined; className?: string | undefined; online?: boolean; + gearSize?: number; }) { const { session, status } = useCurrentSession(); const user = props.user ?? session?.user; @@ -39,7 +40,7 @@ export default function Avatar(props: { {admin ? (
- +
) : ( <> diff --git a/components/Container.tsx b/components/Container.tsx index c04cd4d4..896cf4c7 100644 --- a/components/Container.tsx +++ b/components/Container.tsx @@ -226,6 +226,7 @@ export default function Container(props: ContainerProps) { imgHeightOverride="h-11" showLevel={false} borderThickness={2} + gearSize={24} /> ) : ( diff --git a/components/XpProgressBar.tsx b/components/XpProgressBar.tsx index b07dda3a..b9eb9bad 100644 --- a/components/XpProgressBar.tsx +++ b/components/XpProgressBar.tsx @@ -12,21 +12,44 @@ export default function XpProgressBar({ const [hovered, setHovered] = useState(false); return ( -
setHovered(true)} - onMouseLeave={() => setHovered(false)} - > - {hovered - ? `${user.xp}/${xpRequiredForNextLevel(user.level)}` - : `Lvl ${user.level}`} +
+ {/* Desktop layout */} +
setHovered(true)} + onMouseLeave={() => setHovered(false)} + > + {hovered + ? `${user.xp}/${xpRequiredForNextLevel(user.level)}` + : `Lvl ${user.level}`} +
+ {/* Desktop layout */} +
+
+
+ Level {user.level} - XP: {user.xp}/ + {xpRequiredForNextLevel(user.level)} +
+ +
); } diff --git a/components/competition/MatchScheduleCard.tsx b/components/competition/MatchScheduleCard.tsx index 6b0241e8..21f12dcf 100644 --- a/components/competition/MatchScheduleCard.tsx +++ b/components/competition/MatchScheduleCard.tsx @@ -230,6 +230,7 @@ export default function MatchScheduleCard(props: { showLevel={false} borderThickness={2} onClick={() => remindUserOnSlack(user._id!)} + gearSize={25} /> ) : (
diff --git a/lib/Xp.ts b/lib/Xp.ts index 5f6b8139..a7ddf76d 100644 --- a/lib/Xp.ts +++ b/lib/Xp.ts @@ -9,7 +9,7 @@ export function levelToXp(level: number) { } export function xpRequiredForNextLevel(level: number) { - return levelToXp(level + 1); + return Math.max(levelToXp(level + 1), 0); } export function levelToClassName(level: number | undefined) { diff --git a/package-lock.json b/package-lock.json index 32ad8429..58ce52ad 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "sj3", - "version": "1.1.2", + "version": "1.1.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "sj3", - "version": "1.1.2", + "version": "1.1.3", "license": "CC BY-NC-SA 4.0", "dependencies": { "dependencies": "^0.0.1", diff --git a/package.json b/package.json index 494695f7..be72e2f2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "sj3", - "version": "1.1.2", + "version": "1.1.3", "private": true, "repository": "https://github.com/Decatur-Robotics/Gearbox", "license": "CC BY-NC-SA 4.0",