import { defineMessages, injectIntl } from 'react-intl' import ImmutablePureComponent from 'react-immutable-pure-component' import ImmutablePropTypes from 'react-immutable-proptypes' import { authorizeFollowRequest, rejectFollowRequest } from '../actions/accounts' import { makeGetAccount } from '../selectors' import Account from './account' const messages = defineMessages({ authorize: { id: 'follow_request.authorize', defaultMessage: 'Authorize' }, reject: { id: 'follow_request.reject', defaultMessage: 'Reject' }, }) const makeMapStateToProps = (state, props) => ({ account: makeGetAccount()(state, props.id), }) const mapDispatchToProps = (dispatch, { id }) => ({ onAuthorize() { dispatch(authorizeFollowRequest(id)) }, onReject() { dispatch(rejectFollowRequest(id)) }, }) export default @connect(makeMapStateToProps, mapDispatchToProps) @injectIntl class AccountAuthorize extends ImmutablePureComponent { static propTypes = { account: ImmutablePropTypes.map.isRequired, intl: PropTypes.object.isRequired, onAuthorize: PropTypes.func.isRequired, onReject: PropTypes.func.isRequired, } render () { const { intl, account, onAuthorize, onReject, } = this.props //