diff options
Diffstat (limited to 'app/assets/javascripts/components/containers')
-rw-r--r-- | app/assets/javascripts/components/containers/status_list_container.jsx | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/app/assets/javascripts/components/containers/status_list_container.jsx b/app/assets/javascripts/components/containers/status_list_container.jsx index cc6333a81..743e56c67 100644 --- a/app/assets/javascripts/components/containers/status_list_container.jsx +++ b/app/assets/javascripts/components/containers/status_list_container.jsx @@ -3,9 +3,21 @@ import StatusList from '../components/status_list'; import { replyCompose } from '../actions/compose'; import { reblog, favourite } from '../actions/interactions'; +function selectStatus(state, id) { + let status = state.getIn(['timelines', 'statuses', id]); + + status = status.set('account', state.getIn(['timelines', 'accounts', status.get('account')])); + + if (status.get('reblog') !== null) { + status = status.set('reblog', selectStatus(state, status.get('reblog'))); + } + + return status; +}; + const mapStateToProps = function (state, props) { return { - statuses: state.getIn(['timelines', props.type]) + statuses: state.getIn(['timelines', props.type]).map(id => selectStatus(state, id)) }; }; |