in src/client/routes/classified_reports.tsx [5:68]
export default function ClassifiedReports() {
const defaultToDate = new Date();
const [toDate, setToDate] = useState(DateToYMDString(defaultToDate));
const defaultFromDate = new Date();
defaultFromDate.setDate(defaultToDate.getDate() - 2);
const [fromDate, setFromDate] = useState(DateToYMDString(defaultFromDate));
const defaultPrediction = "invalid";
const [prediction, setPrediction] = useState(defaultPrediction);
return (
<>
<h2>Classified Reports</h2>
<section>
<form
onSubmit={(ev) => {
// This form should never be submitted - reloading is triggered via
// a field value state change.
ev.preventDefault();
}}
>
<div className="form-row">
<label htmlFor="from">
Showing
<select
className="prediction-selector"
value={prediction}
onChange={(ev) => setPrediction(ev.target.value)}
>
<option value="all">all</option>
<option value="valid">valid</option>
<option value="invalid">invalid</option>
</select>
reports filed between
</label>
<input
id="from"
name="from"
type="date"
value={fromDate}
onChange={(ev) => setFromDate(ev.target.value)}
required
/>
</div>
<div className="form-row">
<label htmlFor="to">and</label>
<input
id="to"
name="to"
type="date"
value={toDate}
onChange={(ev) => setToDate(ev.target.value)}
required
/>
</div>
</form>
</section>
<section>
<ClassifiedReportFrame from={fromDate} to={toDate} prediction={prediction} />
</section>
</>
);
}