import React, { useState } from 'react'; import TimeAgo from 'timeago-react'; import DropdownMenu from './DropdownMenu'; import TextEntryField from './TextEntryField'; import PurposeSelect from './PurposeSelect'; import { ChevronDownIcon } from '../../../Icons'; import i18n from '../../../i18n'; /** A single comment inside the CommentWidget **/ const Comment = props => { const [ isEditable, setIsEditable ] = useState(false); const [ isMenuVisible, setIsMenuVisible ] = useState(false); const onMakeEditable = _ => { setIsEditable(true); setIsMenuVisible(false); } const onDelete = _ => { props.onDelete(props.body); setIsMenuVisible(false); } const onUpdateComment = evt => props.onUpdate(props.body, { ...props.body, value: evt.target.value }); const onChangePurpose = evt => props.onUpdate(props.body, { ...props.body, purpose: evt.value }); const timestamp = props.body.modified || props.body.created; const creatorInfo = props.body.creator &&
{props.body.creator.name || props.body.creator.id} { props.body.created && }
return props.readOnly ? (
{props.body.value}
{ creatorInfo }
) : (
{ !isEditable && creatorInfo } { props.purposeSelector && }
setIsMenuVisible(!isMenuVisible)}>
{ isMenuVisible && setIsMenuVisible(false)} /> }
) } export default Comment;