import { makeAsyncReducer, makeAsyncActionCreator, composeReducers } from 'redux-toolbelt';
import { makeAsyncSaga } from 'redux-toolbelt-saga';
import { fetchProProgressFromServer, setSelectedProProgressToStore } from './service';
// Actions
export const actions = {
fetchProProgressList: makeAsyncActionCreator('FETCH_PROPROGRESS'),
setSelectedProProgress: makeAsyncActionCreator('SET_SELECTEDPROPROGRESS')
};
// Reducer
export const reducer = composeReducers({
proProgressList: makeAsyncReducer(actions.fetchProProgressList),
setSelectedProProgress: makeAsyncReducer(actions.setSelectedProProgress)
});
// Sagas
const fetchProProgressSaga = makeAsyncSaga(
actions.fetchProProgressList,
fetchProProgressFromServer,
{
debug: true
}
);
const setSelectedProProgressSaga = makeAsyncSaga(
actions.setSelectedProProgress,
setSelectedProProgressToStore,
{
debug: true
}
);
export const sagas = [fetchProProgressSaga(), setSelectedProProgressSaga()];
|