From 87955214e3bc13bfad7ec50baf98c401f029e591 Mon Sep 17 00:00:00 2001 From: tresabhi Date: Sun, 9 Jul 2023 17:37:44 +0000 Subject: [PATCH] feat: updated /today with figma --- src/commands/evolution.tsx | 2 +- src/commands/today.tsx | 2 +- src/components/Breakdown/components/Root.tsx | 2 +- src/components/Breakdown/components/Row.tsx | 46 ++++++++++--------- .../Breakdown/components/RowDiscriminator.tsx | 9 +++- .../Breakdown/components/RowStat.tsx | 19 ++++---- src/renderers/today.tsx | 9 ++-- 7 files changed, 48 insertions(+), 41 deletions(-) diff --git a/src/commands/evolution.tsx b/src/commands/evolution.tsx index 4eef95ccc..d2b7d59d1 100644 --- a/src/commands/evolution.tsx +++ b/src/commands/evolution.tsx @@ -20,7 +20,7 @@ import { AccountInfo } from '../types/accountInfo.js'; export const evolutionCommand: CommandRegistry = { inProduction: true, - inDevelopment: true, + inDevelopment: false, inPublic: true, command: addStatTypeSubCommandGroups( diff --git a/src/commands/today.tsx b/src/commands/today.tsx index d2a166afd..613014928 100644 --- a/src/commands/today.tsx +++ b/src/commands/today.tsx @@ -14,7 +14,7 @@ import { AccountInfo } from '../types/accountInfo.js'; export const todayCommand: CommandRegistry = { inProduction: true, - inDevelopment: false, + inDevelopment: true, inPublic: true, command: new SlashCommandBuilder() diff --git a/src/components/Breakdown/components/Root.tsx b/src/components/Breakdown/components/Root.tsx index e5d06bea7..9f40d82f9 100644 --- a/src/components/Breakdown/components/Root.tsx +++ b/src/components/Breakdown/components/Root.tsx @@ -6,7 +6,7 @@ export interface RootProps { export function Root({ children }: RootProps) { return ( -
+
{children}
); diff --git a/src/components/Breakdown/components/Row.tsx b/src/components/Breakdown/components/Row.tsx index f5e6c8786..31c904724 100644 --- a/src/components/Breakdown/components/Row.tsx +++ b/src/components/Breakdown/components/Row.tsx @@ -1,4 +1,5 @@ import getWN8Percentile from '../../../core/blitz/getWN8Percentile.js'; +import { theme } from '../../../stitches.config.js'; import { RowDiscriminator } from './RowDiscriminator.js'; import { RowStat } from './RowStat.js'; @@ -10,14 +11,16 @@ export interface RowProps { careerWN8?: number; damage: number; careerDamage: number; - survival: number; - careerSurvival: number; battles: number; careerBattles: number; icon?: string; + minimized: boolean; + isListing: boolean; } export function Row({ + isListing, + minimized, name, winrate, careerWinrate, @@ -25,44 +28,45 @@ export function Row({ careerWN8, damage, careerDamage, - survival, - careerSurvival, battles, careerBattles, icon, }: RowProps) { return ( -
- +
+ -
); diff --git a/src/components/Breakdown/components/RowDiscriminator.tsx b/src/components/Breakdown/components/RowDiscriminator.tsx index b4c9c8f2a..d70e6fa26 100644 --- a/src/components/Breakdown/components/RowDiscriminator.tsx +++ b/src/components/Breakdown/components/RowDiscriminator.tsx @@ -3,9 +3,14 @@ import { theme } from '../../../stitches.config.js'; export interface RowDiscriminatorProps { name: string; icon?: string; + minimized: boolean; } -export function RowDiscriminator({ name, icon }: RowDiscriminatorProps) { +export function RowDiscriminator({ + name, + icon, + minimized, +}: RowDiscriminatorProps) { return (
- {icon && ( + {!minimized && icon && ( - - {career} - -
{value}
- - {name} - + {!minimized && ( + + {name} + + )}
); } diff --git a/src/renderers/today.tsx b/src/renderers/today.tsx index 5b3369714..e36dbbce6 100644 --- a/src/renderers/today.tsx +++ b/src/renderers/today.tsx @@ -20,6 +20,7 @@ import { AccountInfo, AllStats } from '../types/accountInfo.js'; import { PlayerClanData } from '../types/playerClanData.js'; import { PossiblyPromise } from '../types/possiblyPromise.js'; +// TODO: sort tanks by last played export default async function today({ server, id }: ResolvedPlayer) { const tankStatsOverTime = await getTankStatsDiffed( server, @@ -110,12 +111,14 @@ export default async function today({ server, id }: ResolvedPlayer) { ); const rows = await Promise.all( - tankStatsOverTimeEntries.map(async ([tankIdString, tankStats]) => { - const tankId = Number(tankIdString); + tankStatsOverTimeEntries.map(async ([tankIdString, tankStats], index) => { + const tankId = parseInt(tankIdString); const career = careerStats[tankId]; return ( 4} key={tankId} name={ tankId === 0 ? 'Total' : await resolveTankName(Number(tankIdString)) @@ -126,8 +129,6 @@ export default async function today({ server, id }: ResolvedPlayer) { careerWN8={isNaN(careerWN8s[tankId]) ? undefined : careerWN8s[tankId]} damage={tankStats.damage_dealt / tankStats.battles} careerDamage={career.damage_dealt / career.battles} - survival={tankStats.survived_battles / tankStats.battles} - careerSurvival={career.survived_battles / career.battles} battles={tankStats.battles} careerBattles={career.battles} icon={