aboutsummaryrefslogtreecommitdiffstats
path: root/packages/instant/src/util/buy_quote_updater.ts
diff options
context:
space:
mode:
authorSteve Klebanoff <steve@0xproject.com>2018-12-04 06:24:58 +0800
committerGitHub <noreply@github.com>2018-12-04 06:24:58 +0800
commit50df67e7511460f051f91785bb4384485077ef60 (patch)
tree3caa4fac28a2af99e7e7d0beff7a661d26f8665e /packages/instant/src/util/buy_quote_updater.ts
parentf076cdb8329693e9d7351ec88d2ac01ad42a2a3a (diff)
parent91b0fd951708b0fff0733c2e1eed45a403f3cc73 (diff)
downloaddexon-sol-tools-50df67e7511460f051f91785bb4384485077ef60.tar
dexon-sol-tools-50df67e7511460f051f91785bb4384485077ef60.tar.gz
dexon-sol-tools-50df67e7511460f051f91785bb4384485077ef60.tar.bz2
dexon-sol-tools-50df67e7511460f051f91785bb4384485077ef60.tar.lz
dexon-sol-tools-50df67e7511460f051f91785bb4384485077ef60.tar.xz
dexon-sol-tools-50df67e7511460f051f91785bb4384485077ef60.tar.zst
dexon-sol-tools-50df67e7511460f051f91785bb4384485077ef60.zip
Merge pull request #1295 from 0xProject/feature/instant/rollbar-env
[instant] Rollbar
Diffstat (limited to 'packages/instant/src/util/buy_quote_updater.ts')
-rw-r--r--packages/instant/src/util/buy_quote_updater.ts31
1 files changed, 10 insertions, 21 deletions
diff --git a/packages/instant/src/util/buy_quote_updater.ts b/packages/instant/src/util/buy_quote_updater.ts
index c1899f8c1..4229f2735 100644
--- a/packages/instant/src/util/buy_quote_updater.ts
+++ b/packages/instant/src/util/buy_quote_updater.ts
@@ -1,4 +1,4 @@
-import { AssetBuyer, AssetBuyerError, BuyQuote } from '@0x/asset-buyer';
+import { AssetBuyer, BuyQuote } from '@0x/asset-buyer';
import { BigNumber } from '@0x/utils';
import { Web3Wrapper } from '@0x/web3-wrapper';
import * as _ from 'lodash';
@@ -10,6 +10,7 @@ import { AffiliateInfo, ERC20Asset, QuoteFetchOrigin } from '../types';
import { analytics } from '../util/analytics';
import { assetUtils } from '../util/asset';
import { errorFlasher } from '../util/error_flasher';
+import { errorReporter } from '../util/error_reporter';
export const buyQuoteUpdater = {
updateBuyQuoteAsync: async (
@@ -35,30 +36,18 @@ export const buyQuoteUpdater = {
try {
newBuyQuote = await assetBuyer.getBuyQuoteAsync(asset.assetData, baseUnitValue, { feePercentage });
} catch (error) {
+ const errorMessage = assetUtils.assetBuyerErrorMessage(asset, error);
+
+ if (_.isUndefined(errorMessage)) {
+ // This is an unknown error, report it to rollbar
+ errorReporter.report(error);
+ }
+
if (options.dispatchErrors) {
dispatch(actions.setQuoteRequestStateFailure());
analytics.trackQuoteError(error.message ? error.message : 'other', baseUnitValue, fetchOrigin);
- let errorMessage;
- if (error.message === AssetBuyerError.InsufficientAssetLiquidity) {
- const assetName = assetUtils.bestNameForAsset(asset, 'of this asset');
- errorMessage = `Not enough ${assetName} available`;
- } else if (error.message === AssetBuyerError.InsufficientZrxLiquidity) {
- errorMessage = 'Not enough ZRX available';
- } else if (
- error.message === AssetBuyerError.StandardRelayerApiError ||
- error.message.startsWith(AssetBuyerError.AssetUnavailable)
- ) {
- const assetName = assetUtils.bestNameForAsset(asset, 'This asset');
- errorMessage = `${assetName} is currently unavailable`;
- }
- if (!_.isUndefined(errorMessage)) {
- errorFlasher.flashNewErrorMessage(dispatch, errorMessage);
- } else {
- throw error;
- }
+ errorFlasher.flashNewErrorMessage(dispatch, errorMessage || 'Error fetching price, please try again');
}
- // TODO: report to error reporter on else
-
return;
}
// We have a successful new buy quote