diff options
author | Steve Klebanoff <steve.klebanoff@gmail.com> | 2018-10-20 05:49:38 +0800 |
---|---|---|
committer | Steve Klebanoff <steve.klebanoff@gmail.com> | 2018-10-20 05:49:38 +0800 |
commit | d2766d7ced990efd5a91441b459f36e8a21f8513 (patch) | |
tree | 8d8c8d45ddf8ece95bcc84645b6076e59b54604e /packages/instant/src/containers/selected_asset_button.tsx | |
parent | 6c79a858dff2766917ee3a4b5d4f623b66dadd17 (diff) | |
download | dexon-sol-tools-d2766d7ced990efd5a91441b459f36e8a21f8513.tar dexon-sol-tools-d2766d7ced990efd5a91441b459f36e8a21f8513.tar.gz dexon-sol-tools-d2766d7ced990efd5a91441b459f36e8a21f8513.tar.bz2 dexon-sol-tools-d2766d7ced990efd5a91441b459f36e8a21f8513.tar.lz dexon-sol-tools-d2766d7ced990efd5a91441b459f36e8a21f8513.tar.xz dexon-sol-tools-d2766d7ced990efd5a91441b459f36e8a21f8513.tar.zst dexon-sol-tools-d2766d7ced990efd5a91441b459f36e8a21f8513.zip |
Selected Asset button
Diffstat (limited to 'packages/instant/src/containers/selected_asset_button.tsx')
-rw-r--r-- | packages/instant/src/containers/selected_asset_button.tsx | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/packages/instant/src/containers/selected_asset_button.tsx b/packages/instant/src/containers/selected_asset_button.tsx new file mode 100644 index 000000000..d6e7303dd --- /dev/null +++ b/packages/instant/src/containers/selected_asset_button.tsx @@ -0,0 +1,33 @@ +import { AssetBuyer, BuyQuote } from '@0x/asset-buyer'; +import * as _ from 'lodash'; +import * as React from 'react'; +import { connect } from 'react-redux'; +import { Dispatch } from 'redux'; + +import { State } from '../redux/reducer'; +import { AsyncProcessState } from '../types'; + +import { SelectedAssetBuyButton } from './selected_asset_buy_button'; +import { SelectedAssetRetryButton } from './selected_asset_retry_button'; + +interface ConnectedState { + buyOrderState: AsyncProcessState; +} +export interface SelectedAssetButtonProps {} +const mapStateToProps = (state: State, _ownProps: SelectedAssetButtonProps): ConnectedState => ({ + buyOrderState: state.buyOrderState, +}); + +const SelectedAssetButtonPresentationComponent: React.StatelessComponent<{ + buyOrderState: AsyncProcessState; +}> = props => { + if (props.buyOrderState === AsyncProcessState.FAILURE) { + return <SelectedAssetRetryButton />; + } + + return <SelectedAssetBuyButton />; +}; + +export const SelectedAssetButton: React.ComponentClass<SelectedAssetButtonProps> = connect(mapStateToProps)( + SelectedAssetButtonPresentationComponent, +); |