import React, {FC, useEffect, useState} from "react" import useAxiosTools from "../../hooks/AxiosTools" import {toDo} from "../../utilities/types" import {PlaySVG} from "../SVG" const ToDoFinish: FC = ({reload}) => { const [showTodos, setShowTodos] = useState(false) const {loading, setLoading, errorCatch, errorLabel, axiosGet} = useAxiosTools(true) const [toDos, setToDos] = useState([]) useEffect(() => { if (showTodos) { setLoading(true) fetchFinishToDos() } }, [reload]) const handleShow = () => { if (! showTodos) { setLoading(true) fetchFinishToDos() } setShowTodos(!showTodos) } const fetchFinishToDos = async () => { try { const res = await axiosGet('api/todos/finished') setToDos(res.data) } catch (error) { errorCatch(error) } finally { setLoading(false) } } return
{errorLabel()} {showTodos &&
    {toDos.map(toDo =>
  • {toDo.checked ? (new Date(toDo.checked)).toSmallFrDate() : ''} {toDo.name} {toDo.duration.durationify()}
  • )}
}
} export default ToDoFinish interface ToDoFinishProps { reload: Date|null, }