import React from 'react' import { TooltipContent, TooltipContainer, formatMissing, themeState, } from '@graphique/graphique' import { useAtom } from 'jotai' export interface DefaultTooltipProps { data: TooltipContent[] hasXAxisTooltip?: boolean } export const DefaultTooltip = ({ data, hasXAxisTooltip, }: DefaultTooltipProps) => { const xVal = data && data[0] ? data[0]?.formattedX : undefined const [{ tooltip }] = useAtom(themeState) return data ? ( {!hasXAxisTooltip && xVal && (
{xVal}
)} {data.map((d, i) => { const formattedGroup = formatMissing(d.group) return (
{(d.label || d.group) && ( <> {d.mark}
{d.label || formattedGroup}{' '}
)}
{d.formattedY}
) })}
) : null }