Merge pull request #3642 from ethcore/confirmation

Splitting serialization of signTransaction and sendTransaction confirmation requests
This commit is contained in:
Gav Wood
2016-12-01 01:09:07 +00:00
committed by GitHub
6 changed files with 58 additions and 16 deletions

View File

@@ -144,7 +144,8 @@ export function outSignerRequest (request) {
break;
case 'payload':
request[key].transaction = outTransaction(request[key].transaction);
request[key].signTransaction = outTransaction(request[key].signTransaction);
request[key].sendTransaction = outTransaction(request[key].sendTransaction);
break;
}
});

View File

@@ -72,9 +72,8 @@ export default class SignerMiddleware {
};
// Sign request in-browser
if (wallet && payload.transaction) {
const { transaction } = payload;
const transaction = payload.sendTransaction || payload.signTransaction;
if (wallet && transaction) {
(transaction.nonce.isZero()
? this._api.parity.nextNonce(transaction.from)
: Promise.resolve(transaction.nonce)

View File

@@ -25,7 +25,8 @@ export default class RequestFinished extends Component {
result: PropTypes.any.isRequired,
date: PropTypes.instanceOf(Date).isRequired,
payload: PropTypes.oneOfType([
PropTypes.shape({ transaction: PropTypes.object.isRequired }),
PropTypes.shape({ signTransaction: PropTypes.object.isRequired }),
PropTypes.shape({ sendTransaction: PropTypes.object.isRequired }),
PropTypes.shape({ sign: PropTypes.object.isRequired })
]).isRequired,
msg: PropTypes.string,
@@ -58,9 +59,8 @@ export default class RequestFinished extends Component {
);
}
if (payload.transaction) {
const { transaction } = payload;
const transaction = payload.sendTransaction || payload.signTransaction;
if (transaction) {
return (
<TransactionFinished
className={ className }

View File

@@ -27,7 +27,8 @@ export default class RequestPending extends Component {
isSending: PropTypes.bool.isRequired,
date: PropTypes.instanceOf(Date).isRequired,
payload: PropTypes.oneOfType([
PropTypes.shape({ transaction: PropTypes.object.isRequired }),
PropTypes.shape({ signTransaction: PropTypes.object.isRequired }),
PropTypes.shape({ sendTransaction: PropTypes.object.isRequired }),
PropTypes.shape({ sign: PropTypes.object.isRequired })
]).isRequired,
className: PropTypes.string,
@@ -64,9 +65,8 @@ export default class RequestPending extends Component {
);
}
if (payload.transaction) {
const { transaction } = payload;
const transaction = payload.sendTransaction || payload.signTransaction;
if (transaction) {
return (
<TransactionPending
className={ className }