import { useMemo, useState } from 'react'
import { useGenlockeGraveyard } from '../hooks/useGenlockes'
import { TypeBadge } from './TypeBadge'
import type { GraveyardEntry } from '../types'
type SortKey = 'leg' | 'level' | 'species'
interface GenlockeGraveyardProps {
genlockeId: number
}
function GraveyardCard({ entry }: { entry: GraveyardEntry }) {
const displayPokemon = entry.currentPokemon ?? entry.pokemon
const isEvolved = entry.currentPokemon !== null
return (
{displayPokemon.spriteUrl ? (

) : (
{displayPokemon.name[0]?.toUpperCase()}
)}
{entry.nickname || displayPokemon.name}
{entry.nickname &&
{displayPokemon.name}
}
{displayPokemon.types.map((type) => (
))}
Lv. {entry.catchLevel} → {entry.faintLevel}
{entry.routeName}
Leg {entry.legOrder} — {entry.gameName}
{isEvolved && (
Originally: {entry.pokemon.name}
)}
{entry.deathCause && (
{entry.deathCause}
)}
)
}
export function GenlockeGraveyard({ genlockeId }: GenlockeGraveyardProps) {
const { data, isLoading, error } = useGenlockeGraveyard(genlockeId)
const [filterLeg, setFilterLeg] = useState