* Move ancestors/descendants out of timelines reducer * Refactor timelines reducer All types of timelines now have a flat structure and use the same reducer functions and actions * Reintroduce some missing behaviours * Fix wrong import in reports * Fix includes typo * Fix issue related to "next" pagination in timelines and notifications * Fix bug with timeline's initial state, expandNotifications
This commit is contained in:
parent
85d405c810
commit
47bf7a8047
21 changed files with 216 additions and 593 deletions
|
@ -124,25 +124,22 @@ export function refreshNotificationsFail(error, skipLoading) {
|
|||
|
||||
export function expandNotifications() {
|
||||
return (dispatch, getState) => {
|
||||
const url = getState().getIn(['notifications', 'next'], null);
|
||||
const lastId = getState().getIn(['notifications', 'items']).last();
|
||||
const items = getState().getIn(['notifications', 'items'], Immutable.List());
|
||||
|
||||
if (url === null || getState().getIn(['notifications', 'isLoading'])) {
|
||||
if (getState().getIn(['notifications', 'isLoading']) || items.size === 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
dispatch(expandNotificationsRequest());
|
||||
|
||||
const params = {
|
||||
max_id: lastId,
|
||||
max_id: items.last().get('id'),
|
||||
limit: 20,
|
||||
exclude_types: excludeTypesFromSettings(getState()),
|
||||
};
|
||||
|
||||
params.exclude_types = excludeTypesFromSettings(getState());
|
||||
dispatch(expandNotificationsRequest());
|
||||
|
||||
api(getState).get(url, params).then(response => {
|
||||
api(getState).get('/api/v1/notifications', { params }).then(response => {
|
||||
const next = getLinks(response).refs.find(link => link.rel === 'next');
|
||||
|
||||
dispatch(expandNotificationsSuccess(response.data, next ? next.uri : null));
|
||||
fetchRelatedRelationships(dispatch, response.data);
|
||||
}).catch(error => {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue