import {Box, Typography, Stack, Badge} from '@mui/material/'; import { NotificationEntity, useReadNotificationsMutation, } from '../../generated/graphql'; import {useRouter} from 'next/navigation'; import {useTranslation} from 'react-i18next'; import {formatDate} from './formatDate'; interface NotificationProps { notification: NotificationEntity; onClose: () => void; } const CardNotification = ({notification, onClose}: NotificationProps) => { const router = useRouter(); const {t} = useTranslation(); const [readNotifications] = useReadNotificationsMutation(); const eventName = notification.attributes.event.data?.attributes?.name; const handleClick = () => { readNotifications({ refetchQueries: ['UserNotifications'], variables: {id: notification.id}, }); router.push(`/e/${notification.attributes.event.data.attributes.uuid}`); onClose(); }; return ( {!notification.attributes.read && ( )} {eventName} {formatDate(notification.attributes.createdAt)} {t(`notification.type.${notification.attributes.type}.content`)} ); }; export default CardNotification;