feat: added danger-zone-saga.js
This commit is contained in:
committed by
mrugesh mohapatra
parent
e51b8bfaca
commit
05f8c2bd5c
41
client/src/redux/settings/danger-zone-saga.js
Normal file
41
client/src/redux/settings/danger-zone-saga.js
Normal file
@@ -0,0 +1,41 @@
|
||||
import { call, put, takeEvery } from 'redux-saga/effects';
|
||||
|
||||
import {
|
||||
deleteAccountComplete,
|
||||
deleteAccountError,
|
||||
resetProgressComplete,
|
||||
resetProgressError
|
||||
} from './';
|
||||
|
||||
import {
|
||||
postResetProgress,
|
||||
postDeleteAccount
|
||||
} from '../../utils/ajax';
|
||||
import { createFlashMessage } from '../../components/Flash/redux';
|
||||
|
||||
function* deleteAccountSaga({ payload }) {
|
||||
try {
|
||||
const { data: response } = yield call(postDeleteAccount, payload);
|
||||
yield put(deleteAccountComplete(response));
|
||||
yield put(createFlashMessage(response));
|
||||
} catch (e) {
|
||||
yield put(deleteAccountError(e));
|
||||
}
|
||||
}
|
||||
|
||||
function* resetProgressSaga({ payload }) {
|
||||
try {
|
||||
const { data: response } = yield call(postResetProgress, payload);
|
||||
yield put(resetProgressComplete(response));
|
||||
yield put(createFlashMessage(response));
|
||||
} catch (e) {
|
||||
yield put(resetProgressError(e));
|
||||
}
|
||||
}
|
||||
|
||||
export function createDangerZoneSaga(types) {
|
||||
return [
|
||||
takeEvery(types.deleteAccount, deleteAccountSaga),
|
||||
takeEvery(types.resetProgress, resetProgressSaga)
|
||||
];
|
||||
}
|
@@ -1,6 +1,7 @@
|
||||
import { createAction, handleActions } from 'redux-actions';
|
||||
|
||||
import { createTypes, createAsyncTypes } from '../../utils/createTypes';
|
||||
import { createDangerZoneSaga } from './danger-zone-saga';
|
||||
import { createSettingsSagas } from './settings-sagas';
|
||||
import { createUpdateMyEmailSaga } from './update-email-saga';
|
||||
|
||||
@@ -37,7 +38,8 @@ export const types = createTypes(
|
||||
|
||||
export const sagas = [
|
||||
...createSettingsSagas(types),
|
||||
...createUpdateMyEmailSaga(types)
|
||||
...createUpdateMyEmailSaga(types),
|
||||
...createDangerZoneSaga(types)
|
||||
];
|
||||
|
||||
const checkForSuccessPayload = ({ type, payload }) =>
|
||||
|
Reference in New Issue
Block a user