1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-23 01:39:44 +01:00
Commit Graph

196 Commits

Author SHA1 Message Date
Matthew Walsh
07adba5926
Use transactions array in frontend (#20523)
Send the entire transactions array to the frontend rather than currentNetworkTxList and unapprovedTxs.
2023-09-04 16:48:25 +01:00
Ariella Vu
3f5bc978dd
Fix Blockaid and OpenSea BannerAlert placement for Token Allowance, Confirm Pages, SIWE, and Signature V3/V4 pages (#20530)
* refactor: add SecurityProviderBannerAlert ...props

* fix: mv security banner alerts on TokenAllowance

* fix: mv security BannerAlert in confirm page
https://github.com/MetaMask/MetaMask-planning/issues/1195

* fix: allow BlockaidBannerAlert null details

* refactor: rm SecurityProviderBannerAlert margin

* fix: SIWE security banner alert placement

* fix: rm extra banner alert padding for sig v3 & v4

* fix: update SecurityProviderBannerAlert snapshot

* fix: update BlockaidBannerAlert snapshot

---------

Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com>
2023-08-30 07:05:53 -07:00
Dhruv
07abc53cce
fix/BannerBase to TS (#20421)
* BannerBase to TS

* snapshot updates

* more snapshot updates

* addressing type definition error

* updating eth-sign-modal snapshot

* Updates to stories, types and adding data-testid

* Updating snapshots

* updating snapshot of blockaid-banner-alert and adding unit test for childrenWrapperProps

* BannerBase updates to stories, adding locale for close button, removing static data-testid in favor of using it at the instance, updating snapshots associated with those changes

* Removing incorrect arg from storybook file

* Updating html element in security provider e2e test to match BannerBase. Also updating snapshot of ConfirmTransaction page

* Fixing e2e tests

---------

Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
2023-08-18 14:52:40 -07:00
Albert Olivé
60f149178c
[MMI] Set approved status in tx controller in MMI logic (#20507)
* fix(custodial-signing): set approved status in tx controller in MMI logic

* Fixed the issue that was not showing custody-confirm-link

---------

Co-authored-by: Shane Terence Odlum <shane.odlum@consensys.net>
2023-08-18 14:38:51 +02:00
Pritam Dhara
6512cacec8
Replaced ActionableMessage in confirm-page-container-content (#20417)
* Replaced ActionableMessage in confirm-page-container-content

* Updated Snapshot of confirm-transaction-base

* Updated BannerAlert className

* Using component API and replacing ErrorMessage

* Update snapshot

---------

Co-authored-by: George Marshall <george.marshall@consensys.net>
2023-08-15 14:59:29 -07:00
Alex Donesky
6594f7074e
adapt to use networksMetadata state instead of single networkStatus and networksDetails state (#20219) 2023-08-03 12:31:35 -05:00
David Walsh
bab1670432
Restructure CurrencyDisplay to use Design System (#19171)
* Restructure CurrencyDisplay to use Design System

* Add storybook, remove CSS

* Update ui/components/ui/currency-display/currency-display.component.js

Co-authored-by: George Marshall <george.marshall@consensys.net>

* Update ui/components/ui/currency-display/currency-display.component.js

Co-authored-by: George Marshall <george.marshall@consensys.net>

* Update ui/components/ui/currency-display/currency-display.stories.js

Co-authored-by: George Marshall <george.marshall@consensys.net>

* Update ui/components/ui/currency-display/currency-display.component.js

Co-authored-by: George Marshall <george.marshall@consensys.net>

* Update ui/components/ui/currency-display/currency-display.stories.js

Co-authored-by: George Marshall <george.marshall@consensys.net>

* Update ui/components/ui/currency-display/currency-display.stories.js

Co-authored-by: George Marshall <george.marshall@consensys.net>

* Remove deprecated imports, import EtherDenomination

* Update jest

* Use TextVariant: Inherit to keep correct font-size

* Snapshots

* Switch from boxProps to props

---------

Co-authored-by: George Marshall <george.marshall@consensys.net>
2023-07-25 14:32:21 -05:00
Harsh Shukla
84ff66c373
Part of #17670 for ui\components\app\transaction-detail-item\transaction-detail-item.component.js (#19980)
* Part of #17670 for ui\components\app\transaction-detail-item\transaction-detail-item.component.js

* Update transaction-detail-item.component.js

---------

Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
2023-07-24 21:09:56 -07:00
George Marshall
bf61322ee1
Update Text import paths: /app (#20083)
* Updating import paths

* Updating snapshots

* Fixing lint issues

* Updating snapshots
2023-07-19 15:32:35 -07:00
Albert Olivé
b5ece42ca1
[MMI] Fix Connect MMI and Deep link Flows (#19881)
* Sending showCustodyConfirmLink as a prop and fixing other issues

* Upgraded MMI extension monrepo and trying to fix the issue

* prevents deeplink from closing

* Fixed styles of Custody view and changed the place of it

* Fixed CI issues

* fixing eslint issues

* Update LavaMoat policies

* fixing tests

* Fixed test

* updated snapshots

* reorder, otherwise it won't make sense

* adds necessary methods

* removes duplicated key value

* updated snapshot

---------

Co-authored-by: Antonio Regadas <antonio.regadas@consensys.net>
Co-authored-by: MetaMask Bot <metamaskbot@users.noreply.github.com>
Co-authored-by: António Regadas <apregadas@gmail.com>
2023-07-13 10:42:08 +02:00
Mark Stacey
ec7e7fdf6d
Fix fallback gas estimation (#19746)
* Fix fallback gas estimation

Our fallback gas estimation was failing due to a bug in the
`@metamask/controller-utils` package. This was causing gas estimation
to fail completely on certain networks (those not supported by our gas
estimation APIs and non EIP-1559 compatibile), and it was causing the
fallback gas estimation operation (in case our API was down) to fail
across all networks.

Fixes https://github.com/MetaMask/metamask-extension/issues/19735

* Add e2e tests

E2E tests have been added to capture gas estimation. Cases are added
for our API, for the fallback estimate, and for non-EIP-1559 estimates.

As part of this work, the legacy gas API had to be disabled. This was
being used in e2e tests but was dead code in production. It needed to
be disabled to ensure the code under test was reachable.

* Fix gas API referenced in e2e test

* Update unit test snapshots
2023-06-26 16:13:16 -02:30
Daniel
8b3e3c8a58
Swaps UI update (#19169) 2023-06-15 20:17:21 +02:00
Albert Olivé
08b881880f
[MMI] Improved code, fixed bugs and added more tests (#19488)
* Improved code, fixed bugs and added more tests

* removing tabKey prop as is causing to fail other test
2023-06-08 11:01:06 +02:00
Albert Olivé
2070e5e42a
Feature/mmi 3009 confirm transaction base code fences (#19335)
* Added code fences

* Continue working on this ticket

* Fixed policies

* Added compliance-row component

* Fixed tests and css

* Fixed invalid locale

* Fixing linting

* Add optional check

* Fixing issues

* Fixed storybook

* Added missing dependency

* ran lavamoat auto

* ran dedupe and lavamoat

* lint

* Removed compliance row

* Removed unneeded package

* Removed unneeded proptyes

* updates mmi packages

* updating lavamoat

* formatting main

* Fixed conflicts

* updates lock file

* Moved code fences to have them all in the same place

* Updated yarn.lock and lavamoat

* remove linebreak

* Improved logic in order to not have many code fences and improve readability

* Fixing proptypes issues with eslint

* runs lavamoat auto

* Testing fixes issue e2e tests

* Testing issues

* Reverting code fences container

* Fixing issue with binding

* Added code fences in proptypes

* Reverting code fences

* Removed institutional from main lavamoat

* Added code fences in confirm transaction base component

* Adding tests for handleMainSubmit

* Improving code

* Added test for handleMainSubmit

* Removed waitFor

---------

Co-authored-by: Antonio Regadas <antonio.regadas@consensys.net>
Co-authored-by: António Regadas <apregadas@gmail.com>
2023-06-07 08:43:28 +02:00
Jyoti Puri
f1de905be7
Fix details when transferring NFT not added to wallet (#19045) 2023-06-02 18:33:10 +05:30
legobeat
dfafdbb6bd
Revert "[MMI] Add confirm-transaction-base code fences (#18795)" (#19328)
This reverts commit 97a9834182.

Co-authored-by: António Regadas <apregadas@gmail.com>
2023-05-30 21:39:38 +09:00
Albert Olivé
97a9834182
[MMI] Add confirm-transaction-base code fences (#18795)
* Added code fences

* Continue working on this ticket

* Fixed policies

* Added compliance-row component

* Fixed tests and css

* Fixed invalid locale

* Fixing linting

* Add optional check

* Fixing issues

* Fixed storybook

* Added missing dependency

* ran lavamoat auto

* ran dedupe and lavamoat

* lint

* Removed compliance row

* Removed unneeded package

* Removed unneeded proptyes

* updates mmi packages

* updating lavamoat

* formatting main

* Fixed conflicts

* updates lock file

* Moved code fences to have them all in the same place

* Updated yarn.lock and lavamoat

* remove linebreak

* Improved logic in order to not have many code fences and improve readability

* Fixing proptypes issues with eslint

* runs lavamoat auto

* Testing fixes issue e2e tests

* Testing issues

* Reverting code fences container

* Fixing issue with binding

* Added code fences in proptypes

* Reverting code fences

---------

Co-authored-by: Antonio Regadas <antonio.regadas@consensys.net>
Co-authored-by: António Regadas <apregadas@gmail.com>
2023-05-29 16:50:56 +01:00
Ariella Vu
813ad984ce
Fix contract interaction recipient and contract address (#18855) 2023-05-18 18:19:40 +01:00
Albert Olivé
a017a1bae0
[MMI] Added note to trader code fencing (#18051)
* Added note to trader code fencing

* Started adding code fences in signature-request

* Finished code fencing

* Improving code

* adds check and runs prettier

* Fixed storybook and code fences bundle

* Added missing dependency

* updates fences

* fewer lines

* undo previously merged PR

* ran lavamoat auto

* adds test

* prettier

---------

Co-authored-by: António Regadas <apregadas@gmail.com>
Co-authored-by: Antonio Regadas <antonio.regadas@consensys.net>
Co-authored-by: Brad Decker <bhdecker84@gmail.com>
2023-05-16 16:44:08 +01:00
António Regadas
229906d09a
clean up and adds a code fence (#19005) 2023-05-04 15:57:12 +01:00
Mark Stacey
d1cea85f33
Rename provider to providerConfig (#18907)
* Rename `provider` to `providerConfig`

The network controller `provider` state has been renamed to
 `providerConfig`. This better reflects what this state is, and makes
this controller more closely aligned with the core network controller.

All references to the provider configuration have been updated to
prefer `providerConfig` over `provider`, to make the distinction clear
between a provider and provider config.

Closes #18902

* Add migration
2023-05-02 13:23:20 -02:30
Mark Stacey
88ae10418b
Expand usage of getProviderConfig selector (#18906)
The `getProviderConfig` selector is now used anywhere the `provider`
state was previously referenced directly. This was done to simplify
renaming this state from `provider` to `providerConfig` in a later PR.

Note that there are many opportunities left to use more-specific
selectors (e.g. `getChainId()` over `getProviderConfig().chainId`), but
that was intentionally omitted from this PR to reduce the size. I
started going down this path and it quickly exploded in scope.

Relates to #18902
2023-05-02 10:06:24 -02:30
Ariella Vu
a5d7cf3319
Transaction cleanup and fix TransactionDetailItem key not unique bug (#18899)
* TransactionDetailItem: allow empty detailText

* TxDetailItem: fix keys; ensure unique keys
2023-05-02 00:42:59 -03:00
Jyoti Puri
4bad30c94d
Show gas warning for legacy networks also (#18871) 2023-05-01 20:33:32 +05:30
Jyoti Puri
82a64195a2
Enable editing L2 gas on optimism (#18217) 2023-04-26 05:43:38 +05:30
Jyoti Puri
c6aa4f38c5
Fix approve all warning modal (#18613)
* Fix approve all warning modal

* fix

* fix

* fix
2023-04-18 13:22:16 -02:30
Niranjana Binoy
fedd6d4970
New reusable gas-display component (#17976) 2023-04-17 10:34:26 -04:00
Nidhi Kumari
0614b3db68
UXMultichain: update segmented tabs (#18283)
* update tabs to functional component

* updated Tabs to use Box

* updated css for tab

* updated css on home screen

* updated snapshot

* fixed defaultkey and active key value for new keys
2023-04-03 23:27:14 +05:30
Elliot Winkler
1304ec7af5
Convert shared/constants/metametrics to TS (#18353)
We want to convert NetworkController to TypeScript in order to be able
to compare differences in the controller between in this repo and the
core repo. To do this, however, we need to convert the dependencies of
the controller to TypeScript.

As a part of this effort, this commit converts
`shared/constants/metametrics` to TypeScript. Note that simple objects
have been largely replaced with enums. There are some cases where I even
split up some of these objects into multiple enums.

Co-authored-by: Mark Stacey <markjstacey@gmail.com>
2023-04-03 09:31:04 -06:00
Elliot Winkler
ed3cc404f2
NetworkController: Split network into networkId and networkStatus (#17556)
The `network` store of the network controller crams two types of data
into one place. It roughly tracks whether we have enough information to
make requests to the network and whether the network is capable of
receiving requests, but it also stores the ID of the network (as
obtained via `net_version`).

Generally we shouldn't be using the network ID for anything, as it has
been completely replaced by chain ID, which all custom RPC endpoints
have been required to support for over a year now. However, as the
network ID is used in various places within the extension codebase,
removing it entirely would be a non-trivial effort. So, minimally, this
commit splits `network` into two stores: `networkId` and
`networkStatus`. But it also expands the concept of network status.

Previously, the network was in one of two states: "loading" and
"not-loading". But now it can be in one of four states:

- `available`: The network is able to receive and respond to requests.
- `unavailable`: The network is not able to receive and respond to
  requests for unknown reasons.
- `blocked`: The network is actively blocking requests based on the
  user's geolocation. (This is specific to Infura.)
- `unknown`: We don't know whether the network can receive and respond
  to requests, either because we haven't checked or we tried to check
  and were unsuccessful.

This commit also changes how the network status is determined —
specifically, how many requests are used to determine that status, when
they occur, and whether they are awaited. Previously, the network
controller would make 2 to 3 requests during the course of running
`lookupNetwork`.

* First, if it was an Infura network, it would make a request for
  `eth_blockNumber` to determine whether Infura was blocking requests or
  not, then emit an appropriate event. This operation was not awaited.
* Then, regardless of the network, it would fetch the network ID via
  `net_version`. This operation was awaited.
* Finally, regardless of the network, it would fetch the latest block
  via `eth_getBlockByNumber`, then use the result to determine whether
  the network supported EIP-1559. This operation was awaited.

Now:

* One fewer request is made, specifically `eth_blockNumber`, as we don't
  need to make an extra request to determine whether Infura is blocking
  requests; we can reuse `eth_getBlockByNumber`;
* All requests are awaited, which makes `lookupNetwork` run fully
  in-band instead of partially out-of-band; and
* Both requests for `net_version` and `eth_getBlockByNumber` are
  performed in parallel to make `lookupNetwork` run slightly faster.
2023-03-30 16:49:12 -06:00
Garrett Bear
79b2deb194
update text component color to use box color (#18246)
snapshot updates

fix snapshots

add background colors

fix snapshots
2023-03-23 13:00:37 -07:00
Jyoti Puri
5dee7904d6
Extracting out title component from confirm-transaction-base (#17991) 2023-03-23 22:21:33 +04:00
Mark Stacey
d6b49ae383
Refactor KeyringTypes constant (#17490)
The `HardwareKeyringTypes` constant has been renamed to `KeyringTypes`
and moved to a separate constants module, to reflect that it contains
more than just hardware wallet keyring types. This corrects a mistake
made recently during a TypeScript conversion.
2023-03-21 12:13:22 -02:30
Ayush
1c613a4556
Part of #17670: Replace Typography with Text component (#17959)
* Updated confirm-page-container-summary.component.js

* Updated snap-insight.js

* Updated confirmation-warning-modal.js

* Updated create-new-vault.js

* Fixing import errors, linting errors and adding a story

* Updating storybook path

* Updating snapshot

---------

Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
2023-03-15 17:00:54 -07:00
Jyoti Puri
0ac54e40ee
Extract out confirm-data and confirm-hex-data components from confirm-transaction-base.component.js (#17822) 2023-03-09 10:38:37 +05:30
Nidhi Kumari
9f17e2f94b
UX Icon: updated fa-exclamation-circle (#17879) 2023-02-24 12:52:11 -06:00
Jyoti Puri
1c0ff8a6e8
Fix state in confirm transaction (#17838) 2023-02-24 22:37:26 +05:30
Ariella Vu
7d1dc7f177
Cleanup: clearTimeout on useEffect for gas estimation and prevent state update on unmounted ConfirmTransactionBase (#17804) 2023-02-17 22:11:50 +07:00
Nidhi Kumari
33cc8d587a
NFT: Replaced all the instances of collectibles with NFTs (#17741)
* replaced all the instances of collectibles with nfts

* updated actions

* updated e2e seeder

* updated confirm Approve test

* updated test dapp change

* updated test dapp change

* nit fix

* nit fix

* updated casing and snapshots

* updated casinG

* added migrations

* updated ,igration

* updated 078.test

* updated tests for 078 migration

* updated migration

* updated 078 index.js
2023-02-17 00:53:29 +05:30
Jyoti Puri
9979020252
Confirm transaction test (#17780) 2023-02-16 20:23:15 +05:30
Dan J Miller
c3100d8fe4
Ensure simulation failure warning is shown on all networks and accounts (#17458)
* Ensure simulation failure warning is shown on all networks and accounts

* Add e2e test to cover failure warning behaviour on non-eip-1559 network

* Fix new e2e test
2023-02-10 11:45:54 -03:30
amerkadicE
0c2af508ef
Fix recent recipient order (#16346) 2023-02-09 23:15:52 +05:30
Maarten Zuidhoorn
8cda817f5c
Add hardcoded list of human-readable snap names (#17595)
* Add hardcoded list of human-readable snap names

* Make the text properly bold

* Small style fixes to approval screen

* Run yarn lint:fix

* Update snapshots
2023-02-06 11:05:57 +01:00
Danica Shen
794f3039f1
feature: migrate design-system.ts (#17518) 2023-02-02 20:15:26 +00:00
Vladimir Saric
308151cd49
Display a warning and gas fee component for token allowance and NFT flow when transaction is expected to fail (#17437)
Co-authored-by: Pedro Figueiredo <pedro.figueiredo@consensys.net>
Co-authored-by: Dan J Miller <danjm.com@gmail.com>
Co-authored-by: Brad Decker <bhdecker84@gmail.com>
2023-02-01 17:14:09 -06:00
Jyoti Puri
8fd65a698e
Fix build (#17538) 2023-02-01 19:07:15 +05:30
Jyoti Puri
26222a9b27
Refactoring confirm-transaction-base component (#17484) 2023-02-01 11:24:41 +05:30
Brad Decker
3ff12d70e9
Replace usages of conversion util in rest of UI folder in favor of Numeric (#17334) 2023-01-24 08:44:49 -06:00
Nidhi Kumari
c5368c152b
Added storybook check to CI (#17092)
* added storybook test runner

* added test runner in ci

* updated test for ci and fixed lint error

* updated lavamoat policy

* updated test command

* updated playwright

* changed command to storybook;ci

* updated command

* updated instance for test-storybook

* updated playwright

* added playwright step

* replaced concurrently with start-server-and-test

* updated the static storybook directory

* replaced first with last

* updated lock file

* replaced first with last

* updated test-storybook with maxworkers

* updated .depchechrc

* updated yml

* removed id from banner base

* replaced broken stories with .stories-to-do.js extesnsion

* updated token allowance story

* removed duplicacies from yarn

* fixed lavamoat

* removed filename comment

* updated links for docs

* fixed file extension for stories

* updated path for stories.json

* updated stories.json path

* yarn updated

* updated stories

* updated yarn

* updated wait on
2023-01-21 00:57:46 +05:30
Brad Decker
92f6ea6f6b
Relocate conversion utils to shared/modules/conversion.utils.js (#17319) 2023-01-20 11:04:37 -06:00