import { defineMessages, injectIntl } from 'react-intl'; import ImmutablePureComponent from 'react-immutable-pure-component'; import ImmutablePropTypes from 'react-immutable-proptypes'; import Permalink from '../../../../components/permalink'; import Avatar from '../../../../components/avatar'; import DisplayName from '../../../../components/display_name'; import IconButton from '../../../../components/icon_button'; import { makeGetAccount } from '../../../../selectors'; import { authorizeFollowRequest, rejectFollowRequest } from '../../../../actions/accounts'; import './account_authorize.scss'; const messages = defineMessages({ authorize: { id: 'follow_request.authorize', defaultMessage: 'Authorize' }, reject: { id: 'follow_request.reject', defaultMessage: 'Reject' }, }); const makeMapStateToProps = () => { const getAccount = makeGetAccount(); const mapStateToProps = (state, props) => ({ account: getAccount(state, props.id), }); return mapStateToProps; }; 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, onAuthorize: PropTypes.func.isRequired, onReject: PropTypes.func.isRequired, intl: PropTypes.object.isRequired, }; render () { const { intl, account, onAuthorize, onReject } = this.props; const content = { __html: account.get('note_emojified') }; return (
); } }