diff --git a/frontend/src/components/deadlines/DeadlineCalculator.tsx b/frontend/src/components/deadlines/DeadlineCalculator.tsx index 9427075..8e965cd 100644 --- a/frontend/src/components/deadlines/DeadlineCalculator.tsx +++ b/frontend/src/components/deadlines/DeadlineCalculator.tsx @@ -51,13 +51,28 @@ export function DeadlineCalculator() { }) => api.post("/deadlines/calculate", params), }); + // Auto-calculate when proceeding type changes (using current trigger date) + function doCalculate(type: string, date: string) { + if (!type || !date) return; + calculateMutation.mutate({ + proceeding_type: type, + trigger_event_date: date, + }); + } + + function handleProceedingChange(newType: string) { + setProceedingType(newType); + doCalculate(newType, triggerDate); + } + + function handleDateChange(newDate: string) { + setTriggerDate(newDate); + if (proceedingType) doCalculate(proceedingType, newDate); + } + function handleCalculate(e: React.FormEvent) { e.preventDefault(); - if (!proceedingType || !triggerDate) return; - calculateMutation.mutate({ - proceeding_type: proceedingType, - trigger_event_date: triggerDate, - }); + doCalculate(proceedingType, triggerDate); } const results = calculateMutation.data; @@ -80,7 +95,7 @@ export function DeadlineCalculator() { setTriggerDate(e.target.value)} + onChange={(e) => handleDateChange(e.target.value)} className={inputClass} />