import PropTypes from "prop-types"; import { PureComponent } from "react"; import { FormattedMessage } from "react-intl"; import ImmutablePropTypes from "react-immutable-proptypes"; import { connect } from "react-redux"; import { fetchSuggestions, dismissSuggestion } from "flavours/glitch/actions/suggestions"; import { LoadingIndicator } from "flavours/glitch/components/loading_indicator"; import AccountCard from "flavours/glitch/features/directory/components/account_card"; const mapStateToProps = state => ({ suggestions: state.getIn(["suggestions", "items"]), isLoading: state.getIn(["suggestions", "isLoading"]), }); class Suggestions extends PureComponent { static propTypes = { isLoading: PropTypes.bool, suggestions: ImmutablePropTypes.list, dispatch: PropTypes.func.isRequired, }; componentDidMount () { const { dispatch } = this.props; dispatch(fetchSuggestions(true)); } handleDismiss = (accountId) => { const { dispatch } = this.props; dispatch(dismissSuggestion(accountId)); }; render () { const { isLoading, suggestions } = this.props; if (!isLoading && suggestions.isEmpty()) { return (