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

2361 Commits

Author SHA1 Message Date
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
Whymarrh Whitby
28c4001f52 Update auto-logout to recognize idle time in background (#6593)
* Fix wording of autoLogoutTimeLimitDescription

* AppStateController and update auto-logout functionality
2019-05-13 13:46:09 -02:30
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
Dan J Miller
ef8a07c2ce
Adds a transactionCategory to txMeta for use in UI (#6567)
* Adds a transactionCategory to txMeta for use in UI

* Update transaction controller and tx-gas-util documentation on new code param in multiple functions.
2019-05-08 16:48:33 -02:30
pldespaigne
2d58cfc7a0 refactor & change html pages 2019-05-04 18:57:19 +02:00
pldespaigne
987e58d103 add rinkeby & goerli 2019-05-04 18:56:45 +02:00
kumavis
2845398c3d Refactor ProviderApprovalController to use rpc and publicConfigStore (#6410)
* Ensure home screen does not render if there are unapproved txs (#6501)

* Ensure that the confirm screen renders before the home screen if there are unapproved txs.

* Only render confirm screen before home screen on mount.

* inpage - revert _metamask api to isEnabled isApproved isUnlocked
2019-05-03 13:32:05 -04:00
Thomas Huang
c7492f4f54 Include token checksum address in prices lookup for token rates (#6526) 2019-04-30 14:19:58 -02:30
Dan J Miller
4fea9d0cc2
Send metrics event from backend for on chain transaction failures (#6500)
* Send metrics event from backend for on chain transaction failures

* Passes state object to backEndMetaMetricsEvent, and adds getMetaMetricState selector
2019-04-29 03:48:40 -02:30
Sneh Koul
6a60562d66 Opens the original webpage from where installation of MetaMask was re… (#6272)
* Opens the original webpage from where installation of MetaMask was requested

* Asking for dynamic permissions

* code for forwarder/without extra permissions

* Lint fix for onboardingComplete message sending code.
2019-04-24 10:49:38 -07:00
Paul Bouchon
0db0a187c8 feature: add Goerli support (#6459) 2019-04-17 15:04:49 -02:30
Thomas Huang
00133d31b1
Merge pull request #6444 from MetaMask/localhost-network-dropdown
Fixes #6321 & #6421 - Add Localhost 8545 for network dropdown names
2019-04-16 14:39:00 -05:00
Thomas Huang
33836c0463 Set rpcTarget, nickname, and ticker when selecting one of the default networks 2019-04-16 11:15:53 -06:00
Paul Bouchon
a973a7420a
feature: switch token pricing to CoinGecko API (#6424) 2019-04-10 18:37:15 -04:00
Whymarrh Whitby
24761326de
Don't inject web3 on sharefile.com 2019-04-09 14:14:04 -02:30
kumavis
d610dfa870
Merge pull request #6401 from MetaMask/provider-error-fix
metamask-controller - use improved provider-as-middleware utility
2019-04-05 11:13:51 +08:00
Jenny Pollack
98a2fb43fb
Merge pull request #6406 from MetaMask/remove-user-actions-controller
remove user actions controller
2019-04-04 17:30:39 -07:00
pldespaigne
dc4c40414e issue#5742 2019-04-04 17:15:57 +02:00
kumavis
89693a2315 metamask-controller - use improved provider-as-middleware utility 2019-04-04 22:11:28 +08:00
pldespaigne
b26a59dbbe renaming registrar into registry 2019-04-04 14:07:24 +02:00
Thomas Huang
a46ec83c9b Remove NoticeController (#6382) 2019-04-01 22:33:54 -02:30
Whymarrh Whitby
125a95ba71
Merge pull request #6364 from MetaMask/prevent-infura-requests-e2e-tests
Prevent infura requests in e2e tests
2019-03-29 11:27:05 -02:30
kumavis
c3a605f27a
Merge pull request #6328 from MetaMask/clearNotices
Clear notices
2019-03-29 14:23:02 +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
kumavis
e4b5556c05 buy-eth-url - lint fix 2019-03-29 10:53:46 +08:00
kumavis
2c3fc18573 buy-eth-url - fix variable name 2019-03-29 10:37:16 +08:00
kumavis
38b85adbe0 Merge branch 'develop' of https://github.com/vimalsagar/metamask-extension into vimalsagar-develop 2019-03-29 10:20:19 +08:00
kumavis
0ae68d1a61
getBuyEthUrl - getDefaultServiceForNetwork then switch on service 2019-03-29 10:03:35 +08:00
Dan Miller
10097b6a11 Default to localhost network when running e2e tests 2019-03-28 16:20:11 -02:30
Thomas Huang
2a0b98492a enable privacy mode for first time users (#6347) 2019-03-26 12:37:53 -02:30
Jenny Pollack
e09e54bebb remove user actions controller 2019-03-25 23:27:36 -10: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
Chi Kei Chan
31175625b4 Folder restructure (#6304)
* Remove ui/app/keychains/

* Remove ui/app/img/ (unused images)

* Move conversion-util to helpers/utils/

* Move token-util to helpers/utils/

* Move /helpers/*.js inside /helpers/utils/

* Move util tests inside /helpers/utils/

* Renameand move confirm-transaction/util.js to helpers/utils/

* Move higher-order-components to helpers/higher-order-components/

* Move infura-conversion.json to helpers/constants/

* Move all utility functions to helpers/utils/

* Move pages directory to top-level

* Move all constants to helpers/constants/

* Move metametrics inside helpers/

* Move app and root inside pages/

* Move routes inside helpers/

* Re-organize ducks/

* Move reducers to ducks/

* Move selectors inside selectors/

* Move test out of test folder

* Move action, reducer, store inside store/

* Move ui components inside ui/

* Move UI components inside ui/

* Move connected components inside components/app/

* Move i18n-helper inside helpers/

* Fix unit tests

* Fix unit test

* Move pages components

* Rename routes component

* Move reducers to ducks/index

* Fix bad path in unit test
2019-03-21 20:33:30 -02:30
Josh Stevens
2aaec1d9fb Stop reloading dapps on network change allowing dapps to decide if it should refresh or not (#6330)
* feat: `inpageProvider.autoRefreshOnNetworkChange` to allow dapps to control if it refreshes or not

* feat: check the `autoRefreshOnNetworkChange` before a refresh

* fix linting error

* fix: use `window.ethereum` now `web3.ethereum`
2019-03-21 12:42:23 -07:00
Thomas Huang
c43374a553 Clear notices when setCompletedOnboarding is called 2019-03-20 20:26:48 -05:00
William Monti Souza
98699fbbc0 Fixes popups not showing when screen size is odd (#6312) 2019-03-17 18:30:51 -02:30
Whymarrh Whitby
ea34d3b0ff Centre the notification in the current window (#6307) 2019-03-14 12:52:57 -05:00
Whymarrh Whitby
5bf8a36a87 Centre all notification popups 2019-03-12 11:37:14 -02:30
kumavis
48047f8194 mascara - remove from project (#6283) 2019-03-12 11:17:21 -02:30
Paul Bouchon
daae155ce2 GABA: Integrate AddressBookController (#5847)
* gaba: integrate AddressBookController

* pin gaba version and update lockfile
2019-03-11 18:40:41 -10:00
Thomas Huang
43f5fd0716 Nonmultiple notifications for batch txs 2019-03-11 12:37:47 -05:00
Dan J Miller
c757366355
Metametrics (#6171)
* Add metametrics provider and util.

* Add backend api and state for participating in metametrics.

* Add frontend action for participating in metametrics.

* Add metametrics opt-in screen.

* Add metametrics events to first time flow.

* Add metametrics events for route changes

* Add metametrics events for send and confirm screens

* Add metametrics events to dropdowns, transactions, log in and out, settings, sig requests and main screen

* Ensures each log in is measured as a new visit by metametrics.

* Ensure metametrics is called with an empty string for dimensions params if specified

* Adds opt in metametrics modal after unlock for existing users

* Adds settings page toggle for opting in and out of MetaMetrics

* Switch metametrics dimensions to page level scope

* Lint, test and translation fixes for metametrics.

* Update design for metametrics opt-in screen

* Complete responsive styling of metametrics-opt-in modal

* Use new chart image on metrics opt in screens

* Incorporate the metametrics opt-in screen into the new onboarding flow

* Update e2e tests to accomodate metametrics changes

* Mock out metametrics network requests in integration tests

* Fix tx-list integration test to support metametrics provider.

* Send number of tokens and accounts data with every metametrics event.

* Update metametrics event descriptor schema and add new events.

* Fix import tos bug and send gas button bug due to metametrics changes.

* Various small fixes on the metametrics branch.

* Add origin custom variable type to metametrics.util

* Fix names of onboarding complete actions (metametrics).

* Fix names of Metrics Options actions (metametrics).

* Clean up code related to metametrics.

* Fix bad merge conflict resolution and improve promise handling in sendMetaMetrics event and confrim tx base

* Don't send a second metrics event if user has gone back during first time flow.

* Collect metametrics on going back from onboarding create/import.

* Add missing custom variable constants for metametrics

* Fix metametrics provider

* Make height of opt-in modal responsive.

* Adjust text content for opt-in modal.

* Update metametrics event names and clean up code in opt-in-modal

* Put phishing warning step next to last in onboarding flow

* Link terms of service on create and import screens of first time flow

* Add subtext to options on the onboarding select action screen.

* Fix styling of bullet points on end of onboarding screen.

* Combine phishing warning and congratulations screens.

* Fix placement of users if unlocking after an incomplete onboarding import flow.

* Fix capitalization in opt-in screen

* Fix last onboarding screen translations

* Add link to 'Learn More' on the last screen of onboarding

* Code clean up: metametrics branch

* Update e2e tests for phishing warning step removal

* e2e tests passing on metametrics branch

* Different tracking urls for metametrics on development and prod
2019-03-05 12:15:01 -03:30
Thomas Huang
8e99a537ca Simplify 2019-03-04 17:47:48 -06:00
Thomas Huang
5a8221253e Improvement 2019-02-28 13:58:37 -06:00
Thomas Huang
973042bafa Show popup if notification or activeMMtab is true but not if popup is open 2019-02-28 13:24:48 -06:00
Vimal
ab5fe4d659 PR 5575 review comment fixes 2019-02-28 19:50:48 +05:30
Dan Finlay
f507f2a927 Feature Flag + Mobile Sync (#5955) 2019-02-25 15:40:13 -03:30
Jenny Pollack
c6e84ccf45 account tracker - update accounts from balanceChecker contract (#6181)
* account tracker - update accounts from balanceChecker contract

* fall back to getBalance if the contract query fails
2019-02-20 09:12:12 -10:00
Paul Bouchon
2f7d449427 EIP-1193: standard provider API (#6170)
* EIP-1193: Implement new provider API

* EIP-1193: Updated implementation

* Remove test file

* Fix tests

* Update ping check

* Update logic

* PR feedback
2019-02-19 16:42:08 -08:00
Chi Kei Chan
d9039f5292 Bring Popup to front when ui is tiggered 2019-02-18 20:34:29 -08:00
Graham Kaemmer
89c4353408 Fix inpage.js event handler memory leak (#6177)
Fixes #6176
2019-02-18 16:07:58 -05:00
Whymarrh Whitby
ce543f059e
Merge pull request #6137 from whymarrh/es6-background
Sprinkle ES6 onto background files
2019-02-14 10:43:56 -03:30
frankiebee
c10fb3ce3f fix typo 2019-02-12 09:05:06 -10:00
Whymarrh Whitby
92cc60f425 Update popup-core script to use ES6 destructuring, const, let 2019-02-12 10:36:15 -03:30
Whymarrh Whitby
ade96fda41 Update platforms/extension to use ES6 destructuring requires 2019-02-12 10:36:15 -03:30
Whymarrh Whitby
5d3aea7857 Update phishing-detect script to use ES6 destructuring requires 2019-02-12 10:36:15 -03:30
Whymarrh Whitby
d735439de9 Update NoticesController to use ES6 destructuring, const, let 2019-02-12 10:36:15 -03:30
Whymarrh Whitby
ae084cef6c Update MetaMaskController to use ES6 destructuring, const, let 2019-02-12 10:36:15 -03:30
Whymarrh Whitby
f5eb1512d4 Fix all "var used instead of let or const" problems in inpage.js 2019-02-12 10:36:15 -03:30
Whymarrh Whitby
3c915b0d7f Update contentscript to use ES6 destructuring, const, let 2019-02-12 10:36:15 -03:30
Whymarrh Whitby
969cf73fae Fix all "var used instead of let or const" problems in background.js 2019-02-12 10:36:15 -03:30
frankiebee
7e64a578a4 recent-blocks - dont listen for block when on infura providers 2019-02-11 09:16:03 -10:00
S.C. Chen
1a4203a8c6 Fix locale codes contains underscore will never be preferred (#6116) 2019-02-08 16:06:37 -03:30
Whymarrh Whitby
59a5f550e4 Update design of phishing warning screen 2019-02-05 13:18:24 -03:30
Whymarrh Whitby
f3a7054f6b Add announcement for users migrated to the new UI 2019-02-05 08:49:55 -03:30
Whymarrh Whitby
c52ba96b85 Remove betaUI preference state, replace with completedUiMigration 2019-02-05 08:49:55 -03:30
Whymarrh Whitby
a7a6318c13 Default to the new UI for all users 2019-02-05 08:49:55 -03:30
Bruno Barbieri
cc03a7db6a
Privacy mode fixes (#6087)
* Version 5.3.4 RC1

* fix old ui approval screen

* fix error caused by meshtesting iframe

* fix linter errors
2019-02-01 14:05:46 -05:00
Frankie
4e27b644ab fix - migration 30 undefinds (#6079) 2019-01-31 10:09:28 -08:00
Paul Bouchon
db776b5a02 EIP-1102 updates (#6006)
* Update privacy notice

* Respond to 1102 messages using tab ID
2019-01-30 10:27:33 -08: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
Jenny Pollack
456bfaf9ed add source for header in create infura client (#6023)
* add source for header in create infura client

* bump eth-json-rpc-infura
2019-01-24 14:56:55 -10:00
Alexander Tseung
fba17d77de Refactor first time flow, remove seed phrase from state (#5994)
* Refactor and fix styling for first time flow. Remove seed phrase from persisted metamask state

* Fix linting and tests

* Fix translations, initialization notice routing

* Fix drizzle tests

* Fix e2e tests

* Fix integration tests

* Fix styling

* Fix migration naming from 030 to 031

* Open extension in browser when user has not completed onboarding
2019-01-23 11:55:34 -03:30
Bruno Barbieri
2cfea0b788 fix asset detection (#6049) 2019-01-22 10:23:11 -08:00
Esteban Miño
e21dfd1862 Use Parity on-chain registry only when is needed (#6052)
* add and use knownMethodData to avoid infura requests

* dataMethod to methodData and check empty response
2019-01-22 10:22:56 -08:00
Frankie
0ad7797076
I#5956 fix 1 (#6026)
* prevent invalid chainId's when adding cusstom rpcs

* migration 30 removes invalid chaids from preferences and networkController for custom rpcs
2019-01-17 09:10:33 -10:00
Thomas Huang
3bd3e640b4 Set auto conversion off for token/eth conversion (#6005) 2019-01-10 10:36:30 -08:00
brunobar79
c49d975687 fix extension link 2019-01-02 19:03:35 -05:00
Bruno Barbieri
701bc1cbd1
Fix etherscan links on notifications 2018-12-28 17:34:26 -05: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
Alexander Tseung
dde239797b
Show Failed transaction in the browser notification for on-chain failures (#5904) 2018-12-10 18:02:26 -08:00
Alexander Tseung
d8ab9cc002
Group transactions by nonce (#5886) 2018-12-09 12:48:06 -08:00
Dan Miller
246dcf689c Fix race condition in network controller lookup() method. 2018-12-06 16:13:24 -03:30
Dan Miller
9b9a2cc2e0 Adds createSpeedUpTransaction to txController 2018-12-04 00:06:05 -03:30
Michael - Blurpesec
7f6928782a Hide link for phishing-detect page (#5864)
* Soften language on phishing-detect page

* remove quotes
2018-12-01 20:15:59 -08:00
Bruno Barbieri
be255210a9
fix visibility 2018-11-30 20:54:57 -05:00
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
Paul Bouchon
45a9f40aa6
bugfix: normalize contract addresss when fetching exchange rates (#5863) 2018-11-30 11:52:00 -05:00
Dan Finlay
c7233e2cc7
Fixed Vivek's bug (#5860)
* Fixed Vivek's bug

Fixes #5850

What was happening:

It seems that his MetaMask had crashed while some new transactions had
been loading defaults. He probably had a network connectivity issue to
Infura (which we are working with Infura to address).

As a result of this network cutout, his three unapproved transactions
were not marked failed, and were not marked as `loadingDefaults =
false`, as their gas prices had not yet been estimated.

Normally this behavior is supposed to clean itself up when the
transaction controller starts up, via the
`TransactionController._onBootCleanUp()` function, but in this case,
during unlock, that function was unable to do its job because when it
requested the transaction list, the current network was in the `loading`
state, making it proceed as if there were no pending transactions.

To fix this, I am doing two things:
- Setting transactions to loadingDefaults = false in more catch blocks.
- Calling `onBootCleanUp()` when the network store's status changes, so
that it will re-trigger when loading completes.

* Fixed reference

* Fixed infinite loop bug

Was refreshing the tx list on every tx state change instead of just
network changes, creating an infinite loop.

* Add notes to tx updates to clarify logs
2018-11-29 16:08:03 -08:00
Frankie
a803522a92 transactions/tx-gas-utils - add the acctual response for eth_getCode for NO_CONTRACT_ERROR's && add a debug object to simulationFailed (#5840) 2018-11-29 10:07:05 -08:00
Whymarrh Whitby
67d9f445bd
Merge pull request #5848 from MetaMask/Less-Certain-Language
Soften accusatory language on phishing warning
2018-11-28 15:44:36 -03:30
Dan Finlay
ac1b756bd0 Soften accusatory language on phishing warning
We don't always know for sure that sites marked as phishers are
defiitely scams, and so we should avoid language that makes concrete
accusations.
2018-11-28 08:35:03 -08:00
Whymarrh Whitby
a9d3c1a87d Open full-screen UI on install 2018-11-27 09:52:51 -03:30
Whymarrh Whitby
3e85d580f9 Revert "Don't open MetaMask website after install" 2018-11-27 08:50:54 -03:30