aboutsummaryrefslogtreecommitdiffstats
path: root/app/scripts/controllers
diff options
context:
space:
mode:
authorkumavis <aaron@kumavis.me>2018-05-17 02:57:07 +0800
committerkumavis <aaron@kumavis.me>2018-05-17 02:57:07 +0800
commitc27d9162d7001fa2bd6cfb98dd110716951d2d1b (patch)
tree19f5d4780b3ee82c0e9c9fe2a9c2edad745dd084 /app/scripts/controllers
parenta1d13d45cf7451162b071e5507f1e31b12574e6e (diff)
parent6e79225dbff512ab9bcae2731bcfc4ce33e98664 (diff)
downloadtangerine-wallet-browser-c27d9162d7001fa2bd6cfb98dd110716951d2d1b.tar
tangerine-wallet-browser-c27d9162d7001fa2bd6cfb98dd110716951d2d1b.tar.gz
tangerine-wallet-browser-c27d9162d7001fa2bd6cfb98dd110716951d2d1b.tar.bz2
tangerine-wallet-browser-c27d9162d7001fa2bd6cfb98dd110716951d2d1b.tar.lz
tangerine-wallet-browser-c27d9162d7001fa2bd6cfb98dd110716951d2d1b.tar.xz
tangerine-wallet-browser-c27d9162d7001fa2bd6cfb98dd110716951d2d1b.tar.zst
tangerine-wallet-browser-c27d9162d7001fa2bd6cfb98dd110716951d2d1b.zip
Merge branch 'develop' of github.com:MetaMask/metamask-extension into network-controller-remove-setNetworkEndpoints
Diffstat (limited to 'app/scripts/controllers')
-rw-r--r--app/scripts/controllers/transactions/index.js15
-rw-r--r--app/scripts/controllers/transactions/tx-state-manager.js2
2 files changed, 16 insertions, 1 deletions
diff --git a/app/scripts/controllers/transactions/index.js b/app/scripts/controllers/transactions/index.js
index 541f1db73..3886db104 100644
--- a/app/scripts/controllers/transactions/index.js
+++ b/app/scripts/controllers/transactions/index.js
@@ -112,6 +112,21 @@ class TransactionController extends EventEmitter {
}
/**
+ Check if a txMeta in the list with the same nonce has been confirmed in a block
+ if the txParams dont have a nonce will return false
+ @returns {boolean} whether the nonce has been used in a transaction confirmed in a block
+ @param {object} txMeta - the txMeta object
+ */
+ async isNonceTaken (txMeta) {
+ const { from, nonce } = txMeta.txParams
+ if ('nonce' in txMeta.txParams) {
+ const sameNonceTxList = this.txStateManager.getFilteredTxList({from, nonce, status: 'confirmed'})
+ return (sameNonceTxList.length >= 1)
+ }
+ return false
+ }
+
+ /**
add a new unapproved transaction to the pipeline
@returns {Promise<string>} the hash of the transaction after being submitted to the network
diff --git a/app/scripts/controllers/transactions/tx-state-manager.js b/app/scripts/controllers/transactions/tx-state-manager.js
index 53428c333..380214c1d 100644
--- a/app/scripts/controllers/transactions/tx-state-manager.js
+++ b/app/scripts/controllers/transactions/tx-state-manager.js
@@ -262,7 +262,7 @@ class TransactionStateManager extends EventEmitter {
*/
getTxsByMetaData (key, value, txList = this.getTxList()) {
return txList.filter((txMeta) => {
- if (txMeta.txParams[key]) {
+ if (key in txMeta.txParams) {
return txMeta.txParams[key] === value
} else {
return txMeta[key] === value