aboutsummaryrefslogtreecommitdiffstats
path: root/packages/instant/src
diff options
context:
space:
mode:
authorSteve Klebanoff <steve.klebanoff@gmail.com>2018-11-21 05:18:47 +0800
committerSteve Klebanoff <steve.klebanoff@gmail.com>2018-11-21 05:18:47 +0800
commit934570d12fae9c67ae18fc914577f02a51af3bca (patch)
treef2d30a259d529338f22aa647f27dc55c2cee3c43 /packages/instant/src
parent748e3c0c5358b99f15baf4bf95da027c9b83eb89 (diff)
downloaddexon-sol-tools-934570d12fae9c67ae18fc914577f02a51af3bca.tar
dexon-sol-tools-934570d12fae9c67ae18fc914577f02a51af3bca.tar.gz
dexon-sol-tools-934570d12fae9c67ae18fc914577f02a51af3bca.tar.bz2
dexon-sol-tools-934570d12fae9c67ae18fc914577f02a51af3bca.tar.lz
dexon-sol-tools-934570d12fae9c67ae18fc914577f02a51af3bca.tar.xz
dexon-sol-tools-934570d12fae9c67ae18fc914577f02a51af3bca.tar.zst
dexon-sol-tools-934570d12fae9c67ae18fc914577f02a51af3bca.zip
Explicit error reporting
Diffstat (limited to 'packages/instant/src')
-rw-r--r--packages/instant/src/redux/async_data.ts3
-rw-r--r--packages/instant/src/util/buy_quote_updater.ts4
-rw-r--r--packages/instant/src/util/gas_price_estimator.ts5
-rw-r--r--packages/instant/src/util/heap.ts3
4 files changed, 12 insertions, 3 deletions
diff --git a/packages/instant/src/redux/async_data.ts b/packages/instant/src/redux/async_data.ts
index 5d30388b8..29d441c75 100644
--- a/packages/instant/src/redux/async_data.ts
+++ b/packages/instant/src/redux/async_data.ts
@@ -9,6 +9,7 @@ import { assetUtils } from '../util/asset';
import { buyQuoteUpdater } from '../util/buy_quote_updater';
import { coinbaseApi } from '../util/coinbase_api';
import { errorFlasher } from '../util/error_flasher';
+import { errorReporter } from '../util/error_reporter';
import { actions } from './actions';
import { State } from './reducer';
@@ -22,6 +23,7 @@ export const asyncData = {
const errorMessage = 'Error fetching ETH/USD price';
errorFlasher.flashNewErrorMessage(dispatch, errorMessage);
dispatch(actions.updateEthUsdPrice(BIG_NUMBER_ZERO));
+ errorReporter.report(e);
}
},
fetchAvailableAssetDatasAndDispatchToStore: async (state: State, dispatch: Dispatch) => {
@@ -36,6 +38,7 @@ export const asyncData = {
errorFlasher.flashNewErrorMessage(dispatch, errorMessage);
// On error, just specify that none are available
dispatch(actions.setAvailableAssets([]));
+ errorReporter.report(e);
}
},
fetchAccountInfoAndDispatchToStore: async (
diff --git a/packages/instant/src/util/buy_quote_updater.ts b/packages/instant/src/util/buy_quote_updater.ts
index 2fd16d781..6cb5e41b6 100644
--- a/packages/instant/src/util/buy_quote_updater.ts
+++ b/packages/instant/src/util/buy_quote_updater.ts
@@ -9,6 +9,7 @@ import { Action, actions } from '../redux/actions';
import { AffiliateInfo, ERC20Asset } from '../types';
import { assetUtils } from '../util/asset';
import { errorFlasher } from '../util/error_flasher';
+import { errorReporter } from '../util/error_reporter';
export const buyQuoteUpdater = {
updateBuyQuoteAsync: async (
@@ -49,8 +50,9 @@ export const buyQuoteUpdater = {
} else {
throw error;
}
+ } else {
+ errorReporter.report(error);
}
- // TODO: report to error reporter on else
return;
}
diff --git a/packages/instant/src/util/gas_price_estimator.ts b/packages/instant/src/util/gas_price_estimator.ts
index 6b15809a3..332c8d00a 100644
--- a/packages/instant/src/util/gas_price_estimator.ts
+++ b/packages/instant/src/util/gas_price_estimator.ts
@@ -7,6 +7,8 @@ import {
GWEI_IN_WEI,
} from '../constants';
+import { errorReporter } from './error_reporter';
+
interface EthGasStationResult {
average: number;
fastestWait: number;
@@ -42,8 +44,9 @@ export class GasPriceEstimator {
let fetchedAmount: GasInfo | undefined;
try {
fetchedAmount = await fetchFastAmountInWeiAsync();
- } catch {
+ } catch (e) {
fetchedAmount = undefined;
+ errorReporter.report(e);
}
if (fetchedAmount) {
diff --git a/packages/instant/src/util/heap.ts b/packages/instant/src/util/heap.ts
index 78ec3b3cc..10670b278 100644
--- a/packages/instant/src/util/heap.ts
+++ b/packages/instant/src/util/heap.ts
@@ -5,6 +5,7 @@ import * as _ from 'lodash';
import { HEAP_ANALYTICS_ID } from '../constants';
import { AnalyticsEventOptions, AnalyticsUserOptions } from './analytics';
+import { errorReporter } from './error_reporter';
export interface HeapAnalytics {
loaded: boolean;
@@ -105,8 +106,8 @@ export const heapUtil = {
heapFunctionCall(curHeap);
} catch (e) {
// We never want analytics to crash our React component
- // TODO(sk): error reporter here
logUtils.log('Analytics error', e);
+ errorReporter.report(e);
}
}
},