From bda9d4c1b099fc4db05d34a1d8dc0543a68413b8 Mon Sep 17 00:00:00 2001 From: fragosti Date: Thu, 1 Nov 2018 13:16:48 -0700 Subject: feat: auto-close panel when a token is selected --- .../instant/src/containers/available_erc20_token_selector.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'packages/instant/src/containers') diff --git a/packages/instant/src/containers/available_erc20_token_selector.ts b/packages/instant/src/containers/available_erc20_token_selector.ts index e8bacdba0..bb194cd6b 100644 --- a/packages/instant/src/containers/available_erc20_token_selector.ts +++ b/packages/instant/src/containers/available_erc20_token_selector.ts @@ -1,3 +1,4 @@ +import * as _ from 'lodash'; import * as React from 'react'; import { connect } from 'react-redux'; import { Dispatch } from 'redux'; @@ -9,7 +10,9 @@ import { assetUtils } from '../util/asset'; import { ERC20TokenSelector } from '../components/erc20_token_selector'; import { Action, actions } from '../redux/actions'; -export interface AvailableERC20TokenSelectorProps {} +export interface AvailableERC20TokenSelectorProps { + onTokenSelect?: (token: ERC20Asset) => void; +} interface ConnectedState { tokens: ERC20Asset[]; @@ -27,7 +30,12 @@ const mapDispatchToProps = ( dispatch: Dispatch, ownProps: AvailableERC20TokenSelectorProps, ): ConnectedDispatch => ({ - onTokenSelect: (token: ERC20Asset) => dispatch(actions.updateSelectedAsset(token)), + onTokenSelect: (token: ERC20Asset) => { + if (ownProps.onTokenSelect) { + ownProps.onTokenSelect(token); + } + dispatch(actions.updateSelectedAsset(token)); + }, }); export const AvailableERC20TokenSelector: React.ComponentClass = connect( -- cgit v1.2.3