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 } from "mastodon/actions/suggestions"; import { LoadingIndicator } from "mastodon/components/loading_indicator"; import AccountCard from "mastodon/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)); } render () { const { isLoading, suggestions } = this.props; if (!isLoading && suggestions.isEmpty()) { return (
); } return (
{isLoading ? : suggestions.map(suggestion => ( ))}
); } } export default connect(mapStateToProps)(Suggestions);