From 7ea5e444b345f5802274c7fa2277a2909105df54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tr=C3=A8sAbhi?= <43380238+tresabhi@users.noreply.github.com> Date: Thu, 30 Nov 2023 18:00:48 -0600 Subject: [PATCH] feat: better icons --- src/app/tools/tankopedia/page.css.tsx | 0 src/app/tools/tankopedia/page.tsx | 132 ++++++++++++++++++-------- 2 files changed, 92 insertions(+), 40 deletions(-) create mode 100644 src/app/tools/tankopedia/page.css.tsx diff --git a/src/app/tools/tankopedia/page.css.tsx b/src/app/tools/tankopedia/page.css.tsx new file mode 100644 index 000000000..e69de29bb diff --git a/src/app/tools/tankopedia/page.tsx b/src/app/tools/tankopedia/page.tsx index a6d95cd13..1bd4b686f 100644 --- a/src/app/tools/tankopedia/page.tsx +++ b/src/app/tools/tankopedia/page.tsx @@ -1,79 +1,131 @@ -import { Badge, Card, Flex, Text } from '@radix-ui/themes'; +'use client'; + +import { blackA, slateDark } from '@radix-ui/colors'; +import { Card, Inset, Text } from '@radix-ui/themes'; +import { useEffect, useState } from 'react'; import PageWrapper from '../../../components/PageWrapper'; import { tankIcon } from '../../../core/blitzkrieg/tankIcon'; -import { tanks } from '../../../core/blitzkrieg/tankopedia'; +import { + BlitzkriegTankopediaEntry, + tanks, +} from '../../../core/blitzkrieg/tankopedia'; const sortedTanks = tanks.then((tanks) => tanks.sort((a, b) => b.tier - a.tier), ); -export default async function Page() { - const awaitedTanks = await sortedTanks; +export default function Page() { + const [tanks, setTanks] = useState([]); + + useEffect(() => { + (async () => setTanks(await sortedTanks))(); + }, []); return ( - - {awaitedTanks.map((tank) => ( + + {tanks.map((tank) => ( - -
+ { + // get image width + const target = event.target as HTMLImageElement; + const { naturalWidth } = target; + + if (naturalWidth === 256) { + target.style.transform = 'translateX(25%)'; + } + }} + /> + +
{tank.name_short ?? tank.name ?? `Unknown tank ${tank.id}`} -
- - - - {tank.tree_type !== 'tech-tree' && ( - - {tank.tree_type === 'collector' ? 'Collector' : 'Premium'} - - )} - - {(() => { - if (tank.type === 'AT-SPG') return 'Tank Destroyer'; - if (tank.type === 'lightTank') return 'Light Tank'; - if (tank.type === 'mediumTank') return 'Medium Tank'; - if (tank.type === 'heavyTank') return 'Heavy Tank'; - })()} - - - - +
+ ))} ); } + +{ + /* + + {tank.tree_type !== 'tech-tree' && ( + + {tank.tree_type === 'collector' ? 'Collector' : 'Premium'} + + )} + + {(() => { + if (tank.type === 'AT-SPG') return 'Tank Destroyer'; + if (tank.type === 'lightTank') return 'Light Tank'; + if (tank.type === 'mediumTank') return 'Medium Tank'; + if (tank.type === 'heavyTank') return 'Heavy Tank'; + })()} + + + */ +}