aboutsummaryrefslogblamecommitdiffstats
path: root/packages/instant/src/containers/latest_buy_quote_order_details.ts
blob: 5dfe535e7438d420cf5345453354904c8cb52f46 (plain) (tree)
1
2
3
4
5
6
7
8
9
10

                                               


                                      
                                 



                                                           
                                             




                                                   
                                        
                            
                       



                                                                                                        
                                                                
                                                           
                                   
                                                                     




                                                                                                         
import { BuyQuoteInfo } from '@0x/asset-buyer';
import { BigNumber } from '@0x/utils';
import * as _ from 'lodash';
import * as React from 'react';
import { connect } from 'react-redux';
import { oc } from 'ts-optchain';

import { State } from '../redux/reducer';

import { OrderDetails } from '../components/order_details';
import { AsyncProcessState } from '../types';

export interface LatestBuyQuoteOrderDetailsProps {}

interface ConnectedState {
    buyQuoteInfo?: BuyQuoteInfo;
    selectedAssetUnitAmount?: BigNumber;
    ethUsdPrice?: BigNumber;
    isLoading: boolean;
}

const mapStateToProps = (state: State, _ownProps: LatestBuyQuoteOrderDetailsProps): ConnectedState => ({
    // use the worst case quote info
    buyQuoteInfo: oc(state).latestBuyQuote.worstCaseQuoteInfo(),
    selectedAssetUnitAmount: state.selectedAssetUnitAmount,
    ethUsdPrice: state.ethUsdPrice,
    isLoading: state.quoteRequestState === AsyncProcessState.Pending,
});

export const LatestBuyQuoteOrderDetails: React.ComponentClass<LatestBuyQuoteOrderDetailsProps> = connect(
    mapStateToProps,
)(OrderDetails);