|
|
|
@ -144,10 +144,11 @@ const normalizeAccountTimeline = (state, accountId, statuses, replace = false) = |
|
|
|
|
return state.updateIn(['accounts_timelines', accountId], Immutable.Map(), map => map |
|
|
|
|
.set('isLoading', false) |
|
|
|
|
.set('loaded', true) |
|
|
|
|
.set('next', true) |
|
|
|
|
.update('items', Immutable.List(), list => (replace ? ids : list.unshift(...ids)))); |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
const appendNormalizedAccountTimeline = (state, accountId, statuses) => { |
|
|
|
|
const appendNormalizedAccountTimeline = (state, accountId, statuses, next) => { |
|
|
|
|
let moreIds = Immutable.List([]); |
|
|
|
|
|
|
|
|
|
statuses.forEach((status, i) => { |
|
|
|
@ -157,6 +158,7 @@ const appendNormalizedAccountTimeline = (state, accountId, statuses) => { |
|
|
|
|
|
|
|
|
|
return state.updateIn(['accounts_timelines', accountId], Immutable.Map(), map => map |
|
|
|
|
.set('isLoading', false) |
|
|
|
|
.set('next', next) |
|
|
|
|
.update('items', list => list.push(...moreIds))); |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
@ -299,7 +301,7 @@ export default function timelines(state = initialState, action) { |
|
|
|
|
case ACCOUNT_TIMELINE_FETCH_SUCCESS: |
|
|
|
|
return normalizeAccountTimeline(state, action.id, Immutable.fromJS(action.statuses), action.replace); |
|
|
|
|
case ACCOUNT_TIMELINE_EXPAND_SUCCESS: |
|
|
|
|
return appendNormalizedAccountTimeline(state, action.id, Immutable.fromJS(action.statuses)); |
|
|
|
|
return appendNormalizedAccountTimeline(state, action.id, Immutable.fromJS(action.statuses), action.next); |
|
|
|
|
case ACCOUNT_BLOCK_SUCCESS: |
|
|
|
|
case ACCOUNT_MUTE_SUCCESS: |
|
|
|
|
return filterTimelines(state, action.relationship, action.statuses); |
|
|
|
|