From 4aa74a40875dfe05adb4adb3cbba30b75bb2a1f8 Mon Sep 17 00:00:00 2001 From: Maciej Hirsz <1096222+maciejhirsz@users.noreply.github.com> Date: Fri, 6 Jul 2018 23:04:31 +0200 Subject: [PATCH] [Parity Signer] Add future support for ERC-681 (#1945) * Add future support for ERC-681 * Use `addHexPrefix` --- .../WalletDecrypt/components/ParitySigner.tsx | 13 ++++++++++--- common/containers/QrSignerModal/index.tsx | 4 ++-- package.json | 2 +- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/common/components/WalletDecrypt/components/ParitySigner.tsx b/common/components/WalletDecrypt/components/ParitySigner.tsx index 8f955234..7faebbce 100644 --- a/common/components/WalletDecrypt/components/ParitySigner.tsx +++ b/common/components/WalletDecrypt/components/ParitySigner.tsx @@ -17,6 +17,13 @@ interface Props { onUnlock(param: any): void; } +interface SignerAddress { + address: string; + chainId: number; +} + +type SignerQrContent = SignerAddress | string; + class ParitySignerDecryptClass extends PureComponent { public render() { return ( @@ -36,13 +43,13 @@ class ParitySignerDecryptClass extends PureComponent { ); } - private unlockAddress = (address: string) => { - if (!isValidETHAddress(address)) { + private unlockAddress = (content: SignerQrContent) => { + if (typeof content === 'string' || !isValidETHAddress(content.address)) { this.props.showNotification('danger', 'Not a valid address!'); return; } - this.props.onUnlock(new ParitySignerWallet(address)); + this.props.onUnlock(new ParitySignerWallet(content.address)); }; } diff --git a/common/containers/QrSignerModal/index.tsx b/common/containers/QrSignerModal/index.tsx index c129782c..55d1def0 100644 --- a/common/containers/QrSignerModal/index.tsx +++ b/common/containers/QrSignerModal/index.tsx @@ -1,6 +1,6 @@ import React from 'react'; import { connect } from 'react-redux'; - +import { addHexPrefix } from 'ethereumjs-util'; import translate, { translateRaw } from 'translations'; import { AppState } from 'features/reducers'; import { paritySignerActions } from 'features/paritySigner'; @@ -95,7 +95,7 @@ class QrSignerModal extends React.Component { return; } - this.props.finalizeSignature(signature); + this.props.finalizeSignature(addHexPrefix(signature)); this.setState({ scan: false }); }; } diff --git a/package.json b/package.json index 412b05af..525ba140 100644 --- a/package.json +++ b/package.json @@ -10,10 +10,10 @@ "npm": ">= 5.0.0" }, "dependencies": { + "@parity/qr-signer": "0.3.1", "@ledgerhq/hw-app-eth": "4.7.3", "@ledgerhq/hw-transport-node-hid": "4.7.6", "@ledgerhq/hw-transport-u2f": "4.12.0", - "@parity/qr-signer": "0.2.1", "babel-polyfill": "6.26.0", "bip39": "2.5.0", "bn.js": "4.11.8",