import { Badge, Text } from '@chakra-ui/react'; import { statusColors } from 'constants/Settings'; import { FC } from 'react'; import { useTranslation } from 'react-i18next'; import { Status as StatusType } from 'types'; import { relativeExpiryDate } from 'utils/dateFormatter'; type StatusProps = { expiryDate?: number | null; status: StatusType; compact?: boolean; showDetail?: boolean; extraText?: string | null; }; export const StatusBadge: FC = ({ expiryDate, status, compact = false, showDetail = true, extraText, }) => { const { t } = useTranslation(); const dateInfo = relativeExpiryDate(expiryDate); const Icon = statusColors[status].icon; return ( <> {showDetail && ( {status} {extraText && `: ${extraText}`} )} {showDetail && expiryDate && ( {t(dateInfo.status, { time: dateInfo.time })} )} ); };