import styles from '../Notes.module.scss' import React, { useContext } from 'react' import {getNote, exportNote, removeNote} from '../helpers/noteActions.js' import useNotes from '../hooks/useNotes' import Context from 'context'; import { faEdit, faDownload, faTrash } from '@fortawesome/free-solid-svg-icons' import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' const datestring = date => { const d = new Date(date); return ("0" + d.getDate()).slice(-2) + "-" + ("0"+(d.getMonth()+1)).slice(-2) + "-" + d.getFullYear() + " " + ("0" + d.getHours()).slice(-2) + ":" + ("0" + d.getMinutes()).slice(-2) }; const ListItem = ({note, setAction, setFetchedNote, setLoading}) => { const {mutateNotes} = useNotes() const {setPopup} = useContext(Context) const handleNoteAction = async (a, note, e) => { if (e) e.stopPropagation() setLoading(true) await getNote(note, setFetchedNote, setPopup, () => setAction(a)) } return ( handleNoteAction('showNote', note)} > {`${note.title}`} handleNoteAction('editNote', note, e)}> {e.stopPropagation(); exportNote(note)}}> removeNote(e, note._id, mutateNotes, setPopup, setAction)}> {datestring(note.created_at)} {datestring(note.updated_at)} ) } export default ListItem