promise-reducer.js 425 B

123456789101112131415
  1. export function promiseReducer(state = {}, { type, status, payload, error, name }) {
  2. if (type === 'PROMISE') {
  3. return {
  4. ...state,
  5. [name]: { status, payload: (status === 'PENDING' && state[name] && state[name].payload) || payload, error }
  6. }
  7. } else if (type === 'CLEAR-PROMISE') {
  8. return {
  9. ...state,
  10. [name]: {}
  11. }
  12. }
  13. return state;
  14. }