diff --git a/src/Pages/DB/DB.tsx b/src/Pages/DB/DB.tsx index 0664734c..2103a611 100644 --- a/src/Pages/DB/DB.tsx +++ b/src/Pages/DB/DB.tsx @@ -3,7 +3,6 @@ import React from "react"; import { useLocation } from "wouter"; import { useTranslation } from "react-i18next"; import { Disclaimer } from "./Disclaimer"; -import AutoSizer from "react-virtualized-auto-sizer"; import IngameNamesJson from "../../../public/locales/IngameNames.json"; // todo use translation for char names @@ -11,25 +10,75 @@ const charNames = IngameNamesJson.English.character_names; type CharEntry = [keyof typeof charNames, string]; function CharCard({ charEntry }: { charEntry: CharEntry }) { + const tooLongNames = [ + "Kaedehara Kazuha", + "Kamisato Ayaka", + "Raiden Shogun", + "Sangonomiya Kokomi", + "Kamisato Ayato", + "Shikanoin Heizou", + "Traveler (Anemo)", + "Traveler (Geo)", + "Traveler (Electro)", + "Traveler (Pyro)", + ]; + const rareCharNames = [ + "amber", + "barbara", + "beidou", + "bennett", + "chongyun", + "diona", + "fischl", + "gorou", + "kaeya", + "kujousara", + "lisa", + "kuki", + "ningguang", + "noelle", + "razor", + "heizou", + "rosaria", + "sucrose", + "sayu", + "thoma", + "xiangling", + "xinyan", + "xingqiu", + "yanfei", + "yunjin", + ]; + const [_, setLocation] = useLocation(); const [shortName, name] = charEntry; + + const legendaryCss = "bg-opacity-60 bg-[#FFB13F] "; + const rareCss = "bg-opacity-60 bg-[#D28FD6]"; return ( -
setLocation(`/db/${shortName}`)} - > - {name} -
- {name} +
+
+
setLocation(`/db/${shortName}`)} + > + {name} +
+
+ {tooLongNames.includes(name) ? ( +
+ {name} +
+ ) : ( +
+ {name} +
+ )} +
); @@ -38,43 +87,15 @@ function CharCard({ charEntry }: { charEntry: CharEntry }) { const LOCALSTORAGE_DISC_KEY = "gcsim-db-disclaimer-show"; function CharsView({ characters }: { characters: CharEntry[] }) { - // TODO consider removing this, idk what does it do lol - const parentRef = React.useRef(null!); return ( -
- - {({ height, width }) => ( -
-
- {characters.map(entry => ( -
- -
- ))} -
+
+
+ {characters.map((entry) => ( +
+
- )} - + ))} +
); } @@ -103,34 +124,28 @@ export function DB() { ) : charsEntries; return ( -
+
-
-
- - setSearchString(e.target.value)} - /> -
+
+ + setSearchString(e.target.value)} + />
-
- -
+ setShowDisclaimer(false)} hideAlways={hideDisclaimer} /> -
+
); } + function ShowFaqsButton({ setShowDisclaimer, }: {