aboutsummaryrefslogtreecommitdiffstats
path: root/packages/website/ts/containers/inputs
diff options
context:
space:
mode:
authorFabio Berger <me@fabioberger.com>2018-06-15 06:03:47 +0800
committerFabio Berger <me@fabioberger.com>2018-06-15 06:03:47 +0800
commit0d0c1af7f741834f076a604b776d4542c4dbb6ec (patch)
tree2730beb85bef7b64db11911cbd727b29afe4946c /packages/website/ts/containers/inputs
parentfb55def54f44413a8b0a7f001fb18d6eac89e422 (diff)
parente7eb220c503118631a6b23071c71b4b55df5b5cf (diff)
downloaddexon-sol-tools-0d0c1af7f741834f076a604b776d4542c4dbb6ec.tar
dexon-sol-tools-0d0c1af7f741834f076a604b776d4542c4dbb6ec.tar.gz
dexon-sol-tools-0d0c1af7f741834f076a604b776d4542c4dbb6ec.tar.bz2
dexon-sol-tools-0d0c1af7f741834f076a604b776d4542c4dbb6ec.tar.lz
dexon-sol-tools-0d0c1af7f741834f076a604b776d4542c4dbb6ec.tar.xz
dexon-sol-tools-0d0c1af7f741834f076a604b776d4542c4dbb6ec.tar.zst
dexon-sol-tools-0d0c1af7f741834f076a604b776d4542c4dbb6ec.zip
Merge branch 'v2-prototype' into feature/combinatorial-testing
* v2-prototype: Run prettify Implement allowance and final flow step Render TokenAllowance Add utilities for getting tokens from tokensByAddress Wrap AllowanceToggle in redux container
Diffstat (limited to 'packages/website/ts/containers/inputs')
-rw-r--r--packages/website/ts/containers/inputs/allowance_toggle.ts41
1 files changed, 41 insertions, 0 deletions
diff --git a/packages/website/ts/containers/inputs/allowance_toggle.ts b/packages/website/ts/containers/inputs/allowance_toggle.ts
new file mode 100644
index 000000000..545708f92
--- /dev/null
+++ b/packages/website/ts/containers/inputs/allowance_toggle.ts
@@ -0,0 +1,41 @@
+import * as React from 'react';
+import { connect } from 'react-redux';
+import { Dispatch } from 'redux';
+import { Blockchain } from 'ts/blockchain';
+import { State } from 'ts/redux/reducer';
+import { BalanceErrs, Token, TokenState } from 'ts/types';
+
+import { AllowanceToggle as AllowanceToggleComponent } from 'ts/components/inputs/allowance_toggle';
+import { Dispatcher } from 'ts/redux/dispatcher';
+
+interface AllowanceToggleProps {
+ blockchain: Blockchain;
+ onErrorOccurred?: (errType: BalanceErrs) => void;
+ token: Token;
+ tokenState: TokenState;
+ isDisabled?: boolean;
+ refetchTokenStateAsync: () => Promise<void>;
+}
+
+interface ConnectedState {
+ networkId: number;
+ userAddress: string;
+}
+
+interface ConnectedDispatch {
+ dispatcher: Dispatcher;
+}
+
+const mapStateToProps = (state: State, _ownProps: AllowanceToggleProps): ConnectedState => ({
+ networkId: state.networkId,
+ userAddress: state.userAddress,
+});
+
+const mapDispatchTopProps = (dispatch: Dispatch<State>): ConnectedDispatch => ({
+ dispatcher: new Dispatcher(dispatch),
+});
+
+export const AllowanceToggle: React.ComponentClass<AllowanceToggleProps> = connect(
+ mapStateToProps,
+ mapDispatchTopProps,
+)(AllowanceToggleComponent);