ES6 Plato on Github
Report Home
Summary Display
reducers/instrumentscientists.js
Maintainability
59.29
Lines of code
38
Difficulty
23.76
Estimated Errors
0.25
Function weight
By Complexity
By SLOC
import { LOG_OUT, FECTH_INSTRUMENTSCIENTISTS_PENDING, FECTH_INSTRUMENTSCIENTISTS_FULFILLED } from '../constants/ActionTypes' import _ from 'lodash'; const initialState = {data : [], fetching: false, fetched: false, instrumentNames : []} const instrumentscientists = (state = initialState, action) => { switch (action.type) { case FECTH_INSTRUMENTSCIENTISTS_PENDING:{ state = {...state, data: [], fetched: false, fetching: true , instrumentNames : []}; break; } case FECTH_INSTRUMENTSCIENTISTS_FULFILLED:{ state = {...state, data : action.payload.data, fetched : true, fetching : false, instrumentNames : _.uniq(action.payload.data.map(function(e){ return e.instrument.name})).sort()}; break; } case LOG_OUT:{ state = {...state, data : [], fetched : false, fetching : false, instrumentNames : []}; break; } default: break; } return state; } export default instrumentscientists;