aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.eslintrc2
-rw-r--r--app/scripts/controllers/computed-balances.js2
-rw-r--r--app/scripts/controllers/detect-tokens.js2
-rw-r--r--app/scripts/controllers/network/contract-addresses.js8
-rw-r--r--app/scripts/controllers/preferences.js36
-rw-r--r--app/scripts/controllers/transactions/index.js26
-rw-r--r--app/scripts/controllers/transactions/lib/tx-state-history-helper.js8
-rw-r--r--app/scripts/controllers/transactions/lib/util.js10
-rw-r--r--app/scripts/controllers/transactions/pending-tx-tracker.js4
-rw-r--r--app/scripts/controllers/transactions/tx-state-manager.js10
-rw-r--r--app/scripts/edge-encryptor.js94
-rw-r--r--app/scripts/lib/account-tracker.js18
-rw-r--r--app/scripts/lib/backend-metametrics.js10
-rw-r--r--app/scripts/lib/message-manager.js2
-rw-r--r--app/scripts/lib/personal-message-manager.js2
-rw-r--r--app/scripts/metamask-controller.js102
-rw-r--r--app/scripts/migrations/018.js6
-rw-r--r--app/scripts/migrations/019.js10
-rw-r--r--app/scripts/migrations/024.js2
-rw-r--r--app/scripts/migrations/031.js10
-rw-r--r--app/scripts/platforms/extension.js8
-rwxr-xr-xdevelopment/metamaskbot-build-announce.js14
-rw-r--r--development/mock-dev.js4
-rw-r--r--development/sentry-publish.js2
-rw-r--r--development/verify-locale-strings.js120
-rw-r--r--gentests.js6
-rw-r--r--gulpfile.js72
-rw-r--r--test/e2e/contract-test/contract.js4
-rw-r--r--test/e2e/helpers.js2
-rw-r--r--test/e2e/metamask-responsive-ui.spec.js168
-rw-r--r--test/e2e/web3.spec.js246
-rw-r--r--test/unit/app/controllers/detect-tokens-test.js16
-rw-r--r--test/unit/app/controllers/transactions/pending-tx-test.js90
-rw-r--r--test/unit/app/controllers/transactions/recipient-blacklist-checker-test.js4
-rw-r--r--test/unit/app/controllers/transactions/tx-controller-test.js100
-rw-r--r--test/unit/app/controllers/transactions/tx-state-manager-test.js12
-rw-r--r--test/unit/app/controllers/transactions/tx-utils-test.js2
-rw-r--r--test/unit/app/edge-encryptor-test.js32
-rw-r--r--test/unit/localhostState.js10
-rw-r--r--test/unit/migrations/021-test.js12
-rw-r--r--test/unit/migrations/022-test.js22
-rw-r--r--test/unit/migrations/023-test.js44
-rw-r--r--test/unit/migrations/024-test.js24
-rw-r--r--test/unit/migrations/025-test.js24
-rw-r--r--test/unit/migrations/029-test.js24
-rw-r--r--test/unit/migrations/030-test.js16
-rw-r--r--test/unit/migrations/031-test.js8
-rw-r--r--test/unit/migrations/migrations-test.js154
-rw-r--r--test/unit/migrations/migrator-test.js22
-rw-r--r--test/unit/migrations/template-test.js8
-rw-r--r--test/unit/ui/app/actions.spec.js2
-rw-r--r--test/web3/schema.js2
-rw-r--r--test/web3/web3.js4
-rw-r--r--ui/app/components/app/confirm-page-container/confirm-detail-row/tests/confirm-detail-row.component.test.js4
-rwxr-xr-xui/app/components/app/confirm-page-container/confirm-page-container-navigation/confirm-page-container-navigation.component.js6
-rw-r--r--ui/app/components/app/confirm-page-container/confirm-page-container.component.js20
-rw-r--r--ui/app/components/app/dropdowns/account-details-dropdown.js2
-rw-r--r--ui/app/components/app/dropdowns/network-dropdown.js12
-rw-r--r--ui/app/components/app/gas-customization/advanced-gas-inputs/advanced-gas-inputs.component.js4
-rw-r--r--ui/app/components/app/gas-customization/gas-modal-page-container/advanced-tab-content/advanced-tab-content.component.js4
-rw-r--r--ui/app/components/app/gas-customization/gas-modal-page-container/basic-tab-content/basic-tab-content.component.js12
-rw-r--r--ui/app/components/app/gas-customization/gas-modal-page-container/gas-modal-page-container.component.js12
-rw-r--r--ui/app/components/app/gas-customization/gas-modal-page-container/tests/gas-modal-page-container-container.test.js74
-rw-r--r--ui/app/components/app/gas-customization/gas-price-chart/gas-price-chart.utils.js36
-rw-r--r--ui/app/components/app/modals/account-details-modal/account-details-modal.component.js16
-rw-r--r--ui/app/components/app/modals/deposit-ether-modal.js28
-rw-r--r--ui/app/components/app/modals/export-private-key-modal.js46
-rw-r--r--ui/app/components/app/modals/new-account-modal.js2
-rw-r--r--ui/app/components/app/modals/notification-modal.js2
-rw-r--r--ui/app/components/app/modals/qr-scanner/qr-scanner.component.js34
-rw-r--r--ui/app/components/app/network-display/network-display.component.js24
-rw-r--r--ui/app/components/app/network.js24
-rw-r--r--ui/app/components/app/sidebars/sidebar.component.js2
-rw-r--r--ui/app/components/app/signature-request.js2
-rw-r--r--ui/app/components/app/token-list.js18
-rw-r--r--ui/app/components/app/transaction-activity-log/transaction-activity-log-icon/transaction-activity-log-icon.component.js18
-rw-r--r--ui/app/components/app/transaction-list-item-details/transaction-list-item-details.component.js2
-rw-r--r--ui/app/components/app/transaction-list/transaction-list.component.js4
-rw-r--r--ui/app/components/app/transaction-view-balance/transaction-view-balance.component.js62
-rw-r--r--ui/app/components/ui/alert/index.js90
-rw-r--r--ui/app/components/ui/button-group/tests/button-group-component.test.js50
-rw-r--r--ui/app/components/ui/currency-input/currency-input.component.js32
-rw-r--r--ui/app/components/ui/sender-to-recipient/sender-to-recipient.component.js8
-rw-r--r--ui/app/ducks/app/app.js10
-rw-r--r--ui/app/ducks/gas/gas-duck.test.js10
-rw-r--r--ui/app/ducks/gas/gas.duck.js30
-rw-r--r--ui/app/ducks/metamask/metamask.js2
-rw-r--r--ui/app/pages/confirm-add-suggested-token/confirm-add-suggested-token.component.js2
-rw-r--r--ui/app/pages/confirm-add-token/confirm-add-token.component.js2
-rw-r--r--ui/app/pages/create-account/connect-hardware/account-list.js228
-rw-r--r--ui/app/pages/create-account/connect-hardware/connect-screen.js214
-rw-r--r--ui/app/pages/create-account/connect-hardware/index.js60
-rw-r--r--ui/app/pages/first-time-flow/create-password/import-with-seed-phrase/import-with-seed-phrase.component.js2
-rw-r--r--ui/app/pages/first-time-flow/metametrics-opt-in/metametrics-opt-in.component.js4
-rw-r--r--ui/app/pages/first-time-flow/select-action/select-action.component.js4
-rw-r--r--ui/app/pages/home/home.component.js2
-rw-r--r--ui/app/pages/mobile-sync/index.js74
-rw-r--r--ui/app/pages/routes/index.js20
-rw-r--r--ui/app/pages/send/account-list-item/account-list-item.container.js6
-rw-r--r--ui/app/pages/send/send-content/add-recipient/add-recipient.selectors.js2
-rw-r--r--ui/app/pages/send/send-content/send-amount-row/amount-max-button/amount-max-button.component.js14
-rw-r--r--ui/app/pages/send/send-content/send-gas-row/gas-fee-display/gas-fee-display.component.js8
-rw-r--r--ui/app/pages/send/send-content/send-gas-row/send-gas-row.component.js42
-rw-r--r--ui/app/pages/send/send-content/send-row-wrapper/send-row-warning-message/send-row-warning-message.component.js2
-rw-r--r--ui/app/pages/send/send-content/send-row-wrapper/tests/send-row-wrapper-component.test.js28
-rw-r--r--ui/app/pages/send/send-header/send-header.selectors.js18
-rw-r--r--ui/app/pages/send/send.utils.js2
-rw-r--r--ui/app/pages/send/tests/send-utils.test.js6
-rw-r--r--ui/app/pages/send/to-autocomplete.component.js16
-rw-r--r--ui/app/pages/settings/advanced-tab/advanced-tab.component.js2
-rw-r--r--ui/app/pages/settings/advanced-tab/tests/advanced-tab-container.test.js14
-rw-r--r--ui/app/pages/settings/contact-list-tab/add-contact/add-contact.component.js12
-rw-r--r--ui/app/pages/settings/contact-list-tab/edit-contact/edit-contact.component.js6
-rw-r--r--ui/app/pages/settings/contact-list-tab/view-contact/view-contact.component.js2
-rw-r--r--ui/app/pages/settings/networks-tab/networks-tab.component.js40
-rw-r--r--ui/app/store/actions.js86
-rw-r--r--ui/index.js2
-rw-r--r--ui/lib/webcam-utils.js18
118 files changed, 1641 insertions, 1641 deletions
diff --git a/.eslintrc b/.eslintrc
index b9a20c1f2..9aa54d89d 100644
--- a/.eslintrc
+++ b/.eslintrc
@@ -59,7 +59,7 @@
"eqeqeq": [2, "allow-null"],
"generator-star-spacing": [2, { "before": true, "after": true }],
"handle-callback-err": [2, "^(err|error)$" ],
- "indent": "off",
+ "indent": [2, 2,{ "SwitchCase": 1 }],
"jsx-quotes": [2, "prefer-double"],
"key-spacing": 2,
"keyword-spacing": [2, { "before": true, "after": true }],
diff --git a/app/scripts/controllers/computed-balances.js b/app/scripts/controllers/computed-balances.js
index e04ce2ef7..caa061df4 100644
--- a/app/scripts/controllers/computed-balances.js
+++ b/app/scripts/controllers/computed-balances.js
@@ -65,7 +65,7 @@ class ComputedbalancesController {
syncAllAccountsFromStore (store) {
const upstream = Object.keys(store.accounts)
const balances = Object.keys(this.balances)
- .map(address => this.balances[address])
+ .map(address => this.balances[address])
// Follow new addresses
for (const address in balances) {
diff --git a/app/scripts/controllers/detect-tokens.js b/app/scripts/controllers/detect-tokens.js
index f0ceab8e6..e6e993073 100644
--- a/app/scripts/controllers/detect-tokens.js
+++ b/app/scripts/controllers/detect-tokens.js
@@ -54,7 +54,7 @@ class DetectTokensController {
})
}
- /**
+ /**
* Find if selectedAddress has tokens with contract in contractAddress.
*
* @param {string} contractAddress Hex address of the token contract to explore.
diff --git a/app/scripts/controllers/network/contract-addresses.js b/app/scripts/controllers/network/contract-addresses.js
index 5cd7da1d0..f9385accd 100644
--- a/app/scripts/controllers/network/contract-addresses.js
+++ b/app/scripts/controllers/network/contract-addresses.js
@@ -4,8 +4,8 @@ const SINGLE_CALL_BALANCES_ADDRESS_ROPSTEN = '0xb8e671734ce5c8d7dfbbea5574fa4cf3
const SINGLE_CALL_BALANCES_ADDRESS_KOVAN = '0xb1d3fbb2f83aecd196f474c16ca5d9cffa0d0ffc'
module.exports = {
- SINGLE_CALL_BALANCES_ADDRESS,
- SINGLE_CALL_BALANCES_ADDRESS_RINKEBY,
- SINGLE_CALL_BALANCES_ADDRESS_ROPSTEN,
- SINGLE_CALL_BALANCES_ADDRESS_KOVAN,
+ SINGLE_CALL_BALANCES_ADDRESS,
+ SINGLE_CALL_BALANCES_ADDRESS_RINKEBY,
+ SINGLE_CALL_BALANCES_ADDRESS_ROPSTEN,
+ SINGLE_CALL_BALANCES_ADDRESS_KOVAN,
}
diff --git a/app/scripts/controllers/preferences.js b/app/scripts/controllers/preferences.js
index 4197781d2..24df29c1d 100644
--- a/app/scripts/controllers/preferences.js
+++ b/app/scripts/controllers/preferences.js
@@ -68,7 +68,7 @@ class PreferencesController {
return this.setFeatureFlag(key, value)
}
}
-// PUBLIC METHODS
+ // PUBLIC METHODS
/**
* Sets the {@code forgottenPassword} state property
@@ -129,9 +129,9 @@ class PreferencesController {
* @param {String} type Indicates the type of first time flow - create or import - the user wishes to follow
*
*/
- setFirstTimeFlowType (type) {
- this.store.updateState({ firstTimeFlowType: type })
- }
+ setFirstTimeFlowType (type) {
+ this.store.updateState({ firstTimeFlowType: type })
+ }
getSuggestedTokens () {
@@ -493,22 +493,22 @@ class PreferencesController {
* @returns {Promise<array>} Promise resolving to updated frequentRpcList.
*
*/
- addToFrequentRpcList (url, chainId, ticker = 'ETH', nickname = '', rpcPrefs = {}) {
- const rpcList = this.getFrequentRpcListDetail()
- const index = rpcList.findIndex((element) => { return element.rpcUrl === url })
- if (index !== -1) {
- rpcList.splice(index, 1)
- }
- if (url !== 'http://localhost:8545') {
- let checkedChainId
- if (!!chainId && !Number.isNaN(parseInt(chainId))) {
- checkedChainId = chainId
- }
- rpcList.push({ rpcUrl: url, chainId: checkedChainId, ticker, nickname, rpcPrefs })
+ addToFrequentRpcList (url, chainId, ticker = 'ETH', nickname = '', rpcPrefs = {}) {
+ const rpcList = this.getFrequentRpcListDetail()
+ const index = rpcList.findIndex((element) => { return element.rpcUrl === url })
+ if (index !== -1) {
+ rpcList.splice(index, 1)
+ }
+ if (url !== 'http://localhost:8545') {
+ let checkedChainId
+ if (!!chainId && !Number.isNaN(parseInt(chainId))) {
+ checkedChainId = chainId
}
- this.store.updateState({ frequentRpcListDetail: rpcList })
- return Promise.resolve(rpcList)
+ rpcList.push({ rpcUrl: url, chainId: checkedChainId, ticker, nickname, rpcPrefs })
}
+ this.store.updateState({ frequentRpcListDetail: rpcList })
+ return Promise.resolve(rpcList)
+ }
/**
* Removes custom RPC url from state.
diff --git a/app/scripts/controllers/transactions/index.js b/app/scripts/controllers/transactions/index.js
index c4371c25b..a33b46851 100644
--- a/app/scripts/controllers/transactions/index.js
+++ b/app/scripts/controllers/transactions/index.js
@@ -129,7 +129,7 @@ class TransactionController extends EventEmitter {
}
}
-/**
+ /**
Adds a tx to the txlist
@emits ${txMeta.id}:unapproved
*/
@@ -220,7 +220,7 @@ class TransactionController extends EventEmitter {
return txMeta
}
-/**
+ /**
adds the tx gas defaults: gas && gasPrice
@param txMeta {Object} - the txMeta object
@returns {Promise<object>} resolves with txMeta
@@ -495,9 +495,9 @@ class TransactionController extends EventEmitter {
this.txStateManager.updateTx(txMeta, 'transactions#setTxHash')
}
-//
-// PRIVATE METHODS
-//
+ //
+ // PRIVATE METHODS
+ //
/** maps methods for convenience*/
_mapMethods () {
/** @returns the state in transaction controller */
@@ -537,14 +537,14 @@ class TransactionController extends EventEmitter {
loadingDefaults: true,
}).forEach((tx) => {
this.addTxGasDefaults(tx)
- .then((txMeta) => {
- txMeta.loadingDefaults = false
- this.txStateManager.updateTx(txMeta, 'transactions: gas estimation for tx on boot')
- }).catch((error) => {
- tx.loadingDefaults = false
- this.txStateManager.updateTx(tx, 'failed to estimate gas during boot cleanup.')
- this.txStateManager.setTxStatusFailed(tx.id, error)
- })
+ .then((txMeta) => {
+ txMeta.loadingDefaults = false
+ this.txStateManager.updateTx(txMeta, 'transactions: gas estimation for tx on boot')
+ }).catch((error) => {
+ tx.loadingDefaults = false
+ this.txStateManager.updateTx(tx, 'failed to estimate gas during boot cleanup.')
+ this.txStateManager.setTxStatusFailed(tx.id, error)
+ })
})
this.txStateManager.getFilteredTxList({
diff --git a/app/scripts/controllers/transactions/lib/tx-state-history-helper.js b/app/scripts/controllers/transactions/lib/tx-state-history-helper.js
index 4562568e9..76fc5c35b 100644
--- a/app/scripts/controllers/transactions/lib/tx-state-history-helper.js
+++ b/app/scripts/controllers/transactions/lib/tx-state-history-helper.js
@@ -17,10 +17,10 @@ function migrateFromSnapshotsToDiffs (longHistory) {
return (
longHistory
// convert non-initial history entries into diffs
- .map((entry, index) => {
- if (index === 0) return entry
- return generateHistoryEntry(longHistory[index - 1], entry)
- })
+ .map((entry, index) => {
+ if (index === 0) return entry
+ return generateHistoryEntry(longHistory[index - 1], entry)
+ })
)
}
diff --git a/app/scripts/controllers/transactions/lib/util.js b/app/scripts/controllers/transactions/lib/util.js
index 5a8a0cefe..0d2ddddef 100644
--- a/app/scripts/controllers/transactions/lib/util.js
+++ b/app/scripts/controllers/transactions/lib/util.js
@@ -26,7 +26,7 @@ const normalizers = {
gasPrice: gasPrice => addHexPrefix(gasPrice),
}
- /**
+/**
normalizes txParams
@param txParams {object}
@returns {object} normalized txParams
@@ -40,7 +40,7 @@ function normalizeTxParams (txParams, LowerCase) {
return normalizedTxParams
}
- /**
+/**
validates txParams
@param txParams {object}
*/
@@ -59,7 +59,7 @@ function validateTxParams (txParams) {
}
}
- /**
+/**
validates the from field in txParams
@param txParams {object}
*/
@@ -68,7 +68,7 @@ function validateFrom (txParams) {
if (!isValidAddress(txParams.from)) throw new Error('Invalid from address')
}
- /**
+/**
validates the to field in txParams
@param txParams {object}
*/
@@ -85,7 +85,7 @@ function validateRecipient (txParams) {
return txParams
}
- /**
+/**
@returns an {array} of states that can be considered final
*/
function getFinalStates () {
diff --git a/app/scripts/controllers/transactions/pending-tx-tracker.js b/app/scripts/controllers/transactions/pending-tx-tracker.js
index bc11f6633..1ef3be36e 100644
--- a/app/scripts/controllers/transactions/pending-tx-tracker.js
+++ b/app/scripts/controllers/transactions/pending-tx-tracker.js
@@ -186,7 +186,7 @@ class PendingTransactionTracker extends EventEmitter {
this.emit('tx:warning', txMeta, err)
}
}
- /**
+ /**
checks to see if if the tx's nonce has been used by another transaction
@param txMeta {Object} - txMeta object
@emits tx:dropped
@@ -198,7 +198,7 @@ class PendingTransactionTracker extends EventEmitter {
const nextNonce = await this.query.getTransactionCount(from)
const { blockNumber } = await this.query.getTransactionByHash(hash) || {}
if (!blockNumber && parseInt(nextNonce) > parseInt(nonce)) {
- return true
+ return true
}
return false
}
diff --git a/app/scripts/controllers/transactions/tx-state-manager.js b/app/scripts/controllers/transactions/tx-state-manager.js
index 2aa28c270..a91b59918 100644
--- a/app/scripts/controllers/transactions/tx-state-manager.js
+++ b/app/scripts/controllers/transactions/tx-state-manager.js
@@ -34,7 +34,7 @@ class TransactionStateManager extends EventEmitter {
this.store = new ObservableStore(
extend({
transactions: [],
- }, initState))
+ }, initState))
this.txHistoryLimit = txHistoryLimit
this.getNetwork = getNetwork
}
@@ -245,7 +245,7 @@ class TransactionStateManager extends EventEmitter {
})
}
-/**
+ /**
@param opts {object} - an object of fields to search for eg:<br>
let <code>thingsToLookFor = {<br>
to: '0x0..',<br>
@@ -403,9 +403,9 @@ class TransactionStateManager extends EventEmitter {
// Update state
this._saveTxList(otherAccountTxs)
}
-//
-// PRIVATE METHODS
-//
+ //
+ // PRIVATE METHODS
+ //
// STATUS METHODS
// statuses:
diff --git a/app/scripts/edge-encryptor.js b/app/scripts/edge-encryptor.js
index cfb241ec9..012672ed2 100644
--- a/app/scripts/edge-encryptor.js
+++ b/app/scripts/edge-encryptor.js
@@ -14,23 +14,23 @@ class EdgeEncryptor {
* @returns {Promise<string>} Promise resolving to an object with ciphertext
*/
encrypt (password, dataObject) {
- var salt = this._generateSalt()
- return this._keyFromPassword(password, salt)
- .then(function (key) {
- var data = JSON.stringify(dataObject)
- var dataBuffer = Unibabel.utf8ToBuffer(data)
- var vector = global.crypto.getRandomValues(new Uint8Array(16))
- var resultbuffer = asmcrypto.AES_GCM.encrypt(dataBuffer, key, vector)
+ var salt = this._generateSalt()
+ return this._keyFromPassword(password, salt)
+ .then(function (key) {
+ var data = JSON.stringify(dataObject)
+ var dataBuffer = Unibabel.utf8ToBuffer(data)
+ var vector = global.crypto.getRandomValues(new Uint8Array(16))
+ var resultbuffer = asmcrypto.AES_GCM.encrypt(dataBuffer, key, vector)
- var buffer = new Uint8Array(resultbuffer)
- var vectorStr = Unibabel.bufferToBase64(vector)
- var vaultStr = Unibabel.bufferToBase64(buffer)
- return JSON.stringify({
- data: vaultStr,
- iv: vectorStr,
- salt: salt,
- })
- })
+ var buffer = new Uint8Array(resultbuffer)
+ var vectorStr = Unibabel.bufferToBase64(vector)
+ var vaultStr = Unibabel.bufferToBase64(buffer)
+ return JSON.stringify({
+ data: vaultStr,
+ iv: vectorStr,
+ salt: salt,
+ })
+ })
}
/**
@@ -41,25 +41,25 @@ class EdgeEncryptor {
* @returns {Promise<Object>} Promise resolving to copy of decrypted object
*/
decrypt (password, text) {
- const payload = JSON.parse(text)
- const salt = payload.salt
- return this._keyFromPassword(password, salt)
- .then(function (key) {
- const encryptedData = Unibabel.base64ToBuffer(payload.data)
- const vector = Unibabel.base64ToBuffer(payload.iv)
- return new Promise((resolve, reject) => {
- var result
- try {
- result = asmcrypto.AES_GCM.decrypt(encryptedData, key, vector)
- } catch (err) {
- return reject(new Error('Incorrect password'))
- }
- const decryptedData = new Uint8Array(result)
- const decryptedStr = Unibabel.bufferToUtf8(decryptedData)
- const decryptedObj = JSON.parse(decryptedStr)
- resolve(decryptedObj)
- })
- })
+ const payload = JSON.parse(text)
+ const salt = payload.salt
+ return this._keyFromPassword(password, salt)
+ .then(function (key) {
+ const encryptedData = Unibabel.base64ToBuffer(payload.data)
+ const vector = Unibabel.base64ToBuffer(payload.iv)
+ return new Promise((resolve, reject) => {
+ var result
+ try {
+ result = asmcrypto.AES_GCM.decrypt(encryptedData, key, vector)
+ } catch (err) {
+ return reject(new Error('Incorrect password'))
+ }
+ const decryptedData = new Uint8Array(result)
+ const decryptedStr = Unibabel.bufferToUtf8(decryptedData)
+ const decryptedObj = JSON.parse(decryptedStr)
+ resolve(decryptedObj)
+ })
+ })
}
/**
@@ -72,14 +72,14 @@ class EdgeEncryptor {
*/
_keyFromPassword (password, salt) {
- var passBuffer = Unibabel.utf8ToBuffer(password)
- var saltBuffer = Unibabel.base64ToBuffer(salt)
- const iterations = 10000
- const length = 32 // SHA256 hash size
- return new Promise((resolve) => {
- var key = asmcrypto.Pbkdf2HmacSha256(passBuffer, saltBuffer, iterations, length)
- resolve(key)
- })
+ var passBuffer = Unibabel.utf8ToBuffer(password)
+ var saltBuffer = Unibabel.base64ToBuffer(salt)
+ const iterations = 10000
+ const length = 32 // SHA256 hash size
+ return new Promise((resolve) => {
+ var key = asmcrypto.Pbkdf2HmacSha256(passBuffer, saltBuffer, iterations, length)
+ resolve(key)
+ })
}
/**
@@ -89,10 +89,10 @@ class EdgeEncryptor {
* @returns {string} Randomized base64 encoded data
*/
_generateSalt (byteCount = 32) {
- var view = new Uint8Array(byteCount)
- global.crypto.getRandomValues(view)
- var b64encoded = btoa(String.fromCharCode.apply(null, view))
- return b64encoded
+ var view = new Uint8Array(byteCount)
+ global.crypto.getRandomValues(view)
+ var b64encoded = btoa(String.fromCharCode.apply(null, view))
+ return b64encoded
}
}
diff --git a/app/scripts/lib/account-tracker.js b/app/scripts/lib/account-tracker.js
index 24c5ef7ee..1cbf867cb 100644
--- a/app/scripts/lib/account-tracker.js
+++ b/app/scripts/lib/account-tracker.js
@@ -183,23 +183,23 @@ class AccountTracker {
switch (currentNetwork) {
case MAINNET_CODE:
- await this._updateAccountsViaBalanceChecker(addresses, SINGLE_CALL_BALANCES_ADDRESS)
- break
+ await this._updateAccountsViaBalanceChecker(addresses, SINGLE_CALL_BALANCES_ADDRESS)
+ break
case RINKEYBY_CODE:
- await this._updateAccountsViaBalanceChecker(addresses, SINGLE_CALL_BALANCES_ADDRESS_RINKEBY)
- break
+ await this._updateAccountsViaBalanceChecker(addresses, SINGLE_CALL_BALANCES_ADDRESS_RINKEBY)
+ break
case ROPSTEN_CODE:
- await this._updateAccountsViaBalanceChecker(addresses, SINGLE_CALL_BALANCES_ADDRESS_ROPSTEN)
- break
+ await this._updateAccountsViaBalanceChecker(addresses, SINGLE_CALL_BALANCES_ADDRESS_ROPSTEN)
+ break
case KOVAN_CODE:
- await this._updateAccountsViaBalanceChecker(addresses, SINGLE_CALL_BALANCES_ADDRESS_KOVAN)
- break
+ await this._updateAccountsViaBalanceChecker(addresses, SINGLE_CALL_BALANCES_ADDRESS_KOVAN)
+ break
default:
- await Promise.all(addresses.map(this._updateAccount.bind(this)))
+ await Promise.all(addresses.map(this._updateAccount.bind(this)))
}
}
diff --git a/app/scripts/lib/backend-metametrics.js b/app/scripts/lib/backend-metametrics.js
index e3c163c1a..ad7874ead 100644
--- a/app/scripts/lib/backend-metametrics.js
+++ b/app/scripts/lib/backend-metametrics.js
@@ -15,11 +15,11 @@ function backEndMetaMetricsEvent (metaMaskState, eventData) {
const stateEventData = getMetaMetricState({ metamask: metaMaskState })
if (stateEventData.participateInMetaMetrics) {
- sendMetaMetricsEvent({
- ...stateEventData,
- ...eventData,
- url: METAMETRICS_TRACKING_URL + '/backend',
- })
+ sendMetaMetricsEvent({
+ ...stateEventData,
+ ...eventData,
+ url: METAMETRICS_TRACKING_URL + '/backend',
+ })
}
}
diff --git a/app/scripts/lib/message-manager.js b/app/scripts/lib/message-manager.js
index ac41de523..898378389 100644
--- a/app/scripts/lib/message-manager.js
+++ b/app/scripts/lib/message-manager.js
@@ -61,7 +61,7 @@ module.exports = class MessageManager extends EventEmitter {
*/
getUnapprovedMsgs () {
return this.messages.filter(msg => msg.status === 'unapproved')
- .reduce((result, msg) => { result[msg.id] = msg; return result }, {})
+ .reduce((result, msg) => { result[msg.id] = msg; return result }, {})
}
/**
diff --git a/app/scripts/lib/personal-message-manager.js b/app/scripts/lib/personal-message-manager.js
index 7c13e521a..b5e28be13 100644
--- a/app/scripts/lib/personal-message-manager.js
+++ b/app/scripts/lib/personal-message-manager.js
@@ -64,7 +64,7 @@ module.exports = class PersonalMessageManager extends EventEmitter {
*/
getUnapprovedMsgs () {
return this.messages.filter(msg => msg.status === 'unapproved')
- .reduce((result, msg) => { result[msg.id] = msg; return result }, {})
+ .reduce((result, msg) => { result[msg.id] = msg; return result }, {})
}
/**
diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js
index 8ab2bc5dc..26dde8288 100644
--- a/app/scripts/metamask-controller.js
+++ b/app/scripts/metamask-controller.js
@@ -68,7 +68,7 @@ module.exports = class MetamaskController extends EventEmitter {
* @constructor
* @param {Object} opts
*/
- constructor (opts) {
+ constructor (opts) {
super()
this.defaultMaxListeners = 20
@@ -362,9 +362,9 @@ module.exports = class MetamaskController extends EventEmitter {
return publicConfigStore
}
-//=============================================================================
-// EXPOSED TO THE UI SUBSYSTEM
-//=============================================================================
+ //=============================================================================
+ // EXPOSED TO THE UI SUBSYSTEM
+ //=============================================================================
/**
* The metamask-state of the various controllers, made available to the UI
@@ -503,9 +503,9 @@ module.exports = class MetamaskController extends EventEmitter {
}
-//=============================================================================
-// VAULT / KEYRING RELATED METHODS
-//=============================================================================
+ //=============================================================================
+ // VAULT / KEYRING RELATED METHODS
+ //=============================================================================
/**
* Creates a new Vault and create a new keychain.
@@ -615,7 +615,7 @@ module.exports = class MetamaskController extends EventEmitter {
* with the mobile client for syncing purposes
* @returns Promise<Object> Parts of the state that we want to syncx
*/
- async fetchInfoToSync () {
+ async fetchInfoToSync () {
// Preferences
const {
accountTokens,
@@ -744,14 +744,14 @@ module.exports = class MetamaskController extends EventEmitter {
const keyring = await this.getKeyringForDevice(deviceName, hdPath)
let accounts = []
switch (page) {
- case -1:
- accounts = await keyring.getPreviousPage()
- break
- case 1:
- accounts = await keyring.getNextPage()
- break
- default:
- accounts = await keyring.getFirstPage()
+ case -1:
+ accounts = await keyring.getPreviousPage()
+ break
+ case 1:
+ accounts = await keyring.getNextPage()
+ break
+ default:
+ accounts = await keyring.getFirstPage()
}
// Merge with existing accounts
@@ -808,7 +808,7 @@ module.exports = class MetamaskController extends EventEmitter {
const { identities } = this.preferencesController.store.getState()
return { ...keyState, identities }
- }
+ }
//
@@ -975,16 +975,16 @@ module.exports = class MetamaskController extends EventEmitter {
// sets the status op the message to 'approved'
// and removes the metamaskId for signing
return this.messageManager.approveMessage(msgParams)
- .then((cleanMsgParams) => {
+ .then((cleanMsgParams) => {
// signs the message
- return this.keyringController.signMessage(cleanMsgParams)
- })
- .then((rawSig) => {
+ return this.keyringController.signMessage(cleanMsgParams)
+ })
+ .then((rawSig) => {
// tells the listener that the message has been signed
// and can be returned to the dapp
- this.messageManager.setMsgStatusSigned(msgId, rawSig)
- return this.getState()
- })
+ this.messageManager.setMsgStatusSigned(msgId, rawSig)
+ return this.getState()
+ })
}
/**
@@ -1033,16 +1033,16 @@ module.exports = class MetamaskController extends EventEmitter {
// sets the status op the message to 'approved'
// and removes the metamaskId for signing
return this.personalMessageManager.approveMessage(msgParams)
- .then((cleanMsgParams) => {
+ .then((cleanMsgParams) => {
// signs the message
- return this.keyringController.signPersonalMessage(cleanMsgParams)
- })
- .then((rawSig) => {
+ return this.keyringController.signPersonalMessage(cleanMsgParams)
+ })
+ .then((rawSig) => {
// tells the listener that the message has been signed
// and can be returned to the dapp
- this.personalMessageManager.setMsgStatusSigned(msgId, rawSig)
- return this.getState()
- })
+ this.personalMessageManager.setMsgStatusSigned(msgId, rawSig)
+ return this.getState()
+ })
}
/**
@@ -1142,7 +1142,7 @@ module.exports = class MetamaskController extends EventEmitter {
restoreOldVaultAccounts (migratorOutput) {
const { serialized } = migratorOutput
return this.keyringController.restoreKeyring(serialized)
- .then(() => migratorOutput)
+ .then(() => migratorOutput)
}
/**
@@ -1185,9 +1185,9 @@ module.exports = class MetamaskController extends EventEmitter {
})
}
-//=============================================================================
-// END (VAULT / KEYRING RELATED METHODS)
-//=============================================================================
+ //=============================================================================
+ // END (VAULT / KEYRING RELATED METHODS)
+ //=============================================================================
/**
* Allows a user to try to speed up a transaction by retrying it
@@ -1236,9 +1236,9 @@ module.exports = class MetamaskController extends EventEmitter {
})
}
-//=============================================================================
-// PASSWORD MANAGEMENT
-//=============================================================================
+ //=============================================================================
+ // PASSWORD MANAGEMENT
+ //=============================================================================
/**
* Allows a user to begin the seed phrase recovery process.
@@ -1260,9 +1260,9 @@ module.exports = class MetamaskController extends EventEmitter {
cb()
}
-//=============================================================================
-// SETUP
-//=============================================================================
+ //=============================================================================
+ // SETUP
+ //=============================================================================
/**
* Used to create a multiplexed stream for connecting to an untrusted context
@@ -1531,13 +1531,13 @@ module.exports = class MetamaskController extends EventEmitter {
return GWEI_BN
}
return block.gasPrices
- .map(hexPrefix => hexPrefix.substr(2))
- .map(hex => new BN(hex, 16))
- .sort((a, b) => {
- return a.gt(b) ? 1 : -1
- })[0]
+ .map(hexPrefix => hexPrefix.substr(2))
+ .map(hex => new BN(hex, 16))
+ .sort((a, b) => {
+ return a.gt(b) ? 1 : -1
+ })[0]
})
- .map(number => number.div(GWEI_BN).toNumber())
+ .map(number => number.div(GWEI_BN).toNumber())
const percentileNum = percentile(65, lowestPrices)
const percentileNumBn = new BN(percentileNum)
@@ -1557,9 +1557,9 @@ module.exports = class MetamaskController extends EventEmitter {
return pendingNonce
}
-//=============================================================================
-// CONFIG
-//=============================================================================
+ //=============================================================================
+ // CONFIG
+ //=============================================================================
// Log blocks
@@ -1754,7 +1754,7 @@ module.exports = class MetamaskController extends EventEmitter {
this.tokenRatesController.isActive = active
}
- /**
+ /**
* Creates RPC engine middleware for processing eth_signTypedData requests
*
* @param {Object} req - request object
diff --git a/app/scripts/migrations/018.js b/app/scripts/migrations/018.js
index ffbf24a4b..f6442dacc 100644
--- a/app/scripts/migrations/018.js
+++ b/app/scripts/migrations/018.js
@@ -43,9 +43,9 @@ function transformState (state) {
const newHistory = (
txStateHistoryHelper.migrateFromSnapshotsToDiffs(txMeta.history)
// remove empty diffs
- .filter((entry) => {
- return !Array.isArray(entry) || entry.length > 0
- })
+ .filter((entry) => {
+ return !Array.isArray(entry) || entry.length > 0
+ })
)
txMeta.history = newHistory
return txMeta
diff --git a/app/scripts/migrations/019.js b/app/scripts/migrations/019.js
index ce5da6859..7b726c3e8 100644
--- a/app/scripts/migrations/019.js
+++ b/app/scripts/migrations/019.js
@@ -38,13 +38,13 @@ function transformState (state) {
if (txMeta.status !== 'submitted') return txMeta
const confirmedTxs = txList.filter((tx) => tx.status === 'confirmed')
- .filter((tx) => tx.txParams.from === txMeta.txParams.from)
- .filter((tx) => tx.metamaskNetworkId.from === txMeta.metamaskNetworkId.from)
+ .filter((tx) => tx.txParams.from === txMeta.txParams.from)
+ .filter((tx) => tx.metamaskNetworkId.from === txMeta.metamaskNetworkId.from)
const highestConfirmedNonce = getHighestNonce(confirmedTxs)
const pendingTxs = txList.filter((tx) => tx.status === 'submitted')
- .filter((tx) => tx.txParams.from === txMeta.txParams.from)
- .filter((tx) => tx.metamaskNetworkId.from === txMeta.metamaskNetworkId.from)
+ .filter((tx) => tx.txParams.from === txMeta.txParams.from)
+ .filter((tx) => tx.metamaskNetworkId.from === txMeta.metamaskNetworkId.from)
const highestContinuousNonce = getHighestContinuousFrom(pendingTxs, highestConfirmedNonce)
const maxNonce = Math.max(highestContinuousNonce, highestConfirmedNonce)
@@ -78,7 +78,7 @@ function getHighestContinuousFrom (txList, startPoint) {
function getHighestNonce (txList) {
const nonces = txList.map((txMeta) => {
- const nonce = txMeta.txParams.nonce
+ const nonce = txMeta.txParams.nonce
return parseInt(nonce || '0x0', 16)
})
const highestNonce = Math.max.apply(null, nonces)
diff --git a/app/scripts/migrations/024.js b/app/scripts/migrations/024.js
index 6239bab13..5ffaea377 100644
--- a/app/scripts/migrations/024.js
+++ b/app/scripts/migrations/024.js
@@ -32,7 +32,7 @@ function transformState (state) {
txMeta.status === 'unapproved' &&
txMeta.txParams &&
txMeta.txParams.from
- ) {
+ ) {
txMeta.txParams.from = txMeta.txParams.from.toLowerCase()
}
return txMeta
diff --git a/app/scripts/migrations/031.js b/app/scripts/migrations/031.js
index 98d182828..9c8cbeb09 100644
--- a/app/scripts/migrations/031.js
+++ b/app/scripts/migrations/031.js
@@ -2,14 +2,14 @@
const version = 31
const clone = require('clone')
- /*
+/*
* The purpose of this migration is to properly set the completedOnboarding flag baesd on the state
* of the KeyringController.
*/
module.exports = {
version,
- migrate: async function (originalVersionedData) {
+ migrate: async function (originalVersionedData) {
const versionedData = clone(originalVersionedData)
versionedData.meta.version = version
const state = versionedData.data
@@ -19,13 +19,13 @@ module.exports = {
},
}
- function transformState (state) {
+function transformState (state) {
const { KeyringController, PreferencesController } = state
- if (KeyringController && PreferencesController) {
+ if (KeyringController && PreferencesController) {
const { vault } = KeyringController
PreferencesController.completedOnboarding = Boolean(vault)
}
- return state
+ return state
}
diff --git a/app/scripts/platforms/extension.js b/app/scripts/platforms/extension.js
index 1007fe24d..43820515d 100644
--- a/app/scripts/platforms/extension.js
+++ b/app/scripts/platforms/extension.js
@@ -84,10 +84,10 @@ class ExtensionPlatform {
extension.notifications.create(
url,
{
- 'type': 'basic',
- 'title': title,
- 'iconUrl': extension.extension.getURL('../../images/icon-64.png'),
- 'message': message,
+ 'type': 'basic',
+ 'title': title,
+ 'iconUrl': extension.extension.getURL('../../images/icon-64.png'),
+ 'message': message,
})
}
diff --git a/development/metamaskbot-build-announce.js b/development/metamaskbot-build-announce.js
index b254c8a90..719cbd50c 100755
--- a/development/metamaskbot-build-announce.js
+++ b/development/metamaskbot-build-announce.js
@@ -36,13 +36,13 @@ async function start () {
console.log(`Posting to: ${POST_COMMENT_URI}`)
await request({
- method: 'POST',
- uri: POST_COMMENT_URI,
- body: JSON_PAYLOAD,
- headers: {
- 'User-Agent': 'metamaskbot',
- 'Authorization': `token ${GITHUB_COMMENT_TOKEN}`,
- },
+ method: 'POST',
+ uri: POST_COMMENT_URI,
+ body: JSON_PAYLOAD,
+ headers: {
+ 'User-Agent': 'metamaskbot',
+ 'Authorization': `token ${GITHUB_COMMENT_TOKEN}`,
+ },
})
}
diff --git a/development/mock-dev.js b/development/mock-dev.js
index fb6f50546..188c04678 100644
--- a/development/mock-dev.js
+++ b/development/mock-dev.js
@@ -134,10 +134,10 @@ function startApp () {
},
}, [
h(Root, {
- store: store,
+ store: store,
}),
]),
]
- ), container)
+ ), container)
}
diff --git a/development/sentry-publish.js b/development/sentry-publish.js
index e14f3f176..cab3d1ac8 100644
--- a/development/sentry-publish.js
+++ b/development/sentry-publish.js
@@ -16,7 +16,7 @@ async function start () {
if (versionAlreadyExists) {
console.log(`Version "${VERSION}" already exists on Sentry, skipping version creation`)
} else {
- // create sentry release
+ // create sentry release
console.log(`creating Sentry release for "${VERSION}"...`)
await exec(`sentry-cli releases --org 'metamask' --project 'metamask' new ${VERSION}`)
console.log(`removing any existing files from Sentry release "${VERSION}"...`)
diff --git a/development/verify-locale-strings.js b/development/verify-locale-strings.js
index a5d76a269..ce283fd15 100644
--- a/development/verify-locale-strings.js
+++ b/development/verify-locale-strings.js
@@ -18,79 +18,79 @@ console.log('Locale Verification')
const specifiedLocale = process.argv[2]
if (specifiedLocale) {
- console.log(`Verifying selected locale "${specifiedLocale}":\n\n`)
- const locale = localeIndex.find(localeMeta => localeMeta.code === specifiedLocale)
- verifyLocale(locale)
+ console.log(`Verifying selected locale "${specifiedLocale}":\n\n`)
+ const locale = localeIndex.find(localeMeta => localeMeta.code === specifiedLocale)
+ verifyLocale(locale)
} else {
- console.log('Verifying all locales:\n\n')
- localeIndex.forEach(localeMeta => {
- verifyLocale({ localeMeta })
- console.log('\n')
- })
+ console.log('Verifying all locales:\n\n')
+ localeIndex.forEach(localeMeta => {
+ verifyLocale({ localeMeta })
+ console.log('\n')
+ })
}
function verifyLocale ({ localeMeta }) {
- const localeCode = localeMeta.code
- const localeName = localeMeta.name
- let targetLocale, englishLocale
- try {
- const localeFilePath = path.join(process.cwd(), 'app', '_locales', localeCode, 'messages.json')
- targetLocale = JSON.parse(fs.readFileSync(localeFilePath, 'utf8'))
- } catch (e) {
- if (e.code === 'ENOENT') {
- console.log('Locale file not found')
- } else {
- console.log(`Error opening your locale ("${localeCode}") file: `, e)
- }
- process.exit(1)
- }
+ const localeCode = localeMeta.code
+ const localeName = localeMeta.name
+ let targetLocale, englishLocale
+ try {
+ const localeFilePath = path.join(process.cwd(), 'app', '_locales', localeCode, 'messages.json')
+ targetLocale = JSON.parse(fs.readFileSync(localeFilePath, 'utf8'))
+ } catch (e) {
+ if (e.code === 'ENOENT') {
+ console.log('Locale file not found')
+ } else {
+ console.log(`Error opening your locale ("${localeCode}") file: `, e)
+ }
+ process.exit(1)
+ }
- try {
- const englishFilePath = path.join(process.cwd(), 'app', '_locales', 'en', 'messages.json')
- englishLocale = JSON.parse(fs.readFileSync(englishFilePath, 'utf8'))
- } catch (e) {
- if (e.code === 'ENOENT') {
- console.log('English File not found')
- } else {
- console.log('Error opening english locale file: ', e)
- }
- process.exit(1)
- }
+ try {
+ const englishFilePath = path.join(process.cwd(), 'app', '_locales', 'en', 'messages.json')
+ englishLocale = JSON.parse(fs.readFileSync(englishFilePath, 'utf8'))
+ } catch (e) {
+ if (e.code === 'ENOENT') {
+ console.log('English File not found')
+ } else {
+ console.log('Error opening english locale file: ', e)
+ }
+ process.exit(1)
+ }
- // console.log(' verifying whether all your locale ("${localeCode}") strings are contained in the english one')
- const extraItems = compareLocalesForMissingItems({ base: targetLocale, subject: englishLocale })
- // console.log('\n verifying whether your locale ("${localeCode}") contains all english strings')
- const missingItems = compareLocalesForMissingItems({ base: englishLocale, subject: targetLocale })
+ // console.log(' verifying whether all your locale ("${localeCode}") strings are contained in the english one')
+ const extraItems = compareLocalesForMissingItems({ base: targetLocale, subject: englishLocale })
+ // console.log('\n verifying whether your locale ("${localeCode}") contains all english strings')
+ const missingItems = compareLocalesForMissingItems({ base: englishLocale, subject: targetLocale })
- const englishEntryCount = Object.keys(englishLocale).length
- const coveragePercent = 100 * (englishEntryCount - missingItems.length) / englishEntryCount
+ const englishEntryCount = Object.keys(englishLocale).length
+ const coveragePercent = 100 * (englishEntryCount - missingItems.length) / englishEntryCount
- console.log(`Status of **${localeName} (${localeCode})** ${coveragePercent.toFixed(2)}% coverage:`)
+ console.log(`Status of **${localeName} (${localeCode})** ${coveragePercent.toFixed(2)}% coverage:`)
- if (extraItems.length) {
- console.log('\nMissing from english locale:')
- extraItems.forEach(function (key) {
- console.log(` - [ ] ${key}`)
- })
- } else {
- // console.log(` all ${counter} strings declared in your locale ("${localeCode}") were found in the english one`)
- }
+ if (extraItems.length) {
+ console.log('\nMissing from english locale:')
+ extraItems.forEach(function (key) {
+ console.log(` - [ ] ${key}`)
+ })
+ } else {
+ // console.log(` all ${counter} strings declared in your locale ("${localeCode}") were found in the english one`)
+ }
- if (missingItems.length) {
- console.log(`\nMissing:`)
- missingItems.forEach(function (key) {
- console.log(` - [ ] ${key}`)
- })
- } else {
- // console.log(` all ${counter} english strings were found in your locale ("${localeCode}")!`)
- }
+ if (missingItems.length) {
+ console.log(`\nMissing:`)
+ missingItems.forEach(function (key) {
+ console.log(` - [ ] ${key}`)
+ })
+ } else {
+ // console.log(` all ${counter} english strings were found in your locale ("${localeCode}")!`)
+ }
- if (!extraItems.length && !missingItems.length) {
- console.log('Full coverage : )')
- }
+ if (!extraItems.length && !missingItems.length) {
+ console.log('Full coverage : )')
+ }
}
function compareLocalesForMissingItems ({ base, subject }) {
- return Object.keys(base).filter((key) => !subject[key])
+ return Object.keys(base).filter((key) => !subject[key])
}
diff --git a/gentests.js b/gentests.js
index a84c2079d..0d87a11cb 100644
--- a/gentests.js
+++ b/gentests.js
@@ -94,8 +94,8 @@ async function startContainer (fileRegEx) {
.map((s) => {
const proxyKeys = s.match(/{.+}/)[0].match(/\w+/g)
return '\'' + s.match(/'(.+)'/)[1] + '\': { ' + (proxyKeys.length > 1
- ? '\n ' + proxyKeys.join(': () => {},\n ') + ': () => {},\n '
- : proxyKeys[0] + ': () => {},') + ' }'
+ ? '\n ' + proxyKeys.join(': () => {},\n ') + ': () => {},\n '
+ : proxyKeys[0] + ': () => {},') + ' }'
})
.join(',\n ') + '\n}')
.replace('{ connect: () => {}, },', `{
@@ -205,7 +205,7 @@ function generateContainerTest (sPath, {
mapDispatchToPropsMethodNames,
proxyquireObject,
}) {
-return `import assert from 'assert'
+ return `import assert from 'assert'
import proxyquire from 'proxyquire'
import sinon from 'sinon'
diff --git a/gulpfile.js b/gulpfile.js
index 99683bc9f..578a64aa2 100644
--- a/gulpfile.js
+++ b/gulpfile.js
@@ -155,27 +155,27 @@ function copyTask (taskName, opts) {
gulp.task('manifest:chrome', function () {
return gulp.src('./dist/chrome/manifest.json')
- .pipe(jsoneditor(function (json) {
- delete json.applications
- json.minimum_chrome_version = '58'
- return json
- }))
- .pipe(gulp.dest('./dist/chrome', { overwrite: true }))
+ .pipe(jsoneditor(function (json) {
+ delete json.applications
+ json.minimum_chrome_version = '58'
+ return json
+ }))
+ .pipe(gulp.dest('./dist/chrome', { overwrite: true }))
})
gulp.task('manifest:opera', function () {
return gulp.src('./dist/opera/manifest.json')
- .pipe(jsoneditor(function (json) {
- json.permissions = [
- 'storage',
- 'tabs',
- 'clipboardWrite',
- 'clipboardRead',
- 'http://localhost:8545/',
- ]
- return json
- }))
- .pipe(gulp.dest('./dist/opera', { overwrite: true }))
+ .pipe(jsoneditor(function (json) {
+ json.permissions = [
+ 'storage',
+ 'tabs',
+ 'clipboardWrite',
+ 'clipboardRead',
+ 'http://localhost:8545/',
+ ]
+ return json
+ }))
+ .pipe(gulp.dest('./dist/opera', { overwrite: true }))
})
gulp.task('manifest:production', function () {
@@ -188,14 +188,14 @@ gulp.task('manifest:production', function () {
], {base: './dist/'})
// Exclude chromereload script in production:
- .pipe(jsoneditor(function (json) {
- json.background.scripts = json.background.scripts.filter((script) => {
- return !script.includes('chromereload')
- })
- return json
- }))
+ .pipe(jsoneditor(function (json) {
+ json.background.scripts = json.background.scripts.filter((script) => {
+ return !script.includes('chromereload')
+ })
+ return json
+ }))
- .pipe(gulp.dest('./dist/', { overwrite: true }))
+ .pipe(gulp.dest('./dist/', { overwrite: true }))
})
gulp.task('manifest:testing', function () {
@@ -205,12 +205,12 @@ gulp.task('manifest:testing', function () {
], {base: './dist/'})
// Exclude chromereload script in production:
- .pipe(jsoneditor(function (json) {
- json.permissions = [...json.permissions, 'webRequestBlocking']
- return json
- }))
+ .pipe(jsoneditor(function (json) {
+ json.permissions = [...json.permissions, 'webRequestBlocking']
+ return json
+ }))
- .pipe(gulp.dest('./dist/', { overwrite: true }))
+ .pipe(gulp.dest('./dist/', { overwrite: true }))
})
gulp.task('copy',
@@ -477,8 +477,8 @@ gulp.task('dist',
function zipTask (target) {
return () => {
return gulp.src(`dist/${target}/**`)
- .pipe(zip(`metamask-${target}-${manifest.version}.zip`))
- .pipe(gulp.dest('builds'))
+ .pipe(zip(`metamask-${target}-${manifest.version}.zip`))
+ .pipe(gulp.dest('builds'))
}
}
@@ -570,11 +570,11 @@ function bundleTask (opts) {
// Minification
if (opts.minifyBuild) {
buildStream = buildStream
- .pipe(uglify({
- mangle: {
- reserved: [ 'MetamaskInpageProvider' ],
- },
- }))
+ .pipe(uglify({
+ mangle: {
+ reserved: [ 'MetamaskInpageProvider' ],
+ },
+ }))
}
// Finalize Source Maps
diff --git a/test/e2e/contract-test/contract.js b/test/e2e/contract-test/contract.js
index 3f22b442a..9fe5c21b1 100644
--- a/test/e2e/contract-test/contract.js
+++ b/test/e2e/contract-test/contract.js
@@ -72,7 +72,7 @@ web3.currentProvider.enable().then(() => {
})
})
}
- })
+ })
console.log(piggybank)
})
@@ -161,7 +161,7 @@ web3.currentProvider.enable().then(() => {
})
})
}
- })
+ })
})
})
diff --git a/test/e2e/helpers.js b/test/e2e/helpers.js
index 9b2029dde..30b8d13f6 100644
--- a/test/e2e/helpers.js
+++ b/test/e2e/helpers.js
@@ -162,6 +162,6 @@ async function switchToWindowWithUrlThatMatches (driver, regexp, windowHandles)
if (windowUrl.match(regexp)) {
return firstHandle
} else {
- return await switchToWindowWithUrlThatMatches(driver, regexp, windowHandles.slice(1))
+ return await switchToWindowWithUrlThatMatches(driver, regexp, windowHandles.slice(1))
}
}
diff --git a/test/e2e/metamask-responsive-ui.spec.js b/test/e2e/metamask-responsive-ui.spec.js
index 720cac333..90661e387 100644
--- a/test/e2e/metamask-responsive-ui.spec.js
+++ b/test/e2e/metamask-responsive-ui.spec.js
@@ -109,110 +109,110 @@ describe('MetaMask', function () {
})
describe('Going through the first time flow', () => {
- it('clicks the continue button on the welcome screen', async () => {
- await findElement(driver, By.css('.welcome-page__header'))
- const welcomeScreenBtn = await findElement(driver, By.css('.first-time-flow__button'))
- welcomeScreenBtn.click()
- await delay(largeDelayMs)
- })
+ it('clicks the continue button on the welcome screen', async () => {
+ await findElement(driver, By.css('.welcome-page__header'))
+ const welcomeScreenBtn = await findElement(driver, By.css('.first-time-flow__button'))
+ welcomeScreenBtn.click()
+ await delay(largeDelayMs)
+ })
- it('clicks the "Create New Wallet" option', async () => {
- const customRpcButton = await findElement(driver, By.xpath(`//button[contains(text(), 'Create a Wallet')]`))
- customRpcButton.click()
- await delay(largeDelayMs)
- })
+ it('clicks the "Create New Wallet" option', async () => {
+ const customRpcButton = await findElement(driver, By.xpath(`//button[contains(text(), 'Create a Wallet')]`))
+ customRpcButton.click()
+ await delay(largeDelayMs)
+ })
- it('clicks the "I agree" option on the metametrics opt-in screen', async () => {
- const optOutButton = await findElement(driver, By.css('.btn-primary'))
- optOutButton.click()
- await delay(largeDelayMs)
- })
+ it('clicks the "I agree" option on the metametrics opt-in screen', async () => {
+ const optOutButton = await findElement(driver, By.css('.btn-primary'))
+ optOutButton.click()
+ await delay(largeDelayMs)
+ })
+
+ it('accepts a secure password', async () => {
+ const passwordBox = await findElement(driver, By.css('.first-time-flow__form #create-password'))
+ const passwordBoxConfirm = await findElement(driver, By.css('.first-time-flow__form #confirm-password'))
+ const button = await findElement(driver, By.css('.first-time-flow__form button'))
- it('accepts a secure password', async () => {
- const passwordBox = await findElement(driver, By.css('.first-time-flow__form #create-password'))
- const passwordBoxConfirm = await findElement(driver, By.css('.first-time-flow__form #confirm-password'))
- const button = await findElement(driver, By.css('.first-time-flow__form button'))
+ await passwordBox.sendKeys('correct horse battery staple')
+ await passwordBoxConfirm.sendKeys('correct horse battery staple')
- await passwordBox.sendKeys('correct horse battery staple')
- await passwordBoxConfirm.sendKeys('correct horse battery staple')
+ const tosCheckBox = await findElement(driver, By.css('.first-time-flow__checkbox'))
+ await tosCheckBox.click()
- const tosCheckBox = await findElement(driver, By.css('.first-time-flow__checkbox'))
- await tosCheckBox.click()
+ await button.click()
+ await delay(regularDelayMs)
+ })
- await button.click()
- await delay(regularDelayMs)
- })
+ let seedPhrase
- let seedPhrase
+ it('reveals the seed phrase', async () => {
+ const byRevealButton = By.css('.reveal-seed-phrase__secret-blocker .reveal-seed-phrase__reveal-button')
+ await driver.wait(until.elementLocated(byRevealButton, 10000))
+ const revealSeedPhraseButton = await findElement(driver, byRevealButton, 10000)
+ await revealSeedPhraseButton.click()
+ await delay(regularDelayMs)
- it('reveals the seed phrase', async () => {
- const byRevealButton = By.css('.reveal-seed-phrase__secret-blocker .reveal-seed-phrase__reveal-button')
- await driver.wait(until.elementLocated(byRevealButton, 10000))
- const revealSeedPhraseButton = await findElement(driver, byRevealButton, 10000)
- await revealSeedPhraseButton.click()
- await delay(regularDelayMs)
+ seedPhrase = await driver.findElement(By.css('.reveal-seed-phrase__secret-words')).getText()
+ assert.equal(seedPhrase.split(' ').length, 12)
+ await delay(regularDelayMs)
- seedPhrase = await driver.findElement(By.css('.reveal-seed-phrase__secret-words')).getText()
- assert.equal(seedPhrase.split(' ').length, 12)
- await delay(regularDelayMs)
+ const nextScreen = await findElement(driver, By.css('button.first-time-flow__button'))
+ await nextScreen.click()
+ await delay(regularDelayMs)
+ })
- const nextScreen = await findElement(driver, By.css('button.first-time-flow__button'))
- await nextScreen.click()
- await delay(regularDelayMs)
- })
+ async function clickWordAndWait (word) {
+ const xpath = `//div[contains(@class, 'confirm-seed-phrase__seed-word--shuffled') and not(contains(@class, 'confirm-seed-phrase__seed-word--selected')) and contains(text(), '${word}')]`
+ const word0 = await findElement(driver, By.xpath(xpath), 10000)
- async function clickWordAndWait (word) {
- const xpath = `//div[contains(@class, 'confirm-seed-phrase__seed-word--shuffled') and not(contains(@class, 'confirm-seed-phrase__seed-word--selected')) and contains(text(), '${word}')]`
- const word0 = await findElement(driver, By.xpath(xpath), 10000)
+ await word0.click()
+ await delay(tinyDelayMs)
+ }
- await word0.click()
- await delay(tinyDelayMs)
- }
+ async function retypeSeedPhrase (words, wasReloaded, count = 0) {
+ try {
+ if (wasReloaded) {
+ const byRevealButton = By.css('.reveal-seed-phrase__secret-blocker .reveal-seed-phrase__reveal-button')
+ await driver.wait(until.elementLocated(byRevealButton, 10000))
+ const revealSeedPhraseButton = await findElement(driver, byRevealButton, 10000)
+ await revealSeedPhraseButton.click()
+ await delay(regularDelayMs)
+
+ const nextScreen = await findElement(driver, By.css('button.first-time-flow__button'))
+ await nextScreen.click()
+ await delay(regularDelayMs)
+ }
- async function retypeSeedPhrase (words, wasReloaded, count = 0) {
- try {
- if (wasReloaded) {
- const byRevealButton = By.css('.reveal-seed-phrase__secret-blocker .reveal-seed-phrase__reveal-button')
- await driver.wait(until.elementLocated(byRevealButton, 10000))
- const revealSeedPhraseButton = await findElement(driver, byRevealButton, 10000)
- await revealSeedPhraseButton.click()
- await delay(regularDelayMs)
-
- const nextScreen = await findElement(driver, By.css('button.first-time-flow__button'))
- await nextScreen.click()
- await delay(regularDelayMs)
- }
-
- for (let i = 0; i < 12; i++) {
- await clickWordAndWait(words[i])
- }
- } catch (e) {
- if (count > 2) {
- throw e
- } else {
- await loadExtension(driver, extensionId)
- await retypeSeedPhrase(words, true, count + 1)
- }
+ for (let i = 0; i < 12; i++) {
+ await clickWordAndWait(words[i])
+ }
+ } catch (e) {
+ if (count > 2) {
+ throw e
+ } else {
+ await loadExtension(driver, extensionId)
+ await retypeSeedPhrase(words, true, count + 1)
}
}
+ }
- it('can retype the seed phrase', async () => {
- const words = seedPhrase.split(' ')
+ it('can retype the seed phrase', async () => {
+ const words = seedPhrase.split(' ')
- await retypeSeedPhrase(words)
+ await retypeSeedPhrase(words)
- const confirm = await findElement(driver, By.xpath(`//button[contains(text(), 'Confirm')]`))
- await confirm.click()
- await delay(regularDelayMs)
- })
+ const confirm = await findElement(driver, By.xpath(`//button[contains(text(), 'Confirm')]`))
+ await confirm.click()
+ await delay(regularDelayMs)
+ })
- it('clicks through the success screen', async () => {
- await findElement(driver, By.xpath(`//div[contains(text(), 'Congratulations')]`))
- const doneButton = await findElement(driver, By.css('button.first-time-flow__button'))
- await doneButton.click()
- await delay(regularDelayMs)
- })
+ it('clicks through the success screen', async () => {
+ await findElement(driver, By.xpath(`//div[contains(text(), 'Congratulations')]`))
+ const doneButton = await findElement(driver, By.css('button.first-time-flow__button'))
+ await doneButton.click()
+ await delay(regularDelayMs)
})
+ })
describe('Show account information', () => {
it('show account details dropdown menu', async () => {
diff --git a/test/e2e/web3.spec.js b/test/e2e/web3.spec.js
index e5be24672..36a1c0509 100644
--- a/test/e2e/web3.spec.js
+++ b/test/e2e/web3.spec.js
@@ -34,9 +34,9 @@ describe('Using MetaMask with an existing account', function () {
const button = async (x) => {
const buttoncheck = x
await buttoncheck.click()
- await delay(largeDelayMs)
- const [results] = await findElements(driver, By.css('#results'))
- const resulttext = await results.getText()
+ await delay(largeDelayMs)
+ const [results] = await findElements(driver, By.css('#results'))
+ const resulttext = await results.getText()
var parsedData = JSON.parse(resulttext)
return (parsedData)
@@ -169,197 +169,197 @@ describe('Using MetaMask with an existing account', function () {
})
- describe('opens dapp', () => {
+ describe('opens dapp', () => {
- it('switches to mainnet', async () => {
- const networkDropdown = await findElement(driver, By.css('.network-name'))
- await networkDropdown.click()
- await delay(regularDelayMs)
+ it('switches to mainnet', async () => {
+ const networkDropdown = await findElement(driver, By.css('.network-name'))
+ await networkDropdown.click()
+ await delay(regularDelayMs)
- const [mainnet] = await findElements(driver, By.xpath(`//span[contains(text(), 'Main Ethereum Network')]`))
- await mainnet.click()
- await delay(largeDelayMs * 2)
- })
+ const [mainnet] = await findElements(driver, By.xpath(`//span[contains(text(), 'Main Ethereum Network')]`))
+ await mainnet.click()
+ await delay(largeDelayMs * 2)
+ })
- it('', async () => {
- await openNewPage(driver, 'http://127.0.0.1:8080/')
- await delay(regularDelayMs)
+ it('', async () => {
+ await openNewPage(driver, 'http://127.0.0.1:8080/')
+ await delay(regularDelayMs)
- await waitUntilXWindowHandles(driver, 3)
- const windowHandles = await driver.getAllWindowHandles()
+ await waitUntilXWindowHandles(driver, 3)
+ const windowHandles = await driver.getAllWindowHandles()
- const extension = windowHandles[0]
- const popup = await switchToWindowWithTitle(driver, 'MetaMask Notification', windowHandles)
- const dapp = windowHandles.find(handle => handle !== extension && handle !== popup)
+ const extension = windowHandles[0]
+ const popup = await switchToWindowWithTitle(driver, 'MetaMask Notification', windowHandles)
+ const dapp = windowHandles.find(handle => handle !== extension && handle !== popup)
- await delay(regularDelayMs)
- const approveButton = await findElement(driver, By.xpath(`//button[contains(text(), 'Connect')]`))
- await approveButton.click()
+ await delay(regularDelayMs)
+ const approveButton = await findElement(driver, By.xpath(`//button[contains(text(), 'Connect')]`))
+ await approveButton.click()
- await driver.switchTo().window(dapp)
- await delay(regularDelayMs)
+ await driver.switchTo().window(dapp)
+ await delay(regularDelayMs)
- })
})
+ })
- describe('testing web3 methods', async () => {
+ describe('testing web3 methods', async () => {
- it('testing hexa methods', async () => {
+ it('testing hexa methods', async () => {
- var List = await driver.findElements(By.className('hexaNumberMethods'))
+ var List = await driver.findElements(By.className('hexaNumberMethods'))
- for (let i = 0; i < List.length; i++) {
- try {
+ for (let i = 0; i < List.length; i++) {
+ try {
- var parsedData = await button(List[i])
- console.log(parsedData)
- var result = parseInt(parsedData.result, 16)
+ var parsedData = await button(List[i])
+ console.log(parsedData)
+ var result = parseInt(parsedData.result, 16)
- assert.equal((typeof result === 'number'), true)
- await delay(regularDelayMs)
- } catch (err) {
- console.log(err)
- assert(false)
+ assert.equal((typeof result === 'number'), true)
+ await delay(regularDelayMs)
+ } catch (err) {
+ console.log(err)
+ assert(false)
- }
}
- })
+ }
+ })
- it('testing booleanMethods', async () => {
+ it('testing booleanMethods', async () => {
- var List = await driver.findElements(By.className('booleanMethods'))
+ var List = await driver.findElements(By.className('booleanMethods'))
- for (let i = 0; i < List.length; i++) {
- try {
+ for (let i = 0; i < List.length; i++) {
+ try {
- var parsedData = await button(List[i])
- console.log(parsedData)
- var result = parsedData.result
+ var parsedData = await button(List[i])
+ console.log(parsedData)
+ var result = parsedData.result
- assert.equal(result, false)
- await delay(regularDelayMs)
- } catch (err) {
- console.log(err)
- assert(false)
+ assert.equal(result, false)
+ await delay(regularDelayMs)
+ } catch (err) {
+ console.log(err)
+ assert(false)
- }
}
+ }
- })
+ })
- it('testing transactionMethods', async () => {
+ it('testing transactionMethods', async () => {
- var List = await driver.findElements(By.className('transactionMethods'))
+ var List = await driver.findElements(By.className('transactionMethods'))
- for (let i = 0; i < List.length; i++) {
- try {
+ for (let i = 0; i < List.length; i++) {
+ try {
- var parsedData = await button(List[i])
+ var parsedData = await button(List[i])
- console.log(parsedData.result.blockHash)
+ console.log(parsedData.result.blockHash)
- var result = []
- result.push(parseInt(parsedData.result.blockHash, 16))
- result.push(parseInt(parsedData.result.blockNumber, 16))
- result.push(parseInt(parsedData.result.gas, 16))
- result.push(parseInt(parsedData.result.gasPrice, 16))
- result.push(parseInt(parsedData.result.hash, 16))
- result.push(parseInt(parsedData.result.input, 16))
- result.push(parseInt(parsedData.result.nonce, 16))
- result.push(parseInt(parsedData.result.r, 16))
- result.push(parseInt(parsedData.result.s, 16))
- result.push(parseInt(parsedData.result.v, 16))
- result.push(parseInt(parsedData.result.to, 16))
- result.push(parseInt(parsedData.result.value, 16))
+ var result = []
+ result.push(parseInt(parsedData.result.blockHash, 16))
+ result.push(parseInt(parsedData.result.blockNumber, 16))
+ result.push(parseInt(parsedData.result.gas, 16))
+ result.push(parseInt(parsedData.result.gasPrice, 16))
+ result.push(parseInt(parsedData.result.hash, 16))
+ result.push(parseInt(parsedData.result.input, 16))
+ result.push(parseInt(parsedData.result.nonce, 16))
+ result.push(parseInt(parsedData.result.r, 16))
+ result.push(parseInt(parsedData.result.s, 16))
+ result.push(parseInt(parsedData.result.v, 16))
+ result.push(parseInt(parsedData.result.to, 16))
+ result.push(parseInt(parsedData.result.value, 16))
- result.forEach((value) => {
- assert.equal((typeof value === 'number'), true)
- })
+ result.forEach((value) => {
+ assert.equal((typeof value === 'number'), true)
+ })
- } catch (err) {
+ } catch (err) {
- console.log(err)
- assert(false)
+ console.log(err)
+ assert(false)
- }
}
+ }
- })
+ })
- it('testing blockMethods', async () => {
+ it('testing blockMethods', async () => {
- var List = await driver.findElements(By.className('blockMethods'))
+ var List = await driver.findElements(By.className('blockMethods'))
- for (let i = 0; i < List.length; i++) {
- try {
+ for (let i = 0; i < List.length; i++) {
+ try {
- var parsedData = await button(List[i])
- console.log(JSON.stringify(parsedData) + i)
+ var parsedData = await button(List[i])
+ console.log(JSON.stringify(parsedData) + i)
- console.log(parsedData.result.parentHash)
+ console.log(parsedData.result.parentHash)
- var result = parseInt(parsedData.result.parentHash, 16)
+ var result = parseInt(parsedData.result.parentHash, 16)
- assert.equal((typeof result === 'number'), true)
- await delay(regularDelayMs)
- } catch (err) {
+ assert.equal((typeof result === 'number'), true)
+ await delay(regularDelayMs)
+ } catch (err) {
- console.log(err)
- assert(false)
+ console.log(err)
+ assert(false)
- }
}
- })
+ }
+ })
- it('testing methods', async () => {
+ it('testing methods', async () => {
- var List = await driver.findElements(By.className('methods'))
- var parsedData
- var result
+ var List = await driver.findElements(By.className('methods'))
+ var parsedData
+ var result
- for (let i = 0; i < List.length; i++) {
- try {
+ for (let i = 0; i < List.length; i++) {
+ try {
- if (i === 2) {
+ if (i === 2) {
- parsedData = await button(List[i])
- console.log(parsedData.result.blockHash)
+ parsedData = await button(List[i])
+ console.log(parsedData.result.blockHash)
- result = parseInt(parsedData.result.blockHash, 16)
+ result = parseInt(parsedData.result.blockHash, 16)
- assert.equal((typeof result === 'number' || (result === 0)), true)
- await delay(regularDelayMs)
- } else {
- parsedData = await button(List[i])
- console.log(parsedData.result)
+ assert.equal((typeof result === 'number' || (result === 0)), true)
+ await delay(regularDelayMs)
+ } else {
+ parsedData = await button(List[i])
+ console.log(parsedData.result)
- result = parseInt(parsedData.result, 16)
+ result = parseInt(parsedData.result, 16)
- assert.equal((typeof result === 'number' || (result === 0)), true)
- await delay(regularDelayMs)
- }
+ assert.equal((typeof result === 'number' || (result === 0)), true)
+ await delay(regularDelayMs)
+ }
- } catch (err) {
+ } catch (err) {
- console.log(err)
- assert(false)
+ console.log(err)
+ assert(false)
- }
}
- })
+ }
+ })
- })
+ })
- })
+})
diff --git a/test/unit/app/controllers/detect-tokens-test.js b/test/unit/app/controllers/detect-tokens-test.js
index 2acc53e92..8f18406f4 100644
--- a/test/unit/app/controllers/detect-tokens-test.js
+++ b/test/unit/app/controllers/detect-tokens-test.js
@@ -71,8 +71,8 @@ describe('DetectTokensController', () => {
controller.isUnlocked = true
var stub = sandbox.stub(controller, 'detectTokenBalance')
- .withArgs('0x0D262e5dC4A06a0F1c90cE79C7a60C09DfC884E4').returns(true)
- .withArgs('0xBC86727E770de68B1060C91f6BB6945c73e10388').returns(true)
+ .withArgs('0x0D262e5dC4A06a0F1c90cE79C7a60C09DfC884E4').returns(true)
+ .withArgs('0xBC86727E770de68B1060C91f6BB6945c73e10388').returns(true)
await controller.detectNewTokens()
sandbox.assert.notCalled(stub)
@@ -84,14 +84,14 @@ describe('DetectTokensController', () => {
controller.isUnlocked = true
sandbox.stub(controller, 'detectTokenBalance')
- .withArgs('0x0D262e5dC4A06a0F1c90cE79C7a60C09DfC884E4')
- .returns(preferences.addToken('0x0d262e5dc4a06a0f1c90ce79c7a60c09dfc884e4', 'J8T', 8))
- .withArgs('0xBC86727E770de68B1060C91f6BB6945c73e10388')
- .returns(preferences.addToken('0xbc86727e770de68b1060c91f6bb6945c73e10388', 'XNK', 18))
+ .withArgs('0x0D262e5dC4A06a0F1c90cE79C7a60C09DfC884E4')
+ .returns(preferences.addToken('0x0d262e5dc4a06a0f1c90ce79c7a60c09dfc884e4', 'J8T', 8))
+ .withArgs('0xBC86727E770de68B1060C91f6BB6945c73e10388')
+ .returns(preferences.addToken('0xbc86727e770de68b1060c91f6bb6945c73e10388', 'XNK', 18))
await controller.detectNewTokens()
assert.deepEqual(preferences.store.getState().tokens, [{address: '0x0d262e5dc4a06a0f1c90ce79c7a60c09dfc884e4', decimals: 8, symbol: 'J8T'},
- {address: '0xbc86727e770de68b1060c91f6bb6945c73e10388', decimals: 18, symbol: 'XNK'}])
+ {address: '0xbc86727e770de68b1060c91f6bb6945c73e10388', decimals: 18, symbol: 'XNK'}])
})
it('should not detect same token while in main network', async () => {
@@ -108,7 +108,7 @@ describe('DetectTokensController', () => {
await controller.detectNewTokens()
assert.deepEqual(preferences.store.getState().tokens, [{address: '0x0d262e5dc4a06a0f1c90ce79c7a60c09dfc884e4', decimals: 8, symbol: 'J8T'},
- {address: '0xbc86727e770de68b1060c91f6bb6945c73e10388', decimals: 18, symbol: 'XNK'}])
+ {address: '0xbc86727e770de68b1060c91f6bb6945c73e10388', decimals: 18, symbol: 'XNK'}])
})
it('should trigger detect new tokens when change address', async () => {
diff --git a/test/unit/app/controllers/transactions/pending-tx-test.js b/test/unit/app/controllers/transactions/pending-tx-test.js
index b37ac2766..e1de5731b 100644
--- a/test/unit/app/controllers/transactions/pending-tx-test.js
+++ b/test/unit/app/controllers/transactions/pending-tx-test.js
@@ -7,7 +7,7 @@ const sinon = require('sinon')
describe('PendingTransactionTracker', function () {
let pendingTxTracker, txMeta, txMetaNoHash, providerResultStub,
- provider, txMeta3, txList, knownErrors
+ provider, txMeta3, txList, knownErrors
this.timeout(10000)
beforeEach(function () {
@@ -80,7 +80,7 @@ describe('PendingTransactionTracker', function () {
}, { count: 1 })[0]
stub = sinon.stub(pendingTxTracker, 'getCompletedTransactions')
- .returns(txGen.txs)
+ .returns(txGen.txs)
// THE EXPECTATION
const spy = sinon.spy()
@@ -107,18 +107,18 @@ describe('PendingTransactionTracker', function () {
})
it('should emit tx:dropped with the txMetas id only after the second call', function (done) {
- txMeta = {
- id: 1,
- hash: '0x0593ee121b92e10d63150ad08b4b8f9c7857d1bd160195ee648fb9a0f8d00eeb',
- status: 'submitted',
- txParams: {
- from: '0x1678a085c290ebd122dc42cba69373b5953b831d',
- nonce: '0x1',
- value: '0xfffff',
- },
- history: [{}],
- rawTx: '0xf86c808504a817c800827b0d940c62bb85faa3311a998d3aba8098c1235c564966880de0b6b3a7640000802aa08ff665feb887a25d4099e40e11f0fef93ee9608f404bd3f853dd9e84ed3317a6a02ec9d3d1d6e176d4d2593dd760e74ccac753e6a0ea0d00cc9789d0d7ff1f471d',
- }
+ txMeta = {
+ id: 1,
+ hash: '0x0593ee121b92e10d63150ad08b4b8f9c7857d1bd160195ee648fb9a0f8d00eeb',
+ status: 'submitted',
+ txParams: {
+ from: '0x1678a085c290ebd122dc42cba69373b5953b831d',
+ nonce: '0x1',
+ value: '0xfffff',
+ },
+ history: [{}],
+ rawTx: '0xf86c808504a817c800827b0d940c62bb85faa3311a998d3aba8098c1235c564966880de0b6b3a7640000802aa08ff665feb887a25d4099e40e11f0fef93ee9608f404bd3f853dd9e84ed3317a6a02ec9d3d1d6e176d4d2593dd760e74ccac753e6a0ea0d00cc9789d0d7ff1f471d',
+ }
providerResultStub['eth_getTransactionCount'] = '0x02'
providerResultStub['eth_getTransactionByHash'] = {}
@@ -159,8 +159,8 @@ describe('PendingTransactionTracker', function () {
pendingTxTracker.getPendingTransactions = () => txList
pendingTxTracker._checkPendingTx = (tx) => { tx.resolve(tx) }
Promise.all(txList.map((tx) => tx.processed))
- .then(() => done())
- .catch(done)
+ .then(() => done())
+ .catch(done)
pendingTxTracker.updatePendingTxs()
})
@@ -169,8 +169,8 @@ describe('PendingTransactionTracker', function () {
describe('#resubmitPendingTxs', function () {
const blockNumberStub = '0x0'
beforeEach(function () {
- const txMeta2 = txMeta3 = txMeta
- txList = [txMeta, txMeta2, txMeta3].map((tx) => {
+ const txMeta2 = txMeta3 = txMeta
+ txList = [txMeta, txMeta2, txMeta3].map((tx) => {
tx.processed = new Promise((resolve) => { tx.resolve = resolve })
return tx
})
@@ -183,8 +183,8 @@ describe('PendingTransactionTracker', function () {
pendingTxTracker.getPendingTransactions = () => txList
pendingTxTracker._resubmitTx = async (tx) => { tx.resolve(tx) }
Promise.all(txList.map((tx) => tx.processed))
- .then(() => done())
- .catch(done)
+ .then(() => done())
+ .catch(done)
pendingTxTracker.resubmitPendingTxs(blockNumberStub)
})
it('should not emit \'tx:failed\' if the txMeta throws a known txError', function (done) {
@@ -209,8 +209,8 @@ describe('PendingTransactionTracker', function () {
throw new Error(knownErrors.pop())
}
Promise.all(txList.map((tx) => tx.processed))
- .then(() => done())
- .catch(done)
+ .then(() => done())
+ .catch(done)
pendingTxTracker.resubmitPendingTxs(blockNumberStub)
})
@@ -227,8 +227,8 @@ describe('PendingTransactionTracker', function () {
pendingTxTracker.getPendingTransactions = () => txList
pendingTxTracker._resubmitTx = async () => { throw new TypeError('im some real error') }
Promise.all(txList.map((tx) => tx.processed))
- .then(() => done())
- .catch(done)
+ .then(() => done())
+ .catch(done)
pendingTxTracker.resubmitPendingTxs(blockNumberStub)
})
@@ -264,11 +264,11 @@ describe('PendingTransactionTracker', function () {
// Stubbing out current account state:
// Adding the fake tx:
pendingTxTracker._resubmitTx(txMeta)
- .then(() => done())
- .catch((err) => {
- assert.ifError(err, 'should not throw an error')
- done(err)
- })
+ .then(() => done())
+ .catch((err) => {
+ assert.ifError(err, 'should not throw an error')
+ done(err)
+ })
assert.equal(pendingTxTracker.publishTransaction.callCount, 1, 'Should call publish transaction')
})
@@ -278,11 +278,11 @@ describe('PendingTransactionTracker', function () {
const mockLatestBlockNumber = '0x5'
pendingTxTracker._resubmitTx(txMetaToTestExponentialBackoff, mockLatestBlockNumber)
- .then(() => done())
- .catch((err) => {
- assert.ifError(err, 'should not throw an error')
- done(err)
- })
+ .then(() => done())
+ .catch((err) => {
+ assert.ifError(err, 'should not throw an error')
+ done(err)
+ })
assert.equal(pendingTxTracker.publishTransaction.callCount, 0, 'Should NOT call publish transaction')
})
@@ -292,11 +292,11 @@ describe('PendingTransactionTracker', function () {
const mockLatestBlockNumber = '0x11'
pendingTxTracker._resubmitTx(txMetaToTestExponentialBackoff, mockLatestBlockNumber)
- .then(() => done())
- .catch((err) => {
- assert.ifError(err, 'should not throw an error')
- done(err)
- })
+ .then(() => done())
+ .catch((err) => {
+ assert.ifError(err, 'should not throw an error')
+ done(err)
+ })
assert.equal(pendingTxTracker.publishTransaction.callCount, 1, 'Should call publish transaction')
})
@@ -382,11 +382,11 @@ describe('PendingTransactionTracker', function () {
value: '0xfffff',
},
})
- .then((taken) => {
- assert.ok(!taken)
- done()
- })
- .catch(done)
+ .then((taken) => {
+ assert.ok(!taken)
+ done()
+ })
+ .catch(done)
})
it('should return true if nonce has been taken', function (done) {
@@ -400,7 +400,7 @@ describe('PendingTransactionTracker', function () {
assert.ok(taken)
done()
})
- .catch(done)
+ .catch(done)
})
})
})
diff --git a/test/unit/app/controllers/transactions/recipient-blacklist-checker-test.js b/test/unit/app/controllers/transactions/recipient-blacklist-checker-test.js
index d3e47c67e..1d6a0eb08 100644
--- a/test/unit/app/controllers/transactions/recipient-blacklist-checker-test.js
+++ b/test/unit/app/controllers/transactions/recipient-blacklist-checker-test.js
@@ -31,8 +31,8 @@ describe('Recipient Blacklist Checker', function () {
const networks = [ROPSTEN_CODE, RINKEYBY_CODE, KOVAN_CODE, GOERLI_CODE]
for (const networkId in networks) {
publicAccounts.forEach((account) => {
- recipientBlackListChecker.checkAccount(networkId, account)
- callCount++
+ recipientBlackListChecker.checkAccount(networkId, account)
+ callCount++
})
}
assert.equal(callCount, 40)
diff --git a/test/unit/app/controllers/transactions/tx-controller-test.js b/test/unit/app/controllers/transactions/tx-controller-test.js
index 8ff409207..9072dc684 100644
--- a/test/unit/app/controllers/transactions/tx-controller-test.js
+++ b/test/unit/app/controllers/transactions/tx-controller-test.js
@@ -129,13 +129,13 @@ describe('Transaction Controller', function () {
stub = sinon.stub(txController, 'addUnapprovedTransaction').callsFake(() => {
txController.emit('newUnapprovedTx', txMeta)
return Promise.resolve(txController.txStateManager.addTx(txMeta))
- })
+ })
- afterEach(function () {
- txController.txStateManager._saveTxList([])
- stub.restore()
+ afterEach(function () {
+ txController.txStateManager._saveTxList([])
+ stub.restore()
+ })
})
- })
it('should resolve when finished and status is submitted and resolve with the hash', function (done) {
txController.once('newUnapprovedTx', (txMetaFromEmit) => {
@@ -146,11 +146,11 @@ describe('Transaction Controller', function () {
})
txController.newUnapprovedTransaction(txParams)
- .then((hash) => {
- assert(hash, 'newUnapprovedTransaction needs to return the hash')
- done()
- })
- .catch(done)
+ .then((hash) => {
+ assert(hash, 'newUnapprovedTransaction needs to return the hash')
+ done()
+ })
+ .catch(done)
})
it('should reject when finished and status is rejected', function (done) {
@@ -161,10 +161,10 @@ describe('Transaction Controller', function () {
})
txController.newUnapprovedTransaction(txParams)
- .catch((err) => {
- if (err.message === 'MetaMask Tx Signature: User denied transaction signature.') done()
- else done(err)
- })
+ .catch((err) => {
+ if (err.message === 'MetaMask Tx Signature: User denied transaction signature.') done()
+ else done(err)
+ })
})
})
@@ -182,17 +182,17 @@ describe('Transaction Controller', function () {
it('should add an unapproved transaction and return a valid txMeta', function (done) {
txController.addUnapprovedTransaction({ from: selectedAddress })
- .then((txMeta) => {
- assert(('id' in txMeta), 'should have a id')
- assert(('time' in txMeta), 'should have a time stamp')
- assert(('metamaskNetworkId' in txMeta), 'should have a metamaskNetworkId')
- assert(('txParams' in txMeta), 'should have a txParams')
- assert(('history' in txMeta), 'should have a history')
-
- const memTxMeta = txController.txStateManager.getTx(txMeta.id)
- assert.deepEqual(txMeta, memTxMeta, `txMeta should be stored in txController after adding it\n expected: ${txMeta} \n got: ${memTxMeta}`)
- done()
- }).catch(done)
+ .then((txMeta) => {
+ assert(('id' in txMeta), 'should have a id')
+ assert(('time' in txMeta), 'should have a time stamp')
+ assert(('metamaskNetworkId' in txMeta), 'should have a metamaskNetworkId')
+ assert(('txParams' in txMeta), 'should have a txParams')
+ assert(('history' in txMeta), 'should have a history')
+
+ const memTxMeta = txController.txStateManager.getTx(txMeta.id)
+ assert.deepEqual(txMeta, memTxMeta, `txMeta should be stored in txController after adding it\n expected: ${txMeta} \n got: ${memTxMeta}`)
+ done()
+ }).catch(done)
})
it('should emit newUnapprovedTx event and pass txMeta as the first argument', function (done) {
@@ -202,16 +202,16 @@ describe('Transaction Controller', function () {
done()
})
txController.addUnapprovedTransaction({ from: selectedAddress })
- .catch(done)
+ .catch(done)
})
it('should fail if recipient is public', function (done) {
txController.networkStore = new ObservableStore(1)
txController.addUnapprovedTransaction({ from: selectedAddress, to: '0x0d1d4e623D10F9FBA5Db95830F7d3839406C6AF2' })
- .catch((err) => {
- if (err.message === 'Recipient is a public account') done()
- else done(err)
- })
+ .catch((err) => {
+ if (err.message === 'Recipient is a public account') done()
+ else done(err)
+ })
})
it('should fail if the from address isn\'t the selected address', function (done) {
@@ -232,16 +232,16 @@ describe('Transaction Controller', function () {
done()
})
txController.addUnapprovedTransaction({ from: selectedAddress, to: '0x0d1d4e623D10F9FBA5Db95830F7d3839406C6AF2' })
- .catch(done)
+ .catch(done)
})
it('should fail if netId is loading', function (done) {
txController.networkStore = new ObservableStore('loading')
txController.addUnapprovedTransaction({ from: selectedAddress, to: '0x0d1d4e623D10F9FBA5Db95830F7d3839406C6AF2' })
- .catch((err) => {
- if (err.message === 'MetaMask is having trouble connecting to the network') done()
- else done(err)
- })
+ .catch((err) => {
+ if (err.message === 'MetaMask is having trouble connecting to the network') done()
+ else done(err)
+ })
})
})
@@ -284,11 +284,11 @@ describe('Transaction Controller', function () {
}))
})
Promise.all(listeners)
- .then((returnValues) => {
- assert.deepEqual(returnValues.pop(), txMeta, 'last event 1:unapproved should return txMeta')
- done()
- })
- .catch(done)
+ .then((returnValues) => {
+ assert.deepEqual(returnValues.pop(), txMeta, 'last event 1:unapproved should return txMeta')
+ done()
+ })
+ .catch(done)
txController.addTx(txMeta)
})
})
@@ -511,16 +511,16 @@ describe('Transaction Controller', function () {
{ id: 1, status: 'submitted', metamaskNetworkId: currentNetworkId, txParams, history: [{}] },
])
txController.retryTransaction(1)
- .then((txMeta) => {
- assert.equal(txMeta.txParams.gasPrice, '0x10642ac00', 'gasPrice should have a %10 gasPrice bump')
- assert.equal(txMeta.txParams.nonce, txParams.nonce, 'nonce should be the same')
- assert.equal(txMeta.txParams.from, txParams.from, 'from should be the same')
- assert.equal(txMeta.txParams.to, txParams.to, 'to should be the same')
- assert.equal(txMeta.txParams.data, txParams.data, 'data should be the same')
- assert.ok(('lastGasPrice' in txMeta), 'should have the key `lastGasPrice`')
- assert.equal(txController.txStateManager.getTxList().length, 2)
- done()
- }).catch(done)
+ .then((txMeta) => {
+ assert.equal(txMeta.txParams.gasPrice, '0x10642ac00', 'gasPrice should have a %10 gasPrice bump')
+ assert.equal(txMeta.txParams.nonce, txParams.nonce, 'nonce should be the same')
+ assert.equal(txMeta.txParams.from, txParams.from, 'from should be the same')
+ assert.equal(txMeta.txParams.to, txParams.to, 'to should be the same')
+ assert.equal(txMeta.txParams.data, txParams.data, 'data should be the same')
+ assert.ok(('lastGasPrice' in txMeta), 'should have the key `lastGasPrice`')
+ assert.equal(txController.txStateManager.getTxList().length, 2)
+ done()
+ }).catch(done)
})
})
diff --git a/test/unit/app/controllers/transactions/tx-state-manager-test.js b/test/unit/app/controllers/transactions/tx-state-manager-test.js
index 72dbbc4a1..48343bcd7 100644
--- a/test/unit/app/controllers/transactions/tx-state-manager-test.js
+++ b/test/unit/app/controllers/transactions/tx-state-manager-test.js
@@ -43,7 +43,7 @@ describe('TransactionStateManager', function () {
})
describe('#setTxStatusRejected', function () {
- it('sets the tx status to rejected and removes it from history', function () {
+ it('sets the tx status to rejected and removes it from history', function () {
const tx = { id: 1, status: 'unapproved', metamaskNetworkId: currentNetworkId, txParams: {} }
txStateManager.addTx(tx)
txStateManager.setTxStatusRejected(1)
@@ -56,11 +56,11 @@ describe('TransactionStateManager', function () {
const tx = { id: 1, status: 'unapproved', metamaskNetworkId: currentNetworkId, txParams: {} }
txStateManager.addTx(tx)
const noop = function (err) {
- if (err) {
- console.log('Error: ', err)
- }
- assert(true, 'event listener has been triggered and noop executed')
- done()
+ if (err) {
+ console.log('Error: ', err)
+ }
+ assert(true, 'event listener has been triggered and noop executed')
+ done()
}
txStateManager.on('1:rejected', noop)
txStateManager.setTxStatusRejected(1)
diff --git a/test/unit/app/controllers/transactions/tx-utils-test.js b/test/unit/app/controllers/transactions/tx-utils-test.js
index 029fab4d5..65c8d35b0 100644
--- a/test/unit/app/controllers/transactions/tx-utils-test.js
+++ b/test/unit/app/controllers/transactions/tx-utils-test.js
@@ -93,6 +93,6 @@ describe('txUtils', function () {
// should run
txParams.from = '0x1678a085c290ebd122dc42cba69373b5953b831d'
txUtils.validateFrom(txParams)
- })
+ })
})
})
diff --git a/test/unit/app/edge-encryptor-test.js b/test/unit/app/edge-encryptor-test.js
index 52817cd09..ad873e351 100644
--- a/test/unit/app/edge-encryptor-test.js
+++ b/test/unit/app/edge-encryptor-test.js
@@ -65,13 +65,13 @@ describe('EdgeEncryptor', function () {
edgeEncryptor.encrypt(password, data)
.then(function (encryptedData) {
edgeEncryptor.decrypt(password, encryptedData)
- .then(function (decryptedData) {
- assert.equal(decryptedData, data)
- done()
- })
- .catch(function (err) {
- done(err)
- })
+ .then(function (decryptedData) {
+ assert.equal(decryptedData, data)
+ done()
+ })
+ .catch(function (err) {
+ done(err)
+ })
})
.catch(function (err) {
done(err)
@@ -83,15 +83,15 @@ describe('EdgeEncryptor', function () {
edgeEncryptor.encrypt(password, data)
.then(function (encryptedData) {
edgeEncryptor.decrypt('wrong password', encryptedData)
- .then(function () {
- assert.fail('could decrypt with wrong password')
- done()
- })
- .catch(function (err) {
- assert.ok(err instanceof Error)
- assert.equal(err.message, 'Incorrect password')
- done()
- })
+ .then(function () {
+ assert.fail('could decrypt with wrong password')
+ done()
+ })
+ .catch(function (err) {
+ assert.ok(err instanceof Error)
+ assert.equal(err.message, 'Incorrect password')
+ done()
+ })
})
.catch(function (err) {
done(err)
diff --git a/test/unit/localhostState.js b/test/unit/localhostState.js
index f9fa157d7..71adbb859 100644
--- a/test/unit/localhostState.js
+++ b/test/unit/localhostState.js
@@ -10,12 +10,12 @@
*/
const initialState = {
config: {},
- NetworkController: {
- provider: {
- type: 'rpc',
- rpcTarget: 'http://localhost:8545',
- },
+ NetworkController: {
+ provider: {
+ type: 'rpc',
+ rpcTarget: 'http://localhost:8545',
},
+ },
}
module.exports = initialState
diff --git a/test/unit/migrations/021-test.js b/test/unit/migrations/021-test.js
index 458e9b4b5..d46b2a835 100644
--- a/test/unit/migrations/021-test.js
+++ b/test/unit/migrations/021-test.js
@@ -6,11 +6,11 @@ const migration21 = require('../../../app/scripts/migrations/021')
describe('wallet2 is migrated successfully with out the BlacklistController', () => {
it('should delete BlacklistController key', (done) => {
migration21.migrate(wallet2)
- .then((migratedData) => {
- assert.equal(migratedData.meta.version, 21)
- assert(!migratedData.data.BlacklistController)
- assert(!migratedData.data.RecentBlocks)
- done()
- }).catch(done)
+ .then((migratedData) => {
+ assert.equal(migratedData.meta.version, 21)
+ assert(!migratedData.data.BlacklistController)
+ assert(!migratedData.data.RecentBlocks)
+ done()
+ }).catch(done)
})
})
diff --git a/test/unit/migrations/022-test.js b/test/unit/migrations/022-test.js
index f8ee00e38..f7dd35b08 100644
--- a/test/unit/migrations/022-test.js
+++ b/test/unit/migrations/022-test.js
@@ -17,16 +17,16 @@ const storage = {
describe('storage is migrated successfully where transactions that are submitted have submittedTimes', () => {
it('should add submittedTime key on the txMeta if appropriate', (done) => {
migration22.migrate(storage)
- .then((migratedData) => {
- const [txMeta1, txMeta2, txMeta3] = migratedData.data.TransactionController.transactions
- assert.equal(migratedData.meta.version, 22)
- // should have written a submitted time
- assert(txMeta1.submittedTime)
- // should not have written a submitted time because it already has one
- assert.equal(txMeta2.submittedTime, properTime)
- // should not have written a submitted time
- assert(!txMeta3.submittedTime)
- done()
- }).catch(done)
+ .then((migratedData) => {
+ const [txMeta1, txMeta2, txMeta3] = migratedData.data.TransactionController.transactions
+ assert.equal(migratedData.meta.version, 22)
+ // should have written a submitted time
+ assert(txMeta1.submittedTime)
+ // should not have written a submitted time because it already has one
+ assert.equal(txMeta2.submittedTime, properTime)
+ // should not have written a submitted time
+ assert(!txMeta3.submittedTime)
+ done()
+ }).catch(done)
})
})
diff --git a/test/unit/migrations/023-test.js b/test/unit/migrations/023-test.js
index 7da94448d..1b47dea92 100644
--- a/test/unit/migrations/023-test.js
+++ b/test/unit/migrations/023-test.js
@@ -57,41 +57,41 @@ storage.data.TransactionController.transactions = transactions
describe('storage is migrated successfully and the proper transactions are remove from state', () => {
it('should remove transactions that are unneeded', (done) => {
migration23.migrate(storage)
- .then((migratedData) => {
- let leftoverNonDeletableTxCount = 0
- const migratedTransactions = migratedData.data.TransactionController.transactions
- migratedTransactions.forEach((tx) => {
- if (!deletableTxStates.find((s) => s === tx.status)) {
- leftoverNonDeletableTxCount++
- }
- })
- assert.equal(leftoverNonDeletableTxCount, nonDeletableCount, 'migration shouldnt delete transactions we want to keep')
- assert((migratedTransactions.length >= 40), `should be equal or greater to 40 if they are non deletable states got ${migratedTransactions.length} transactions`)
- done()
- }).catch(done)
+ .then((migratedData) => {
+ let leftoverNonDeletableTxCount = 0
+ const migratedTransactions = migratedData.data.TransactionController.transactions
+ migratedTransactions.forEach((tx) => {
+ if (!deletableTxStates.find((s) => s === tx.status)) {
+ leftoverNonDeletableTxCount++
+ }
+ })
+ assert.equal(leftoverNonDeletableTxCount, nonDeletableCount, 'migration shouldnt delete transactions we want to keep')
+ assert((migratedTransactions.length >= 40), `should be equal or greater to 40 if they are non deletable states got ${migratedTransactions.length} transactions`)
+ done()
+ }).catch(done)
})
it('should not remove any transactions because 40 is the expectable limit', (done) => {
storage.meta.version = 22
storage.data.TransactionController.transactions = transactions40
migration23.migrate(storage)
- .then((migratedData) => {
- const migratedTransactions = migratedData.data.TransactionController.transactions
+ .then((migratedData) => {
+ const migratedTransactions = migratedData.data.TransactionController.transactions
- assert.equal(migratedTransactions.length, 40, 'migration shouldnt delete when at limit')
- done()
- }).catch(done)
+ assert.equal(migratedTransactions.length, 40, 'migration shouldnt delete when at limit')
+ done()
+ }).catch(done)
})
it('should not remove any transactions because 20 txs is under the expectable limit', (done) => {
storage.meta.version = 22
storage.data.TransactionController.transactions = transactions20
migration23.migrate(storage)
- .then((migratedData) => {
- const migratedTransactions = migratedData.data.TransactionController.transactions
- assert.equal(migratedTransactions.length, 20, 'migration shouldnt delete when under limit')
- done()
- }).catch(done)
+ .then((migratedData) => {
+ const migratedTransactions = migratedData.data.TransactionController.transactions
+ assert.equal(migratedTransactions.length, 20, 'migration shouldnt delete when under limit')
+ done()
+ }).catch(done)
})
})
diff --git a/test/unit/migrations/024-test.js b/test/unit/migrations/024-test.js
index c7b0611bc..671c7f832 100644
--- a/test/unit/migrations/024-test.js
+++ b/test/unit/migrations/024-test.js
@@ -28,21 +28,21 @@ storage.data.TransactionController.transactions = transactions
describe('storage is migrated successfully and the txParams.from are lowercase', () => {
it('should lowercase the from for unapproved txs', (done) => {
migration24.migrate(storage)
- .then((migratedData) => {
- const migratedTransactions = migratedData.data.TransactionController.transactions
- migratedTransactions.forEach((tx) => {
- if (tx.status === 'unapproved') assert.equal(tx.txParams.from, '0x8acce2391c0d510a6c5e5d8f819a678f79b7e675')
- else assert.equal(tx.txParams.from, '0x8aCce2391c0d510a6c5E5d8f819a678f79b7e675')
- })
- done()
- }).catch(done)
+ .then((migratedData) => {
+ const migratedTransactions = migratedData.data.TransactionController.transactions
+ migratedTransactions.forEach((tx) => {
+ if (tx.status === 'unapproved') assert.equal(tx.txParams.from, '0x8acce2391c0d510a6c5e5d8f819a678f79b7e675')
+ else assert.equal(tx.txParams.from, '0x8aCce2391c0d510a6c5E5d8f819a678f79b7e675')
+ })
+ done()
+ }).catch(done)
})
it('should migrate first time state', (done) => {
migration24.migrate(firstTimeState)
- .then((migratedData) => {
- assert.equal(migratedData.meta.version, 24)
- done()
- }).catch(done)
+ .then((migratedData) => {
+ assert.equal(migratedData.meta.version, 24)
+ done()
+ }).catch(done)
})
})
diff --git a/test/unit/migrations/025-test.js b/test/unit/migrations/025-test.js
index 1e56913a1..fa89bc54f 100644
--- a/test/unit/migrations/025-test.js
+++ b/test/unit/migrations/025-test.js
@@ -29,21 +29,21 @@ storage.data.TransactionController.transactions = transactions
describe('storage is migrated successfully and the txParams.from are lowercase', () => {
it('should lowercase the from for unapproved txs', (done) => {
migration25.migrate(storage)
- .then((migratedData) => {
- const migratedTransactions = migratedData.data.TransactionController.transactions
- migratedTransactions.forEach((tx) => {
- if (tx.status === 'unapproved') assert(!tx.txParams.random)
- if (tx.status === 'unapproved') assert(!tx.txParams.chainId)
- })
- done()
- }).catch(done)
+ .then((migratedData) => {
+ const migratedTransactions = migratedData.data.TransactionController.transactions
+ migratedTransactions.forEach((tx) => {
+ if (tx.status === 'unapproved') assert(!tx.txParams.random)
+ if (tx.status === 'unapproved') assert(!tx.txParams.chainId)
+ })
+ done()
+ }).catch(done)
})
it('should migrate first time state', (done) => {
migration25.migrate(firstTimeState)
- .then((migratedData) => {
- assert.equal(migratedData.meta.version, 25)
- done()
- }).catch(done)
+ .then((migratedData) => {
+ assert.equal(migratedData.meta.version, 25)
+ done()
+ }).catch(done)
})
})
diff --git a/test/unit/migrations/029-test.js b/test/unit/migrations/029-test.js
index a2876487b..7f9b8a005 100644
--- a/test/unit/migrations/029-test.js
+++ b/test/unit/migrations/029-test.js
@@ -19,20 +19,20 @@ const storage = {
describe('storage is migrated successfully where transactions that are submitted have submittedTimes', () => {
it('should auto fail transactions more than 12 hours old', (done) => {
migration29.migrate(storage)
- .then((migratedData) => {
- const txs = migratedData.data.TransactionController.transactions
- const [ txMeta1 ] = txs
- assert.equal(migratedData.meta.version, 29)
+ .then((migratedData) => {
+ const txs = migratedData.data.TransactionController.transactions
+ const [ txMeta1 ] = txs
+ assert.equal(migratedData.meta.version, 29)
- assert.equal(txMeta1.status, 'failed', 'old tx is auto failed')
- assert(txMeta1.err.message.includes('too long'), 'error message assigned')
+ assert.equal(txMeta1.status, 'failed', 'old tx is auto failed')
+ assert(txMeta1.err.message.includes('too long'), 'error message assigned')
- txs.forEach((tx) => {
- if (tx.id === 1) return
- assert.notEqual(tx.status, 'failed', 'other tx is not auto failed')
- })
+ txs.forEach((tx) => {
+ if (tx.id === 1) return
+ assert.notEqual(tx.status, 'failed', 'other tx is not auto failed')
+ })
- done()
- }).catch(done)
+ done()
+ }).catch(done)
})
})
diff --git a/test/unit/migrations/030-test.js b/test/unit/migrations/030-test.js
index ca410342f..a8e7b4b32 100644
--- a/test/unit/migrations/030-test.js
+++ b/test/unit/migrations/030-test.js
@@ -25,13 +25,13 @@ const storage = {
describe('storage is migrated successfully', () => {
it('should work', (done) => {
migrationTemplate.migrate(storage)
- .then((migratedData) => {
- assert.equal(migratedData.meta.version, 30)
- assert.equal(migratedData.data.PreferencesController.frequentRpcListDetail[0].chainId, undefined)
- assert.equal(migratedData.data.PreferencesController.frequentRpcListDetail[1].chainId, '1')
- assert.equal(migratedData.data.NetworkController.provider.chainId, undefined)
- assert.equal(migratedData.data.NetworkController.network, undefined)
- done()
- }).catch(done)
+ .then((migratedData) => {
+ assert.equal(migratedData.meta.version, 30)
+ assert.equal(migratedData.data.PreferencesController.frequentRpcListDetail[0].chainId, undefined)
+ assert.equal(migratedData.data.PreferencesController.frequentRpcListDetail[1].chainId, '1')
+ assert.equal(migratedData.data.NetworkController.provider.chainId, undefined)
+ assert.equal(migratedData.data.NetworkController.network, undefined)
+ done()
+ }).catch(done)
})
})
diff --git a/test/unit/migrations/031-test.js b/test/unit/migrations/031-test.js
index c85fd7af4..4fcd8b9a5 100644
--- a/test/unit/migrations/031-test.js
+++ b/test/unit/migrations/031-test.js
@@ -1,7 +1,7 @@
const assert = require('assert')
const migration31 = require('../../../app/scripts/migrations/031')
- describe('migration #31', () => {
+describe('migration #31', () => {
it('should set completedOnboarding to true if vault exists', done => {
const oldStorage = {
'meta': {},
@@ -23,7 +23,7 @@ const migration31 = require('../../../app/scripts/migrations/031')
},
}
- migration31.migrate(oldStorage)
+ migration31.migrate(oldStorage)
.then(newStorage => {
assert.equal(newStorage.data.PreferencesController.completedOnboarding, true)
done()
@@ -31,7 +31,7 @@ const migration31 = require('../../../app/scripts/migrations/031')
.catch(done)
})
- it('should set completedOnboarding to false if vault does not exist', done => {
+ it('should set completedOnboarding to false if vault does not exist', done => {
const oldStorage = {
'meta': {},
'data': {
@@ -46,7 +46,7 @@ const migration31 = require('../../../app/scripts/migrations/031')
},
}
- migration31.migrate(oldStorage)
+ migration31.migrate(oldStorage)
.then(newStorage => {
assert.equal(newStorage.data.PreferencesController.completedOnboarding, false)
done()
diff --git a/test/unit/migrations/migrations-test.js b/test/unit/migrations/migrations-test.js
index 50afd9c2e..563b02a6d 100644
--- a/test/unit/migrations/migrations-test.js
+++ b/test/unit/migrations/migrations-test.js
@@ -27,82 +27,82 @@ describe('wallet1 is migrated successfully', () => {
wallet1.data.config.provider = { type: 'etherscan', rpcTarget: null }
return migration2.migrate(wallet1)
- .then((secondResult) => {
- const secondData = secondResult.data
- assert.equal(secondData.config.provider.type, 'rpc', 'provider should be rpc')
- assert.equal(secondData.config.provider.rpcTarget, 'https://rpc.metamask.io/', 'main provider should be our rpc')
- secondResult.data.config.provider.rpcTarget = oldTestRpc
- return migration3.migrate(secondResult)
- }).then((thirdResult) => {
- assert.equal(thirdResult.data.config.provider.rpcTarget, newTestRpc, 'config.provider.rpcTarget should be set to the proper testrpc url.')
- return migration4.migrate(thirdResult)
- }).then((fourthResult) => {
- const fourthData = fourthResult.data
- assert.equal(fourthData.config.provider.rpcTarget, null, 'old rpcTarget should not exist.')
- assert.equal(fourthData.config.provider.type, 'testnet', 'config.provider should be set to testnet.')
-
- return migration5.migrate(vault4)
- }).then((fifthResult) => {
- const fifthData = fifthResult.data
- assert.equal(fifthData.vault, null, 'old vault should not exist')
- assert.equal(fifthData.walletNicknames, null, 'old walletNicknames should not exist')
- assert.equal(fifthData.config.selectedAccount, null, 'old config.selectedAccount should not exist')
- assert.equal(fifthData.KeyringController.vault, vault4.data.vault, 'KeyringController.vault should exist')
- assert.equal(fifthData.KeyringController.selectedAccount, vault4.data.config.selectedAccount, 'KeyringController.selectedAccount should have moved')
- assert.equal(fifthData.KeyringController.walletNicknames['0x0beb674745816b125fbc07285d39fd373e64895c'], vault4.data.walletNicknames['0x0beb674745816b125fbc07285d39fd373e64895c'], 'KeyringController.walletNicknames should have moved')
-
- vault5 = fifthResult
- return migration6.migrate(fifthResult)
- }).then((sixthResult) => {
- assert.equal(sixthResult.data.KeyringController.selectedAccount, null, 'old selectedAccount should not exist')
- assert.equal(sixthResult.data.PreferencesController.selectedAddress, vault5.data.KeyringController.selectedAccount, 'selectedAccount should have moved')
-
- vault6 = sixthResult
- return migration7.migrate(sixthResult)
- }).then((seventhResult) => {
- assert.equal(seventhResult.data.transactions, null, 'old transactions should not exist')
- assert.equal(seventhResult.data.gasMultiplier, null, 'old gasMultiplier should not exist')
- assert.equal(seventhResult.data.TransactionManager.transactions[0].id, vault6.data.transactions[0].id, 'transactions should have moved')
- assert.equal(seventhResult.data.TransactionManager.gasMultiplier, vault6.data.gasMultiplier, 'gasMultiplier should have moved')
-
- vault7 = seventhResult
- return migration8.migrate(seventhResult)
- }).then((eighthResult) => {
- assert.equal(eighthResult.data.noticesList, null, 'old noticesList should not exist')
- assert.equal(eighthResult.data.NoticeController.noticesList[0].title, vault7.data.noticesList[0].title, 'noticesList should have moved')
-
- vault8 = eighthResult
- return migration9.migrate(eighthResult)
- }).then((ninthResult) => {
- assert.equal(ninthResult.data.currentFiat, null, 'old currentFiat should not exist')
- assert.equal(ninthResult.data.fiatCurrency, null, 'old fiatCurrency should not exist')
- assert.equal(ninthResult.data.conversionRate, null, 'old conversionRate should not exist')
- assert.equal(ninthResult.data.conversionDate, null, 'old conversionDate should not exist')
-
- assert.equal(ninthResult.data.CurrencyController.currentCurrency, vault8.data.fiatCurrency, 'currentFiat should have moved')
- assert.equal(ninthResult.data.CurrencyController.conversionRate, vault8.data.conversionRate, 'conversionRate should have moved')
- assert.equal(ninthResult.data.CurrencyController.conversionDate, vault8.data.conversionDate, 'conversionDate should have moved')
-
- vault9 = ninthResult
- return migration10.migrate(ninthResult)
- }).then((tenthResult) => {
- assert.equal(tenthResult.data.shapeShiftTxList, null, 'old shapeShiftTxList should not exist')
- assert.equal(tenthResult.data.ShapeShiftController.shapeShiftTxList[0].transaction, vault9.data.shapeShiftTxList[0].transaction)
-
- return migration11.migrate(tenthResult)
- }).then((eleventhResult) => {
- assert.equal(eleventhResult.data.isDisclaimerConfirmed, null, 'isDisclaimerConfirmed should not exist')
- assert.equal(eleventhResult.data.TOSHash, null, 'TOSHash should not exist')
-
- return migration12.migrate(eleventhResult)
- }).then((twelfthResult) => {
- assert.equal(twelfthResult.data.NoticeController.noticesList[0].body, '', 'notices that have been read should have an empty body.')
- assert.equal(twelfthResult.data.NoticeController.noticesList[1].body, 'nonempty', 'notices that have not been read should not have an empty body.')
-
- assert.equal(twelfthResult.data.config.provider.type, 'testnet', 'network is originally testnet.')
- return migration13.migrate(twelfthResult)
- }).then((thirteenthResult) => {
- assert.equal(thirteenthResult.data.config.provider.type, 'ropsten', 'network has been changed to ropsten.')
- })
+ .then((secondResult) => {
+ const secondData = secondResult.data
+ assert.equal(secondData.config.provider.type, 'rpc', 'provider should be rpc')
+ assert.equal(secondData.config.provider.rpcTarget, 'https://rpc.metamask.io/', 'main provider should be our rpc')
+ secondResult.data.config.provider.rpcTarget = oldTestRpc
+ return migration3.migrate(secondResult)
+ }).then((thirdResult) => {
+ assert.equal(thirdResult.data.config.provider.rpcTarget, newTestRpc, 'config.provider.rpcTarget should be set to the proper testrpc url.')
+ return migration4.migrate(thirdResult)
+ }).then((fourthResult) => {
+ const fourthData = fourthResult.data
+ assert.equal(fourthData.config.provider.rpcTarget, null, 'old rpcTarget should not exist.')
+ assert.equal(fourthData.config.provider.type, 'testnet', 'config.provider should be set to testnet.')
+
+ return migration5.migrate(vault4)
+ }).then((fifthResult) => {
+ const fifthData = fifthResult.data
+ assert.equal(fifthData.vault, null, 'old vault should not exist')
+ assert.equal(fifthData.walletNicknames, null, 'old walletNicknames should not exist')
+ assert.equal(fifthData.config.selectedAccount, null, 'old config.selectedAccount should not exist')
+ assert.equal(fifthData.KeyringController.vault, vault4.data.vault, 'KeyringController.vault should exist')
+ assert.equal(fifthData.KeyringController.selectedAccount, vault4.data.config.selectedAccount, 'KeyringController.selectedAccount should have moved')
+ assert.equal(fifthData.KeyringController.walletNicknames['0x0beb674745816b125fbc07285d39fd373e64895c'], vault4.data.walletNicknames['0x0beb674745816b125fbc07285d39fd373e64895c'], 'KeyringController.walletNicknames should have moved')
+
+ vault5 = fifthResult
+ return migration6.migrate(fifthResult)
+ }).then((sixthResult) => {
+ assert.equal(sixthResult.data.KeyringController.selectedAccount, null, 'old selectedAccount should not exist')
+ assert.equal(sixthResult.data.PreferencesController.selectedAddress, vault5.data.KeyringController.selectedAccount, 'selectedAccount should have moved')
+
+ vault6 = sixthResult
+ return migration7.migrate(sixthResult)
+ }).then((seventhResult) => {
+ assert.equal(seventhResult.data.transactions, null, 'old transactions should not exist')
+ assert.equal(seventhResult.data.gasMultiplier, null, 'old gasMultiplier should not exist')
+ assert.equal(seventhResult.data.TransactionManager.transactions[0].id, vault6.data.transactions[0].id, 'transactions should have moved')
+ assert.equal(seventhResult.data.TransactionManager.gasMultiplier, vault6.data.gasMultiplier, 'gasMultiplier should have moved')
+
+ vault7 = seventhResult
+ return migration8.migrate(seventhResult)
+ }).then((eighthResult) => {
+ assert.equal(eighthResult.data.noticesList, null, 'old noticesList should not exist')
+ assert.equal(eighthResult.data.NoticeController.noticesList[0].title, vault7.data.noticesList[0].title, 'noticesList should have moved')
+
+ vault8 = eighthResult
+ return migration9.migrate(eighthResult)
+ }).then((ninthResult) => {
+ assert.equal(ninthResult.data.currentFiat, null, 'old currentFiat should not exist')
+ assert.equal(ninthResult.data.fiatCurrency, null, 'old fiatCurrency should not exist')
+ assert.equal(ninthResult.data.conversionRate, null, 'old conversionRate should not exist')
+ assert.equal(ninthResult.data.conversionDate, null, 'old conversionDate should not exist')
+
+ assert.equal(ninthResult.data.CurrencyController.currentCurrency, vault8.data.fiatCurrency, 'currentFiat should have moved')
+ assert.equal(ninthResult.data.CurrencyController.conversionRate, vault8.data.conversionRate, 'conversionRate should have moved')
+ assert.equal(ninthResult.data.CurrencyController.conversionDate, vault8.data.conversionDate, 'conversionDate should have moved')
+
+ vault9 = ninthResult
+ return migration10.migrate(ninthResult)
+ }).then((tenthResult) => {
+ assert.equal(tenthResult.data.shapeShiftTxList, null, 'old shapeShiftTxList should not exist')
+ assert.equal(tenthResult.data.ShapeShiftController.shapeShiftTxList[0].transaction, vault9.data.shapeShiftTxList[0].transaction)
+
+ return migration11.migrate(tenthResult)
+ }).then((eleventhResult) => {
+ assert.equal(eleventhResult.data.isDisclaimerConfirmed, null, 'isDisclaimerConfirmed should not exist')
+ assert.equal(eleventhResult.data.TOSHash, null, 'TOSHash should not exist')
+
+ return migration12.migrate(eleventhResult)
+ }).then((twelfthResult) => {
+ assert.equal(twelfthResult.data.NoticeController.noticesList[0].body, '', 'notices that have been read should have an empty body.')
+ assert.equal(twelfthResult.data.NoticeController.noticesList[1].body, 'nonempty', 'notices that have not been read should not have an empty body.')
+
+ assert.equal(twelfthResult.data.config.provider.type, 'testnet', 'network is originally testnet.')
+ return migration13.migrate(twelfthResult)
+ }).then((thirteenthResult) => {
+ assert.equal(thirteenthResult.data.config.provider.type, 'ropsten', 'network has been changed to ropsten.')
+ })
})
})
diff --git a/test/unit/migrations/migrator-test.js b/test/unit/migrations/migrator-test.js
index 693c5830d..3dcc5aff7 100644
--- a/test/unit/migrations/migrator-test.js
+++ b/test/unit/migrations/migrator-test.js
@@ -40,20 +40,20 @@ describe('Migrator', () => {
const migrator = new Migrator({ migrations: stubMigrations })
it('migratedData version should be version 3', (done) => {
migrator.migrateData(versionedData)
- .then((migratedData) => {
- assert.equal(migratedData.meta.version, stubMigrations[2].version)
- done()
- }).catch(done)
+ .then((migratedData) => {
+ assert.equal(migratedData.meta.version, stubMigrations[2].version)
+ done()
+ }).catch(done)
})
it('should match the last version in live migrations', (done) => {
const migrator = new Migrator({ migrations: liveMigrations })
migrator.migrateData(firstTimeState)
- .then((migratedData) => {
- const last = liveMigrations.length - 1
- assert.equal(migratedData.meta.version, liveMigrations[last].version)
- done()
- }).catch(done)
+ .then((migratedData) => {
+ const last = liveMigrations.length - 1
+ assert.equal(migratedData.meta.version, liveMigrations[last].version)
+ done()
+ }).catch(done)
})
it('should emit an error', function (done) {
@@ -61,8 +61,8 @@ describe('Migrator', () => {
const migrator = new Migrator({ migrations: [{ version: 1, migrate: async () => { throw new Error('test') } } ] })
migrator.on('error', () => done())
migrator.migrateData({ meta: {version: 0} })
- .then(() => {
- }).catch(done)
+ .then(() => {
+ }).catch(done)
})
})
diff --git a/test/unit/migrations/template-test.js b/test/unit/migrations/template-test.js
index 0db69d65a..f606cce6f 100644
--- a/test/unit/migrations/template-test.js
+++ b/test/unit/migrations/template-test.js
@@ -8,9 +8,9 @@ const storage = {
describe('storage is migrated successfully', () => {
it('should work', (done) => {
migrationTemplate.migrate(storage)
- .then((migratedData) => {
- assert.equal(migratedData.meta.version, 0)
- done()
- }).catch(done)
+ .then((migratedData) => {
+ assert.equal(migratedData.meta.version, 0)
+ done()
+ }).catch(done)
})
})
diff --git a/test/unit/ui/app/actions.spec.js b/test/unit/ui/app/actions.spec.js
index 919bd81a6..5bf82a185 100644
--- a/test/unit/ui/app/actions.spec.js
+++ b/test/unit/ui/app/actions.spec.js
@@ -628,7 +628,7 @@ describe('Actions', () => {
{ type: 'DISPLAY_WARNING', value: 'error' },
{ type: 'HIDE_LOADING_INDICATION' },
{ type: 'LOCK_METAMASK' },
- ]
+ ]
backgroundSetLockedSpy = sinon.stub(background, 'setLocked')
backgroundSetLockedSpy.callsFake(callback => {
callback(new Error('error'))
diff --git a/test/web3/schema.js b/test/web3/schema.js
index 61977f140..336060431 100644
--- a/test/web3/schema.js
+++ b/test/web3/schema.js
@@ -173,7 +173,7 @@ var methods = {
eth_getUncleByBlockNumberAndIndex: [
'eth_getUncleByBlockNumberAndIndex',
- params.uncleByBlockNumberAndIndexParams,
+ params.uncleByBlockNumberAndIndexParams,
params.block,
2,
],
diff --git a/test/web3/web3.js b/test/web3/web3.js
index 0f7a4c3cd..8f319f38e 100644
--- a/test/web3/web3.js
+++ b/test/web3/web3.js
@@ -27,8 +27,8 @@ web3.currentProvider.enable().then(() => {
})
})
- })
-
})
+
})
+})
diff --git a/ui/app/components/app/confirm-page-container/confirm-detail-row/tests/confirm-detail-row.component.test.js b/ui/app/components/app/confirm-page-container/confirm-detail-row/tests/confirm-detail-row.component.test.js
index c8507985d..95ca8144a 100644
--- a/ui/app/components/app/confirm-page-container/confirm-detail-row/tests/confirm-detail-row.component.test.js
+++ b/ui/app/components/app/confirm-page-container/confirm-detail-row/tests/confirm-detail-row.component.test.js
@@ -27,7 +27,7 @@ describe('Confirm Detail Row Component', function () {
)
})
- describe('render', () => {
+ describe('render', () => {
it('should render a div with a confirm-detail-row class', () => {
assert.equal(wrapper.find('div.confirm-detail-row').length, 1)
})
@@ -60,5 +60,5 @@ describe('Confirm Detail Row Component', function () {
wrapper.find('.confirm-detail-row__header-text').props().onClick()
assert.equal(assert.equal(propsMethodSpies.onHeaderClick.callCount, 1))
})
- })
+ })
})
diff --git a/ui/app/components/app/confirm-page-container/confirm-page-container-navigation/confirm-page-container-navigation.component.js b/ui/app/components/app/confirm-page-container/confirm-page-container-navigation/confirm-page-container-navigation.component.js
index 8327f997b..c24d24b17 100755
--- a/ui/app/components/app/confirm-page-container/confirm-page-container-navigation/confirm-page-container-navigation.component.js
+++ b/ui/app/components/app/confirm-page-container/confirm-page-container-navigation/confirm-page-container-navigation.component.js
@@ -6,9 +6,9 @@ const ConfirmPageContainerNavigation = props => {
return (
<div className="confirm-page-container-navigation"
- style={{
- display: showNavigation ? 'flex' : 'none',
- }}
+ style={{
+ display: showNavigation ? 'flex' : 'none',
+ }}
>
<div className="confirm-page-container-navigation__container"
style={{
diff --git a/ui/app/components/app/confirm-page-container/confirm-page-container.component.js b/ui/app/components/app/confirm-page-container/confirm-page-container.component.js
index 326e4f83e..1ff797fa1 100644
--- a/ui/app/components/app/confirm-page-container/confirm-page-container.component.js
+++ b/ui/app/components/app/confirm-page-container/confirm-page-container.component.js
@@ -106,16 +106,16 @@ export default class ConfirmPageContainer extends Component {
return (
<div className="page-container">
<ConfirmPageContainerNavigation
- totalTx={totalTx}
- positionOfCurrentTx={positionOfCurrentTx}
- nextTxId={nextTxId}
- prevTxId={prevTxId}
- showNavigation={showNavigation}
- onNextTx={(txId) => onNextTx(txId)}
- firstTx={firstTx}
- lastTx={lastTx}
- ofText={ofText}
- requestsWaitingText={requestsWaitingText}
+ totalTx={totalTx}
+ positionOfCurrentTx={positionOfCurrentTx}
+ nextTxId={nextTxId}
+ prevTxId={prevTxId}
+ showNavigation={showNavigation}
+ onNextTx={(txId) => onNextTx(txId)}
+ firstTx={firstTx}
+ lastTx={lastTx}
+ ofText={ofText}
+ requestsWaitingText={requestsWaitingText}
/>
<ConfirmPageContainerHeader
showEdit={showEdit}
diff --git a/ui/app/components/app/dropdowns/account-details-dropdown.js b/ui/app/components/app/dropdowns/account-details-dropdown.js
index a4c33620a..cf2aa8ae8 100644
--- a/ui/app/components/app/dropdowns/account-details-dropdown.js
+++ b/ui/app/components/app/dropdowns/account-details-dropdown.js
@@ -59,7 +59,7 @@ AccountDetailsDropdown.prototype.render = function () {
viewOnEtherscan,
showRemoveAccountConfirmationModal,
rpcPrefs,
- } = this.props
+ } = this.props
const address = selectedIdentity.address
diff --git a/ui/app/components/app/dropdowns/network-dropdown.js b/ui/app/components/app/dropdowns/network-dropdown.js
index 7a656d5b9..e6a24ef11 100644
--- a/ui/app/components/app/dropdowns/network-dropdown.js
+++ b/ui/app/components/app/dropdowns/network-dropdown.js
@@ -353,12 +353,12 @@ NetworkDropdown.prototype.renderCommonRpc = function (rpcListDetail, provider) {
},
}, nickname || rpc),
h('i.fa.fa-times.delete',
- {
- onClick: (e) => {
- e.stopPropagation()
- props.delRpcTarget(rpc)
- },
- }),
+ {
+ onClick: (e) => {
+ e.stopPropagation()
+ props.delRpcTarget(rpc)
+ },
+ }),
]
)
}
diff --git a/ui/app/components/app/gas-customization/advanced-gas-inputs/advanced-gas-inputs.component.js b/ui/app/components/app/gas-customization/advanced-gas-inputs/advanced-gas-inputs.component.js
index d942fd150..7b87b3033 100644
--- a/ui/app/components/app/gas-customization/advanced-gas-inputs/advanced-gas-inputs.component.js
+++ b/ui/app/components/app/gas-customization/advanced-gas-inputs/advanced-gas-inputs.component.js
@@ -131,8 +131,8 @@ export default class AdvancedTabContent extends Component {
</div>
{ isInError
? <div className={`advanced-gas-inputs__gas-edit-row__${errorType}-text`}>
- { errorText }
- </div>
+ { errorText }
+ </div>
: null }
</div>
)
diff --git a/ui/app/components/app/gas-customization/gas-modal-page-container/advanced-tab-content/advanced-tab-content.component.js b/ui/app/components/app/gas-customization/gas-modal-page-container/advanced-tab-content/advanced-tab-content.component.js
index 3924d26ad..88d28b9ed 100644
--- a/ui/app/components/app/gas-customization/gas-modal-page-container/advanced-tab-content/advanced-tab-content.component.js
+++ b/ui/app/components/app/gas-customization/gas-modal-page-container/advanced-tab-content/advanced-tab-content.component.js
@@ -104,8 +104,8 @@ export default class AdvancedTabContent extends Component {
</div>
{ isInError
? <div className={`advanced-tab__gas-edit-row__${errorType}-text`}>
- { errorText }
- </div>
+ { errorText }
+ </div>
: null }
</div>
)
diff --git a/ui/app/components/app/gas-customization/gas-modal-page-container/basic-tab-content/basic-tab-content.component.js b/ui/app/components/app/gas-customization/gas-modal-page-container/basic-tab-content/basic-tab-content.component.js
index 5f3925fa5..931611460 100644
--- a/ui/app/components/app/gas-customization/gas-modal-page-container/basic-tab-content/basic-tab-content.component.js
+++ b/ui/app/components/app/gas-customization/gas-modal-page-container/basic-tab-content/basic-tab-content.component.js
@@ -21,12 +21,12 @@ export default class BasicTabContent extends Component {
<div className="basic-tab-content__title">{ t('estimatedProcessingTimes') }</div>
<div className="basic-tab-content__blurb">{ t('selectAHigherGasFee') }</div>
{!gasPriceButtonGroupProps.loading
- ? <GasPriceButtonGroup
- className="gas-price-button-group--alt"
- showCheck={true}
- {...gasPriceButtonGroupProps}
- />
- : <Loading />
+ ? <GasPriceButtonGroup
+ className="gas-price-button-group--alt"
+ showCheck={true}
+ {...gasPriceButtonGroupProps}
+ />
+ : <Loading />
}
<div className="basic-tab-content__footer-blurb">{ t('acceleratingATransaction') }</div>
</div>
diff --git a/ui/app/components/app/gas-customization/gas-modal-page-container/gas-modal-page-container.component.js b/ui/app/components/app/gas-customization/gas-modal-page-container/gas-modal-page-container.component.js
index e18c1067e..5e557f660 100644
--- a/ui/app/components/app/gas-customization/gas-modal-page-container/gas-modal-page-container.component.js
+++ b/ui/app/components/app/gas-customization/gas-modal-page-container/gas-modal-page-container.component.js
@@ -47,7 +47,7 @@ export default class GasModalPageContainer extends Component {
const promise = this.props.hideBasic
? Promise.resolve(this.props.blockTime)
: this.props.fetchBasicGasAndTimeEstimates()
- .then(basicEstimates => basicEstimates.blockTime)
+ .then(basicEstimates => basicEstimates.blockTime)
promise
.then(blockTime => {
@@ -144,11 +144,11 @@ export default class GasModalPageContainer extends Component {
return (
<Tabs>
{tabsToRender.map(({ name, content }, i) => <Tab name={this.context.t(name)} key={`gas-modal-tab-${i}`}>
- <div className="gas-modal-content">
- { content }
- { this.renderInfoRows(newTotalFiat, newTotalEth, sendAmount, transactionFee) }
- </div>
- </Tab>
+ <div className="gas-modal-content">
+ { content }
+ { this.renderInfoRows(newTotalFiat, newTotalEth, sendAmount, transactionFee) }
+ </div>
+ </Tab>
)}
</Tabs>
)
diff --git a/ui/app/components/app/gas-customization/gas-modal-page-container/tests/gas-modal-page-container-container.test.js b/ui/app/components/app/gas-customization/gas-modal-page-container/tests/gas-modal-page-container-container.test.js
index 03d254eee..d5f3837a9 100644
--- a/ui/app/components/app/gas-customization/gas-modal-page-container/tests/gas-modal-page-container-container.test.js
+++ b/ui/app/components/app/gas-customization/gas-modal-page-container/tests/gas-modal-page-container-container.test.js
@@ -341,44 +341,44 @@ describe('gas-modal-page-container container', () => {
})
describe('mergeProps', () => {
- let stateProps
- let dispatchProps
- let ownProps
-
- beforeEach(() => {
- stateProps = {
- gasPriceButtonGroupProps: {
- someGasPriceButtonGroupProp: 'foo',
- anotherGasPriceButtonGroupProp: 'bar',
- },
- isConfirm: true,
- someOtherStateProp: 'baz',
- transaction: {},
- }
- dispatchProps = {
- updateCustomGasPrice: sinon.spy(),
- hideGasButtonGroup: sinon.spy(),
- setGasData: sinon.spy(),
- updateConfirmTxGasAndCalculate: sinon.spy(),
- someOtherDispatchProp: sinon.spy(),
- createSpeedUpTransaction: sinon.spy(),
- hideSidebar: sinon.spy(),
- hideModal: sinon.spy(),
- cancelAndClose: sinon.spy(),
- }
- ownProps = { someOwnProp: 123 }
- })
+ let stateProps
+ let dispatchProps
+ let ownProps
- afterEach(() => {
- dispatchProps.updateCustomGasPrice.resetHistory()
- dispatchProps.hideGasButtonGroup.resetHistory()
- dispatchProps.setGasData.resetHistory()
- dispatchProps.updateConfirmTxGasAndCalculate.resetHistory()
- dispatchProps.someOtherDispatchProp.resetHistory()
- dispatchProps.createSpeedUpTransaction.resetHistory()
- dispatchProps.hideSidebar.resetHistory()
- dispatchProps.hideModal.resetHistory()
- })
+ beforeEach(() => {
+ stateProps = {
+ gasPriceButtonGroupProps: {
+ someGasPriceButtonGroupProp: 'foo',
+ anotherGasPriceButtonGroupProp: 'bar',
+ },
+ isConfirm: true,
+ someOtherStateProp: 'baz',
+ transaction: {},
+ }
+ dispatchProps = {
+ updateCustomGasPrice: sinon.spy(),
+ hideGasButtonGroup: sinon.spy(),
+ setGasData: sinon.spy(),
+ updateConfirmTxGasAndCalculate: sinon.spy(),
+ someOtherDispatchProp: sinon.spy(),
+ createSpeedUpTransaction: sinon.spy(),
+ hideSidebar: sinon.spy(),
+ hideModal: sinon.spy(),
+ cancelAndClose: sinon.spy(),
+ }
+ ownProps = { someOwnProp: 123 }
+ })
+
+ afterEach(() => {
+ dispatchProps.updateCustomGasPrice.resetHistory()
+ dispatchProps.hideGasButtonGroup.resetHistory()
+ dispatchProps.setGasData.resetHistory()
+ dispatchProps.updateConfirmTxGasAndCalculate.resetHistory()
+ dispatchProps.someOtherDispatchProp.resetHistory()
+ dispatchProps.createSpeedUpTransaction.resetHistory()
+ dispatchProps.hideSidebar.resetHistory()
+ dispatchProps.hideModal.resetHistory()
+ })
it('should return the expected props when isConfirm is true', () => {
const result = mergeProps(stateProps, dispatchProps, ownProps)
diff --git a/ui/app/components/app/gas-customization/gas-price-chart/gas-price-chart.utils.js b/ui/app/components/app/gas-customization/gas-price-chart/gas-price-chart.utils.js
index 55512ce09..b941f1cf9 100644
--- a/ui/app/components/app/gas-customization/gas-price-chart/gas-price-chart.utils.js
+++ b/ui/app/components/app/gas-customization/gas-price-chart/gas-price-chart.utils.js
@@ -210,17 +210,17 @@ export function generateChart (gasPrices, estimatedTimes, gasPricesMax, estimate
},
padding: {left: 20, right: 15, top: 6, bottom: 10},
data: {
- x: 'x',
- columns: [
- ['x', ...gasPrices],
- ['data1', ...estimatedTimes],
- ],
- types: {
- data1: 'area',
- },
- selection: {
- enabled: false,
- },
+ x: 'x',
+ columns: [
+ ['x', ...gasPrices],
+ ['data1', ...estimatedTimes],
+ ],
+ types: {
+ data1: 'area',
+ },
+ selection: {
+ enabled: false,
+ },
},
color: {
data1: '#259de5',
@@ -254,13 +254,13 @@ export function generateChart (gasPrices, estimatedTimes, gasPricesMax, estimate
},
},
legend: {
- show: false,
+ show: false,
},
grid: {
- x: {},
- lines: {
- front: false,
- },
+ x: {},
+ lines: {
+ front: false,
+ },
},
point: {
focus: {
@@ -296,8 +296,8 @@ export function generateChart (gasPrices, estimatedTimes, gasPricesMax, estimate
const flipTooltip = circleY - circleWidth < chartYStart + 5
d3
- .select('.tooltip-arrow')
- .style('margin-top', flipTooltip ? '-16px' : '4px')
+ .select('.tooltip-arrow')
+ .style('margin-top', flipTooltip ? '-16px' : '4px')
return {
top: bigNumMinus(circleY, chartYStart).minus(19).plus(flipTooltip ? circleWidth + 38 : 0).toNumber(),
diff --git a/ui/app/components/app/modals/account-details-modal/account-details-modal.component.js b/ui/app/components/app/modals/account-details-modal/account-details-modal.component.js
index e3919edcf..1b9a6a718 100644
--- a/ui/app/components/app/modals/account-details-modal/account-details-modal.component.js
+++ b/ui/app/components/app/modals/account-details-modal/account-details-modal.component.js
@@ -72,14 +72,14 @@ export default class AccountDetailsModal extends Component {
</Button>
{exportPrivateKeyFeatureEnabled
- ? <Button
- type="secondary"
- className="account-modal__button"
- onClick={() => showExportPrivateKeyModal()}
- >
- {this.context.t('exportPrivateKey')}
- </Button>
- : null
+ ? <Button
+ type="secondary"
+ className="account-modal__button"
+ onClick={() => showExportPrivateKeyModal()}
+ >
+ {this.context.t('exportPrivateKey')}
+ </Button>
+ : null
}
</AccountModalContainer>
)
diff --git a/ui/app/components/app/modals/deposit-ether-modal.js b/ui/app/components/app/modals/deposit-ether-modal.js
index 20c4d018c..ff2411209 100644
--- a/ui/app/components/app/modals/deposit-ether-modal.js
+++ b/ui/app/components/app/modals/deposit-ether-modal.js
@@ -87,8 +87,8 @@ DepositEtherModal.prototype.renderRow = function ({
}
return h('div', {
- className: className || 'deposit-ether-modal__buy-row',
- }, [
+ className: className || 'deposit-ether-modal__buy-row',
+ }, [
onBackClick && showBackButton && h('div.deposit-ether-modal__buy-row__back', {
onClick: onBackClick,
@@ -100,22 +100,22 @@ DepositEtherModal.prototype.renderRow = function ({
h('div.deposit-ether-modal__buy-row__logo-container', [logo]),
- h('div.deposit-ether-modal__buy-row__description', [
+ h('div.deposit-ether-modal__buy-row__description', [
- !hideTitle && h('div.deposit-ether-modal__buy-row__description__title', [title]),
+ !hideTitle && h('div.deposit-ether-modal__buy-row__description__title', [title]),
- h('div.deposit-ether-modal__buy-row__description__text', [text]),
+ h('div.deposit-ether-modal__buy-row__description__text', [text]),
- ]),
+ ]),
- !hideButton && h('div.deposit-ether-modal__buy-row__button', [
- h(Button, {
- type: 'secondary',
- className: 'deposit-ether-modal__deposit-button',
- large: true,
- onClick: onButtonClick,
- }, [buttonLabel]),
- ]),
+ !hideButton && h('div.deposit-ether-modal__buy-row__button', [
+ h(Button, {
+ type: 'secondary',
+ className: 'deposit-ether-modal__deposit-button',
+ large: true,
+ onClick: onButtonClick,
+ }, [buttonLabel]),
+ ]),
])
}
diff --git a/ui/app/components/app/modals/export-private-key-modal.js b/ui/app/components/app/modals/export-private-key-modal.js
index c3098a16c..43d7bcd74 100644
--- a/ui/app/components/app/modals/export-private-key-modal.js
+++ b/ui/app/components/app/modals/export-private-key-modal.js
@@ -86,12 +86,12 @@ ExportPrivateKeyModal.prototype.renderPasswordInput = function (privateKey) {
return privateKey
? h(ReadOnlyInput, {
- wrapperClass: 'private-key-password-display-wrapper',
- inputClass: 'private-key-password-display-textarea',
- textarea: true,
- value: plainKey,
- onClick: () => copyToClipboard(plainKey),
- })
+ wrapperClass: 'private-key-password-display-wrapper',
+ inputClass: 'private-key-password-display-textarea',
+ textarea: true,
+ value: plainKey,
+ onClick: () => copyToClipboard(plainKey),
+ })
: h('input.private-key-password-input', {
type: 'password',
onChange: event => this.setState({ password: event.target.value }),
@@ -109,14 +109,14 @@ ExportPrivateKeyModal.prototype.renderButtons = function (privateKey, address, h
(privateKey
? (
- h(Button, {
+ h(Button, {
type: 'secondary',
large: true,
className: 'export-private-key__button',
onClick: () => hideModal(),
}, this.context.t('done'))
) : (
- h(Button, {
+ h(Button, {
type: 'secondary',
large: true,
className: 'export-private-key__button',
@@ -149,29 +149,29 @@ ExportPrivateKeyModal.prototype.render = function () {
backButtonAction: () => showAccountDetailModal(),
}, [
- h('span.account-name', name),
+ h('span.account-name', name),
- h(ReadOnlyInput, {
- wrapperClass: 'ellip-address-wrapper',
- inputClass: 'qr-ellip-address ellip-address',
- value: checksumAddress(address),
- }),
+ h(ReadOnlyInput, {
+ wrapperClass: 'ellip-address-wrapper',
+ inputClass: 'qr-ellip-address ellip-address',
+ value: checksumAddress(address),
+ }),
- h('div.account-modal-divider'),
+ h('div.account-modal-divider'),
- h('span.modal-body-title', this.context.t('showPrivateKeys')),
+ h('span.modal-body-title', this.context.t('showPrivateKeys')),
- h('div.private-key-password', {}, [
- this.renderPasswordLabel(privateKey),
+ h('div.private-key-password', {}, [
+ this.renderPasswordLabel(privateKey),
- this.renderPasswordInput(privateKey),
+ this.renderPasswordInput(privateKey),
- showWarning && warning ? h('span.private-key-password-error', warning) : null,
- ]),
+ showWarning && warning ? h('span.private-key-password-error', warning) : null,
+ ]),
- h('div.private-key-password-warning', this.context.t('privateKeyWarning')),
+ h('div.private-key-password-warning', this.context.t('privateKeyWarning')),
- this.renderButtons(privateKey, address, hideModal),
+ this.renderButtons(privateKey, address, hideModal),
])
}
diff --git a/ui/app/components/app/modals/new-account-modal.js b/ui/app/components/app/modals/new-account-modal.js
index 27c81a701..4b18c52ba 100644
--- a/ui/app/components/app/modals/new-account-modal.js
+++ b/ui/app/components/app/modals/new-account-modal.js
@@ -69,7 +69,7 @@ NewAccountModal.propTypes = {
showImportPage: PropTypes.func,
createAccount: PropTypes.func,
numberOfExistingAccounts: PropTypes.number,
- t: PropTypes.func,
+ t: PropTypes.func,
}
const mapStateToProps = state => {
diff --git a/ui/app/components/app/modals/notification-modal.js b/ui/app/components/app/modals/notification-modal.js
index b8503ec1a..84d9004b7 100644
--- a/ui/app/components/app/modals/notification-modal.js
+++ b/ui/app/components/app/modals/notification-modal.js
@@ -62,7 +62,7 @@ NotificationModal.propTypes = {
showCancelButton: PropTypes.bool,
showConfirmButton: PropTypes.bool,
onConfirm: PropTypes.func,
- t: PropTypes.func,
+ t: PropTypes.func,
}
const mapDispatchToProps = dispatch => {
diff --git a/ui/app/components/app/modals/qr-scanner/qr-scanner.component.js b/ui/app/components/app/modals/qr-scanner/qr-scanner.component.js
index cb8b07ff1..afeaef0da 100644
--- a/ui/app/components/app/modals/qr-scanner/qr-scanner.component.js
+++ b/ui/app/components/app/modals/qr-scanner/qr-scanner.component.js
@@ -75,23 +75,23 @@ export default class QrScanner extends Component {
clearTimeout(this.permissionChecker)
this.checkPermisisions()
this.codeReader.decodeFromInputVideoDevice(undefined, 'video')
- .then(content => {
- const result = this.parseContent(content.text)
- if (result.type !== 'unknown') {
- this.props.qrCodeDetected(result)
- this.stopAndClose()
- } else {
- this.setState({msg: this.context.t('unknownQrCode')})
- }
- })
- .catch(err => {
- if (err && err.name === 'NotAllowedError') {
- this.setState({msg: this.context.t('youNeedToAllowCameraAccess')})
- clearTimeout(this.permissionChecker)
- this.needsToReinit = true
- this.checkPermisisions()
- }
- })
+ .then(content => {
+ const result = this.parseContent(content.text)
+ if (result.type !== 'unknown') {
+ this.props.qrCodeDetected(result)
+ this.stopAndClose()
+ } else {
+ this.setState({msg: this.context.t('unknownQrCode')})
+ }
+ })
+ .catch(err => {
+ if (err && err.name === 'NotAllowedError') {
+ this.setState({msg: this.context.t('youNeedToAllowCameraAccess')})
+ clearTimeout(this.permissionChecker)
+ this.needsToReinit = true
+ this.checkPermisisions()
+ }
+ })
}).catch(err => {
console.error('[QR-SCANNER]: getVideoInputDevices threw an exception: ', err)
})
diff --git a/ui/app/components/app/network-display/network-display.component.js b/ui/app/components/app/network-display/network-display.component.js
index 9ef5341b0..266476267 100644
--- a/ui/app/components/app/network-display/network-display.component.js
+++ b/ui/app/components/app/network-display/network-display.component.js
@@ -39,12 +39,12 @@ export default class NetworkDisplay extends Component {
return networkClass
? <div className={`network-display__icon network-display__icon--${networkClass}`} />
: <div
- className="i fa fa-question-circle fa-med"
- style={{
- margin: '0 4px',
- color: 'rgb(125, 128, 130)',
- }}
- />
+ className="i fa fa-question-circle fa-med"
+ style={{
+ margin: '0 4px',
+ color: 'rgb(125, 128, 130)',
+ }}
+ />
}
render () {
@@ -62,12 +62,12 @@ export default class NetworkDisplay extends Component {
networkClass
? <div className={`network-display__icon network-display__icon--${networkClass}`} />
: <div
- className="i fa fa-question-circle fa-med"
- style={{
- margin: '0 4px',
- color: 'rgb(125, 128, 130)',
- }}
- />
+ className="i fa fa-question-circle fa-med"
+ style={{
+ margin: '0 4px',
+ color: 'rgb(125, 128, 130)',
+ }}
+ />
}
<div className="network-display__name">
{ type === 'rpc' && nickname ? nickname : this.context.t(type) }
diff --git a/ui/app/components/app/network.js b/ui/app/components/app/network.js
index e778700cd..d46906a66 100644
--- a/ui/app/components/app/network.js
+++ b/ui/app/components/app/network.js
@@ -127,19 +127,19 @@ Network.prototype.render = function () {
default:
return h('.network-indicator', [
networkNumber === 'loading'
- ? h('span.pointer.network-loading-spinner', {
- onClick: (event) => this.props.onClick(event),
- }, [
- h('img', {
- title: context.t('attemptingConnect'),
- src: 'images/loading.svg',
+ ? h('span.pointer.network-loading-spinner', {
+ onClick: (event) => this.props.onClick(event),
+ }, [
+ h('img', {
+ title: context.t('attemptingConnect'),
+ src: 'images/loading.svg',
+ }),
+ ])
+ : h('i.fa.fa-question-circle.fa-lg', {
+ style: {
+ color: 'rgb(125, 128, 130)',
+ },
}),
- ])
- : h('i.fa.fa-question-circle.fa-lg', {
- style: {
- color: 'rgb(125, 128, 130)',
- },
- }),
h('.network-name', providerName === 'localhost' ? context.t('localhost') : providerNick || context.t('privateNetwork')),
h('.network-indicator__down-arrow'),
diff --git a/ui/app/components/app/sidebars/sidebar.component.js b/ui/app/components/app/sidebars/sidebar.component.js
index 657982a21..e532ba7e5 100644
--- a/ui/app/components/app/sidebars/sidebar.component.js
+++ b/ui/app/components/app/sidebars/sidebar.component.js
@@ -26,7 +26,7 @@ export default class Sidebar extends Component {
onOverlayClose && onOverlayClose()
this.props.hideSidebar()
}
- } />
+ } />
}
renderSidebarContent () {
diff --git a/ui/app/components/app/signature-request.js b/ui/app/components/app/signature-request.js
index 32823aa8e..9c0f53f57 100644
--- a/ui/app/components/app/signature-request.js
+++ b/ui/app/components/app/signature-request.js
@@ -251,7 +251,7 @@ SignatureRequest.prototype.renderBody = function () {
url: 'https://metamask.zendesk.com/hc/en-us/articles/360015488751',
})
},
- }, this.context.t('learnMore'))]
+ }, this.context.t('learnMore'))]
}
return h('div.request-signature__body', {}, [
diff --git a/ui/app/components/app/token-list.js b/ui/app/components/app/token-list.js
index 2188e7020..000ca6b3f 100644
--- a/ui/app/components/app/token-list.js
+++ b/ui/app/components/app/token-list.js
@@ -67,8 +67,8 @@ TokenList.prototype.render = function () {
},
onClick: () => {
global.platform.openWindow({
- url: `https://ethplorer.io/address/${userAddress}`,
- })
+ url: `https://ethplorer.io/address/${userAddress}`,
+ })
},
}, this.context.t('here')),
])
@@ -125,13 +125,13 @@ TokenList.prototype.createFreshTokenTracker = function () {
this.tracker.on('error', this.showError)
this.tracker.updateBalances()
- .then(() => {
- this.updateBalances(this.tracker.serialize())
- })
- .catch((reason) => {
- log.error(`Problem updating balances`, reason)
- this.setState({ isLoading: false })
- })
+ .then(() => {
+ this.updateBalances(this.tracker.serialize())
+ })
+ .catch((reason) => {
+ log.error(`Problem updating balances`, reason)
+ this.setState({ isLoading: false })
+ })
}
TokenList.prototype.componentDidUpdate = function (prevProps) {
diff --git a/ui/app/components/app/transaction-activity-log/transaction-activity-log-icon/transaction-activity-log-icon.component.js b/ui/app/components/app/transaction-activity-log/transaction-activity-log-icon/transaction-activity-log-icon.component.js
index 871716002..6124325be 100644
--- a/ui/app/components/app/transaction-activity-log/transaction-activity-log-icon/transaction-activity-log-icon.component.js
+++ b/ui/app/components/app/transaction-activity-log/transaction-activity-log-icon/transaction-activity-log-icon.component.js
@@ -40,15 +40,15 @@ export default class TransactionActivityLogIcon extends PureComponent {
return (
<div className={classnames('transaction-activity-log-icon', className)}>
- {
- imagePath && (
- <img
- src={imagePath}
- height={9}
- width={9}
- />
- )
- }
+ {
+ imagePath && (
+ <img
+ src={imagePath}
+ height={9}
+ width={9}
+ />
+ )
+ }
</div>
)
}
diff --git a/ui/app/components/app/transaction-list-item-details/transaction-list-item-details.component.js b/ui/app/components/app/transaction-list-item-details/transaction-list-item-details.component.js
index 21f14c045..d8dd965fc 100644
--- a/ui/app/components/app/transaction-list-item-details/transaction-list-item-details.component.js
+++ b/ui/app/components/app/transaction-list-item-details/transaction-list-item-details.component.js
@@ -166,7 +166,7 @@ export default class TransactionListItemDetails extends PureComponent {
onClick={this.handleEtherscanClick}
className="transaction-list-item-details__header-button"
disabled={!hash}
- >
+ >
<img src="/images/arrow-popout.svg" />
</Button>
</Tooltip>
diff --git a/ui/app/components/app/transaction-list/transaction-list.component.js b/ui/app/components/app/transaction-list/transaction-list.component.js
index d4232f448..3c096e3fd 100644
--- a/ui/app/components/app/transaction-list/transaction-list.component.js
+++ b/ui/app/components/app/transaction-list/transaction-list.component.js
@@ -75,8 +75,8 @@ export default class TransactionList extends PureComponent {
{
completedTransactions.length > 0
? completedTransactions.map((transactionGroup, index) => (
- this.renderTransaction(transactionGroup, index)
- ))
+ this.renderTransaction(transactionGroup, index)
+ ))
: this.renderEmpty()
}
</div>
diff --git a/ui/app/components/app/transaction-view-balance/transaction-view-balance.component.js b/ui/app/components/app/transaction-view-balance/transaction-view-balance.component.js
index 3f6abbb00..feb701dbe 100644
--- a/ui/app/components/app/transaction-view-balance/transaction-view-balance.component.js
+++ b/ui/app/components/app/transaction-view-balance/transaction-view-balance.component.js
@@ -43,38 +43,38 @@ export default class TransactionViewBalance extends PureComponent {
/>
</div>
) : (
- <Tooltip position="top" title={this.context.t('balanceOutdated')} disabled={!balanceIsCached}>
- <div className="transaction-view-balance__balance">
- <div className="transaction-view-balance__primary-container">
- <UserPreferencedCurrencyDisplay
- className={classnames('transaction-view-balance__primary-balance', {
- 'transaction-view-balance__cached-balance': balanceIsCached,
- })}
- value={balance}
- type={PRIMARY}
- ethNumberOfDecimals={4}
- hideTitle={true}
- />
- {
- balanceIsCached ? <span className="transaction-view-balance__cached-star">*</span> : null
- }
- </div>
- {
- showFiat && (
- <UserPreferencedCurrencyDisplay
- className={classnames({
- 'transaction-view-balance__cached-secondary-balance': balanceIsCached,
- 'transaction-view-balance__secondary-balance': !balanceIsCached,
- })}
- value={balance}
- type={SECONDARY}
- ethNumberOfDecimals={4}
- hideTitle={true}
- />
- )
- }
+ <Tooltip position="top" title={this.context.t('balanceOutdated')} disabled={!balanceIsCached}>
+ <div className="transaction-view-balance__balance">
+ <div className="transaction-view-balance__primary-container">
+ <UserPreferencedCurrencyDisplay
+ className={classnames('transaction-view-balance__primary-balance', {
+ 'transaction-view-balance__cached-balance': balanceIsCached,
+ })}
+ value={balance}
+ type={PRIMARY}
+ ethNumberOfDecimals={4}
+ hideTitle={true}
+ />
+ {
+ balanceIsCached ? <span className="transaction-view-balance__cached-star">*</span> : null
+ }
</div>
- </Tooltip>
+ {
+ showFiat && (
+ <UserPreferencedCurrencyDisplay
+ className={classnames({
+ 'transaction-view-balance__cached-secondary-balance': balanceIsCached,
+ 'transaction-view-balance__secondary-balance': !balanceIsCached,
+ })}
+ value={balance}
+ type={SECONDARY}
+ ethNumberOfDecimals={4}
+ hideTitle={true}
+ />
+ )
+ }
+ </div>
+ </Tooltip>
)
}
diff --git a/ui/app/components/ui/alert/index.js b/ui/app/components/ui/alert/index.js
index b1229f502..da2ca4b66 100644
--- a/ui/app/components/ui/alert/index.js
+++ b/ui/app/components/ui/alert/index.js
@@ -4,59 +4,59 @@ const h = require('react-hyperscript')
class Alert extends Component {
- constructor (props) {
- super(props)
-
- this.state = {
- visble: false,
- msg: false,
- className: '',
- }
- }
-
- componentWillReceiveProps (nextProps) {
- if (!this.props.visible && nextProps.visible) {
- this.animateIn(nextProps)
- } else if (this.props.visible && !nextProps.visible) {
- this.animateOut()
- }
- }
+ constructor (props) {
+ super(props)
- animateIn (props) {
- this.setState({
- msg: props.msg,
- visible: true,
- className: '.visible',
- })
+ this.state = {
+ visble: false,
+ msg: false,
+ className: '',
}
+ }
- animateOut () {
- this.setState({
- msg: null,
- className: '.hidden',
- })
-
- setTimeout(_ => {
- this.setState({visible: false})
- }, 500)
-
+ componentWillReceiveProps (nextProps) {
+ if (!this.props.visible && nextProps.visible) {
+ this.animateIn(nextProps)
+ } else if (this.props.visible && !nextProps.visible) {
+ this.animateOut()
}
-
- render () {
- if (this.state.visible) {
- return (
- h(`div.global-alert${this.state.className}`, {},
- h('a.msg', {}, this.state.msg)
- )
- )
- }
- return null
+ }
+
+ animateIn (props) {
+ this.setState({
+ msg: props.msg,
+ visible: true,
+ className: '.visible',
+ })
+ }
+
+ animateOut () {
+ this.setState({
+ msg: null,
+ className: '.hidden',
+ })
+
+ setTimeout(_ => {
+ this.setState({visible: false})
+ }, 500)
+
+ }
+
+ render () {
+ if (this.state.visible) {
+ return (
+ h(`div.global-alert${this.state.className}`, {},
+ h('a.msg', {}, this.state.msg)
+ )
+ )
}
+ return null
+ }
}
Alert.propTypes = {
- visible: PropTypes.bool.isRequired,
- msg: PropTypes.string,
+ visible: PropTypes.bool.isRequired,
+ msg: PropTypes.string,
}
module.exports = Alert
diff --git a/ui/app/components/ui/button-group/tests/button-group-component.test.js b/ui/app/components/ui/button-group/tests/button-group-component.test.js
index 0bece90d6..f2e512445 100644
--- a/ui/app/components/ui/button-group/tests/button-group-component.test.js
+++ b/ui/app/components/ui/button-group/tests/button-group-component.test.js
@@ -59,40 +59,40 @@ describe('ButtonGroup Component', function () {
describe('renderButtons', () => {
it('should render a button for each child', () => {
- const childButtons = wrapper.find('.button-group__button')
- assert.equal(childButtons.length, 3)
+ const childButtons = wrapper.find('.button-group__button')
+ assert.equal(childButtons.length, 3)
})
it('should render the correct button with an active state', () => {
- const childButtons = wrapper.find('.button-group__button')
- const activeChildButton = wrapper.find('.button-group__button--active')
- assert.deepEqual(childButtons.get(1), activeChildButton.get(0))
+ const childButtons = wrapper.find('.button-group__button')
+ const activeChildButton = wrapper.find('.button-group__button--active')
+ assert.deepEqual(childButtons.get(1), activeChildButton.get(0))
})
it('should call handleButtonClick and the respective button\'s onClick method when a button is clicked', () => {
- assert.equal(ButtonGroup.prototype.handleButtonClick.callCount, 0)
- assert.equal(childButtonSpies.onClick.callCount, 0)
- const childButtons = wrapper.find('.button-group__button')
- childButtons.at(0).props().onClick()
- childButtons.at(1).props().onClick()
- childButtons.at(2).props().onClick()
- assert.equal(ButtonGroup.prototype.handleButtonClick.callCount, 3)
- assert.equal(childButtonSpies.onClick.callCount, 3)
+ assert.equal(ButtonGroup.prototype.handleButtonClick.callCount, 0)
+ assert.equal(childButtonSpies.onClick.callCount, 0)
+ const childButtons = wrapper.find('.button-group__button')
+ childButtons.at(0).props().onClick()
+ childButtons.at(1).props().onClick()
+ childButtons.at(2).props().onClick()
+ assert.equal(ButtonGroup.prototype.handleButtonClick.callCount, 3)
+ assert.equal(childButtonSpies.onClick.callCount, 3)
})
it('should render all child buttons as disabled if props.disabled is true', () => {
- const childButtons = wrapper.find('.button-group__button')
- childButtons.forEach(button => {
- assert.equal(button.props().disabled, undefined)
- })
- wrapper.setProps({ disabled: true })
- const disabledChildButtons = wrapper.find('[disabled=true]')
- assert.equal(disabledChildButtons.length, 3)
+ const childButtons = wrapper.find('.button-group__button')
+ childButtons.forEach(button => {
+ assert.equal(button.props().disabled, undefined)
+ })
+ wrapper.setProps({ disabled: true })
+ const disabledChildButtons = wrapper.find('[disabled=true]')
+ assert.equal(disabledChildButtons.length, 3)
})
it('should render the children of the button', () => {
- const mockClass = wrapper.find('.mockClass')
- assert.equal(mockClass.length, 1)
+ const mockClass = wrapper.find('.mockClass')
+ assert.equal(mockClass.length, 1)
})
})
@@ -103,9 +103,9 @@ describe('ButtonGroup Component', function () {
})
it('should call renderButtons when rendering', () => {
- assert.equal(ButtonGroup.prototype.renderButtons.callCount, 1)
- wrapper.instance().render()
- assert.equal(ButtonGroup.prototype.renderButtons.callCount, 2)
+ assert.equal(ButtonGroup.prototype.renderButtons.callCount, 1)
+ wrapper.instance().render()
+ assert.equal(ButtonGroup.prototype.renderButtons.callCount, 2)
})
})
})
diff --git a/ui/app/components/ui/currency-input/currency-input.component.js b/ui/app/components/ui/currency-input/currency-input.component.js
index 1876c9591..f7db2b829 100644
--- a/ui/app/components/ui/currency-input/currency-input.component.js
+++ b/ui/app/components/ui/currency-input/currency-input.component.js
@@ -141,22 +141,22 @@ export default class CurrencyInput extends PureComponent {
const { decimalValue } = this.state
return (
- <UnitInput
- {...restProps}
- suffix={this.shouldUseFiat() ? fiatSuffix : nativeSuffix}
- onChange={this.handleChange}
- onBlur={this.handleBlur}
- value={decimalValue}
- maxModeOn={maxModeOn}
- actionComponent={(
- <div
- className="currency-input__swap-component"
- onClick={this.swap}
- />
- )}
- >
- { this.renderConversionComponent() }
- </UnitInput>
+ <UnitInput
+ {...restProps}
+ suffix={this.shouldUseFiat() ? fiatSuffix : nativeSuffix}
+ onChange={this.handleChange}
+ onBlur={this.handleBlur}
+ value={decimalValue}
+ maxModeOn={maxModeOn}
+ actionComponent={(
+ <div
+ className="currency-input__swap-component"
+ onClick={this.swap}
+ />
+ )}
+ >
+ { this.renderConversionComponent() }
+ </UnitInput>
)
}
}
diff --git a/ui/app/components/ui/sender-to-recipient/sender-to-recipient.component.js b/ui/app/components/ui/sender-to-recipient/sender-to-recipient.component.js
index 57b595d48..a98a94101 100644
--- a/ui/app/components/ui/sender-to-recipient/sender-to-recipient.component.js
+++ b/ui/app/components/ui/sender-to-recipient/sender-to-recipient.component.js
@@ -64,10 +64,10 @@ export default class SenderToRecipient extends PureComponent {
containerClassName="sender-to-recipient__tooltip-container"
onHidden={() => this.setState({ senderAddressCopied: false })}
>
- <div className="sender-to-recipient__name">
- { addressOnly ? `${t('from')}: ${checksummedSenderAddress}` : senderName }
- </div>
- </Tooltip>
+ <div className="sender-to-recipient__name">
+ { addressOnly ? `${t('from')}: ${checksummedSenderAddress}` : senderName }
+ </div>
+ </Tooltip>
)
}
diff --git a/ui/app/ducks/app/app.js b/ui/app/ducks/app/app.js
index 77d9116e5..10ed7d155 100644
--- a/ui/app/ducks/app/app.js
+++ b/ui/app/ducks/app/app.js
@@ -160,7 +160,7 @@ function reduceApp (state, action) {
transForward: false,
})
- // intialize
+ // intialize
case actions.SHOW_CREATE_VAULT:
return extend(appState, {
@@ -262,7 +262,7 @@ function reduceApp (state, action) {
transForward: true,
})
- case actions.CREATE_NEW_VAULT_IN_PROGRESS:
+ case actions.CREATE_NEW_VAULT_IN_PROGRESS:
return extend(appState, {
currentView: {
name: 'createVault',
@@ -310,7 +310,7 @@ function reduceApp (state, action) {
transForward: true,
})
- // unlock
+ // unlock
case actions.UNLOCK_METAMASK:
return extend(appState, {
@@ -347,7 +347,7 @@ function reduceApp (state, action) {
name: 'UnlockScreen',
},
})
- // reveal seed words
+ // reveal seed words
case actions.REVEAL_SEED_CONFIRMATION:
return extend(appState, {
@@ -358,7 +358,7 @@ function reduceApp (state, action) {
warning: null,
})
- // accounts
+ // accounts
case actions.SET_SELECTED_ACCOUNT:
return extend(appState, {
diff --git a/ui/app/ducks/gas/gas-duck.test.js b/ui/app/ducks/gas/gas-duck.test.js
index e97ef2d9f..82a91d5e7 100644
--- a/ui/app/ducks/gas/gas-duck.test.js
+++ b/ui/app/ducks/gas/gas-duck.test.js
@@ -465,7 +465,7 @@ describe('Gas Duck', () => {
initState,
{ basicPriceAndTimeEstimatesLastRetrieved: 1000000 }
),
- metamask: { provider: { type: 'ropsten' } },
+ metamask: { provider: { type: 'ropsten' } },
}))
assert.deepEqual(
mockDistpatch.getCall(0).args,
@@ -542,7 +542,7 @@ describe('Gas Duck', () => {
initState,
{}
),
- metamask: { provider: { type: 'ropsten' } },
+ metamask: { provider: { type: 'ropsten' } },
}))
assert.deepEqual(
mockDistpatch.getCall(0).args,
@@ -586,7 +586,7 @@ describe('Gas Duck', () => {
initState,
{}
),
- metamask: { provider: { type: 'ropsten' } },
+ metamask: { provider: { type: 'ropsten' } },
}))
assert.deepEqual(
mockDistpatch.getCall(0).args,
@@ -647,7 +647,7 @@ describe('Gas Duck', () => {
initState,
{ priceAndTimeEstimatesLastRetrieved: 1000000 }
),
- metamask: { provider: { type: 'ropsten' } },
+ metamask: { provider: { type: 'ropsten' } },
}))
assert.deepEqual(
mockDistpatch.getCall(0).args,
@@ -701,7 +701,7 @@ describe('Gas Duck', () => {
}],
}
),
- metamask: { provider: { type: 'ropsten' } },
+ metamask: { provider: { type: 'ropsten' } },
}))
assert.deepEqual(
mockDistpatch.getCall(0).args,
diff --git a/ui/app/ducks/gas/gas.duck.js b/ui/app/ducks/gas/gas.duck.js
index d57e825c4..e272455fc 100644
--- a/ui/app/ducks/gas/gas.duck.js
+++ b/ui/app/ducks/gas/gas.duck.js
@@ -372,13 +372,13 @@ export function fetchGasEstimates (blockTime) {
const promiseToFetch = Date.now() - timeLastRetrieved > 75000
? fetch('https://ethgasstation.info/json/predictTable.json', {
- 'headers': {},
- 'referrer': 'http://ethgasstation.info/json/',
- 'referrerPolicy': 'no-referrer-when-downgrade',
- 'body': null,
- 'method': 'GET',
- 'mode': 'cors'}
- )
+ 'headers': {},
+ 'referrer': 'http://ethgasstation.info/json/',
+ 'referrerPolicy': 'no-referrer-when-downgrade',
+ 'body': null,
+ 'method': 'GET',
+ 'mode': 'cors'}
+ )
.then(r => r.json())
.then(r => {
const estimatedPricesAndTimes = r.map(({ expectedTime, expectedWait, gasprice }) => ({ expectedTime, expectedWait, gasprice }))
@@ -429,14 +429,14 @@ export function fetchGasEstimates (blockTime) {
return timeMappedToSeconds
})
: Promise.resolve(priceAndTimeEstimates.length
- ? priceAndTimeEstimates
- : loadLocalStorageData('GAS_API_ESTIMATES')
- )
-
- return promiseToFetch.then(estimates => {
- dispatch(setPricesAndTimeEstimates(estimates))
- dispatch(gasEstimatesLoadingFinished())
- })
+ ? priceAndTimeEstimates
+ : loadLocalStorageData('GAS_API_ESTIMATES')
+ )
+
+ return promiseToFetch.then(estimates => {
+ dispatch(setPricesAndTimeEstimates(estimates))
+ dispatch(gasEstimatesLoadingFinished())
+ })
}
}
diff --git a/ui/app/ducks/metamask/metamask.js b/ui/app/ducks/metamask/metamask.js
index 64f983606..35de947b4 100644
--- a/ui/app/ducks/metamask/metamask.js
+++ b/ui/app/ducks/metamask/metamask.js
@@ -275,7 +275,7 @@ function reduceMetamask (state, action) {
},
})
- case actions.UPDATE_SEND_ENS_RESOLUTION:
+ case actions.UPDATE_SEND_ENS_RESOLUTION:
return extend(metamaskState, {
send: {
...metamaskState.send,
diff --git a/ui/app/pages/confirm-add-suggested-token/confirm-add-suggested-token.component.js b/ui/app/pages/confirm-add-suggested-token/confirm-add-suggested-token.component.js
index 9a118a815..04e9c8dcf 100644
--- a/ui/app/pages/confirm-add-suggested-token/confirm-add-suggested-token.component.js
+++ b/ui/app/pages/confirm-add-suggested-token/confirm-add-suggested-token.component.js
@@ -84,7 +84,7 @@ export default class ConfirmAddSuggestedToken extends Component {
</div>
</div>
)
- })
+ })
}
</div>
</div>
diff --git a/ui/app/pages/confirm-add-token/confirm-add-token.component.js b/ui/app/pages/confirm-add-token/confirm-add-token.component.js
index f0a19e8d9..d918d7e39 100644
--- a/ui/app/pages/confirm-add-token/confirm-add-token.component.js
+++ b/ui/app/pages/confirm-add-token/confirm-add-token.component.js
@@ -80,7 +80,7 @@ export default class ConfirmAddToken extends Component {
</div>
</div>
)
- })
+ })
}
</div>
</div>
diff --git a/ui/app/pages/create-account/connect-hardware/account-list.js b/ui/app/pages/create-account/connect-hardware/account-list.js
index 247c27a5d..71684783f 100644
--- a/ui/app/pages/create-account/connect-hardware/account-list.js
+++ b/ui/app/pages/create-account/connect-hardware/account-list.js
@@ -6,18 +6,18 @@ const Select = require('react-select').default
import Button from '../../../components/ui/button'
class AccountList extends Component {
- getHdPaths () {
- return [
- {
- label: `Ledger Live`,
- value: `m/44'/60'/0'/0/0`,
- },
- {
- label: `Legacy (MEW / MyCrypto)`,
- value: `m/44'/60'/0'`,
- },
- ]
- }
+ getHdPaths () {
+ return [
+ {
+ label: `Ledger Live`,
+ value: `m/44'/60'/0'/0/0`,
+ },
+ {
+ label: `Legacy (MEW / MyCrypto)`,
+ value: `m/44'/60'/0'`,
+ },
+ ]
+ }
goToNextPage = () => {
// If we have < 5 accounts, it's restricted by BIP-44
@@ -74,128 +74,128 @@ class AccountList extends Component {
}
renderAccounts () {
- return h('div.hw-account-list', [
- this.props.accounts.map((a, i) => {
-
- return h('div.hw-account-list__item', { key: a.address }, [
- h('div.hw-account-list__item__radio', [
- h('input', {
- type: 'radio',
- name: 'selectedAccount',
- id: `address-${i}`,
- value: a.index,
- onChange: (e) => this.props.onAccountChange(e.target.value),
- checked: this.props.selectedAccount === a.index.toString(),
- }),
- h(
- 'label.hw-account-list__item__label',
- {
- htmlFor: `address-${i}`,
- },
- [
- h('span.hw-account-list__item__index', a.index + 1),
- `${a.address.slice(0, 4)}...${a.address.slice(-4)}`,
- h('span.hw-account-list__item__balance', `${a.balance}`),
- ]),
+ return h('div.hw-account-list', [
+ this.props.accounts.map((a, i) => {
+
+ return h('div.hw-account-list__item', { key: a.address }, [
+ h('div.hw-account-list__item__radio', [
+ h('input', {
+ type: 'radio',
+ name: 'selectedAccount',
+ id: `address-${i}`,
+ value: a.index,
+ onChange: (e) => this.props.onAccountChange(e.target.value),
+ checked: this.props.selectedAccount === a.index.toString(),
+ }),
+ h(
+ 'label.hw-account-list__item__label',
+ {
+ htmlFor: `address-${i}`,
+ },
+ [
+ h('span.hw-account-list__item__index', a.index + 1),
+ `${a.address.slice(0, 4)}...${a.address.slice(-4)}`,
+ h('span.hw-account-list__item__balance', `${a.balance}`),
]),
- h(
- 'a.hw-account-list__item__link',
- {
- href: genAccountLink(a.address, this.props.network),
- target: '_blank',
- title: this.context.t('etherscanView'),
- },
- h('img', { src: 'images/popout.svg' })
- ),
- ])
- }),
- ])
+ ]),
+ h(
+ 'a.hw-account-list__item__link',
+ {
+ href: genAccountLink(a.address, this.props.network),
+ target: '_blank',
+ title: this.context.t('etherscanView'),
+ },
+ h('img', { src: 'images/popout.svg' })
+ ),
+ ])
+ }),
+ ])
}
- renderPagination () {
- return h('div.hw-list-pagination', [
- h(
- 'button.hw-list-pagination__button',
- {
- onClick: this.goToPreviousPage,
- },
- `< ${this.context.t('prev')}`
- ),
-
- h(
- 'button.hw-list-pagination__button',
- {
- onClick: this.goToNextPage,
- },
- `${this.context.t('next')} >`
- ),
- ])
- }
-
- renderButtons () {
- const disabled = this.props.selectedAccount === null
- const buttonProps = {}
- if (disabled) {
- buttonProps.disabled = true
+ renderPagination () {
+ return h('div.hw-list-pagination', [
+ h(
+ 'button.hw-list-pagination__button',
+ {
+ onClick: this.goToPreviousPage,
+ },
+ `< ${this.context.t('prev')}`
+ ),
+
+ h(
+ 'button.hw-list-pagination__button',
+ {
+ onClick: this.goToNextPage,
+ },
+ `${this.context.t('next')} >`
+ ),
+ ])
}
- return h('div.new-account-connect-form__buttons', {}, [
- h(Button, {
- type: 'default',
- large: true,
- className: 'new-account-connect-form__button',
- onClick: this.props.onCancel.bind(this),
- }, [this.context.t('cancel')]),
-
- h(Button, {
- type: 'primary',
- large: true,
- className: 'new-account-connect-form__button unlock',
- disabled,
- onClick: this.props.onUnlockAccount.bind(this, this.props.device),
- }, [this.context.t('unlock')]),
- ])
- }
+ renderButtons () {
+ const disabled = this.props.selectedAccount === null
+ const buttonProps = {}
+ if (disabled) {
+ buttonProps.disabled = true
+ }
- renderForgetDevice () {
- return h('div.hw-forget-device-container', {}, [
- h('a', {
- onClick: this.props.onForgetDevice.bind(this, this.props.device),
- }, this.context.t('forgetDevice')),
- ])
- }
+ return h('div.new-account-connect-form__buttons', {}, [
+ h(Button, {
+ type: 'default',
+ large: true,
+ className: 'new-account-connect-form__button',
+ onClick: this.props.onCancel.bind(this),
+ }, [this.context.t('cancel')]),
+
+ h(Button, {
+ type: 'primary',
+ large: true,
+ className: 'new-account-connect-form__button unlock',
+ disabled,
+ onClick: this.props.onUnlockAccount.bind(this, this.props.device),
+ }, [this.context.t('unlock')]),
+ ])
+ }
- render () {
- return h('div.new-account-connect-form.account-list', {}, [
+ renderForgetDevice () {
+ return h('div.hw-forget-device-container', {}, [
+ h('a', {
+ onClick: this.props.onForgetDevice.bind(this, this.props.device),
+ }, this.context.t('forgetDevice')),
+ ])
+ }
+
+ render () {
+ return h('div.new-account-connect-form.account-list', {}, [
this.renderHeader(),
this.renderAccounts(),
this.renderPagination(),
this.renderButtons(),
this.renderForgetDevice(),
- ])
- }
+ ])
+ }
}
AccountList.propTypes = {
- onPathChange: PropTypes.func.isRequired,
- selectedPath: PropTypes.string.isRequired,
- device: PropTypes.string.isRequired,
- accounts: PropTypes.array.isRequired,
- onAccountChange: PropTypes.func.isRequired,
- onForgetDevice: PropTypes.func.isRequired,
- getPage: PropTypes.func.isRequired,
- network: PropTypes.string,
- selectedAccount: PropTypes.string,
- history: PropTypes.object,
- onUnlockAccount: PropTypes.func,
- onCancel: PropTypes.func,
- onAccountRestriction: PropTypes.func,
+ onPathChange: PropTypes.func.isRequired,
+ selectedPath: PropTypes.string.isRequired,
+ device: PropTypes.string.isRequired,
+ accounts: PropTypes.array.isRequired,
+ onAccountChange: PropTypes.func.isRequired,
+ onForgetDevice: PropTypes.func.isRequired,
+ getPage: PropTypes.func.isRequired,
+ network: PropTypes.string,
+ selectedAccount: PropTypes.string,
+ history: PropTypes.object,
+ onUnlockAccount: PropTypes.func,
+ onCancel: PropTypes.func,
+ onAccountRestriction: PropTypes.func,
}
AccountList.contextTypes = {
- t: PropTypes.func,
+ t: PropTypes.func,
}
module.exports = AccountList
diff --git a/ui/app/pages/create-account/connect-hardware/connect-screen.js b/ui/app/pages/create-account/connect-hardware/connect-screen.js
index a3b8ad246..fe7c1e027 100644
--- a/ui/app/pages/create-account/connect-hardware/connect-screen.js
+++ b/ui/app/pages/create-account/connect-hardware/connect-screen.js
@@ -4,12 +4,12 @@ const h = require('react-hyperscript')
import Button from '../../../components/ui/button'
class ConnectScreen extends Component {
- constructor (props) {
- super(props)
- this.state = {
- selectedDevice: null,
- }
+ constructor (props) {
+ super(props)
+ this.state = {
+ selectedDevice: null,
}
+ }
connect = () => {
if (this.state.selectedDevice) {
@@ -19,23 +19,23 @@ class ConnectScreen extends Component {
}
renderConnectToTrezorButton () {
- return h(
- `button.hw-connect__btn${this.state.selectedDevice === 'trezor' ? '.selected' : ''}`,
- { onClick: _ => this.setState({selectedDevice: 'trezor'}) },
- h('img.hw-connect__btn__img', {
- src: 'images/trezor-logo.svg',
- })
- )
+ return h(
+ `button.hw-connect__btn${this.state.selectedDevice === 'trezor' ? '.selected' : ''}`,
+ { onClick: _ => this.setState({selectedDevice: 'trezor'}) },
+ h('img.hw-connect__btn__img', {
+ src: 'images/trezor-logo.svg',
+ })
+ )
}
renderConnectToLedgerButton () {
- return h(
- `button.hw-connect__btn${this.state.selectedDevice === 'ledger' ? '.selected' : ''}`,
- { onClick: _ => this.setState({selectedDevice: 'ledger'}) },
- h('img.hw-connect__btn__img', {
- src: 'images/ledger-logo.svg',
- })
- )
+ return h(
+ `button.hw-connect__btn${this.state.selectedDevice === 'ledger' ? '.selected' : ''}`,
+ { onClick: _ => this.setState({selectedDevice: 'ledger'}) },
+ h('img.hw-connect__btn__img', {
+ src: 'images/ledger-logo.svg',
+ })
+ )
}
renderButtons () {
@@ -57,30 +57,30 @@ class ConnectScreen extends Component {
}
renderUnsupportedBrowser () {
- return (
- h('div.new-account-connect-form.unsupported-browser', {}, [
- h('div.hw-connect', [
- h('h3.hw-connect__title', {}, this.context.t('browserNotSupported')),
- h('p.hw-connect__msg', {}, this.context.t('chromeRequiredForHardwareWallets')),
- ]),
- h(Button, {
- type: 'primary',
- large: true,
- onClick: () => global.platform.openWindow({
- url: 'https://google.com/chrome',
- }),
- }, this.context.t('downloadGoogleChrome')),
- ])
- )
+ return (
+ h('div.new-account-connect-form.unsupported-browser', {}, [
+ h('div.hw-connect', [
+ h('h3.hw-connect__title', {}, this.context.t('browserNotSupported')),
+ h('p.hw-connect__msg', {}, this.context.t('chromeRequiredForHardwareWallets')),
+ ]),
+ h(Button, {
+ type: 'primary',
+ large: true,
+ onClick: () => global.platform.openWindow({
+ url: 'https://google.com/chrome',
+ }),
+ }, this.context.t('downloadGoogleChrome')),
+ ])
+ )
}
renderHeader () {
- return (
- h('div.hw-connect__header', {}, [
- h('h3.hw-connect__header__title', {}, this.context.t(`hardwareWallets`)),
- h('p.hw-connect__header__msg', {}, this.context.t(`hardwareWalletsMsg`)),
- ])
- )
+ return (
+ h('div.hw-connect__header', {}, [
+ h('h3.hw-connect__header__title', {}, this.context.t(`hardwareWallets`)),
+ h('p.hw-connect__header__msg', {}, this.context.t(`hardwareWalletsMsg`)),
+ ])
+ )
}
getAffiliateLinks () {
@@ -96,10 +96,10 @@ class ConnectScreen extends Component {
}
renderTrezorAffiliateLink () {
- return h('div.hw-connect__get-hw', {}, [
- h('p.hw-connect__get-hw__msg', {}, this.context.t(`dontHaveAHardwareWallet`)),
- this.getAffiliateLinks(),
- ])
+ return h('div.hw-connect__get-hw', {}, [
+ h('p.hw-connect__get-hw__msg', {}, this.context.t(`dontHaveAHardwareWallet`)),
+ this.getAffiliateLinks(),
+ ])
}
@@ -108,89 +108,89 @@ class ConnectScreen extends Component {
}
renderLearnMore () {
- return (
- h('p.hw-connect__learn-more', {
- onClick: this.scrollToTutorial,
- }, [
- this.context.t('learnMore'),
- h('img.hw-connect__learn-more__arrow', { src: 'images/caret-right.svg'}),
- ])
- )
+ return (
+ h('p.hw-connect__learn-more', {
+ onClick: this.scrollToTutorial,
+ }, [
+ this.context.t('learnMore'),
+ h('img.hw-connect__learn-more__arrow', { src: 'images/caret-right.svg'}),
+ ])
+ )
}
renderTutorialSteps () {
- const steps = [
- {
- asset: 'hardware-wallet-step-1',
- dimensions: {width: '225px', height: '75px'},
- },
- {
- asset: 'hardware-wallet-step-2',
- dimensions: {width: '300px', height: '100px'},
- },
- {
- asset: 'hardware-wallet-step-3',
- dimensions: {width: '120px', height: '90px'},
- },
- ]
-
- return h('.hw-tutorial', {
- ref: node => { this.referenceNode = node },
+ const steps = [
+ {
+ asset: 'hardware-wallet-step-1',
+ dimensions: {width: '225px', height: '75px'},
+ },
+ {
+ asset: 'hardware-wallet-step-2',
+ dimensions: {width: '300px', height: '100px'},
},
- steps.map((step, i) => (
- h('div.hw-connect', {}, [
- h('h3.hw-connect__title', {}, this.context.t(`step${i + 1}HardwareWallet`)),
- h('p.hw-connect__msg', {}, this.context.t(`step${i + 1}HardwareWalletMsg`)),
- h('img.hw-connect__step-asset', { src: `images/${step.asset}.svg`, ...step.dimensions }),
- ])
- ))
- )
+ {
+ asset: 'hardware-wallet-step-3',
+ dimensions: {width: '120px', height: '90px'},
+ },
+ ]
+
+ return h('.hw-tutorial', {
+ ref: node => { this.referenceNode = node },
+ },
+ steps.map((step, i) => (
+ h('div.hw-connect', {}, [
+ h('h3.hw-connect__title', {}, this.context.t(`step${i + 1}HardwareWallet`)),
+ h('p.hw-connect__msg', {}, this.context.t(`step${i + 1}HardwareWalletMsg`)),
+ h('img.hw-connect__step-asset', { src: `images/${step.asset}.svg`, ...step.dimensions }),
+ ])
+ ))
+ )
}
renderFooter () {
- return (
- h('div.hw-connect__footer', {}, [
- h('h3.hw-connect__footer__title', {}, this.context.t(`readyToConnect`)),
- this.renderButtons(),
- h('p.hw-connect__footer__msg', {}, [
- this.context.t(`havingTroubleConnecting`),
- h('a.hw-connect__footer__link', {
- href: 'https://support.metamask.io/',
- target: '_blank',
- }, this.context.t('getHelp')),
- ]),
- ])
- )
+ return (
+ h('div.hw-connect__footer', {}, [
+ h('h3.hw-connect__footer__title', {}, this.context.t(`readyToConnect`)),
+ this.renderButtons(),
+ h('p.hw-connect__footer__msg', {}, [
+ this.context.t(`havingTroubleConnecting`),
+ h('a.hw-connect__footer__link', {
+ href: 'https://support.metamask.io/',
+ target: '_blank',
+ }, this.context.t('getHelp')),
+ ]),
+ ])
+ )
}
renderConnectScreen () {
- return (
- h('div.new-account-connect-form', {}, [
- this.renderHeader(),
- this.renderButtons(),
- this.renderTrezorAffiliateLink(),
- this.renderLearnMore(),
- this.renderTutorialSteps(),
- this.renderFooter(),
- ])
- )
+ return (
+ h('div.new-account-connect-form', {}, [
+ this.renderHeader(),
+ this.renderButtons(),
+ this.renderTrezorAffiliateLink(),
+ this.renderLearnMore(),
+ this.renderTutorialSteps(),
+ this.renderFooter(),
+ ])
+ )
}
render () {
- if (this.props.browserSupported) {
- return this.renderConnectScreen()
- }
- return this.renderUnsupportedBrowser()
+ if (this.props.browserSupported) {
+ return this.renderConnectScreen()
+ }
+ return this.renderUnsupportedBrowser()
}
}
ConnectScreen.propTypes = {
- connectToHardwareWallet: PropTypes.func.isRequired,
- browserSupported: PropTypes.bool.isRequired,
+ connectToHardwareWallet: PropTypes.func.isRequired,
+ browserSupported: PropTypes.bool.isRequired,
}
ConnectScreen.contextTypes = {
- t: PropTypes.func,
+ t: PropTypes.func,
}
module.exports = ConnectScreen
diff --git a/ui/app/pages/create-account/connect-hardware/index.js b/ui/app/pages/create-account/connect-hardware/index.js
index 80a160205..66851c780 100644
--- a/ui/app/pages/create-account/connect-hardware/index.js
+++ b/ui/app/pages/create-account/connect-hardware/index.js
@@ -126,16 +126,16 @@ class ConnectHardwareForm extends Component {
onForgetDevice = (device) => {
this.props.forgetDevice(device)
- .then(_ => {
- this.setState({
- error: null,
- selectedAccount: null,
- accounts: [],
- unlocked: false,
+ .then(_ => {
+ this.setState({
+ error: null,
+ selectedAccount: null,
+ accounts: [],
+ unlocked: false,
+ })
+ }).catch(e => {
+ this.setState({ error: e.toString() })
})
- }).catch(e => {
- this.setState({ error: e.toString() })
- })
}
onUnlockAccount = (device) => {
@@ -145,28 +145,28 @@ class ConnectHardwareForm extends Component {
}
this.props.unlockHardwareWalletAccount(this.state.selectedAccount, device)
- .then(_ => {
- this.context.metricsEvent({
- eventOpts: {
- category: 'Accounts',
- action: 'Connected Hardware Wallet',
- name: 'Connected Account with: ' + device,
- },
- })
- this.props.history.push(DEFAULT_ROUTE)
- }).catch(e => {
- this.context.metricsEvent({
- eventOpts: {
- category: 'Accounts',
- action: 'Connected Hardware Wallet',
- name: 'Error connecting hardware wallet',
- },
- customVariables: {
- error: e.toString(),
- },
+ .then(_ => {
+ this.context.metricsEvent({
+ eventOpts: {
+ category: 'Accounts',
+ action: 'Connected Hardware Wallet',
+ name: 'Connected Account with: ' + device,
+ },
+ })
+ this.props.history.push(DEFAULT_ROUTE)
+ }).catch(e => {
+ this.context.metricsEvent({
+ eventOpts: {
+ category: 'Accounts',
+ action: 'Connected Hardware Wallet',
+ name: 'Error connecting hardware wallet',
+ },
+ customVariables: {
+ error: e.toString(),
+ },
+ })
+ this.setState({ error: e.toString() })
})
- this.setState({ error: e.toString() })
- })
}
onCancel = () => {
diff --git a/ui/app/pages/first-time-flow/create-password/import-with-seed-phrase/import-with-seed-phrase.component.js b/ui/app/pages/first-time-flow/create-password/import-with-seed-phrase/import-with-seed-phrase.component.js
index a2fb5a3bf..a5cf0f752 100644
--- a/ui/app/pages/first-time-flow/create-password/import-with-seed-phrase/import-with-seed-phrase.component.js
+++ b/ui/app/pages/first-time-flow/create-password/import-with-seed-phrase/import-with-seed-phrase.component.js
@@ -174,7 +174,7 @@ export default class ImportWithSeedPhrase extends PureComponent {
})
this.setState((prevState) => ({
- termsChecked: !prevState.termsChecked,
+ termsChecked: !prevState.termsChecked,
}))
}
diff --git a/ui/app/pages/first-time-flow/metametrics-opt-in/metametrics-opt-in.component.js b/ui/app/pages/first-time-flow/metametrics-opt-in/metametrics-opt-in.component.js
index e4d6afb76..bb187d634 100644
--- a/ui/app/pages/first-time-flow/metametrics-opt-in/metametrics-opt-in.component.js
+++ b/ui/app/pages/first-time-flow/metametrics-opt-in/metametrics-opt-in.component.js
@@ -102,7 +102,7 @@ export default class MetaMetricsOptIn extends Component {
.then(() => {
history.push(nextRoute)
})
- })
+ })
}}
cancelText={'No Thanks'}
hideCancel={false}
@@ -135,7 +135,7 @@ export default class MetaMetricsOptIn extends Component {
.then(() => {
history.push(nextRoute)
})
- })
+ })
}}
submitText={'I agree'}
submitButtonType={'primary'}
diff --git a/ui/app/pages/first-time-flow/select-action/select-action.component.js b/ui/app/pages/first-time-flow/select-action/select-action.component.js
index 9e7b84e93..5379952f1 100644
--- a/ui/app/pages/first-time-flow/select-action/select-action.component.js
+++ b/ui/app/pages/first-time-flow/select-action/select-action.component.js
@@ -40,7 +40,7 @@ export default class SelectAction extends PureComponent {
const { t } = this.context
return (
- <div className="select-action">
+ <div className="select-action">
<MetaFoxLogo />
<div className="select-action__wrapper">
@@ -95,7 +95,7 @@ export default class SelectAction extends PureComponent {
</div>
</div>
- </div>
+ </div>
)
}
}
diff --git a/ui/app/pages/home/home.component.js b/ui/app/pages/home/home.component.js
index 01bec7db6..a3b486c57 100644
--- a/ui/app/pages/home/home.component.js
+++ b/ui/app/pages/home/home.component.js
@@ -40,7 +40,7 @@ export default class Home extends PureComponent {
// suggested new tokens
if (Object.keys(suggestedTokens).length > 0) {
- history.push(CONFIRM_ADD_SUGGESTED_TOKEN_ROUTE)
+ history.push(CONFIRM_ADD_SUGGESTED_TOKEN_ROUTE)
}
}
diff --git a/ui/app/pages/mobile-sync/index.js b/ui/app/pages/mobile-sync/index.js
index a8de4fce9..7fc3b540b 100644
--- a/ui/app/pages/mobile-sync/index.js
+++ b/ui/app/pages/mobile-sync/index.js
@@ -100,15 +100,15 @@ class MobileSyncPage extends Component {
}
if (message.event === 'start-sync') {
- this.startSyncing()
+ this.startSyncing()
} else if (message.event === 'connection-info') {
- this.handle && clearTimeout(this.handle)
- this.disconnectWebsockets()
- this.initWithCipherKeyAndChannelName(message.cipher, message.channel)
- this.initWebsockets()
+ this.handle && clearTimeout(this.handle)
+ this.disconnectWebsockets()
+ this.initWithCipherKeyAndChannelName(message.cipher, message.channel)
+ this.initWebsockets()
} else if (message.event === 'end-sync') {
- this.disconnectWebsockets()
- this.setState({syncing: false, completed: true})
+ this.disconnectWebsockets()
+ this.setState({syncing: false, completed: true})
}
},
})
@@ -126,10 +126,10 @@ class MobileSyncPage extends Component {
}
}
- // Calculating a PubNub Message Payload Size.
+ // Calculating a PubNub Message Payload Size.
calculatePayloadSize (channel, message) {
return encodeURIComponent(
- channel + JSON.stringify(message)
+ channel + JSON.stringify(message)
).length + 100
}
@@ -153,14 +153,14 @@ class MobileSyncPage extends Component {
channel: this.channelName,
sendByPost: false, // true to send via post
storeInHistory: false,
- },
- (status, response) => {
- if (!status.error) {
- resolve()
- } else {
- reject(response)
- }
- })
+ },
+ (status, response) => {
+ if (!status.error) {
+ resolve()
+ } else {
+ reject(response)
+ }
+ })
})
}
@@ -199,16 +199,16 @@ class MobileSyncPage extends Component {
sendMessage (data, pkg, count) {
return new Promise((resolve, reject) => {
this.pubnub.publish(
- {
- message: {
- event: 'syncing-data',
- data,
- totalPkg: count,
- currentPkg: pkg,
- },
- channel: this.channelName,
- sendByPost: false, // true to send via post
- storeInHistory: false,
+ {
+ message: {
+ event: 'syncing-data',
+ data,
+ totalPkg: count,
+ currentPkg: pkg,
+ },
+ channel: this.channelName,
+ sendByPost: false, // true to send via post
+ storeInHistory: false,
},
(status, response) => {
if (!status.error) {
@@ -229,7 +229,7 @@ class MobileSyncPage extends Component {
renderWarning (text) {
return (
h('.page-container__warning-container', [
- h('.page-container__warning-message', [
+ h('.page-container__warning-message', [
h('div', [text]),
]),
])
@@ -245,12 +245,12 @@ class MobileSyncPage extends Component {
if (this.state.completed) {
return h('div.reveal-seed__content', {},
- h('label.reveal-seed__label', {
- style: {
- width: '100%',
- textAlign: 'center',
- },
- }, t('syncWithMobileComplete')),
+ h('label.reveal-seed__label', {
+ style: {
+ width: '100%',
+ textAlign: 'center',
+ },
+ }, t('syncWithMobileComplete')),
)
}
@@ -303,8 +303,8 @@ class MobileSyncPage extends Component {
h('div', [
h('label.reveal-seed__label', {
style: {
- width: '100%',
- textAlign: 'center',
+ width: '100%',
+ textAlign: 'center',
},
}, t('syncWithMobileScanThisCode')),
h('.div.qr-wrapper', {
@@ -370,7 +370,7 @@ class MobileSyncPage extends Component {
this.state.screen === PASSWORD_PROMPT_SCREEN ? h('.page-container__subtitle', this.context.t('syncWithMobileDescNewUsers')) : null,
]),
h('.page-container__content', [
- this.renderContent(),
+ this.renderContent(),
]),
this.renderFooter(),
])
diff --git a/ui/app/pages/routes/index.js b/ui/app/pages/routes/index.js
index 0f4737f22..2f7caf3bf 100644
--- a/ui/app/pages/routes/index.js
+++ b/ui/app/pages/routes/index.js
@@ -194,16 +194,16 @@ class Routes extends Component {
const { transaction: sidebarTransaction } = props || {}
const sidebarOnOverlayClose = sidebarType === WALLET_VIEW_SIDEBAR
- ? () => {
- this.context.metricsEvent({
- eventOpts: {
- category: 'Navigation',
- action: 'Wallet Sidebar',
- name: 'Closed Sidebare Via Overlay',
- },
- })
- }
- : null
+ ? () => {
+ this.context.metricsEvent({
+ eventOpts: {
+ category: 'Navigation',
+ action: 'Wallet Sidebar',
+ name: 'Closed Sidebare Via Overlay',
+ },
+ })
+ }
+ : null
return (
<div
diff --git a/ui/app/pages/send/account-list-item/account-list-item.container.js b/ui/app/pages/send/account-list-item/account-list-item.container.js
index 21f800306..3fadec4f8 100644
--- a/ui/app/pages/send/account-list-item/account-list-item.container.js
+++ b/ui/app/pages/send/account-list-item/account-list-item.container.js
@@ -1,8 +1,8 @@
import { connect } from 'react-redux'
import {
- getConversionRate,
- getCurrentCurrency,
- getNativeCurrency,
+ getConversionRate,
+ getCurrentCurrency,
+ getNativeCurrency,
} from '../send.selectors.js'
import {
getIsMainnet,
diff --git a/ui/app/pages/send/send-content/add-recipient/add-recipient.selectors.js b/ui/app/pages/send/send-content/add-recipient/add-recipient.selectors.js
index a6160d335..a39db7813 100644
--- a/ui/app/pages/send/send-content/add-recipient/add-recipient.selectors.js
+++ b/ui/app/pages/send/send-content/add-recipient/add-recipient.selectors.js
@@ -12,7 +12,7 @@ function getToDropdownOpen (state) {
}
function sendToIsInError (state) {
- return Boolean(state.send.errors.to)
+ return Boolean(state.send.errors.to)
}
function sendToIsInWarning (state) {
diff --git a/ui/app/pages/send/send-content/send-amount-row/amount-max-button/amount-max-button.component.js b/ui/app/pages/send/send-content/send-amount-row/amount-max-button/amount-max-button.component.js
index 7901ccef6..05545669a 100644
--- a/ui/app/pages/send/send-content/send-amount-row/amount-max-button/amount-max-button.component.js
+++ b/ui/app/pages/send/send-content/send-amount-row/amount-max-button/amount-max-button.component.js
@@ -64,12 +64,12 @@ export default class AmountMaxButton extends Component {
const { maxModeOn, buttonDataLoading, inError } = this.props
return (
- <div className={'send-v2__amount-max'} onClick={buttonDataLoading || inError ? null : this.onMaxClick}>
- <input type="checkbox" checked={maxModeOn} />
- <div className={classnames('send-v2__amount-max__button', { 'send-v2__amount-max__button__disabled': buttonDataLoading || inError })}>
- {this.context.t('max')}
- </div>
- </div>
- )
+ <div className={'send-v2__amount-max'} onClick={buttonDataLoading || inError ? null : this.onMaxClick}>
+ <input type="checkbox" checked={maxModeOn} />
+ <div className={classnames('send-v2__amount-max__button', { 'send-v2__amount-max__button__disabled': buttonDataLoading || inError })}>
+ {this.context.t('max')}
+ </div>
+ </div>
+ )
}
}
diff --git a/ui/app/pages/send/send-content/send-gas-row/gas-fee-display/gas-fee-display.component.js b/ui/app/pages/send/send-content/send-gas-row/gas-fee-display/gas-fee-display.component.js
index 3f5587318..37af59e29 100644
--- a/ui/app/pages/send/send-content/send-gas-row/gas-fee-display/gas-fee-display.component.js
+++ b/ui/app/pages/send/send-content/send-gas-row/gas-fee-display/gas-fee-display.component.js
@@ -39,11 +39,11 @@ export default class GasFeeDisplay extends Component {
)
: gasLoadingError
? <div className="currency-display.currency-display--message">
- {this.context.t('setGasPrice')}
- </div>
+ {this.context.t('setGasPrice')}
+ </div>
: <div className="currency-display">
- {this.context.t('loading')}
- </div>
+ {this.context.t('loading')}
+ </div>
}
<button
className="gas-fee-reset"
diff --git a/ui/app/pages/send/send-content/send-gas-row/send-gas-row.component.js b/ui/app/pages/send/send-content/send-gas-row/send-gas-row.component.js
index 4c09ed564..ed064695e 100644
--- a/ui/app/pages/send/send-content/send-gas-row/send-gas-row.component.js
+++ b/ui/app/pages/send/send-content/send-gas-row/send-gas-row.component.js
@@ -90,26 +90,26 @@ export default class SendGasRow extends Component {
const { metricsEvent } = this.context
const gasPriceButtonGroup = <div>
- <GasPriceButtonGroup
- className="gas-price-button-group--small"
- showCheck={false}
- {...gasPriceButtonGroupProps}
- handleGasPriceSelection={async (...args) => {
- metricsEvent({
- eventOpts: {
- category: 'Transactions',
- action: 'Edit Screen',
- name: 'Changed Gas Button',
- },
- })
- await gasPriceButtonGroupProps.handleGasPriceSelection(...args)
- if (maxModeOn) {
- this.setMaxAmount()
- }
- }}
- />
- { this.renderAdvancedOptionsButton() }
- </div>
+ <GasPriceButtonGroup
+ className="gas-price-button-group--small"
+ showCheck={false}
+ {...gasPriceButtonGroupProps}
+ handleGasPriceSelection={async (...args) => {
+ metricsEvent({
+ eventOpts: {
+ category: 'Transactions',
+ action: 'Edit Screen',
+ name: 'Changed Gas Button',
+ },
+ })
+ await gasPriceButtonGroupProps.handleGasPriceSelection(...args)
+ if (maxModeOn) {
+ this.setMaxAmount()
+ }
+ }}
+ />
+ { this.renderAdvancedOptionsButton() }
+ </div>
const gasFeeDisplay = <GasFeeDisplay
conversionRate={conversionRate}
convertedCurrency={convertedCurrency}
@@ -134,7 +134,7 @@ export default class SendGasRow extends Component {
isSpeedUp={false}
/>
{ this.renderAdvancedOptionsButton() }
- </div>
+ </div>
if (advancedInlineGasShown) {
return advancedGasInputs
diff --git a/ui/app/pages/send/send-content/send-row-wrapper/send-row-warning-message/send-row-warning-message.component.js b/ui/app/pages/send/send-content/send-row-wrapper/send-row-warning-message/send-row-warning-message.component.js
index f1caa8f99..6ddddbb3d 100644
--- a/ui/app/pages/send/send-content/send-row-wrapper/send-row-warning-message/send-row-warning-message.component.js
+++ b/ui/app/pages/send/send-content/send-row-wrapper/send-row-warning-message/send-row-warning-message.component.js
@@ -18,7 +18,7 @@ export default class SendRowWarningMessage extends Component {
const warningMessage = warningType in warnings && warnings[warningType]
return (
- warningMessage
+ warningMessage
? <div className="send-v2__warning">{this.context.t(warningMessage)}</div>
: null
)
diff --git a/ui/app/pages/send/send-content/send-row-wrapper/tests/send-row-wrapper-component.test.js b/ui/app/pages/send/send-content/send-row-wrapper/tests/send-row-wrapper-component.test.js
index 30280e1d0..533ca2ebe 100644
--- a/ui/app/pages/send/send-content/send-row-wrapper/tests/send-row-wrapper-component.test.js
+++ b/ui/app/pages/send/send-content/send-row-wrapper/tests/send-row-wrapper-component.test.js
@@ -54,25 +54,25 @@ describe('SendContent Component', function () {
it('should render its second child as a child of the send-v2__form-field, if it has two children', () => {
wrapper = shallow(<SendRowWrapper
- errorType={'mockErrorType'}
- label={'mockLabel'}
- showError={false}
- >
- <span>Mock Custom Label Content</span>
- <span>Mock Form Field</span>
- </SendRowWrapper>)
+ errorType={'mockErrorType'}
+ label={'mockLabel'}
+ showError={false}
+ >
+ <span>Mock Custom Label Content</span>
+ <span>Mock Form Field</span>
+ </SendRowWrapper>)
assert.equal(wrapper.find('.send-v2__form-row > .send-v2__form-field').childAt(0).text(), 'Mock Form Field')
})
it('should render its first child as the last child of the send-v2__form-label, if it has two children', () => {
wrapper = shallow(<SendRowWrapper
- errorType={'mockErrorType'}
- label={'mockLabel'}
- showError={false}
- >
- <span>Mock Custom Label Content</span>
- <span>Mock Form Field</span>
- </SendRowWrapper>)
+ errorType={'mockErrorType'}
+ label={'mockLabel'}
+ showError={false}
+ >
+ <span>Mock Custom Label Content</span>
+ <span>Mock Form Field</span>
+ </SendRowWrapper>)
assert.equal(wrapper.find('.send-v2__form-row > .send-v2__form-label').childAt(1).text(), 'Mock Custom Label Content')
})
})
diff --git a/ui/app/pages/send/send-header/send-header.selectors.js b/ui/app/pages/send/send-header/send-header.selectors.js
index 2c0a907d8..01b90409b 100644
--- a/ui/app/pages/send/send-header/send-header.selectors.js
+++ b/ui/app/pages/send/send-header/send-header.selectors.js
@@ -29,14 +29,14 @@ function getTitleKey (state) {
}
function getSubtitleParams (state) {
- const isEditing = Boolean(getSendEditingTransactionId(state))
- const token = getSelectedToken(state)
+ const isEditing = Boolean(getSendEditingTransactionId(state))
+ const token = getSelectedToken(state)
- if (isEditing) {
- return [ 'editingTransaction' ]
- } else if (token) {
- return [ 'onlySendTokensToAccountAddress', [ token.symbol ] ]
- } else {
- return [ 'onlySendToEtherAddress' ]
- }
+ if (isEditing) {
+ return [ 'editingTransaction' ]
+ } else if (token) {
+ return [ 'onlySendTokensToAccountAddress', [ token.symbol ] ]
+ } else {
+ return [ 'onlySendToEtherAddress' ]
+ }
}
diff --git a/ui/app/pages/send/send.utils.js b/ui/app/pages/send/send.utils.js
index daf61bc1b..1f9bc202a 100644
--- a/ui/app/pages/send/send.utils.js
+++ b/ui/app/pages/send/send.utils.js
@@ -319,7 +319,7 @@ function estimateGasPriceFromRecentBlocks (recentBlocks) {
return parseInt(next, 16) < parseInt(currentLowest, 16) ? next : currentLowest
})
})
- .sort((a, b) => parseInt(a, 16) > parseInt(b, 16) ? 1 : -1)
+ .sort((a, b) => parseInt(a, 16) > parseInt(b, 16) ? 1 : -1)
return lowestPrices[Math.floor(lowestPrices.length / 2)]
}
diff --git a/ui/app/pages/send/tests/send-utils.test.js b/ui/app/pages/send/tests/send-utils.test.js
index bf9cba14a..4930b7ee1 100644
--- a/ui/app/pages/send/tests/send-utils.test.js
+++ b/ui/app/pages/send/tests/send-utils.test.js
@@ -72,9 +72,9 @@ describe('send utils', () => {
call_,
[12, 15, {
toNumericBase: 'hex',
- multiplicandBase: 16,
- multiplierBase: 16,
- } ]
+ multiplicandBase: 16,
+ multiplierBase: 16,
+ } ]
)
})
})
diff --git a/ui/app/pages/send/to-autocomplete.component.js b/ui/app/pages/send/to-autocomplete.component.js
index 183967c58..c65f93c07 100644
--- a/ui/app/pages/send/to-autocomplete.component.js
+++ b/ui/app/pages/send/to-autocomplete.component.js
@@ -27,10 +27,10 @@ export default class ToAutoComplete extends Component {
getListItemIcon (listItemAddress, toAddress) {
return toAddress && listItemAddress === toAddress
? <i className={'fa fa-check fa-lg'}
- style={{
- color: '#02c9b1',
- }}
- />
+ style={{
+ color: '#02c9b1',
+ }}
+ />
: null
}
@@ -121,8 +121,8 @@ export default class ToAutoComplete extends Component {
/>
{
to
- ? null
- : <i className={'fa fa-caret-down fa-lg send-v2__to-autocomplete__down-caret'}
+ ? null
+ : <i className={'fa fa-caret-down fa-lg send-v2__to-autocomplete__down-caret'}
onClick={() => this.handleInputEvent()}
style={{
style: {color: '#dedede'},
@@ -131,8 +131,8 @@ export default class ToAutoComplete extends Component {
}
{
dropdownOpen
- ? this.renderDropdown()
- : null
+ ? this.renderDropdown()
+ : null
}
</div>
)
diff --git a/ui/app/pages/settings/advanced-tab/advanced-tab.component.js b/ui/app/pages/settings/advanced-tab/advanced-tab.component.js
index 105cd89f9..d92b14501 100644
--- a/ui/app/pages/settings/advanced-tab/advanced-tab.component.js
+++ b/ui/app/pages/settings/advanced-tab/advanced-tab.component.js
@@ -33,7 +33,7 @@ export default class AdvancedTab extends PureComponent {
renderMobileSync () {
const { t } = this.context
const { history } = this.props
-//
+ //
return (
<div className="settings-page__content-row">
<div className="settings-page__content-item">
diff --git a/ui/app/pages/settings/advanced-tab/tests/advanced-tab-container.test.js b/ui/app/pages/settings/advanced-tab/tests/advanced-tab-container.test.js
index 62122073d..3f54350c5 100644
--- a/ui/app/pages/settings/advanced-tab/tests/advanced-tab-container.test.js
+++ b/ui/app/pages/settings/advanced-tab/tests/advanced-tab-container.test.js
@@ -35,12 +35,12 @@ describe('AdvancedTab Container', () => {
it('should map dispatch to props correctly', () => {
const props = mapDispatchToProps(() => 'mockDispatch')
- assert.ok(typeof props.setHexDataFeatureFlag === 'function')
- assert.ok(typeof props.setRpcTarget === 'function')
- assert.ok(typeof props.displayWarning === 'function')
- assert.ok(typeof props.showResetAccountConfirmationModal === 'function')
- assert.ok(typeof props.setAdvancedInlineGasFeatureFlag === 'function')
- assert.ok(typeof props.setShowFiatConversionOnTestnetsPreference === 'function')
- assert.ok(typeof props.setAutoLogoutTimeLimit === 'function')
+ assert.ok(typeof props.setHexDataFeatureFlag === 'function')
+ assert.ok(typeof props.setRpcTarget === 'function')
+ assert.ok(typeof props.displayWarning === 'function')
+ assert.ok(typeof props.showResetAccountConfirmationModal === 'function')
+ assert.ok(typeof props.setAdvancedInlineGasFeatureFlag === 'function')
+ assert.ok(typeof props.setShowFiatConversionOnTestnetsPreference === 'function')
+ assert.ok(typeof props.setAutoLogoutTimeLimit === 'function')
})
})
diff --git a/ui/app/pages/settings/contact-list-tab/add-contact/add-contact.component.js b/ui/app/pages/settings/contact-list-tab/add-contact/add-contact.component.js
index 871b2128b..f8c079fc3 100644
--- a/ui/app/pages/settings/contact-list-tab/add-contact/add-contact.component.js
+++ b/ui/app/pages/settings/contact-list-tab/add-contact/add-contact.component.js
@@ -84,15 +84,15 @@ export default class AddContact extends PureComponent {
return (
<div className="settings-page__content-row address-book__add-contact">
{this.state.ensAddress && <div className="address-book__view-contact__group">
- <Identicon address={this.state.ensAddress} diameter={60} />
- <div className="address-book__view-contact__group__value">
- { this.state.ensAddress }
- </div>
+ <Identicon address={this.state.ensAddress} diameter={60} />
+ <div className="address-book__view-contact__group__value">
+ { this.state.ensAddress }
+ </div>
</div>}
<div className="address-book__add-contact__content">
- <div className="address-book__view-contact__group">
+ <div className="address-book__view-contact__group">
<div className="address-book__view-contact__group__label">
- { t('userName') }
+ { t('userName') }
</div>
<TextField
type="text"
diff --git a/ui/app/pages/settings/contact-list-tab/edit-contact/edit-contact.component.js b/ui/app/pages/settings/contact-list-tab/edit-contact/edit-contact.component.js
index e9c2fed6f..4852bbc6a 100644
--- a/ui/app/pages/settings/contact-list-tab/edit-contact/edit-contact.component.js
+++ b/ui/app/pages/settings/contact-list-tab/edit-contact/edit-contact.component.js
@@ -31,7 +31,7 @@ export default class EditContact extends PureComponent {
error: '',
}
- render () {
+ render () {
const { t } = this.context
const { history, name, addToAddressBook, removeFromAddressBook, address, memo, viewRoute, listRoute, setAccountLabel } = this.props
@@ -51,9 +51,9 @@ export default class EditContact extends PureComponent {
</Button>
</div>
<div className="address-book__edit-contact__content">
- <div className="address-book__view-contact__group">
+ <div className="address-book__view-contact__group">
<div className="address-book__view-contact__group__label">
- { t('userName') }
+ { t('userName') }
</div>
<TextField
type="text"
diff --git a/ui/app/pages/settings/contact-list-tab/view-contact/view-contact.component.js b/ui/app/pages/settings/contact-list-tab/view-contact/view-contact.component.js
index 4f37b853b..d4fe045eb 100644
--- a/ui/app/pages/settings/contact-list-tab/view-contact/view-contact.component.js
+++ b/ui/app/pages/settings/contact-list-tab/view-contact/view-contact.component.js
@@ -25,7 +25,7 @@ export default class ViewContact extends PureComponent {
editRoute: PropTypes.string,
}
- render () {
+ render () {
const { t } = this.context
const { history, name, address, checkSummedAddress, memo, editRoute } = this.props
diff --git a/ui/app/pages/settings/networks-tab/networks-tab.component.js b/ui/app/pages/settings/networks-tab/networks-tab.component.js
index cf634058f..db5663036 100644
--- a/ui/app/pages/settings/networks-tab/networks-tab.component.js
+++ b/ui/app/pages/settings/networks-tab/networks-tab.component.js
@@ -50,16 +50,16 @@ export default class NetworksTab extends PureComponent {
return (
<div className="settings-page__sub-header">
- <div
- className="networks-tab__back-button"
- onClick={(networkIsSelected && !networkDefaultedToProvider) || networksTabIsInAddMode
- ? () => {
- setNetworksTabAddMode(false)
- setSelectedSettingsRpcUrl(null)
- }
- : () => this.props.history.push(SETTINGS_ROUTE)
+ <div
+ className="networks-tab__back-button"
+ onClick={(networkIsSelected && !networkDefaultedToProvider) || networksTabIsInAddMode
+ ? () => {
+ setNetworksTabAddMode(false)
+ setSelectedSettingsRpcUrl(null)
}
- />
+ : () => this.props.history.push(SETTINGS_ROUTE)
+ }
+ />
<span className="settings-page__sub-header-text">{ this.context.t('networks') }</span>
<div className="networks-tab__add-network-header-button-wrapper">
<Button
@@ -109,7 +109,7 @@ export default class NetworksTab extends PureComponent {
setNetworksTabAddMode(false)
setSelectedSettingsRpcUrl(rpcUrl)
}}
- >
+ >
<NetworkDropdownIcon
backgroundColor={iconColor || 'white'}
innerBorder={border}
@@ -223,16 +223,16 @@ export default class NetworksTab extends PureComponent {
{this.renderNetworksTabContent()}
{!networkIsSelected && !networksTabIsInAddMode
? <div className="networks-tab__add-network-button-wrapper">
- <Button
- type="primary"
- onClick={event => {
- event.preventDefault()
- setSelectedSettingsRpcUrl(null)
- setNetworksTabAddMode(true)
- }}
- >
- { this.context.t('addNetwork') }
- </Button>
+ <Button
+ type="primary"
+ onClick={event => {
+ event.preventDefault()
+ setSelectedSettingsRpcUrl(null)
+ setNetworksTabAddMode(true)
+ }}
+ >
+ { this.context.t('addNetwork') }
+ </Button>
</div>
: null
}
diff --git a/ui/app/store/actions.js b/ui/app/store/actions.js
index 72d5a1788..2667dd803 100644
--- a/ui/app/store/actions.js
+++ b/ui/app/store/actions.js
@@ -274,12 +274,12 @@ var actions = {
showSubLoadingIndication: showSubLoadingIndication,
HIDE_SUB_LOADING_INDICATION: 'HIDE_SUB_LOADING_INDICATION',
hideSubLoadingIndication: hideSubLoadingIndication,
-// QR STUFF:
+ // QR STUFF:
SHOW_QR: 'SHOW_QR',
showQrView: showQrView,
reshowQrCode: reshowQrCode,
SHOW_QR_VIEW: 'SHOW_QR_VIEW',
-// FORGOT PASSWORD:
+ // FORGOT PASSWORD:
BACK_TO_INIT_MENU: 'BACK_TO_INIT_MENU',
goBackToInitView: goBackToInitView,
RECOVERY_IN_PROGRESS: 'RECOVERY_IN_PROGRESS',
@@ -791,22 +791,22 @@ function showInfoPage () {
function showQrScanner (ROUTE) {
return (dispatch) => {
return WebcamUtils.checkStatus()
- .then(status => {
- if (!status.environmentReady) {
- // We need to switch to fullscreen mode to ask for permission
- global.platform.openExtensionInBrowser(`${ROUTE}`, `scan=true`)
- } else {
+ .then(status => {
+ if (!status.environmentReady) {
+ // We need to switch to fullscreen mode to ask for permission
+ global.platform.openExtensionInBrowser(`${ROUTE}`, `scan=true`)
+ } else {
+ dispatch(actions.showModal({
+ name: 'QR_SCANNER',
+ }))
+ }
+ }).catch(e => {
dispatch(actions.showModal({
name: 'QR_SCANNER',
+ error: true,
+ errorType: e.type,
}))
- }
- }).catch(e => {
- dispatch(actions.showModal({
- name: 'QR_SCANNER',
- error: true,
- errorType: e.type,
- }))
- })
+ })
}
}
@@ -967,17 +967,17 @@ function updateGasData ({
estimateGasPrice: gasPrice,
data,
})
- .then(gas => {
- dispatch(actions.setGasLimit(gas))
- dispatch(gasDuck.setCustomGasLimit(gas))
- dispatch(updateSendErrors({ gasLoadingError: null }))
- dispatch(actions.gasLoadingFinished())
- })
- .catch(err => {
- log.error(err)
- dispatch(updateSendErrors({ gasLoadingError: 'gasLoadingError' }))
- dispatch(actions.gasLoadingFinished())
- })
+ .then(gas => {
+ dispatch(actions.setGasLimit(gas))
+ dispatch(gasDuck.setCustomGasLimit(gas))
+ dispatch(updateSendErrors({ gasLoadingError: null }))
+ dispatch(actions.gasLoadingFinished())
+ })
+ .catch(err => {
+ log.error(err)
+ dispatch(updateSendErrors({ gasLoadingError: 'gasLoadingError' }))
+ dispatch(actions.gasLoadingFinished())
+ })
}
}
@@ -1166,9 +1166,9 @@ function updateTransaction (txData) {
resolve(txData)
})
})
- .then(() => updateMetamaskStateFromBackground())
- .then(newState => dispatch(actions.updateMetamaskState(newState)))
- .then(() => {
+ .then(() => updateMetamaskStateFromBackground())
+ .then(newState => dispatch(actions.updateMetamaskState(newState)))
+ .then(() => {
dispatch(actions.showConfTxPage({ id: txData.id }))
dispatch(actions.hideLoadingIndication())
return txData
@@ -1711,10 +1711,10 @@ function addTokens (tokens) {
dispatch(actions.setSelectedToken(getTokenAddressFromTokenObject(tokens)))
return Promise.all(
Object
- .entries(tokens)
- .map(([_, { address, symbol, decimals }]) => (
- dispatch(addToken(address, symbol, decimals))
- ))
+ .entries(tokens)
+ .map(([_, { address, symbol, decimals }]) => (
+ dispatch(addToken(address, symbol, decimals))
+ ))
)
}
}
@@ -1737,8 +1737,8 @@ function removeSuggestedTokens () {
resolve(suggestedTokens)
})
})
- .then(() => updateMetamaskStateFromBackground())
- .then(suggestedTokens => dispatch(actions.updateMetamaskState({...suggestedTokens})))
+ .then(() => updateMetamaskStateFromBackground())
+ .then(suggestedTokens => dispatch(actions.updateMetamaskState({...suggestedTokens})))
}
}
@@ -1813,8 +1813,8 @@ function createCancelTransaction (txId, customGasPrice) {
resolve(newState)
})
})
- .then(newState => dispatch(actions.updateMetamaskState(newState)))
- .then(() => newTxId)
+ .then(newState => dispatch(actions.updateMetamaskState(newState)))
+ .then(() => newTxId)
}
}
@@ -1835,8 +1835,8 @@ function createSpeedUpTransaction (txId, customGasPrice) {
resolve(newState)
})
})
- .then(newState => dispatch(actions.updateMetamaskState(newState)))
- .then(() => newTx)
+ .then(newState => dispatch(actions.updateMetamaskState(newState)))
+ .then(() => newTx)
}
}
@@ -2071,10 +2071,10 @@ function showLoadingIndication (message) {
}
function setHardwareWalletDefaultHdPath ({ device, path }) {
- return {
- type: actions.SET_HARDWARE_WALLET_DEFAULT_HD_PATH,
- value: {device, path},
- }
+ return {
+ type: actions.SET_HARDWARE_WALLET_DEFAULT_HD_PATH,
+ value: {device, path},
+ }
}
function hideLoadingIndication () {
diff --git a/ui/index.js b/ui/index.js
index 42a7c1149..7eb305653 100644
--- a/ui/index.js
+++ b/ui/index.js
@@ -79,7 +79,7 @@ async function startApp (metamaskState, backgroundConnection, opts) {
// inject initial state
store: store,
}
- ), opts.container)
+ ), opts.container)
return store
}
diff --git a/ui/lib/webcam-utils.js b/ui/lib/webcam-utils.js
index eb717b23a..bd7a5a0e0 100644
--- a/ui/lib/webcam-utils.js
+++ b/ui/lib/webcam-utils.js
@@ -14,16 +14,16 @@ class WebcamUtils {
try {
DetectRTC.load(_ => {
if (DetectRTC.hasWebcam) {
- let environmentReady = true
- if ((isFirefoxOrBrave && isPopup) || (isPopup && !DetectRTC.isWebsiteHasWebcamPermissions)) {
- environmentReady = false
- }
- resolve({
- permissions: DetectRTC.isWebsiteHasWebcamPermissions,
- environmentReady,
- })
+ let environmentReady = true
+ if ((isFirefoxOrBrave && isPopup) || (isPopup && !DetectRTC.isWebsiteHasWebcamPermissions)) {
+ environmentReady = false
+ }
+ resolve({
+ permissions: DetectRTC.isWebsiteHasWebcamPermissions,
+ environmentReady,
+ })
} else {
- reject({type: 'NO_WEBCAM_FOUND'})
+ reject({type: 'NO_WEBCAM_FOUND'})
}
})
} catch (e) {