|
|
|
@ -17,6 +17,8 @@ import { fetchAccountIdentityProofs } from '../../actions/identity_proofs';
|
|
|
|
|
import MissingIndicator from 'flavours/glitch/components/missing_indicator';
|
|
|
|
|
import TimelineHint from 'flavours/glitch/components/timeline_hint';
|
|
|
|
|
|
|
|
|
|
const emptyList = ImmutableList();
|
|
|
|
|
|
|
|
|
|
const mapStateToProps = (state, { params: { accountId }, withReplies = false }) => {
|
|
|
|
|
const path = withReplies ? `${accountId}:with_replies` : accountId;
|
|
|
|
|
|
|
|
|
@ -28,6 +30,7 @@ const mapStateToProps = (state, { params: { accountId }, withReplies = false })
|
|
|
|
|
featuredStatusIds: withReplies ? ImmutableList() : state.getIn(['timelines', `account:${accountId}:pinned`, 'items'], ImmutableList()),
|
|
|
|
|
isLoading: state.getIn(['timelines', `account:${path}`, 'isLoading']),
|
|
|
|
|
hasMore: state.getIn(['timelines', `account:${path}`, 'hasMore']),
|
|
|
|
|
suspended: state.getIn(['accounts', accountId, 'suspended'], false),
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
@ -51,6 +54,7 @@ class AccountTimeline extends ImmutablePureComponent {
|
|
|
|
|
hasMore: PropTypes.bool,
|
|
|
|
|
withReplies: PropTypes.bool,
|
|
|
|
|
isAccount: PropTypes.bool,
|
|
|
|
|
suspended: PropTypes.bool,
|
|
|
|
|
remote: PropTypes.bool,
|
|
|
|
|
remoteUrl: PropTypes.string,
|
|
|
|
|
multiColumn: PropTypes.bool,
|
|
|
|
@ -91,7 +95,7 @@ class AccountTimeline extends ImmutablePureComponent {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
render () {
|
|
|
|
|
const { statusIds, featuredStatusIds, isLoading, hasMore, isAccount, multiColumn, remote, remoteUrl } = this.props;
|
|
|
|
|
const { statusIds, featuredStatusIds, isLoading, hasMore, suspended, isAccount, multiColumn, remote, remoteUrl } = this.props;
|
|
|
|
|
|
|
|
|
|
if (!isAccount) {
|
|
|
|
|
return (
|
|
|
|
@ -112,7 +116,9 @@ class AccountTimeline extends ImmutablePureComponent {
|
|
|
|
|
|
|
|
|
|
let emptyMessage;
|
|
|
|
|
|
|
|
|
|
if (remote && statusIds.isEmpty()) {
|
|
|
|
|
if (suspended) {
|
|
|
|
|
emptyMessage = <FormattedMessage id='empty_column.account_unavailable' defaultMessage='Profile unavailable' />;
|
|
|
|
|
} else if (remote && statusIds.isEmpty()) {
|
|
|
|
|
emptyMessage = <RemoteHint url={remoteUrl} />;
|
|
|
|
|
} else {
|
|
|
|
|
emptyMessage = <FormattedMessage id='empty_column.account_timeline' defaultMessage='No toots here!' />;
|
|
|
|
@ -129,7 +135,7 @@ class AccountTimeline extends ImmutablePureComponent {
|
|
|
|
|
alwaysPrepend
|
|
|
|
|
append={remoteMessage}
|
|
|
|
|
scrollKey='account_timeline'
|
|
|
|
|
statusIds={statusIds}
|
|
|
|
|
statusIds={suspended ? emptyList : statusIds}
|
|
|
|
|
featuredStatusIds={featuredStatusIds}
|
|
|
|
|
isLoading={isLoading}
|
|
|
|
|
hasMore={hasMore}
|
|
|
|
|