27 lines
781 B
JavaScript

import { Map, List, fromJS } from "immutable";
export const defaultState = Map({
fetchingModules: false,
users: List(),
stats: Map({}),
modules: Map({})
});
const handlers = {
ADMIN_LIST_USERS_FULFILLED: (state, action) =>
state.set("users", fromJS(action.payload.response.data)),
ADMIN_GET_STATS_FULFILLED: (state, action) =>
state.set("stats", fromJS(action.payload.response.data)),
ADMIN_GET_MODULES_PENDING: state => state.set("fetchingModules", true),
ADMIN_GET_MODULES_FULFILLED: (state, action) =>
state.merge(
fromJS({
modules: action.payload.response.data,
fetchingModules: false
})
)
};
export default (state = defaultState, action) =>
handlers[action.type] ? handlers[action.type](state, action) : state;