aboutsummaryrefslogtreecommitdiffstats
path: root/packages/instant/src/containers/selected_erc20_asset_amount_input.ts
diff options
context:
space:
mode:
authorFabio Berger <me@fabioberger.com>2018-11-21 23:14:26 +0800
committerFabio Berger <me@fabioberger.com>2018-11-21 23:14:26 +0800
commit584dc6217d45f53294102a98f6222c5dc6b788c1 (patch)
tree927f17e68d6baf8ea86a8f2e5a68aaeb6daa08a2 /packages/instant/src/containers/selected_erc20_asset_amount_input.ts
parentedf07d9b5b2be0384cf1adb53023845662f9c5e4 (diff)
parentf66b695a470af8bd87fda017384e3059e66b10d8 (diff)
downloaddexon-sol-tools-584dc6217d45f53294102a98f6222c5dc6b788c1.tar
dexon-sol-tools-584dc6217d45f53294102a98f6222c5dc6b788c1.tar.gz
dexon-sol-tools-584dc6217d45f53294102a98f6222c5dc6b788c1.tar.bz2
dexon-sol-tools-584dc6217d45f53294102a98f6222c5dc6b788c1.tar.lz
dexon-sol-tools-584dc6217d45f53294102a98f6222c5dc6b788c1.tar.xz
dexon-sol-tools-584dc6217d45f53294102a98f6222c5dc6b788c1.tar.zst
dexon-sol-tools-584dc6217d45f53294102a98f6222c5dc6b788c1.zip
Merge branch 'development' of github.com:0xProject/0x-monorepo into development
* 'development' of github.com:0xProject/0x-monorepo: Add additional CHANGELOG to types package Add CHANGELOG entry Fix prettier Fix `SimpleContractArtifact` type Update abi-gen-wrappers Add @0x/types to dependencies of `@0x/abi-gen-wrappers` Allow a `SimpleContractArtifact` to be passed into `deployFrom0xArtifactAsync` Update issue template fix(instant): Use new valid svg image for instant isDisabled -> isInputDisabled Allow user to select other token on success fix: do not use document on import fix(instant): Don't allow changing of assets when order processing fix: npmignore file ignoring index.d.ts fix: specify new location of index.js in package.json feat: fix instant build and add to project references chore: make instant public
Diffstat (limited to 'packages/instant/src/containers/selected_erc20_asset_amount_input.ts')
-rw-r--r--packages/instant/src/containers/selected_erc20_asset_amount_input.ts18
1 files changed, 13 insertions, 5 deletions
diff --git a/packages/instant/src/containers/selected_erc20_asset_amount_input.ts b/packages/instant/src/containers/selected_erc20_asset_amount_input.ts
index 2c2661e1a..a39bc46a2 100644
--- a/packages/instant/src/containers/selected_erc20_asset_amount_input.ts
+++ b/packages/instant/src/containers/selected_erc20_asset_amount_input.ts
@@ -23,9 +23,10 @@ interface ConnectedState {
assetBuyer: AssetBuyer;
value?: BigNumber;
asset?: ERC20Asset;
- isDisabled: boolean;
+ isInputDisabled: boolean;
numberOfAssetsAvailable?: number;
affiliateInfo?: AffiliateInfo;
+ canSelectOtherAsset: boolean;
}
interface ConnectedDispatch {
@@ -43,21 +44,27 @@ type FinalProps = ConnectedProps & SelectedERC20AssetAmountInputProps;
const mapStateToProps = (state: State, _ownProps: SelectedERC20AssetAmountInputProps): ConnectedState => {
const processState = state.buyOrderState.processState;
- const isEnabled = processState === OrderProcessState.None || processState === OrderProcessState.Failure;
- const isDisabled = !isEnabled;
+ const isInputEnabled = processState === OrderProcessState.None || processState === OrderProcessState.Failure;
+ const isInputDisabled = !isInputEnabled;
const selectedAsset =
!_.isUndefined(state.selectedAsset) && state.selectedAsset.metaData.assetProxyId === AssetProxyId.ERC20
? (state.selectedAsset as ERC20Asset)
: undefined;
const numberOfAssetsAvailable = _.isUndefined(state.availableAssets) ? undefined : state.availableAssets.length;
+ const canSelectOtherAsset =
+ numberOfAssetsAvailable && numberOfAssetsAvailable > 1
+ ? isInputEnabled || processState === OrderProcessState.Success
+ : false;
+
const assetBuyer = state.providerState.assetBuyer;
return {
assetBuyer,
value: state.selectedAssetUnitAmount,
asset: selectedAsset,
- isDisabled,
+ isInputDisabled,
numberOfAssetsAvailable,
affiliateInfo: state.affiliateInfo,
+ canSelectOtherAsset,
};
};
@@ -102,8 +109,9 @@ const mergeProps = (
onChange: (value, asset) => {
connectedDispatch.updateBuyQuote(connectedState.assetBuyer, value, asset, connectedState.affiliateInfo);
},
- isDisabled: connectedState.isDisabled,
+ isInputDisabled: connectedState.isInputDisabled,
numberOfAssetsAvailable: connectedState.numberOfAssetsAvailable,
+ canSelectOtherAsset: connectedState.canSelectOtherAsset,
};
};