import PropTypes from 'prop-types'; import { PureComponent } from 'react'; import { injectIntl, defineMessages, FormattedMessage } from 'react-intl'; import Toggle from 'react-toggle'; import Button from 'mastodon/components/button'; const messages = defineMessages({ placeholder: { id: 'report.placeholder', defaultMessage: 'Type or paste additional comments' }, }); class Comment extends PureComponent { static propTypes = { onSubmit: PropTypes.func.isRequired, comment: PropTypes.string.isRequired, onChangeComment: PropTypes.func.isRequired, intl: PropTypes.object.isRequired, isSubmitting: PropTypes.bool, forward: PropTypes.bool, isRemote: PropTypes.bool, domain: PropTypes.string, onChangeForward: PropTypes.func.isRequired, }; handleClick = () => { const { onSubmit } = this.props; onSubmit(); }; handleChange = e => { const { onChangeComment } = this.props; onChangeComment(e.target.value); }; handleKeyDown = e => { if (e.keyCode === 13 && (e.ctrlKey || e.metaKey)) { this.handleClick(); } }; handleForwardChange = e => { const { onChangeForward } = this.props; onChangeForward(e.target.checked); }; render () { const { comment, isRemote, forward, domain, isSubmitting, intl } = this.props; return ( <>