2019-12-01 22:12:13 +01:00
|
|
|
import { all, takeEvery, takeLatest } from 'redux-saga/effects';
|
|
|
|
import { failuresSaga } from './failure';
|
2019-12-13 13:28:59 +01:00
|
|
|
import { FETCH_BOARDS_REQUEST, SAVE_BOARD_REQUEST, DELETE_BOARD_REQUEST } from '../actions/boards';
|
|
|
|
import { fetchBoardsSaga, saveBoardSaga, deleteBoardSaga } from './boards';
|
2019-12-05 22:37:09 +01:00
|
|
|
import { FETCH_ISSUES_REQUEST, ADD_LABEL_REQUEST, REMOVE_LABEL_REQUEST, CREATE_ISSUE_REQUEST, CREATE_ISSUE_SUCCESS } from '../actions/issues';
|
|
|
|
import { fetchIssuesSaga, addLabelSaga, removeLabelSaga, createIssueSaga } from './issues';
|
2019-12-01 22:12:13 +01:00
|
|
|
import { FETCH_PROJECTS_REQUEST } from '../actions/projects';
|
|
|
|
import { fetchProjectsSaga } from './projects';
|
2019-12-13 13:30:33 +01:00
|
|
|
import { LOGOUT_REQUEST, LOGOUT_SUCCESS } from '../actions/logout';
|
|
|
|
import { logoutSaga, logoutSuccessSaga } from './logout';
|
2019-12-01 22:12:13 +01:00
|
|
|
import { BUILD_KANBOARD_REQUEST, MOVE_CARD } from '../actions/kanboards';
|
2019-12-05 22:37:09 +01:00
|
|
|
import { buildKanboardSaga, moveCardSaga, refreshKanboardSaga } from './kanboards';
|
2019-11-28 14:12:48 +01:00
|
|
|
|
|
|
|
export function* rootSaga() {
|
|
|
|
yield all([
|
2019-12-01 22:12:13 +01:00
|
|
|
takeEvery(patternFromRegExp(/^.*_FAILURE/), failuresSaga),
|
|
|
|
takeLatest(FETCH_BOARDS_REQUEST, fetchBoardsSaga),
|
|
|
|
takeLatest(BUILD_KANBOARD_REQUEST, buildKanboardSaga),
|
|
|
|
takeLatest(SAVE_BOARD_REQUEST, saveBoardSaga),
|
2019-12-13 13:28:59 +01:00
|
|
|
takeLatest(DELETE_BOARD_REQUEST, deleteBoardSaga),
|
2019-12-01 22:12:13 +01:00
|
|
|
takeLatest(FETCH_ISSUES_REQUEST, fetchIssuesSaga),
|
|
|
|
takeLatest(FETCH_PROJECTS_REQUEST, fetchProjectsSaga),
|
|
|
|
takeEvery(MOVE_CARD, moveCardSaga),
|
|
|
|
takeEvery(ADD_LABEL_REQUEST, addLabelSaga),
|
|
|
|
takeEvery(REMOVE_LABEL_REQUEST, removeLabelSaga),
|
2019-12-05 22:37:09 +01:00
|
|
|
takeLatest(CREATE_ISSUE_REQUEST, createIssueSaga),
|
|
|
|
takeLatest(CREATE_ISSUE_SUCCESS, refreshKanboardSaga),
|
2019-12-13 13:30:33 +01:00
|
|
|
takeLatest(LOGOUT_REQUEST, logoutSaga),
|
|
|
|
takeLatest(LOGOUT_SUCCESS, logoutSuccessSaga)
|
2019-11-28 14:12:48 +01:00
|
|
|
]);
|
|
|
|
}
|
|
|
|
|
|
|
|
export function patternFromRegExp(re) {
|
|
|
|
return (action) => {
|
|
|
|
return re.test(action.type);
|
|
|
|
};
|
|
|
|
}
|