aboutsummaryrefslogtreecommitdiff
path: root/src/middlewares/login.middleware.js
blob: c4dbc5be51e0e0f6f90253ac096afab528abd043 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import { put, call, fork, takeEvery } from "redux-saga/effects";
import { LOGIN_REQUEST, LOGIN_SUCCESS } from "../utils/constants";
import { loginMock } from "../modules/login/login.service";
import { history } from '../core/store';
function* loginWatcher() {
    yield takeEvery(LOGIN_REQUEST, loginWorker);
}

function* loginWorker(action) {
    let { email, password } = action;
    let res = yield call(loginApi, { email, password });
    if (res && res.data) {
        let { token } = res.data;
        yield put({
            type: LOGIN_SUCCESS,
            payload: {
                token
            }
        });
        history.push('/dashboard');
    }
    console.log(res);
}

function loginApi(params) {
    return loginMock(params);
}

export const LoginSaga = [fork(loginWatcher)];