import { LineChart, XAxis, YAxis, Line, Tooltip, Legend } from "recharts"; import { timeFormat } from "d3-time-format"; interface ToolTipProps { active?: boolean, payload?: object, unit?: string } const defaultProps = { active: false, payload: {}, unit: "" }; interface ChartProps { data: [{ time: string, }], color: string, unit: string, dataCollections?: any, } function CustomizedTooltip(props: ToolTipProps) { const { active, payload, unit } = props; if (active && payload && payload[0]) { const time = payload[0].payload ? timeFormat("%I:%M")(new Date(payload[0].payload.time)) : ""; return (

{time} {payload[0].payload.value} {unit}

); } return null; } CustomizedTooltip.defaultProps = defaultProps; export default function Chart({ data, color, unit, dataCollections }: ChartProps) { const timeFormatter = (tick: string) => { return timeFormat("%I:%M")(new Date(tick)); }; let ticks = data.map((item) => item?.time); if (dataCollections) { ticks = dataCollections[0].data?.map((collection) => collection?.time); } return ( } /> {dataCollections?.map((s) => ( ))} ); } Chart.defaultProps = { dataCollections: [], };