import React from "react"; import { uniqueId } from "lodash"; import { humanLastSeen, internationalTimeFormat } from "utilities/helpers"; import ReactTooltip from "react-tooltip"; interface IHumanTimeDiffWithDateTip { timeString: string; } /** Returns "Unavailable" if date is empty string or "Unavailable" * Returns "Invalid date" if date is invalid */ export default ({ timeString }: IHumanTimeDiffWithDateTip): JSX.Element => { const id = uniqueId(); if (timeString === "Unavailable" || timeString === "") { return Unavailable; } try { return ( <> {humanLastSeen(timeString)} {internationalTimeFormat(new Date(timeString))} ); } catch (e) { if (e instanceof RangeError) { return Invalid date; } return Unavailable; } };