import React, {useEffect, useState} from "react" import useTracker from "../../hooks/TraskerHook" import {Link} from "react-router-dom" import {StopSVG} from "../SVG" import TimeTrackerEdit from "./TimeTrackerEdit" import {Modal} from "../Modals" import {timeTracker} from "../../utilities/types" const Tracker = () => { const [timer, setTimer] = useState('') const {currentTimeTracker, setCurrentTimeTracker, stopCurrentTimeTrack} = useTracker() const [showTrackers, setShowTrackers] = useState(null) const [reload, setReload] = useState(null) useEffect(() => { setTimer(formatTimer(currentTimeTracker?.start_at)) }, [currentTimeTracker]) useEffect(() => { setTimeout(() => setTimer(formatTimer(currentTimeTracker?.start_at)), 1000) }, [timer]) useEffect(() => { if (reload) { setCurrentTimeTracker(reload) setShowTrackers(null) } }, [reload]) const formatTimer = (startAt: string|null|undefined) => { if (!startAt) { return '--:--' } const timer = Math.floor(((new Date()).getTime() - (new Date(startAt)).getTime()) / 1000) return Number(timer).durationify() } return
{currentTimeTracker ?
{currentTimeTracker?.to_do?.name}
:
--:--
} setShowTrackers(null)}> {showTrackers && }
} export default Tracker