import { useState } from 'react' import type { EncounterDetail } from '../types' interface TransferModalProps { hofTeam: EncounterDetail[] onSubmit: (encounterIds: number[]) => void onSkip: () => void isPending: boolean } export function TransferModal({ hofTeam, onSubmit, onSkip, isPending, }: TransferModalProps) { const [selected, setSelected] = useState>( () => new Set(hofTeam.map((e) => e.id)) ) const toggle = (id: number) => { setSelected((prev) => { const next = new Set(prev) if (next.has(id)) { next.delete(id) } else { next.add(id) } return next }) } return (

Transfer Pokemon to Next Leg

Selected Pokemon will be bred down to their base form and appear as level 1 encounters in the next leg.

{hofTeam.map((enc) => { const displayPokemon = enc.currentPokemon ?? enc.pokemon const isSelected = selected.has(enc.id) return ( ) })}
{selected.size}/{hofTeam.length} selected
) }