1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-22 18:00:18 +01:00
Commit Graph

12915 Commits

Author SHA1 Message Date
Shane
362b54b2dd
Added getPersistentState support for V2 controllers persist metadata (#12007) 2021-09-05 19:33:37 -07:00
Akintayo A. Olusegun
d78855cb3d Fix for: Confirmation screen should show local nicknames even when invoking a contract method #11148
1. Display the new address detected dialog if the contract is not in the address book
2. Use the address book if exists, else use the default.

Signed-off-by: Akintayo A. Olusegun <akintayo.segun@gmail.com>
2021-09-05 16:16:18 +00:00
Elliot Winkler
49e1abc374
Sort contacts alphabetically (#11982)
* Sort contacts alphabetically

Contacts are grouped together by letter, and the groups are listed
alphabetically, but the contacts in each group are not sorted
alphabetically themselves.

Fixes #10318.

* Improve tests to be less brittle

* Remove this matcher

* Revert this file

* Also don't need this change anymore

* Don't need this data attribute either
2021-09-03 12:31:12 -07:00
ryanml
fe59cbfe66
Autofilling new issue link with url and domain (Phishing detect page) (#12000) 2021-09-03 11:22:28 -07:00
Alex Donesky
7a8f65d642
fix import account page layout (#11944)
* fix import account page layout

* cleanup
2021-09-03 10:56:43 -05:00
Alex Donesky
dcebf49032
fix contact settings layout issues (#11967) 2021-09-03 10:54:20 -05:00
Alex Donesky
3358ac2c1f
send user to account page upon adding a custom network (#11945) 2021-09-03 10:52:37 -05:00
dependabot[bot]
b5b2c3fdb0
Bump tar from 4.4.15 to 4.4.19 (#11998)
Bumps [tar](https://github.com/npm/node-tar) from 4.4.15 to 4.4.19.
- [Release notes](https://github.com/npm/node-tar/releases)
- [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-tar/compare/v4.4.15...v4.4.19)

---
updated-dependencies:
- dependency-name: tar
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-03 12:48:30 -02:30
Alex Donesky
e8ab578ed0
bump @metamask/controllers to v15.0.2 and remove AbortController workaround in e2e tests (#11988)
* bump @metamask/controllers to v15.0.1 and remove AbortController workaround in e2e tests

* remove old abortcontroller polyfill

* bump @metamask/controllers to v15.0.2
2021-09-03 09:34:21 -05:00
Alex Donesky
da305656bd
cap resubmit transaction retries to within 50 blocks of first submission (#12003) 2021-09-02 16:06:31 -05:00
Dan Finlay
2df159841a
Add eth_feeHistory to safe method list (#11999)
So that we can expose this method to dapps.
2021-09-02 10:26:32 -07:00
ryanml
a4ab20d8fc Updating changelog 2021-09-02 10:17:31 -07:00
ryanml
cce623f5b6
Fixing horizontal line for gas recommendations (#11890)
* Fixing horizontal line for gas recommendations

* Unify browser differences between Chrome and FF

* Remove duplicate style

* Remove browser hacks

Co-authored-by: Elliot Winkler <elliot.winkler@gmail.com>
2021-09-02 10:12:47 -07:00
ryanml
0a361edc86 Updating changelog 2021-09-01 17:15:39 -07:00
Elliot Winkler
7daa55a52c Fix 'yarn setup' on M1 Macs (#11887)
There are a few issues encountered when running `yarn setup` on new
Apple Silicon (aka M1, aka arm64) Macs:

* The script halts when attempting to run the install step for
  the `chromedriver` package with the message "Only Mac 64 bits
  supported". This is somewhat misleading as it seems to indicate that
  chromedriver can only be installed on a 64-bit Mac. However, what I
  think is happening is that the installation script for `chromedriver`
  is not able to detect that an arm64 CPU *is* a 64-bit CPU. After
  looking through the `chromedriver` repo, it appears that 87.0.1 is the
  first version that adds a proper check ([1]).

  Note that upgrading chromedriver caused the Chrome-specific tests to
  fail intermittently on CI. I was not able to 100% work out the reason
  for this, but ensuring that X (which provides a way for Chrome to run
  in a GUI setting from the command line) is available seems to fix
  these issues.

* The script also halts when attempting to run the install step for
  the `electron` package. This happens because for the version of
  `electron` we are using (9.4.2), there is no available binary for
  arm64. It appears that Electron 11.x was the first version to support
  arm64 Macs ([2]). This is a bit trickier to resolve because we don't
  explicitly rely on `electron` — that's brought in by `react-devtools`.
  The first version of `react-devtools` that relies on `electron` 11.x
  is 4.11.0 ([3]).

[1]: 469dd0a6ee
[2]: https://www.electronjs.org/blog/apple-silicon
[3]: https://github.com/facebook/react/blob/main/packages/react-devtools/CHANGELOG.md#4110-april-9-2021
2021-09-01 14:56:34 -07:00
Erik Marks
8d9989cea0
Bump minimum Chrome version to 66 (#11995)
This PR updates our minimum supported Chrome version from 63 to 66, so that we may use the `AbortController` browser API without polyfilling it.

Our minimum Firefox version supports the `AbortController`, but our current minimum Chrome version (63, released in December 2017) does not. Chrome shipped the `AbortController` in version 66, in April 2018. We have determined that an extremely small number of users are on Chrome 63 < 66, and that this change is therefore acceptable.
2021-09-01 13:19:03 -07:00
ryanml
fdcb880b80
[skip e2e] Update changelog for v10.1.0 (#11993) 2021-09-01 12:29:02 -07:00
Akintayo A. Olusegun
aba396870a
Update copy in dapp suggested gas fee tooltip to: "Edit to use MetaMask's recommended gas fee based on the latest block." #11952 (#11986)
* Change the [domain] suggested gas fee (i) to Estimated gas fee (i)
Change that line's color from orange to black
Under that line, add Site suggested in italics in gray.

Signed-off-by: Akintayo A. Olusegun <akintayo.segun@gmail.com>

* liinter fixes.

Signed-off-by: Akintayo A. Olusegun <akintayo.segun@gmail.com>
2021-09-01 11:02:01 -07:00
MetaMask Bot
a70b9c346b Version v10.1.0 2021-09-01 17:50:44 +00:00
ryanml
c3ca4916aa Using a normal bundle instead of a factored bundle for phishing-detect (build sys) (#11972) 2021-09-01 10:46:32 -07:00
Dan J Miller
9cf7413e4b 1559 ledger (#11951)
* EIP-1559 - Provide support for Ledger

* Update ui/selectors/selectors.js

Co-authored-by: Mark Stacey <markjstacey@gmail.com>

* Add shared constants for hw types

* bump eth-ledger-bridge-keyring to v0.7.0

Co-authored-by: David Walsh <davidwalsh83@gmail.com>
Co-authored-by: Mark Stacey <markjstacey@gmail.com>
Co-authored-by: Alex <adonesky@gmail.com>
2021-09-01 10:43:42 -07:00
Elliot Winkler
8ffebb294b
Fix 'yarn setup' on M1 Macs (#11887)
There are a few issues encountered when running `yarn setup` on new
Apple Silicon (aka M1, aka arm64) Macs:

* The script halts when attempting to run the install step for
  the `chromedriver` package with the message "Only Mac 64 bits
  supported". This is somewhat misleading as it seems to indicate that
  chromedriver can only be installed on a 64-bit Mac. However, what I
  think is happening is that the installation script for `chromedriver`
  is not able to detect that an arm64 CPU *is* a 64-bit CPU. After
  looking through the `chromedriver` repo, it appears that 87.0.1 is the
  first version that adds a proper check ([1]).

  Note that upgrading chromedriver caused the Chrome-specific tests to
  fail intermittently on CI. I was not able to 100% work out the reason
  for this, but ensuring that X (which provides a way for Chrome to run
  in a GUI setting from the command line) is available seems to fix
  these issues.

* The script also halts when attempting to run the install step for
  the `electron` package. This happens because for the version of
  `electron` we are using (9.4.2), there is no available binary for
  arm64. It appears that Electron 11.x was the first version to support
  arm64 Macs ([2]). This is a bit trickier to resolve because we don't
  explicitly rely on `electron` — that's brought in by `react-devtools`.
  The first version of `react-devtools` that relies on `electron` 11.x
  is 4.11.0 ([3]).

[1]: 469dd0a6ee
[2]: https://www.electronjs.org/blog/apple-silicon
[3]: https://github.com/facebook/react/blob/main/packages/react-devtools/CHANGELOG.md#4110-april-9-2021
2021-09-01 10:40:40 -06:00
Dan J Miller
a4c0133bc5
1559 ledger (#11951)
* EIP-1559 - Provide support for Ledger

* Update ui/selectors/selectors.js

Co-authored-by: Mark Stacey <markjstacey@gmail.com>

* Add shared constants for hw types

* bump eth-ledger-bridge-keyring to v0.7.0

Co-authored-by: David Walsh <davidwalsh83@gmail.com>
Co-authored-by: Mark Stacey <markjstacey@gmail.com>
Co-authored-by: Alex <adonesky@gmail.com>
2021-09-01 11:25:06 -05:00
Erik Marks
8a8ce3a0c0
@metamask/controllers@15.0.0 (#11975)
Adds the latest version of `@metamask/controllers`, and updates our usage of the `ApprovalController`, which has been migrated to `BaseControllerV2`. Of [the new `controllers` release](https://github.com/MetaMask/controllers/releases/tag/v15.0.0), only the `ApprovalController` migration should be breaking.

This is the first time we use events on the `ControllerMessenger` to update the badge, so I turned the messenger into a property on the main `MetaMaskController` in order to subscribe to events on it in `background.js`. I confirmed that the badge does indeed update during local QA.

As it turns out, [MetaMask/controllers#571](https://github.com/MetaMask/controllers/pull/571) was breaking for a single unit test case, which is now handled during setup and teardown for the related test suite (`metamask-controller.test.js`).
2021-08-31 12:27:13 -07:00
ryanml
4b4303c108
Using a normal bundle instead of a factored bundle for phishing-detect (build sys) (#11972) 2021-08-30 17:58:50 -10:00
Erik Marks
290fcbf89e
Allow excluding lockdown at build time (#11937)
This adds an `--omit-lockdown` flag to our build script, which will cause SES `lockdown` to be omitted from the resulting bundle. Useful for development when we don't want the environment to be locked down.

Thanks to @kumavis for the suggestion.
2021-08-30 16:49:39 -07:00
Etienne Dusseault
48c5c07ded
send-content (#11962) 2021-08-30 13:05:02 -10:00
Etienne Dusseault
9f0f729c5b
token-placeholder (#11961) 2021-08-30 13:04:24 -10:00
Etienne Dusseault
8875e9a49c
token-search (#11960) 2021-08-30 13:04:05 -10:00
Etienne Dusseault
1a0276fc6e
gas-fee-display (#11959) 2021-08-30 13:03:47 -10:00
Etienne Dusseault
1c2d9e5c9c
add-token (#11957) 2021-08-30 13:02:55 -10:00
Etienne Dusseault
616016a1f6
account-list-item (#11956) 2021-08-30 13:02:39 -10:00
Etienne Dusseault
4426104fc7
unlock-page (#11955) 2021-08-30 13:02:23 -10:00
Etienne Dusseault
9f10fe8c97
swaps-gas-customization (#11938) 2021-08-30 13:01:59 -10:00
Etienne Dusseault
8d22dc4470
import token (#11657) 2021-08-30 13:00:47 -10:00
Etienne Dusseault
28708e3a2e
Add first time flow components to Storybook (#11655)
* end of first time flow

* metametrics first time flow

* select-action

* welcome
2021-08-30 12:59:56 -10:00
Etienne Dusseault
0a472a440a
create-password (#11646) 2021-08-30 12:59:20 -10:00
Etienne Dusseault
2de9628865
Add mobile-sync component to Storybook (#11645)
* mobile sync

* lintfix
2021-08-30 12:58:58 -10:00
Etienne Dusseault
57a5e4528b
Add permissions-connect component to Storybook (#11644)
* add metadata

* fix image path for storybook

* fix lint

* separate components
2021-08-30 12:58:21 -10:00
Etienne Dusseault
2ca7f066e3
Add new-account component to Storybook (#11638)
* add action

* lintfix
2021-08-30 12:57:39 -10:00
Etienne Dusseault
7d0d6013af
Add connected-accounts component to Storybook (#11637)
* name change

* add actions

* lintfix
2021-08-30 12:56:34 -10:00
Etienne Dusseault
7b4aac7755
Add connected-sites component to Storybook (#11415)
* connectd-sites

* fix image path for storybook

* lintfixd, namechange
2021-08-30 12:56:03 -10:00
Etienne Dusseault
2996163770
Add confirm-send-token component to Storybook (#11399)
* fix image path for storybook

* confirm-send-token-component

* lintfix
2021-08-30 12:55:08 -10:00
Etienne Dusseault
cd3447995b
confirm-transaction-base (#11396)
Co-authored-by: kumavis <kumavis@users.noreply.github.com>
2021-08-30 12:54:21 -10:00
Etienne Dusseault
a77368be34
Add confirm-send-ether component to Storybook (#11395)
* confirm-send-ether

* fix conflict

* lintfix

Co-authored-by: kumavis <kumavis@users.noreply.github.com>
2021-08-30 12:53:41 -10:00
Erik Marks
1175b4bfa7
Make all named intrinsics non-modifiable (#11953)
This PR makes ~all named intrinsics in all of our JavaScript processes non-modifiable. A named intrinsic is any property specified by the ECMAScript specification that exists on `globalThis` when the JavaScript process starts. We say that a property is non-modifiable if it is non-configurable and non-writable. We make exceptions for properties that meet any of the following criteria:

1. Properties that are non-configurable by the time `lockdown-run.js` is executed are not modified, because they can't be.
2. Properties that have accessor properties (`get` or `set`) are made non-configurable, but their writability cannot be modified, and is therefore left unchanged. It's unclear how many of the named intrinsics this applies to, if any, but it's good defensive programming, regardless.
2021-08-30 14:30:48 -07:00
Austin Akers
6875d15e5f disabled spell-check on ens input 2021-08-28 19:16:19 -07:00
Austin Akers
a690cd618c fixed scrolling issue with many accounts 2021-08-28 17:46:00 -07:00
ryanml
58f9299df2
Guarding against null keyring (Hardware Wallet Selectors) (#11893) 2021-08-27 08:46:56 -07:00
ryanml
49c327aec3
Merge pull request #11941 from MetaMask/master-sync
Sync `master` with `develop`
2021-08-26 16:35:40 -07:00