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

17480 Commits

Author SHA1 Message Date
Elliot Winkler
436a3dff4e
Sync NetworkController lookupNetwork tests w/ core (#19401)
* Sync NC lookupNetwork tests with core

This makes it easier to visually compare differences in the
NetworkController unit tests between core and this repo.

* Add types for toBeFulfilled matcher

* Fix lint again
2023-06-15 10:12:43 -02:30
Danica Shen
74d365cbaa
feature(19493): eliminate e2e flakyness for eth-sign (#19606) 2023-06-15 13:13:54 +01:00
Victorien Gauch
1fca9255c1
fix: refactor linea goerli testnet implementation (#19321)
* fix: refactor linea goerli testnet implementation

* fix: rename linea goerli network

* feat: add linea testnet logo

* update linea goerli block explorer url

* update @metamask/eth-json-rpc-infura package to version 8.1.0

* fix: refactor ticker map object in shared/constants/networks.ts files
2023-06-15 09:08:07 -02:30
Danica Shen
2648c783ad
feature(19496): eliminate flow e2e flakyness in terms of asserting content for DOM (#19600) 2023-06-15 11:01:44 +01:00
Nicholas Ellul
46a2604df0
Fix flakey tests in metamask controller tests (#19312)
* Refactor metamask controller tests to isolate mv3 specific setup
2023-06-14 15:38:40 -04:00
David Walsh
875bad125f
Fix #19439 - Allow Account Picker during Send flow (#19522)
* Fix #19439 - Allow Account Picker during Send flow

* Disable any network change with confirmations pending

* Disable the settings menu during an unconfirmed transaction
2023-06-14 13:49:14 -05:00
George Marshall
f4f80c223e
Adding deprecation tags to popover and old modals (#19556)
Co-authored-by: Garrett Bear <gwhisten@gmail.com>
2023-06-14 09:47:16 -07:00
legobeat
bcfda8b11c
devDeps: degenerator@3.0.1->3.0.4 (#19178)
- CVE-2023-32314 / GHSA-whpj-8f3w-67p5
- CVE-2023-32313 / GHSA-p5gc-c584-jj6v
2023-06-14 13:53:12 -02:30
Nidhi Kumari
bdb26b04fc
updated components with Multichain Prefix (#19593) 2023-06-14 21:21:19 +05:30
Elliot Winkler
7701b8b417
Sync NetworkController getEIP1559Compatibility tests w/ core (#19419)
This makes it easier to visually compare differences in the
NetworkController unit tests between core and this repo.
2023-06-14 08:35:43 -07:00
Elliot Winkler
312dadf91f
Sync NetworkController setProviderType tests (#19406)
This makes it easier to visually compare differences in the
NetworkController unit tests between core and this repo.
2023-06-14 09:23:36 -06:00
Elliot Winkler
9c91db5d31
Sync rollbackToPreviousProvider tests w/ core (#19428)
This makes it easier to visually compare differences in the
NetworkController unit tests between core and this repo.
2023-06-14 09:23:16 -06:00
Mark Stacey
b43900f743
Update message manager and signature controller (#19370)
* Update message manager and signature controller

The packages `@metamask/message-manager` and
`@metamask/signature-controller` have been updated to the latest
versions. These versions were part of part of the [core monorepo v53](MetaMask/core#1385)
release. The remaining packages released as part of v53 will be updated
in later PRs.

These releases included a few breaking changes, but none that affect
the extension. Both packages now expect `getCurrentChainId` to return
`Hex`, but that was already the case here. Additionally the signature
controller now has a peer dependency on the approval controller v3,
which is already present and at the correct version.

Relates to #19271

* Ignore error caused by TS bug

* Update types to omit metadata for encryption requests

* Update lavamoat policy
2023-06-14 11:27:41 -02:30
Mark Stacey
40d1df1e0d
Update lockfile (#19583)
The lockfile was stale on `develop`; it has now been updated.
2023-06-13 13:00:48 -02:30
Nidhi Kumari
c59941c7bc
UX Multichain: UI fixes for settings page (#19574)
* fixed spacings and UI for settings page

* lint fix
2023-06-13 20:47:35 +05:30
Nidhi Kumari
cc0b30776a
UX Multichain: updated enums for multichain token list item (#19575)
* updated enums for multichain token list iteam

* updated snapshot
2023-06-13 20:47:21 +05:30
George Marshall
6c3f31d382
Adding background/default to BorderColor enum to prevent propType error and updating tests (#19571) 2023-06-13 08:11:21 -07:00
David Walsh
28137798b6
UX: Multichain: Move Add Account and Import Account into Account Menu Popover (#19346)
* UX: Multichain: Move Add Account and Import Account into Account Menu Popover

* Create a new CreateAccount component for the Account Menu

* Add actions for import form

* Use separate actions for cancel vs. submit

* Fix jest tests

* Remove commented route navigation

* Accommodate for failing import

* Fix tests

* Remove routes for new account and import

* Remove old create account page

* Move import-account files to multichain directory

* Fix paths on the import files

* Remove deprecated component library variables

* Fix error property of add form

* Fix user-actions-benchmark
2023-06-13 10:07:01 -05:00
Mark Stacey
abd2a5559e
Update @metamask/gas-fee-controller to v6 (#19366)
* Update `@metamask/gas-fee-controller` to v6

The `@metamask/address-book-controller` package has been updated to v3.
This version was part of the [core monorepo v53](MetaMask/core#1385)
release. The remaining packages released as part of v53 will be updated
in later PRs.

This release included a number of breaking changes, but most of them
do not affect the extension:

* Bump to Node 16
  * The extension already uses Node.js v16
* The `getChainId` constructor parameter now expects a `Hex` return
type rather than a decimal string
  * The extension was already passing in a `getChainId` parameter that
returned `Hex`
* The gas fee controller messenger now requires the
`NetworkController:stateChange` event instead of the
`NetworkController:providerConfigChange` event
  * This does not apply if `onNetworkStateChange` and `getChainId` are
provided to the constructor, which is the case here.
* Update `@metamask/network-controller` dependency and peer dependency
  * This dependency is only used for types, and none of the type
changes affect how the extension interacts with this controller.

The one change that did have an impact is that the constructor
parameter `onNetworkStateChange` now expects event handlers to be
passed the full network state.

Relates to #19271

* Ensure chainid always matches mainnet in test builds

This is a bit strange, but this is how the tests were setup previously.

* Fix accidental state mutation

* Remove hardcoded mainnet chain ID from test builds
2023-06-13 12:13:13 -02:30
Frederik Bolding
be7900e9e9
[FLASK] Bump RateLimitController to v3 (#19578)
* Bump RateLimitController to latest

* Regen LavaMoat policies
2023-06-13 15:04:28 +02:00
Dan J Miller
bae279b79e Update flask entry in changelog, for v10.32.0 2023-06-13 09:05:08 -02:30
Bernardo Garces Chapero
b072a5c954 accept approval request first (#19409) 2023-06-13 07:07:24 -02:30
Victorien Gauch
6c3b284814 fix: update linea testnet rpc url (#19294)
Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com>
Co-authored-by: Dan J Miller <danjm.com@gmail.com>
2023-06-13 07:02:09 -02:30
Dan J Miller
6beeef5065 Changelog lintfix, v10.32.0 2023-06-13 06:58:01 -02:30
Matthew Walsh
4f4192c6f4
Await approval request in transaction controller (#19197) 2023-06-13 10:17:32 +01:00
Elliot Winkler
f77b1f65e2
Upgrade assets-controllers to v9 (#19472) 2023-06-09 15:48:48 -05:00
Elliot Winkler
e96b6860a4
Check Node (and Yarn) versions at install (#19537)
Unlike Yarn Classic, Yarn Berry will not verify that the current version
of Node being used matches the `engines` field in `package.json`.
However, someone has written a plugin, [`engines`][1], that provides
this missing functionality, and this commits adds that plugin. This
should ensure that all developers are using the correct version of Node.
(In addition to checking the current Node version, the plugin also
checks the current Yarn version.)

[1]: https://github.com/devoto13/yarn-plugin-engines
2023-06-09 11:23:23 -06:00
Victorien Gauch
a6b46a10ea
fix: update linea testnet rpc url (#19294)
Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com>
Co-authored-by: Dan J Miller <danjm.com@gmail.com>
2023-06-09 14:31:02 -02:30
Nidhi Kumari
f11596710c
UX Multichain: Updated header to use picker network in popup view (#19514)
* updated avatar network to use picker network in popup view

* removed unused locale

* fixed the extra gap

* fixed css

* fixed lint error

* updated aria label
2023-06-09 21:30:11 +05:30
Frederik Bolding
1a8a263cc1
[FLASK] Align update error state with Figma (#19547)
Co-authored-by: Brad Decker <bhdecker84@gmail.com>
2023-06-09 16:50:51 +02:00
Frederik Bolding
3e1fb2a4be
[FLASK] Fix usages of getSnapName (#19546) 2023-06-09 16:37:38 +02:00
Hassan Malik
ff36e32fb0
[FLASK] Improve snaps connect flow (#19461)
* add todo comments

* add snaps-connect component

* added new messages

* added component scss files to main scss files

* remove dead code and add snap-connect-cell

* update snaps connect

* updated messages and styling

* update messages and css

* update css

* moved snaps privacy warning into snaps connect, moved snaps connect error into snap install

* added story and removed unused import

* fix style linting and move snaps connect error css

* removed unused message

* ran lavamoat policy generation

* fix fencing

* some more css changes

* Fix scrolling and box shadow

* added comment, fixed quote

* Align more with Figma

* Regen LavaMoat policies

* bring back privacy logic to permission page container

* Revert scrolling changes + fix snaps icon

* fix linting, reintroduced dedupe logic and additionally addressed a corner case

* made some fixes

* Fix scrolling with multiple snaps

* add dedupe logic to snaps connect and fix spacing issue

* policy regen

* lint fix

* fix fencing

* replaced with new icon design, trimmed origin urls in certain places

* remove unused imports

* badge icon size

* Revert LM policy changes

* Use SnapAvatar for snaps-connect

* Use InstallError for connection failed

* Delete unused CSS file

* Remove unused CSS

* Use useOriginMetadata

* addressed PR comments

* fix linting errors

* add explicit condition

* fix fencing

* fix some more fencing

* fix util fencing issue

* fix storybook file, prevent null destructuring

* Fix storybook origin URLs

* Fix wrong prop name

---------

Co-authored-by: Frederik Bolding <frederik.bolding@gmail.com>
Co-authored-by: Guillaume Roux <guillaumeroux123@gmail.com>
Co-authored-by: Erik Nilsson <eriks@mail.se>
2023-06-09 10:36:38 -04:00
Danica Shen
95d57b254f
feature(19463): fix send-eth flaky test and refactor (#19531) 2023-06-09 15:01:12 +01:00
Dan J Miller
2258eaabef Merge branch 'master' into Version-v10.32.0 2023-06-09 10:52:45 -02:30
David Drazic
8eff1fc1ff
[FLASK] Update Snaps privacy notice (#19501)
* Update Snaps privacy notice

* Add changes to finalize update requirements

* Update scroll icon color

* Fix unit tests

* Update link

* Address small change requests

* Fix unit test

* move terms of use link to variable

---------

Co-authored-by: Guillaume Roux <guillaumeroux123@gmail.com>
2023-06-09 14:22:31 +02:00
Elliot Winkler
c84b85f953
Add getEthQuery action to NetworkController (#19420)
The core version of NetworkControler features a controller action,
`NetworkController:getEthQuery`, which, as its name implies, can be used
to get the EthQuery instance that has been created specially to talk to
the currently selected network. As a result there is a corresponding
unit test for this action.

To make the test suites between this version of NetworkController and
core easier to compare, this commit adds the action along with its test.
2023-06-08 18:00:33 -06:00
Elliot Winkler
25b7016f06
Sync NetworkController setActiveNetwork tests w/ core (#19405)
This makes it easier to visually compare differences in the
NetworkController unit tests between core and this repo.
2023-06-08 18:00:18 -06:00
Elliot Winkler
84969c1b0e
Bump minimum Node version to 16.20.0 (#19520)
When using older versions of 16.x we may get this error when attempting
to build the extension:

    TypeError: Cannot assign to read only property 'Symbol(Symbol.iterator)' of object '[object Set]'
      at Object.buildAllowedFlags (node:internal/process/per_thread:375:53)
      at process.get [as allowedNodeEnvironmentFlags] (node:internal/bootstrap/node:279:34)
      at get (<anonymous>)
      at getOwn (node:internal/bootstrap/loaders:182:5)
      at NativeModule.syncExports (node:internal/bootstrap/loaders:294:31)
      at ModuleWrap.<anonymous> (node:internal/bootstrap/loaders:274:22)
      at NativeModule.getESMFacade (node:internal/bootstrap/loaders:279:17)
      at NativeModule.compileForPublicLoader (node:internal/bootstrap/loaders:259:10)
      at loadNativeModule (node:internal/modules/cjs/helpers:49:9)
      at Function.Module._load (node:internal/modules/cjs/loader:804:15)

This error goes away when upgrading to a later version of 16.x.

To make sure this isn't an issue going forward, this commit bumps the
Node version requirement in `package.json`. 16.20.0 happens to be the
latest version of 16.x (to date).
2023-06-08 17:40:07 -06:00
Elliot Winkler
b8b0de78a3
Sync removeNetworkConfiguration tests w/ core (#19427)
This makes it easier to visually compare differences in the
NetworkController unit tests between core and this repo.
2023-06-08 17:30:15 -06:00
Elliot Winkler
987c08f75a
Sync NetworkController upsertNetworkConfiguration w/ core (#19426)
This makes it easier to visually compare differences in the
NetworkController unit tests between core and this repo.
2023-06-08 17:29:14 -06:00
George Marshall
006d90fee7
Deprecate JS version of Box in favor of TS version (#19530)
* Initail deprecation messages and updates

* Updating spelling of favour to US spelling favor
2023-06-08 13:37:09 -07:00
Erik Marks
9830b14786
Make eth_accounts return all permitted accounts (#18516)
* Make eth_accounts return all permitted accounts rather than just the most recently selected one

* fixup! Make eth_accounts return all permitted accounts rather than just the most recently selected one

* Trigger

---------

Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com>
Co-authored-by: Jiexi Luan <jiexiluan@gmail.com>
2023-06-08 13:01:43 -07:00
George Marshall
35ae06d824
Adding Box component in TS to component-library (#19363)
* Adding TS version of Box to component-library

* Updates to types and comments
2023-06-08 11:12:16 -07:00
Binij Shrestha
fa70aec286
added validTag string literal union (#19258)
* added validTag string literal union

* Adding deprecation message

---------

Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
Co-authored-by: Garrett Bear <gwhisten@gmail.com>
2023-06-08 11:01:00 -07:00
Nidhi Kumari
c0afc4d2a9
update icons for add-network (#19513) 2023-06-08 22:56:20 +05:30
Nidhi Kumari
a8e194a8f6
Send flow UI update (#19465)
* removed recents and added accounts in send flow

* updated add contact button and fixed full screen view

* updated ui for contacts

* fixed lint errors and test

* fixed lint errors

* fixed lint errors

* updated spec files

* fixed lint errors

* updated snapshot

* fixed edit in spec files

* removed unused console statement

* updated snapshot

* added userInput check

* updated snapshot and added hover
2023-06-08 22:39:39 +05:30
Mark Stacey
96c00df6f0
Reduce e2e test flakiness (#19507)
Three e2e tests have been updated to fix a possible race condition
causing intermittent e2e test failures.

In each of the updated tests, the test checks the current network.
The check is performed as a two-step process: locate the current
network element, then check the text to ensure it's correct.

This fails when the test driver finds the element before it re-renders.
If the test runs too quickly, it compares the text before the switch
is shown on screen, and the test fails.

Instead the tests use the element locator to describe what they want.
This tells the test driver to keep looking until the conditions are
met, ensuring the test doesn't fail unless the network switch takes
longer than the default timeout (which should not happen).

This is a good example of why we should avoid using assertions on
elements in e2e tests. Express your assertions as locators instead to
make the test more resilient in the case where the test runs before the
next render.
2023-06-08 14:34:48 -02:30
Thomas Huang
f5b158dda6
Master sync follow v10.31.1 (#19517)
* Version v10.31.1

* fix: keystone sign request break (#19349)

* Update changelog for v10.31.1

---------

Co-authored-by: MetaMask Bot <metamaskbot@users.noreply.github.com>
Co-authored-by: Soralit <soralitria@gmail.com>
Co-authored-by: Dan J Miller <danjm.com@gmail.com>
2023-06-08 09:17:41 -07:00
Danica Shen
d9450f454d
feat(17901): fix network, add-account and mv3 phishing warning issue (#19462)
* feat(17901): fix network, add-account and mv3 phishing warning issue

* feature(17901): trigger a pipeline

* feature(17901): remove findClickale to avoid conflicting clickElement
2023-06-08 14:21:21 +01:00
Suraj Jadhav
6ede0422ca
issue-18714: Replaced deprecated constants with enum in EthSignModal and HoldToRevealModal Component (#19499)
* issue-18714: Replaced deprecated constants with enum in eth-sign-modal.js

* issue-18714: Replaced deprecated constants with enum in hold-to-reveal-modal.js
2023-06-08 16:35:16 +05:30