import { OrderedSet } from 'immutable';
import { FormattedMessage } from 'react-intl';
import Button from 'mastodon/components/button';
+import LoadingIndicator from 'mastodon/components/loading_indicator';
const mapStateToProps = (state, { accountId }) => ({
availableStatusIds: OrderedSet(state.getIn(['timelines', `account:${accountId}:with_replies`, 'items'])),
+ isLoading: state.getIn(['timelines', `account:${accountId}:with_replies`, 'isLoading']),
});
export default @connect(mapStateToProps)
accountId: PropTypes.string.isRequired,
availableStatusIds: ImmutablePropTypes.set.isRequired,
selectedStatusIds: ImmutablePropTypes.set.isRequired,
+ isLoading: PropTypes.bool,
onToggle: PropTypes.func.isRequired,
};
};
render () {
- const { availableStatusIds, selectedStatusIds, onToggle } = this.props;
+ const { availableStatusIds, selectedStatusIds, onToggle, isLoading } = this.props;
return (
<React.Fragment>
<p className='report-dialog-modal__lead'><FormattedMessage id='report.statuses.subtitle' defaultMessage='Select all that apply' /></p>
<div className='report-dialog-modal__statuses'>
- {availableStatusIds.union(selectedStatusIds).map(statusId => (
+ {isLoading ? <LoadingIndicator /> : availableStatusIds.union(selectedStatusIds).map(statusId => (
<StatusCheckBox
id={statusId}
key={statusId}