Added verified accounts/suggestions panel, updated suggestions route

• Added:
- verified accounts/suggestions panel

• Updated:
- suggestions route
This commit is contained in:
mgabdev
2020-07-01 21:36:53 -04:00
parent 095e646661
commit f41274efc7
6 changed files with 227 additions and 58 deletions

View File

@@ -3,28 +3,38 @@ import {
SUGGESTIONS_FETCH_SUCCESS,
SUGGESTIONS_FETCH_FAIL,
SUGGESTIONS_DISMISS,
} from '../actions/suggestions';
import { Map as ImmutableMap, List as ImmutableList, fromJS } from 'immutable';
} from '../actions/suggestions'
import {
Map as ImmutableMap,
List as ImmutableList,
fromJS,
} from 'immutable'
const initialState = ImmutableMap({
items: ImmutableList(),
isLoading: false,
});
related: ImmutableMap({
items: ImmutableList(),
isLoading: false,
}),
verified: ImmutableMap({
items: ImmutableList(),
isLoading: false,
}),
})
export default function suggestionsReducer(state = initialState, action) {
switch(action.type) {
case SUGGESTIONS_FETCH_REQUEST:
return state.set('isLoading', true);
return state.setIn([action.suggestionType, 'isLoading'], true)
case SUGGESTIONS_FETCH_SUCCESS:
return state.withMutations(map => {
map.set('items', fromJS(action.accounts.map(x => x.id)));
map.set('isLoading', false);
});
return state.withMutations((map) => {
map.setIn([action.suggestionType, 'items'], fromJS(action.accounts.map(x => x.id)))
map.setIn([action.suggestionType, 'isLoading'], false)
})
case SUGGESTIONS_FETCH_FAIL:
return state.set('isLoading', false);
return state.setIn([action.suggestionType, 'isLoading'], false)
case SUGGESTIONS_DISMISS:
return state.update('items', list => list.filterNot(id => id === action.id));
return state.updateIn([action.suggestionType, 'items'], list => list.filterNot(id => id === action.id))
default:
return state;
return state
}
};
}