import React, { Fragment } from 'react'; import ImmutablePropTypes from 'react-immutable-proptypes'; import PropTypes from 'prop-types'; import { defineMessages, FormattedMessage, injectIntl } from 'react-intl'; import ImmutablePureComponent from 'react-immutable-pure-component'; import AvatarOverlay from 'mastodon/components/avatar_overlay'; import RelativeTimestamp from 'mastodon/components/relative_timestamp'; const messages = defineMessages({ openReport: { id: 'report_notification.open', defaultMessage: 'Open report' }, other: { id: 'report_notification.categories.other', defaultMessage: 'Other' }, spam: { id: 'report_notification.categories.spam', defaultMessage: 'Spam' }, violation: { id: 'report_notification.categories.violation', defaultMessage: 'Rule violation' }, }); export default @injectIntl class Report extends ImmutablePureComponent { static propTypes = { account: ImmutablePropTypes.map.isRequired, report: ImmutablePropTypes.map.isRequired, hidden: PropTypes.bool, intl: PropTypes.object.isRequired, }; render () { const { intl, hidden, report, account } = this.props; if (!report) { return null; } if (hidden) { return ( {report.get('id')} ); } return (
ยท
{intl.formatMessage(messages[report.get('category')])}
{intl.formatMessage(messages.openReport)}
); } }