File: //proc/self/cwd/wp-content/plugins/automatewoo/admin/assets/src/data/base/reducer.js
/**
* Internal dependencies
*/
import TYPES from './action-types';
export const baseInitialState = {
requesting: {},
errors: {},
};
export const baseReducer = (
state,
{ type, selector, isRequesting, error }
) => {
switch ( type ) {
case TYPES.SET_IS_REQUESTING:
state = {
...state,
requesting: {
...state.requesting,
[ selector ]: isRequesting,
},
// Clear errors for the selector when new request starts
errors: {
...state.errors,
[ selector ]: null,
},
};
break;
case TYPES.SET_ERROR:
state = {
...state,
requesting: {
...state.requesting,
[ selector ]: false,
},
errors: {
...state.errors,
[ selector ]: error,
},
};
break;
}
return state;
};