import { useState } from "react"; import { Switch } from "~/components/ui/switch"; import { RadioGroup, RadioGroupItem } from "~/components/ui/radio-group"; import { Label } from "~/components/ui/label"; interface AutodraftSettingsProps { seasonId: string; teamId: string; isEnabled: boolean; mode: "next_pick" | "while_on"; isMyTurn: boolean; onUpdate: (isEnabled: boolean, mode: "next_pick" | "while_on") => void; } export function AutodraftSettings({ seasonId, teamId, isEnabled, mode, isMyTurn, onUpdate, }: AutodraftSettingsProps) { const [localEnabled, setLocalEnabled] = useState(isEnabled); const [localMode, setLocalMode] = useState<"next_pick" | "while_on">(mode); const [isUpdating, setIsUpdating] = useState(false); const handleToggle = async (checked: boolean) => { setLocalEnabled(checked); setIsUpdating(true); try { const formData = new FormData(); formData.append("seasonId", seasonId); formData.append("teamId", teamId); formData.append("isEnabled", checked.toString()); formData.append("mode", localMode); const response = await fetch("/api/autodraft/update", { method: "POST", body: formData, }); if (response.ok) { onUpdate(checked, localMode); } else { // Revert on error setLocalEnabled(!checked); console.error("Failed to update autodraft settings"); } } catch (error) { // Revert on error setLocalEnabled(!checked); console.error("Error updating autodraft settings:", error); } finally { setIsUpdating(false); } }; const handleModeChange = async (newMode: "next_pick" | "while_on") => { setLocalMode(newMode); setIsUpdating(true); try { const formData = new FormData(); formData.append("seasonId", seasonId); formData.append("teamId", teamId); formData.append("isEnabled", localEnabled.toString()); formData.append("mode", newMode); const response = await fetch("/api/autodraft/update", { method: "POST", body: formData, }); if (response.ok) { onUpdate(localEnabled, newMode); } else { // Revert on error setLocalMode(localMode); console.error("Failed to update autodraft mode"); } } catch (error) { // Revert on error setLocalMode(localMode); console.error("Error updating autodraft mode:", error); } finally { setIsUpdating(false); } }; return (
Autodraft settings are disabled during your pick
)}