From bf22e867ced2da11724b846024da4b633f0141b3 Mon Sep 17 00:00:00 2001 From: Amaury Martiny Date: Wed, 27 Jun 2018 14:29:44 +0200 Subject: [PATCH 1/5] Reset tx after successful send (fix #109) --- packages/fether-react/src/Send/Sent/Sent.js | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/packages/fether-react/src/Send/Sent/Sent.js b/packages/fether-react/src/Send/Sent/Sent.js index f2f6888a..ee300685 100644 --- a/packages/fether-react/src/Send/Sent/Sent.js +++ b/packages/fether-react/src/Send/Sent/Sent.js @@ -7,7 +7,6 @@ import React, { Component } from 'react'; import { chainName$ } from '@parity/light.js'; import { inject, observer } from 'mobx-react'; import light from 'light-hoc'; -import { Link } from 'react-router-dom'; import check from '../../assets/img/icons/check.svg'; import loading from '../../assets/img/icons/loading.svg'; @@ -21,6 +20,12 @@ const MIN_CONFIRMATIONS = 6; @inject('sendStore') @observer class Sent extends Component { + handleGoToHomepage = () => { + const { history, sendStore } = this.props; + sendStore.clear(); + history.push('/'); + }; + render () { const { sendStore: { confirmations } @@ -40,11 +45,13 @@ class Sent extends Component { {confirmations >= MIN_CONFIRMATIONS && ( )} -- GitLab From e3b3ae5a752c0e6fb8058aaaa8691fa56d5118d7 Mon Sep 17 00:00:00 2001 From: Amaury Martiny Date: Wed, 27 Jun 2018 14:38:35 +0200 Subject: [PATCH 2/5] Reset form each time we visit TxForm --- packages/fether-react/src/Send/TxForm/TxForm.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/fether-react/src/Send/TxForm/TxForm.js b/packages/fether-react/src/Send/TxForm/TxForm.js index b510faf0..e3fd55ff 100644 --- a/packages/fether-react/src/Send/TxForm/TxForm.js +++ b/packages/fether-react/src/Send/TxForm/TxForm.js @@ -29,6 +29,10 @@ class Send extends Component { ...this.props.sendStore.tx }; + componentDidMount () { + this.props.sendStore.clear(); + } + componentDidUpdate () { if (!this.hasError()) { const { amount, gasPrice, to } = this.state; -- GitLab From ec7abe5bf3e21f3e368df96a26682e55dfa1fbbe Mon Sep 17 00:00:00 2001 From: Amaury Martiny Date: Wed, 27 Jun 2018 15:21:48 +0200 Subject: [PATCH 3/5] Make sendStore simpler --- .../fether-react/src/Send/Signer/Signer.js | 30 ++++++------- .../fether-react/src/Send/TxForm/TxForm.js | 40 +++++++---------- packages/fether-react/src/stores/sendStore.js | 45 ++++++------------- 3 files changed, 43 insertions(+), 72 deletions(-) diff --git a/packages/fether-react/src/Send/Signer/Signer.js b/packages/fether-react/src/Send/Signer/Signer.js index c70f204f..3793ed5d 100644 --- a/packages/fether-react/src/Send/Signer/Signer.js +++ b/packages/fether-react/src/Send/Signer/Signer.js @@ -29,7 +29,7 @@ class Signer extends Component { this.setState({ isSending: true }, () => { sendStore - .acceptRequest(password) + .send(password) .then(() => history.push('/send/sent')) .catch(error => { this.setState({ error, isSending: false }, () => @@ -39,28 +39,26 @@ class Signer extends Component { }); }; - handleChangePassword = ({ target: { value } }) => { - this.setState({ error: null, password: value }); + handleCancel = () => { + const { history } = this.props; + history.goBack(); }; - handleReject = () => { - const { history, sendStore } = this.props; - - this.setState({ isSending: true }, () => { - sendStore - .rejectRequest() - .then(() => history.goBack()) - .catch(() => history.goBack()); - }); + handleChangePassword = ({ target: { value } }) => { + this.setState({ error: null, password: value }); }; + /** + * TODO All this tooltips refs etc should go inside a React validation + * library. + */ handleTooltipRef = ref => { this.tooltip = ref; }; render () { const { - sendStore: { token, tx, txStatus } + sendStore: { token, tx } } = this.props; const { error, isSending, password } = this.state; @@ -112,7 +110,7 @@ class Signer extends Component {