import {useNavigate, useParams, useSearchParams} from "react-router-dom" import TrainsTable from "./TrainsTable" import {useState} from "react"; import {Box, Button, FormLabel} from "@mui/material"; import {DatePicker, TimePicker} from "@mui/x-date-pickers"; import dayjs from "dayjs"; import {useQuery, useQueryClient} from "@tanstack/react-query"; import AutocompleteStop from "./AutocompleteStop"; function DateTimeSelector({stop, date, time}) { const navigate = useNavigate() function onStationSelected(event, stop) { if (stop !== null) navigate(`/station/${stop.id}/`) } return <> Changer la gare recherchée : Modifier la date et l'heure de recherche : } function Station() { let {stopId} = useParams() let [searchParams, _setSearchParams] = useSearchParams() const now = new Date() let dateNow = `${now.getFullYear()}-${String(now.getMonth() + 1).padStart(2, '0')}-${String(now.getDate()).padStart(2, '0')}` let timeNow = `${String(now.getHours()).padStart(2, '0')}:${String(now.getMinutes()).padStart(2, '0')}` let [date, setDate] = useState(searchParams.get('date') || dateNow) let [time, setTime] = useState(searchParams.get('time') || timeNow) useQueryClient() const stopQuery = useQuery({ queryKey: ['stop', stopId], queryFn: () => fetch(`/api/gtfs/stop/${stopId}/`) .then(response => response.json()), enabled: !!stopId, }) const stop = stopQuery.data ?? {name: "Chargement…"} if (time === timeNow) { setInterval(() => { const now = new Date() let dateNow = `${now.getFullYear()}-${String(now.getMonth() + 1).padStart(2, '0')}-${String(now.getDate()).padStart(2, '0')}` let timeNow = `${String(now.getHours()).padStart(2, '0')}:${String(now.getMinutes()).padStart(2, '0')}` setDate(dateNow) setTime(timeNow) }, 5000) } return (

Horaires en gare de {stop.name}

) } export default Station;