From dfbf10c94bfbbdbca353531c5cae6707e05981f0 Mon Sep 17 00:00:00 2001 From: Brandon Millman Date: Tue, 6 Nov 2018 20:25:30 -0800 Subject: feat(instant): fallback to an empty wallet provider when none is injected --- packages/instant/src/components/buy_button.tsx | 8 +- .../src/components/buy_order_state_buttons.tsx | 2 +- .../src/components/zero_ex_instant_provider.tsx | 86 +++--- packages/instant/src/constants.ts | 8 + .../selected_asset_buy_order_state_buttons.ts | 46 ++-- .../selected_erc20_asset_amount_input.ts | 9 +- packages/instant/src/redux/async_data.ts | 23 +- packages/instant/src/redux/reducer.ts | 291 +++++++++++---------- packages/instant/src/redux/store.ts | 7 +- packages/instant/src/types.ts | 26 +- packages/instant/src/util/asset_buyer_factory.ts | 17 ++ packages/instant/src/util/injected_provider.ts | 16 -- packages/instant/src/util/provider_factory.ts | 34 +++ 13 files changed, 330 insertions(+), 243 deletions(-) create mode 100644 packages/instant/src/util/asset_buyer_factory.ts delete mode 100644 packages/instant/src/util/injected_provider.ts create mode 100644 packages/instant/src/util/provider_factory.ts (limited to 'packages/instant/src') diff --git a/packages/instant/src/components/buy_button.tsx b/packages/instant/src/components/buy_button.tsx index e6d50de96..515cd18e9 100644 --- a/packages/instant/src/components/buy_button.tsx +++ b/packages/instant/src/components/buy_button.tsx @@ -17,7 +17,7 @@ import { Text } from './ui/text'; export interface BuyButtonProps { buyQuote?: BuyQuote; - assetBuyer?: AssetBuyer; + assetBuyer: AssetBuyer; affiliateInfo?: AffiliateInfo; onValidationPending: (buyQuote: BuyQuote) => void; onValidationFail: (buyQuote: BuyQuote, errorMessage: AssetBuyerError | ZeroExInstantError) => void; @@ -34,7 +34,7 @@ export class BuyButton extends React.Component { onBuyFailure: util.boundNoop, }; public render(): React.ReactNode { - const shouldDisableButton = _.isUndefined(this.props.buyQuote) || _.isUndefined(this.props.assetBuyer); + const shouldDisableButton = _.isUndefined(this.props.buyQuote); return (