diff --git a/src/reducers/cells.js b/src/reducers/cells.js new file mode 100644 index 00000000..d556bc1f --- /dev/null +++ b/src/reducers/cells.js @@ -0,0 +1,27 @@ +const Cells = (state = { + cells: null, + loading: null, + error: null, +}, action) => { + switch (action.type) { + case "REQUEST_CELLS": + return Object.assign({}, state, { + loading: true, + error: null + }); + case "RECEIVE_CELLS": + return Object.assign({}, state, { + error: null, + cells: action.data, + }); + case "CELLS_FETCH_ERROR": + return Object.assign({}, state, { + cells: null, + error: action.data + }); + default: + return state; + } +}; + +export default Cells; diff --git a/src/reducers/index.js b/src/reducers/index.js new file mode 100644 index 00000000..2b4e2f8c --- /dev/null +++ b/src/reducers/index.js @@ -0,0 +1,10 @@ +import { combineReducers, createStore } from 'redux' +import cells from './cells' + +const Reducer = combineReducers({ + cells, +}) + +let store = createStore(Reducer); + +export default store;