1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-02 06:07:06 +01:00
Commit Graph

228 Commits

Author SHA1 Message Date
Mark Stacey
12e055a37c
Close window after opening fullscreen (#6966)
* Add background environment type

The `getEnvironmentType` method now checks for the background
environment as well, instead of returning 'notification' for that case.

Instead of adding another regex for the background path, the regexes
for each environment have been replaced with the URL constructor[0].
This is the standard method of parsing URLs, and is available in all
supported browsers.

[0]: https://developer.mozilla.org/en-US/docs/Web/API/URL

* Add note regarding a missing manifest permission

The `url` parameter to `tabs.query(...)` requires the `tabs` permission,
and will be ignored otherwise. We are missing this permission, so that
call does not work.

* Close window after opening full screen

The browser behaviour when opening a new tab differs between Chrome and
Firefox. In the case of a popup, Chrome will close the popup whereas
Firefox will leave it open. In the case of the notification window,
Chrome will move the new tab to the foreground, whereas Firefox will
leave the notification window in the foreground when opening a new tab.

We always want to close the current UI (popup or notification) when
switching to a full-screen view. The only exception to this is when the
switch is triggered from the background, which has no UI.

Closes #6513, #6685
2019-08-08 11:50:32 -03:00
Whymarrh Whitby
4d88e1cf86 Enable indent linting via ESLint (#6936)
* Enable indent linting via ESLint

* yarn run lint:fix
2019-07-31 10:17:11 -10:00
Mark Stacey
1112277cd6
Remove seedWords completely from metamask state (#6920)
`seedWords` used to be stored on the metamask state temporarily at
certain points. This hasn't been the case since #5994, but references
to this state remained. All of the logic remained for correctly updating
these `seedWords`, handling them during navigation, and scrubbing them
from the state.

However the state was never updated in practice. The `seedWords` are
still returned by `verifySeedPhrase`, and they're still stored in
component state in a few places. But they aren't ever set in the Redux
metadata state or the Preferences controller.

All references to this state have been removed, along with any logic
for interacting with this state. A few unused actions were removed as
well.
2019-07-26 10:35:21 -03:00
Mark Stacey
95f198550e
Declare variables before use (#6806)
While working on #6805, I noticed that many variables were being used
before they were declared. Technically this worked fine in practice
because we were using the `transform-es2015-block-scoping` Babel plugin,
which transforms `let` and `const` to `var`, which is hoisted. However,
after removing that Babel transformation, many things broke.

All instances of variables or classes being used before declared have
been fixed.

The `no-use-before-define` eslint rule has been added to catch these
cases going forward. The rule is disabled for function declarations for
the moment, because those are always hoisted. We could disable that too
if we want to, but it's purely stylistic and would require a lot more
changes.
2019-07-05 14:01:34 -03:00
Akshit Kr Nagpal
d16d6f483c Validate txParams in TransactionStateManager.addTx (#6713)
* Normalize and Validate txParams in TransactionStateManager.addTx too

* Added Tests

* Updated normalizeAndValidateParams to return the new txParams
2019-06-29 00:51:51 +02:00
Paul Bouchon
47024fd9a5
feature: integrate gaba/CurrencyRateController (#6570) 2019-05-31 18:14:22 -04:00
Frankie
2b5c7b82a9
transactions/deps - use broken out nonce-tracker module (#6555) 2019-05-21 17:17:09 +02:00
Frankie
a34103987a
drop transactions who's nonce is lower then the known network nonce but were not included in a block (#6388)
* transactions/pending - check nonce against the network and mark as dropped if not included in a block

* transactions/pending - unifiy "dropped" txs

* transactions/pending - test - fix for new expected behavior

* fix comment

* transactions/pending - clean up dropped event

* fix spelling

Co-Authored-By: frankiebee <frankie.diamond@gmail.com>

* nit fix

* test/tx-pending - clarify test description
2019-05-16 07:36:53 +02:00
Paul Bouchon
e57ffbed59
feature: integrate gaba/ShapeShiftController (#6569) 2019-05-14 14:38:55 -04:00
Dan J Miller
b81c4e5c98 Set a default value for code in _determineTransactionCategory (#6604)
* Set a default value for code in _determineTransactionCategory

* Adds e2e tests that fail when token txs without gas param are not properly handled.

* Adds unit tests for _determineTransactionCategory

* Base error throwing and simple gas setting in estimateTxGas on transactionCategory
2019-05-14 14:14:07 -04:00
Thomas Huang
08e8fb21dc
Merge pull request #6568 from MetaMask/feature/gaba-phishing-controller
feature: integrate gaba/PhishingController
2019-05-10 13:43:20 -07:00
Dan J Miller
13be683701
New settings custom rpc form (#6490)
* Add networks tab to settings, with header.

* Adds network list to settings network tab.

* Adds form to settings networks tab and connects it to network list.

* Network tab: form adding and editing working

* Settings network form properly handles input errors

* Add translations for settings network form

* Clean up styles of settings network tab.

* Add popup-view styles and behaviour to settings network tab.

* Fix save button on settings network form

* Adds 'Add Network' button and addMode to settings networks tab

* Lint fix for settings networks tab addition

* Fix navigation in settings networks tab.

* Editing an rpcurl in networks tab does not create new network, just changes rpc of old

* Fix layout of settings tabs other than network

* Networks dropdown 'Custom Rpc' item links to networks tab in settings.

* Update settings sidebar networks subheader.

* Make networks tab buttons width consistent with input widths in extension view.

* Fix settings screen subheader height in popup view

* Fix height of add networks button in popup view

* Add optional label to chainId and symbol form labels in networks setting tab

* Style fixes for networks tab headers

* Add ability to customize block explorer used by custom rpc

* Stylistic improvements+fixes to custom rpc form.

* Hide cancel button.

* Highlight and show network form of provider by default.

* Standardize network subheader name to 'Networks'

* Update e2e tests for new settings network form

* Update unit tests for new rpcPrefs prop

* Extract blockexplorer url construction into method.

* Fix broken styles on non-network tabs in popup mode

* Fix block explorer url links for cases when provider in state has not been updated.

* Fix vertical spacing of network form

* Don't allow click of save button on network form if nothing has changed

* Ensure add network button is shown in popup view

* Lint fix for networks tab

* Fix block explorer url preference setting.

* Fix e2e tests for custom blockexplorer in account details modal changes.

* Update integration test states to include frequentRpcList property

* Fix some capitalizations in en/messages.json

* Remove some console.logs added during custom rpc form work

* Fix external account link text and url for modal and dropdown.

* Documentation, url validation, proptype required additions and lint fixes on network tab and form.
2019-05-09 14:57:14 -02:30
bitpshr
77d3bc252d feature: integrate gaba/PhishingController 2019-05-08 17:56:52 -04:00
Whymarrh Whitby
094e4cf555 Check for unused function arguments (#6583)
* eslint: Check for unused function arguments

* eslint: Ignore unused '_' in argument list

Also allow any number of '_' e.g., '__' or '___' which is to be used sparingly

* Remove and rename unused arguments
2019-05-08 15:51:33 -04:00
Paul Bouchon
0db0a187c8 feature: add Goerli support (#6459) 2019-04-17 15:04:49 -02:30
Thomas Huang
a46ec83c9b Remove NoticeController (#6382) 2019-04-01 22:33:54 -02:30
kumavis
02585c0bd0 lint fix 2019-03-29 12:51:54 +08:00
kumavis
846038a69c notice-controller - make markAllNoticesRead sync 2019-03-29 12:39:29 +08:00
kumavis
e04f0c877b lib - nodeify - correctly wrap synchronous functions 2019-03-29 12:37:40 +08:00
kumavis
a64855ef49 notices - markAllNoticesRead - use async/await 2019-03-29 12:03:31 +08:00
kumavis
781a39c039 Merge branch 'develop' into clearNotices 2019-03-29 11:54:12 +08:00
Dan J Miller
4ff9126ff2
Replaces the coinbase link in the deposit modal with one for wyre (#6302) 2019-03-22 12:32:07 -02:30
Thomas Huang
c43374a553 Clear notices when setCompletedOnboarding is called 2019-03-20 20:26:48 -05:00
Paul Bouchon
daae155ce2 GABA: Integrate AddressBookController (#5847)
* gaba: integrate AddressBookController

* pin gaba version and update lockfile
2019-03-11 18:40:41 -10:00
Frankie
df3169d1c7
I#5956 fix2 dont overwrite existing rpc settings (#6044)
* mm-controller - dont overwrite existing rpc settings

* ui-networkDropdown - dont pass old network as chainId

* add methods preferencesController.updateRpc and metamaskController.updateAndSetCustomRpc

* use updateAndSetCustomRpc in settings to allow rpcs to be updated

* use new rpc as nickname if no nick name has been supplied

* fix update rpc method
2019-01-29 08:13:51 -10:00
Frankie
b5d6452454
Disallow loading as metamaskNetworkId (#5924)
* transactions - throw an error if a transaction is generated while the network is loading

* add tests for failing when netId is loading
2018-12-13 09:14:46 -10:00
Dan Miller
d8e41a6aa5 Final gas customization fixes 2018-12-04 00:06:22 -03:30
Dan Miller
9b9a2cc2e0 Adds createSpeedUpTransaction to txController 2018-12-04 00:06:05 -03:30
Dan J Miller
4c24555545 Save recent network balances in local storage (#5843)
* Use selector for state.metamask.accounts in all cases.

* Default to cached balance when selecting metamask accounts

* Adds the cached-balances controller

* Documentation and small codes fixes for #5843

Co-Authored-By: danjm <danjm.com@gmail.com>
2018-11-30 14:51:24 -08:00
Frankie
8198ec9ae1
Autofill gasPrice for retry attempts with either the recommended gasprice or a %10 bump (#5786)
* transactions - autofill gasPrice for retry attempts with either the recomened gasprice or a %10 bump

* lint
2018-11-26 09:29:14 -10:00
Whymarrh Whitby
1988e1e96b ESLint fixes (#5775)
* eslint . --fix

* Upgrade all ESLint warnings to errors
2018-11-16 14:54:55 -10:00
Frankie
ce147bf6d8 Tx controller now uses safe event emitter (#5769)
* transactions - use safe-event-emitter over events

* tests - pass a platform object on init with a noop showTransactionNotification

* test - fix for tx-state-history-helper trying to reduce an empty array

* deps - safe-event-emitter

* lint
2018-11-16 10:34:08 -08:00
Dan Finlay
22ba0b0c2d Resubmit approved transactions on new block (#5752)
* Add beginning of test

* Resubmit approved transactions on new block

May fix #4343 and related issues, where an error could leave
transactions stranded in the approved state.

* Remove unused test

* Re-approve transactions when retrying approved

* Add retry approved test

* Include approved in pending tx count

* Fix getPendingTxs()

* Linted

* Only throw hash error in submitted state

* Only check submitted txs for block inclusion

* Fix test expectations
2018-11-14 11:34:07 -10:00
Paul Bouchon
0549782595
Update Balanc3 API (#5744)
* Update balanc3 API used in TokenRatesController

* Remove demo URL and use nativeCurrency when fetching token rates
2018-11-13 14:57:43 -05:00
bitpshr
c76c9ca2c8 EIP-1102: updated implementation 2018-11-05 15:07:09 -08:00
Esteban Miño
4489a57f2f Update watchAsset ERC20 validation (#5653)
* update ERC20 token valodation for watchAsset

* update ERC20 validation test descriptions
2018-11-05 15:36:34 -03:30
HackyMiner
54a8ade266 Add support for RPC endpoints with custom chain IDs (#5134) 2018-10-26 10:26:43 +02:00
kumavis
b0c649a4e3
Merge pull request #5555 from MetaMask/support-wallet-watch-asset
Support for prefix wallet_watchAsset
2018-10-21 01:27:08 -04:00
Esteban Miño
7c4f98ffd6 specific add and remove methods for frequentRpcList (#5554) 2018-10-19 17:50:54 -02:30
Esteban MIno
75661673e5 add support for wallet_watchAsset 2018-10-19 13:57:11 -03:00
Whymarrh Whitby
af43b7d6c9 Ensure that new transactions added are using the selected address 2018-10-10 16:16:20 -02:30
Dan Finlay
c49d854b55 Increase suggested gas percentile to 65 (#5359)
* Increase suggested gas percentile to 65

I keep submitting transactions then waiting a long time. Apparently 50th percentile isn't enough.

* Update test for getGasPrice
2018-10-04 18:38:05 -02:30
Whymarrh Whitby
4dd6c8168f Add ability to whitelist a blacklisted domain at runtime 2018-10-02 10:43:46 -02:30
tmashuang
a0a57c24fd Some Ui tests 2018-09-24 11:28:04 -05:00
bitpshr
36dd0354e7 Implement latest EIP-712 protocol 2018-09-13 15:40:57 -04:00
Whymarrh Whitby
13bc46d824 Default NoticeController ctor opts to empty obj 2018-09-11 12:12:35 -07:00
Whymarrh Whitby
d60991ec88 Delete ConfigManager, replacing its usages with PreferencesController 2018-09-11 09:39:16 -07:00
Esteban MIno
e743f44150 fix conflicts 2018-08-28 15:20:30 -03:00
Esteban MIno
3106374cc3 watchAsset small changes 2018-08-27 22:10:14 -03:00
Esteban MIno
b59a1e91b8 typo watchAsset imageUrl to image 2018-08-23 15:54:40 -03:00
Whymarrh Whitby
e803b8e047 Add test cases for MetaMaskController#_onKeyringControllerUpdate 2018-08-22 15:38:34 -02:30
Esteban MIno
4e6c71e969 Merge branch 'develop' into WatchTokenFeature 2018-08-21 20:14:49 -03:00
Esteban MIno
6ccf2811e7 unit tests for watchAsset 2018-08-21 19:17:57 -03:00
brunobar79
54021fd90b fix unit tests 2018-08-21 00:09:54 -04:00
Bruno Barbieri
bd904c86f6
Merge branch 'develop' into ledger-support 2018-08-17 13:45:46 -04:00
brunobar79
992e7f1b5a fix merge conflicts 2018-08-17 12:56:07 -04:00
Dan Matthews
df799d7fd6 Restores accounts until one with a zero balance is found 2018-08-17 10:26:47 -04:00
brunobar79
fdf202efb0 fixed unit tests 2018-08-14 21:19:01 -04:00
Thomas
ce645561fb Remove commented out code for detect-token-test 2018-08-14 12:29:57 -07:00
Thomas
96d789d2cf Merge branch 'develop' into network-remove-provider-engine
Override package-lock and fix merge conflicts
2018-08-14 10:44:42 -07:00
brunobar79
b77cc3d969 fix tx tests 2018-08-14 03:42:23 -04:00
Thomas Huang
2392e77cd8 Set metamask controller network provider to localhost 2018-07-30 20:18:01 -07:00
Esteban MIno
fbcba8f019 create tokens storage when setadresses 2018-07-30 19:09:17 -04:00
Thomas
fb5e357998 Detect Tokens are weird 2018-07-30 06:26:34 -07:00
Esteban MIno
dd6a725e6d unit tests for tokens per account and network 2018-07-27 17:41:47 -04:00
Esteban MIno
f79a249bcc modify tests according to tokens by network 2018-07-26 20:04:57 -04:00
Thomas
138858647e Merge branch 'develop' into network-remove-provider-engine 2018-07-25 22:38:44 -07:00
Esteban Miño
110efa9ec1
Merge branch 'develop' into detectTokenFeature 2018-07-20 20:09:37 -04:00
Esteban MIno
9c95554933 fix detection on submit password 2018-07-20 19:58:03 -04:00
Esteban Miño
cb045fd8fe
Auto-detect tokens #3034 (#4683)
* detect tokens polling

* network store to detect token

* tests for spec

* passtest-lint

* fix lint

* improve tests

* detect tokens through infura

* detect tokens when submit password and new account selected

* keyring unlocked detect and unit tests

* add changelog
2018-07-20 12:36:24 -04:00
Esteban MIno
009b1cefbe keyring unlocked detect and unit tests 2018-07-19 19:46:46 -04:00
Esteban MIno
3b97d816ff detect tokens when submit password and new account selected 2018-07-19 15:56:38 -04:00
brunobar79
e89350b19f added tests for removeAccount 2018-07-17 01:44:28 -04:00
brunobar79
de4265c629 added more unit tests 2018-07-17 01:17:18 -04:00
brunobar79
e5512c306d added unit tests for metamaskcontroller 2018-07-16 19:36:08 -04:00
brunobar79
41879a9835 added test for preferences controller 2018-07-16 16:08:19 -04:00
Esteban MIno
2fffe09873 detect tokens through infura 2018-07-12 20:43:43 -04:00
Esteban MIno
910713c6b3 improve tests 2018-07-11 15:59:05 -04:00
frankiebee
b30499886f test - check that #setTxStatusRejected removes transaction from history 2018-07-10 15:35:27 -07:00
frankiebee
28c509914b Merge branch 'develop' of https://github.com/MetaMask/metamask-extension into i#3896 2018-07-10 11:32:05 -07:00
kumavis
fa02a6c7c6 test - unit - remove tests for obsolete methods 2018-07-03 13:56:18 -07:00
kumavis
77daed5c74 Merge branch 'develop' of github.com:MetaMask/metamask-extension into network-remove-provider-engine 2018-07-03 12:42:14 -07:00
Esteban MIno
63b9c8796b fix lint 2018-07-03 15:24:23 -04:00
Esteban MIno
0494b2fc8a Merge branch 'develop' into detectTokenFeature 2018-07-03 13:23:15 -04:00
brunobar79
4b398701c1 fix unit tests 2018-07-02 21:03:34 -04:00
brunobar79
c734e486a0 fix tests 2018-07-02 20:21:27 -04:00
brunobar79
0da41263ac fix warning for unit tests 2018-07-02 20:12:50 -04:00
brunobar79
a8f745f9fe eslint --fix . 2018-07-02 18:49:33 -04:00
kumavis
a89902c170 Merge branch 'develop' of github.com:MetaMask/metamask-extension into network-remove-provider-engine 2018-07-02 13:54:05 -07:00
Esteban MIno
6284e66481 tests for spec 2018-06-27 22:18:06 -04:00
frankiebee
94a4f99115 tests - fix cancle transaction test to better fit new behavior 2018-06-26 12:21:50 -07:00
frankiebee
7b1f57e05d woops - remove .only
Co-authored-by: @jennypollack
2018-06-25 15:18:01 -07:00
frankiebee
9b92ba4c47 trandsactions - remove rejected transactions from history 2018-06-25 15:07:54 -07:00
Dan Finlay
3a5089da6f
Merge pull request #4566 from MetaMask/notice-phishing
Push new notice on recent phishing incidents
2018-06-14 09:49:38 -07:00
kumavis
44a8e48a04 notices - replace getLatestNotice with getNextNotice 2018-06-13 23:30:31 -07:00
kumavis
e9cb650832 Merge branch 'develop' of github.com:MetaMask/metamask-extension into ValidateEmptyKey 2018-06-13 21:11:04 -07:00
kumavis
7a001447a8 test - unit - add assertRejects to test asyncFns 2018-06-13 21:01:00 -07:00
kumavis
62586b3b6e
test - unit - import strategies - properly await async methods 2018-06-13 20:39:57 -07:00
Dan Finlay
b24efcb1cd Make account import tests much more specific
However, they no longer seem to work. I'm unclear why this test is
failing. The private key being provided should be valid.
2018-06-11 14:58:05 -07:00
Dan Finlay
385927a1b9 Improve private key import tests 2018-06-07 13:34:10 -07:00
Dan Finlay
b7fe4b820d Improve test formatting 2018-06-07 10:54:19 -07:00
kumavis
2198276bd5 Merge branch 'develop' of github.com:MetaMask/metamask-extension into network-remove-provider-engine 2018-06-06 12:05:38 -07:00
Thomas Huang
1fb408f62e
Merge pull request #4512 from MetaMask/test-metamask-no-diagnostics
test - metamask-controller - disable diagnostics
2018-06-06 11:54:59 -07:00
kumavis
d30f03dcbf
Merge pull request #4414 from scsaba/recipient-blacklist
Disallow sending to ganache default accounts on main net
2018-06-06 11:54:01 -07:00
kumavis
9d77b0a196 Merge branch 'develop' of github.com:MetaMask/metamask-extension into network-remove-provider-engine 2018-06-06 11:08:29 -07:00
kumavis
da938ded5c
test - metamask-controller - disable diagnostics 2018-06-05 13:31:34 -07:00
kumavis
20bdba3d17 diagnostics - rewrite bug-notifier as diagnostics-reporter 2018-06-05 11:51:27 -07:00
Dan Finlay
ae156e1087 Mock notifier in test 2018-06-04 15:26:01 -07:00
Dan Finlay
797e63b37b Add failing test for unknown identity entry 2018-06-04 13:28:46 -07:00
Csaba Solya
1dda0c6469 remove generating blocked accounts and use a config file instead 2018-05-30 21:15:59 +02:00
Csaba Solya
cf73581c0e adding tests for recipient blacklist checker 2018-05-30 17:38:27 +02:00
Csaba Solya
6affd8f949 adding transaction controller tests 2018-05-30 16:24:40 +02:00
kumavis
32293a959c test - unit - tx-controller - fix blockTracker stub 2018-05-29 01:08:55 -07:00
kumavis
31f47a7a42 test - unit - pending-tx-tracker - update method name 2018-05-28 16:00:35 -07:00
kumavis
686d5cf825 test - unit - nonce-tracker - fix blockTracker stub 2018-05-28 15:59:34 -07:00
kumavis
5be154ea20 controllers - transactions - merge @frankiebee's work with mine 2018-05-28 14:29:31 -07:00
kumavis
a0fe5b9190 test - unit - metamask-controller - remove log 2018-05-25 11:09:19 -07:00
kumavis
deab195772 test - unit - code style nitpick 2018-05-24 23:19:54 -07:00
kumavis
da5be0812a test - unit - metamask-controller - fix many bugs in tests 2018-05-24 23:19:39 -07:00
kumavis
afdefc58e9 test - unit - tx-controller-test - add history object to txMeta when using internal calls 2018-05-24 22:41:09 -07:00
kumavis
630e2300f4 test - unit - move fetch polyfill to helper 2018-05-24 22:10:17 -07:00
kumavis
380964a687 test - unit - metamask-controller - polyfill global.fetch 2018-05-24 21:17:56 -07:00
kumavis
2b54d948da test - remove .only from unit tests 2018-05-24 15:53:06 -07:00
frankiebee
61caee9d94 Merge branch 'network-remove-provider-engine' of https://github.com/MetaMask/metamask-extension into transactions-use-new-block-tracker 2018-05-22 16:45:20 -07:00
kumavis
3a80f3dd83 Merge branch 'develop' of github.com:MetaMask/metamask-extension into network-remove-provider-engine 2018-05-22 13:20:04 -07:00
tmashuang
238f2eb179 Merge branch 'develop' into testing 2018-05-21 16:36:48 -07:00
tmashuang
58b9afff4f Merge branch 'develop' into testing 2018-05-21 14:57:57 -07:00
tmashuang
13ebb0b455 Moved loose some loose test files to sub folders 2018-05-21 05:59:26 -07:00