import type { Encounter } from "@initiative/domain"; import { Library, StepBack, StepForward, Trash2 } from "lucide-react"; import { D20Icon } from "./d20-icon"; import { Button } from "./ui/button"; import { ConfirmButton } from "./ui/confirm-button"; interface TurnNavigationProps { encounter: Encounter; onAdvanceTurn: () => void; onRetreatTurn: () => void; onClearEncounter: () => void; onRollAllInitiative: () => void; onOpenSourceManager: () => void; } export function TurnNavigation({ encounter, onAdvanceTurn, onRetreatTurn, onClearEncounter, onRollAllInitiative, onOpenSourceManager, }: TurnNavigationProps) { const hasCombatants = encounter.combatants.length > 0; const isAtStart = encounter.roundNumber === 1 && encounter.activeIndex === 0; const activeCombatant = encounter.combatants[encounter.activeIndex]; return (
R{encounter.roundNumber} {activeCombatant ? ( {activeCombatant.name} ) : ( No combatants )}
} label="Clear encounter" onConfirm={onClearEncounter} disabled={!hasCombatants} className="text-muted-foreground" />
); }