Add favourited toot to favourites column (#4562)
* Add faved toot to faves column * renamed append to prepend for clarity
This commit is contained in:
		
							parent
							
								
									df045a98e1
								
							
						
					
					
						commit
						80d6d27270
					
				
					 1 changed files with 9 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -3,6 +3,7 @@ import {
 | 
			
		|||
  FAVOURITED_STATUSES_EXPAND_SUCCESS,
 | 
			
		||||
} from '../actions/favourites';
 | 
			
		||||
import { Map as ImmutableMap, List as ImmutableList } from 'immutable';
 | 
			
		||||
import { FAVOURITE_SUCCESS } from '../actions/interactions';
 | 
			
		||||
 | 
			
		||||
const initialState = ImmutableMap({
 | 
			
		||||
  favourites: ImmutableMap({
 | 
			
		||||
| 
						 | 
				
			
			@ -27,12 +28,20 @@ const appendToList = (state, listType, statuses, next) => {
 | 
			
		|||
  }));
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const prependOneToList = (state, listType, status) => {
 | 
			
		||||
  return state.update(listType, listMap => listMap.withMutations(map => {
 | 
			
		||||
    map.set('items', map.get('items').unshift(status.get('id')));
 | 
			
		||||
  }));
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export default function statusLists(state = initialState, action) {
 | 
			
		||||
  switch(action.type) {
 | 
			
		||||
  case FAVOURITED_STATUSES_FETCH_SUCCESS:
 | 
			
		||||
    return normalizeList(state, 'favourites', action.statuses, action.next);
 | 
			
		||||
  case FAVOURITED_STATUSES_EXPAND_SUCCESS:
 | 
			
		||||
    return appendToList(state, 'favourites', action.statuses, action.next);
 | 
			
		||||
  case FAVOURITE_SUCCESS:
 | 
			
		||||
    return prependOneToList(state, 'favourites', action.status);
 | 
			
		||||
  default:
 | 
			
		||||
    return state;
 | 
			
		||||
  }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue