diff options
author | Bruno <brunobar79@gmail.com> | 2018-06-10 15:52:32 +0800 |
---|---|---|
committer | Bruno <brunobar79@gmail.com> | 2018-06-10 15:52:32 +0800 |
commit | 8c4d58aa4508e3d54c3f69847347e78d09c63b97 (patch) | |
tree | e9206c28499d7f4d66d7d407851c5efc05f615de /ui/app/actions.js | |
parent | c0d2dab28b4083ee3ef65b6b561e28c811c6773d (diff) | |
download | tangerine-wallet-browser-8c4d58aa4508e3d54c3f69847347e78d09c63b97.tar.gz tangerine-wallet-browser-8c4d58aa4508e3d54c3f69847347e78d09c63b97.tar.zst tangerine-wallet-browser-8c4d58aa4508e3d54c3f69847347e78d09c63b97.zip |
initial trezor support
Diffstat (limited to 'ui/app/actions.js')
-rw-r--r-- | ui/app/actions.js | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/ui/app/actions.js b/ui/app/actions.js index 1edf692b6..758696203 100644 --- a/ui/app/actions.js +++ b/ui/app/actions.js @@ -79,6 +79,8 @@ var actions = { addNewKeyring, importNewAccount, addNewAccount, + connectHardware, + unlockTrezorAccount, NEW_ACCOUNT_SCREEN: 'NEW_ACCOUNT_SCREEN', navigateToNewAccountScreen, resetAccount, @@ -596,6 +598,46 @@ function addNewAccount () { } } +function connectHardware (deviceName, page) { + log.debug(`background.connectHardware`, deviceName, page) + return (dispatch, getState) => { + dispatch(actions.showLoadingIndication()) + return new Promise((resolve, reject) => { + background.connectHardware(deviceName, page, (err, accounts) => { + if (err) { + log.error(err) + dispatch(actions.displayWarning(err.message)) + return reject(err) + } + + dispatch(actions.hideLoadingIndication()) + + forceUpdateMetamaskState(dispatch) + return resolve(accounts) + }) + }) + } +} + +function unlockTrezorAccount (index) { + log.debug(`background.unlockTrezorAccount`, index) + return (dispatch, getState) => { + dispatch(actions.showLoadingIndication()) + return new Promise((resolve, reject) => { + background.unlockTrezorAccount(index, (err, accounts) => { + if (err) { + log.error(err) + dispatch(actions.displayWarning(err.message)) + return reject(err) + } + + dispatch(actions.hideLoadingIndication()) + return resolve() + }) + }) + } +} + function showInfoPage () { return { type: actions.SHOW_INFO_PAGE, |