import { Activity, useEffect, useRef, useState } from 'react';
import { Link } from 'react-router-dom';
// material-ui
import { useTheme } from '@mui/material/styles';
import useMediaQuery from '@mui/material/useMediaQuery';
import Avatar from '@mui/material/Avatar';
import Button from '@mui/material/Button';
import CardActions from '@mui/material/CardActions';
import Chip from '@mui/material/Chip';
import ClickAwayListener from '@mui/material/ClickAwayListener';
import Divider from '@mui/material/Divider';
import Paper from '@mui/material/Paper';
import Popper from '@mui/material/Popper';
import Stack from '@mui/material/Stack';
import TextField from '@mui/material/TextField';
import Typography from '@mui/material/Typography';
import Box from '@mui/material/Box';
// project imports
import MainCard from 'ui-component/cards/MainCard';
import Transitions from 'ui-component/extended/Transitions';
import NotificationList from './NotificationList';
// assets
import { IconBell } from '@tabler/icons-react';
// notification status options
const status = [
{
value: 'all',
label: 'All Notification'
},
{
value: 'new',
label: 'New'
},
{
value: 'unread',
label: 'Unread'
},
{
value: 'other',
label: 'Other'
}
];
// ==============================|| NOTIFICATION ||============================== //
export default function NotificationSection() {
const theme = useTheme();
const downMD = useMediaQuery(theme.breakpoints.down('md'));
const [open, setOpen] = useState(false);
const [value, setValue] = useState('');
/**
* anchorRef is used on different componets and specifying one type leads to other components throwing an error
* */
const anchorRef = useRef(null);
const handleToggle = () => {
setOpen((prevOpen) => !prevOpen);
};
const handleClose = (event) => {
if (anchorRef.current && anchorRef.current.contains(event.target)) {
return;
}
setOpen(false);
};
const prevOpen = useRef(open);
useEffect(() => {
if (prevOpen.current === true && open === false) {
anchorRef.current.focus();
}
prevOpen.current = open;
}, [open]);
const handleChange = (event) => {
event?.target.value && setValue(event?.target.value);
};
return (
<>
{({ TransitionProps }) => (
All Notification
Mark as all read
{status.map((option) => (
))}
)}
>
);
}