SignAndVerifyContainer.js
1 import React, { Component } from 'react'; 2 import {connect} from 'react-redux'; 3 import SignAndVerify from '../components/SignAndVerify'; 4 import { 5 accounts as accountsAction, 6 signMessage as signMessageAction, 7 verifyMessage as verifyMessageAction 8 } from '../actions'; 9 import {getAccounts} from "../reducers/selectors"; 10 import { 11 getMessageSignaturePayload, 12 getMessageSignaturePendingState, 13 getMessageSignatureError, 14 getVerifiedAddressPayload, 15 getVerificationPendingState, 16 getVerificationError 17 } from '../reducers/selectors'; 18 19 class SignAndVerifyContainer extends Component { 20 21 componentDidMount() { 22 this.props.fetchAccounts(); 23 } 24 25 render() { 26 return ( 27 <React.Fragment> 28 {this.props.accounts.length && 29 <SignAndVerify accounts={this.props.accounts} 30 signMessage={this.props.signMessage} 31 verifyMessage={this.props.verifyMessage} 32 signedMessage={this.props.signedMessage} 33 verifiedAddress={this.props.verifiedAddress} 34 signaturePending={this.props.signaturePending} 35 signatureError={this.props.signatureError} 36 verificationPending={this.props.verificationPending} 37 verificationError={this.props.verificationError}/>} 38 </React.Fragment> 39 ) 40 } 41 } 42 43 function mapStateToProps(state) { 44 return { 45 accounts: getAccounts(state), 46 signedMessage: getMessageSignaturePayload(state), 47 verifiedAddress: getVerifiedAddressPayload(state), 48 signaturePending: getMessageSignaturePendingState(state), 49 signatureError: getMessageSignatureError(state), 50 verificationPending: getVerificationPendingState(state), 51 verificationError: getVerificationError(state) 52 }; 53 } 54 55 export default connect( 56 mapStateToProps, 57 { 58 fetchAccounts: accountsAction.request, 59 signMessage: signMessageAction.request, 60 verifyMessage: verifyMessageAction.request 61 } 62 )(SignAndVerifyContainer);