import React from 'react'; import UpdateTodoModal from '../Modals/Todo/UpdateTodoModal' import DeleteTodoDialog from '../Dialogs/Todo/DeleteTodoDialog' import DeleteTodoСompletelyDialog from '../Dialogs/Todo/DeleteTodoСompletelyDialog' import RestoreTodoDialog from '../Dialogs/Todo/RestoreTodoDialog' import { Card, CardActions, CardContent, Typography, Grid, IconButton, makeStyles } from '@material-ui/core' import RestoreIcon from '@material-ui/icons/Restore'; import DeleteIcon from '@material-ui/icons/Delete' import AlarmIcon from '@material-ui/icons/Alarm'; import EditIcon from '@material-ui/icons/Edit'; import categories from '../../db/categories.json' const useStyles = makeStyles((theme) => ({ alarmIcon: { marginRight: 10 }, cardActions: { justifyContent: 'flex-end' }, cardHeading: { marginBottom: 10 }, cardCategoryHeading: { display: 'flex', justifyContent: 'space-between', fontSize: 14 }, cardAlarm: { display: 'flex', alignItems: 'center' }, fab: { position: 'fixed', margin: 30, bottom: theme.spacing(2), right: theme.spacing(2), }, })) const Todos = ({ data, fromTrashContainer }) => { const classes = useStyles() const [selectedTodo, setSelectedTodo] = React.useState({ title: '', description: '', category: '', deadline: '' }) const [isModalOpen, setIsModalOpen] = React.useState(false) const [isOpenDialog, setIsOpenDialog] = React.useState(false); const [isOpenRestoreDialog, setIsOpenRestoreDialog] = React.useState(false) const handleOpenModal = todo => { const selectedTodo = { id: todo._id.$oid, title: todo.title, description: todo.description, category: todo.categoryId, deadline: todo.deadline } setSelectedTodo(selectedTodo) setIsModalOpen(true) } const handleCloseModal = () => setIsModalOpen(false) const handleOpenDialog = todo => { setSelectedTodo({ id: todo._id.$oid, title: todo.title, description: todo.description, category: todo.categoryId, deadline: todo.deadline }) setIsOpenDialog(true) } const handleCloseDialog = () => setIsOpenDialog(false) const handleOpenRestoreDialog = todo => { setSelectedTodo({ id: todo._id.$oid, title: todo.title, description: todo.description, category: todo.categoryId, deadline: todo.deadline }) setIsOpenRestoreDialog(true) } const handleCloseRestoreDialog = () => setIsOpenRestoreDialog(false) return ( <> {!fromTrashContainer ? : null} {!fromTrashContainer ? : null} {fromTrashContainer ? : null} {fromTrashContainer ? : null} {data.map((todo, i) => {categories.find(category => category._id.$oid === todo.categoryId).title} {todo.deadline} {todo.title} {todo.description} {!fromTrashContainer ? handleOpenModal(todo)} aria-label="update"> : handleOpenRestoreDialog(todo)} aria-label="restore"> } handleOpenDialog(todo)} aria-label="delete" color='secondary'> )} ) } export default Todos