From 09c5ae4e65f8fddd4504be041f27f9107d12df7d Mon Sep 17 00:00:00 2001 From: fragosti Date: Fri, 12 Oct 2018 09:55:33 -0700 Subject: feat: have coinbase API return BigNumber for eth-usd price endpoint --- packages/instant/src/redux/async_data.ts | 7 ++++--- packages/instant/src/util/coinbase_api.ts | 6 ++++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/packages/instant/src/redux/async_data.ts b/packages/instant/src/redux/async_data.ts index 3fde2d2e5..b368491f0 100644 --- a/packages/instant/src/redux/async_data.ts +++ b/packages/instant/src/redux/async_data.ts @@ -1,5 +1,6 @@ import { BigNumber } from '@0xproject/utils'; +import { BIG_NUMBER_ZERO } from '../constants'; import { ActionTypes } from '../types'; import { coinbaseApi } from '../util/coinbase_api'; @@ -7,15 +8,15 @@ import { store } from './store'; export const asyncData = { fetchAndDispatchToStore: async () => { - let ethUsdPriceStr = '0'; + let ethUsdPrice = BIG_NUMBER_ZERO; try { - ethUsdPriceStr = await coinbaseApi.getEthUsdPrice(); + ethUsdPrice = await coinbaseApi.getEthUsdPrice(); } catch (e) { // ignore } finally { store.dispatch({ type: ActionTypes.UPDATE_ETH_USD_PRICE, - data: new BigNumber(ethUsdPriceStr), + data: ethUsdPrice, }); } }, diff --git a/packages/instant/src/util/coinbase_api.ts b/packages/instant/src/util/coinbase_api.ts index 63c8077da..94a5d3c80 100644 --- a/packages/instant/src/util/coinbase_api.ts +++ b/packages/instant/src/util/coinbase_api.ts @@ -1,8 +1,10 @@ +import { BigNumber } from '@0xproject/utils'; + const baseEndpoint = 'https://api.coinbase.com/v2'; export const coinbaseApi = { - getEthUsdPrice: async (): Promise => { + getEthUsdPrice: async (): Promise => { const res = await fetch(`${baseEndpoint}/prices/ETH-USD/buy`); const resJson = await res.json(); - return resJson.data.amount; + return new BigNumber(resJson.data.amount); }, }; -- cgit v1.2.3