MyCrypto/common/sagas/rates.ts
William O'Beirne c3d1e4e3af Token Balance retry button & equivalent values fix (#1453)
* Add refresh button to token balances error. Refactor actions a bit.

* Fix assertion error from bn on rates
2018-04-05 16:19:14 -05:00

21 lines
754 B
TypeScript

import { fetchCCRatesSucceeded, fetchCCRatesFailed, FetchCCRatesRequested } from 'actions/rates';
import { SagaIterator } from 'redux-saga';
import { call, put, takeLatest } from 'redux-saga/effects';
import { fetchRates, CCResponse } from 'api/rates';
import { TypeKeys } from 'actions/rates/constants';
export function* fetchRatesSaga(action: FetchCCRatesRequested): SagaIterator {
try {
const rates: CCResponse = yield call(fetchRates, action.payload);
yield put(fetchCCRatesSucceeded(rates));
} catch (e) {
console.error('Failed to fetch rates:', e);
yield put(fetchCCRatesFailed());
return;
}
}
export default function* ratesSaga(): SagaIterator {
yield takeLatest(TypeKeys.RATES_FETCH_CC_REQUESTED, fetchRatesSaga);
}