42 lines
1.3 KiB
JavaScript
42 lines
1.3 KiB
JavaScript
/* global fetch */
|
|
|
|
import { all, call, delay, put, take, takeLatest } from 'redux-saga/effects'
|
|
import es6promise from 'es6-promise'
|
|
|
|
import { requestLoginSaga, requestUserSaga, requestRegisterSaga, requestLogoutSaga, requestNewsletterSubscribitionSaga} from './sagas/userSaga.js'
|
|
import { requestAdsSaga, requestAdSaga, requestPromotedAdsSaga } from './sagas/offreSaga.js'
|
|
import {requestCompaniesSaga} from './sagas/companySaga.js'
|
|
|
|
import {
|
|
REQUEST_LOGIN,
|
|
REQUEST_LOGOUT,
|
|
REQUEST_REGISTER,
|
|
FETCH_CURRENT_USER_REQUEST,
|
|
FETCH_ADS_REQUEST,
|
|
FETCH_AD_REQUEST,
|
|
FETCH_PROMOTED_ADS_REQUEST,
|
|
FETCH_COMPANIES_REQUEST,
|
|
SUBSCRIBE_NEWSLETTER_REQUEST,
|
|
} from "./types";
|
|
|
|
|
|
es6promise.polyfill()
|
|
|
|
|
|
function* rootSaga() {
|
|
yield all([
|
|
takeLatest(REQUEST_LOGIN, requestLoginSaga),
|
|
takeLatest(REQUEST_LOGOUT, requestLogoutSaga),
|
|
takeLatest(REQUEST_REGISTER, requestRegisterSaga),
|
|
takeLatest(FETCH_CURRENT_USER_REQUEST, requestUserSaga),
|
|
takeLatest(SUBSCRIBE_NEWSLETTER_REQUEST, requestNewsletterSubscribitionSaga),
|
|
takeLatest(FETCH_ADS_REQUEST, requestAdsSaga),
|
|
takeLatest(FETCH_AD_REQUEST, requestAdSaga),
|
|
takeLatest(FETCH_PROMOTED_ADS_REQUEST, requestPromotedAdsSaga),
|
|
takeLatest(FETCH_COMPANIES_REQUEST, requestCompaniesSaga),
|
|
|
|
])
|
|
}
|
|
|
|
export default rootSaga
|