1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-30 08:09:15 +01:00
Commit Graph

13593 Commits

Author SHA1 Message Date
Thomas Huang
b705bbc809
Merge pull request #13010 from MetaMask/master-sync
Sync develop with master
2021-12-07 15:49:10 -06:00
Thomas Huang
5002b341ce Merge remote-tracking branch 'origin/develop' into master-sync 2021-12-07 15:08:05 -06:00
Thomas Huang
0893a46ef5
Merge pull request #13008 from MetaMask/Version-v10.7.1
Version v10.7.1 RC
2021-12-07 14:35:55 -06:00
Alaa Hadad
a858b85899
Tx decoding accreditation (#12918)
* feature: adding support for truffle and etherscan accreditation

* Fix scss linting

* fix styling and classnames

* Switch font size to rem

* Update ui/components/app/transaction-decoding/components/ui/accreditation/accreditation.component.js

Co-authored-by: George Marshall <georgewrmarshall@gmail.com>

* Update ui/components/app/transaction-decoding/components/ui/accreditation/index.scss

Co-authored-by: George Marshall <georgewrmarshall@gmail.com>

* Update ui/components/app/transaction-decoding/components/ui/accreditation/accreditation.component.js

Co-authored-by: George Marshall <georgewrmarshall@gmail.com>

* Update ui/components/app/transaction-decoding/components/ui/accreditation/accreditation.component.js

Co-authored-by: George Marshall <georgewrmarshall@gmail.com>

* Fix linting

Co-authored-by: g. nicholas d'andrea <gnidan@trufflesuite.com>
Co-authored-by: Dan J Miller <danjm.com@gmail.com>
Co-authored-by: George Marshall <georgewrmarshall@gmail.com>
Co-authored-by: g. nicholas d'andrea <gnidan@users.noreply.github.com>
2021-12-07 16:13:14 -03:30
Thomas Huang
8e1d862ec1 Update changelog for v10.7.1 2021-12-07 13:42:42 -06:00
Jyoti Puri
9c5bc2ba6d
Adding featureflags to .metamaskrc.dist file (#12962) 2021-12-07 13:31:00 -06:00
Thomas Huang
8cc72e2087 Bump eth-json-rpc-middlware from 8.0.0 to 8.0.1 (#13005) 2021-12-07 13:22:30 -06:00
MetaMask Bot
ed6880f5ce Version v10.7.1 2021-12-07 19:19:23 +00:00
Thomas Huang
4d9a2a8b2f
Bump eth-json-rpc-middlware from 8.0.0 to 8.0.1 (#13005) 2021-12-07 13:13:30 -06:00
Dan J Miller
f5a086ded9
Update tx-insights url (#12997) 2021-12-07 15:42:46 -03:30
George Marshall
80134137ba
Updating storybook documentation guidelines (#12957)
* Updating storybook documentation guidelines

* Grammer fixes
2021-12-07 10:24:06 -08:00
igorms-cons
981db6e0ea
Fix confirmed transaction time (#12633) 2021-12-07 12:16:40 -06:00
Etienne Dusseault
5205f02de6
Fix Actionable message for new Storybook format (#12874)
* actionable-message

* remove usage table

* Updating stories

* linting fix

Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
2021-12-07 10:01:17 -08:00
Etienne Dusseault
09ba8d689e
Fix icon component for new Storybook format (#12887)
* icon

* removed unused var

* Updating proptype comments and adding missing stories

Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
2021-12-07 10:01:02 -08:00
Etienne Dusseault
61935835a0
Fix identicon component for new Storybook format (#12888)
* identicon

* Upating identicon story and withBorder prop to work dynamically

Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
2021-12-07 09:58:52 -08:00
Etienne Dusseault
51fa7734fd
text-field (#12889) 2021-12-07 09:57:23 -08:00
Etienne Dusseault
5273aa334e
Fix account-list-item component for new Storybook format (#12893)
* account-list-item

* Updates

Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
2021-12-07 09:45:04 -08:00
Etienne Dusseault
068e97314e
Fix dropdown-input-pair component to for new Storybook format (#12895)
* input pair

* proptype comments

* Update

Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
2021-12-07 09:44:25 -08:00
Etienne Dusseault
c0f03d827d
Fix popover component to for new Storybook format (#12896)
* popover

* add proptype comments

* Update

* updating use state var name

Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
2021-12-07 09:38:33 -08:00
Etienne Dusseault
de4b54c230
info-tooltip (#12901) 2021-12-07 09:37:39 -08:00
Etienne Dusseault
bd17160e2a
Fix slider component to for new Storybook format (#12897)
* slider

* removing args table as it doesn't work with mui withStyles

Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
2021-12-07 09:37:07 -08:00
Etienne Dusseault
d5b85c0e54
Fix radio-group component to for new Storybook format (#12900)
* radio-group

* tweak proptype descs
2021-12-07 09:36:16 -08:00
Matthew Epps
311ea021f3
Optimize rest of swaps flow (#12939) 2021-12-07 11:33:13 -06:00
Mark Stacey
af3bdbbfc9
Add yarn-deduplicate step to README (#13004)
The instructions for changing dependencies have been updated to include
the `yarn yarn-deduplicate` step. This command removes duplicate
dependencies in the lockfile where possible while keeping everything
in-range, and it's checked in CI in the `test-yarn-dedupe` job that was
added in #12737.
2021-12-07 14:01:55 -03:30
Etienne Dusseault
f9eaf2f005
Updating PulseLoader story format (#12818) 2021-12-07 08:40:38 -08:00
Etienne Dusseault
ac463bee71
Fix transaction-detail-item for new Storybook format (#12820) 2021-12-07 08:40:05 -08:00
Etienne Dusseault
9e59c3db77
Fix transaction-detail for new Storybook format (#12819) 2021-12-07 08:39:44 -08:00
Thomas Huang
028de38e57
Capitalize Activity log (#13002)
* Capitalize Activity log

* Update app/_locales/en/messages.json

Co-authored-by: Mark Stacey <markjstacey@gmail.com>
2021-12-07 10:31:13 -06:00
Dan J Miller
7212dcf098
Tx insights fixes (#12988)
* Ensure that function representation on hex and data tabs are consistent

* Don't show redundant hex tab when deploying contract

* Show standard pointer cursor on error messages in tx-decoder component

* Don't show activity log for incoming transactions

* Update localization

* Fix error message
2021-12-07 11:42:34 -03:30
Daniel
c8b697687f
Swaps UI redesign for the View Quote page (#12950)
* Update EIP-1559 UI on the View Quote page (WIP)

* UI redesign for the View Quote page in Swaps, update tests,  refactoring

* Update styles for the View Quote page

* Improve scrolling and styling for the View Quote page

* Update snapshots

* Fix a scrolling issue

* Use Ethereum mainnet for swaps API calls if it's Rinkeby

* UI / content updates on the View Quote page

* Remove unused content in Swaps

* Fix an ESLint issue

* Update UTs with the latest content

* Renaming

* Remove 2 more unused content strings
2021-12-07 00:21:26 -03:30
Erik Marks
31cf7c10a4
Permission System 2.0 (#12243)
# Permission System 2.0

## Background

This PR migrates the extension permission system to [the new `PermissionController`](https://github.com/MetaMask/snaps-skunkworks/tree/main/packages/controllers/src/permissions).
The original permission system, based on [`rpc-cap`](https://github.com/MetaMask/rpc-cap), introduced [`ZCAP-LD`](https://w3c-ccg.github.io/zcap-ld/)-like permissions to our JSON-RPC stack.
We used it to [implement](https://github.com/MetaMask/metamask-extension/pull/7004) what we called "LoginPerSite" in [version 7.7.0](https://github.com/MetaMask/metamask-extension/releases/tag/v7.7.0) of the extension, which enabled the user to choose which accounts, if any, should be exposed to each dapp.
While that was a worthwhile feature in and of itself, we wanted a permission _system_ in order to enable everything we are going to with Snaps.
Unfortunately, the original permission system was difficult to use, and necessitated the creation of the original `PermissionsController` (note the "s"), which was more or less a wrapper for `rpc-cap`.

With this PR, we shake off the yoke of the original permission system, in favor of the modular, self-contained, ergonomic, and more mature permission system 2.0.

Note that [the `PermissionController` readme](https://github.com/MetaMask/snaps-skunkworks/tree/main/packages/controllers/src/permissions/README.md) explains how the new permission system works.

The `PermissionController` and `SubjectMetadataController` are currently shipped via `@metamask/snap-controllers`. This is a temporary state of affairs, and we'll move them to `@metamask/controllers` once they've landed in prod.

## Changes in Detail

First, the changes in this PR are not as big as they seem. Roughly half of the additions in this PR are fixtures in the test for the new migration (number 68), and a significant portion of the remaining ~2500 lines are due to find-and-replace changes in other test fixtures and UI files.

- The extension `PermissionsController` has been deleted, and completely replaced with the new `PermissionController` from [`@metamask/snap-controllers`](https://www.npmjs.com/package/@metamask/snap-controllers).
- The original `PermissionsController` "domain metadata" functionality is now managed by the new `SubjectMetadataController`, also from [`@metamask/snap-controllers`](https://www.npmjs.com/package/@metamask/snap-controllers).
- The permission activity and history log controller has been renamed `PermissionLogController` and has its own top-level state key, but is otherwise functionally equivalent to the existing implementation.
- Migration number 68 has been added to account for the new state changes.
- The tests in `app/scripts/controllers/permissions` have been migrated from `mocha` to `jest`.

Reviewers should focus their attention on the following files:

- `app/scripts/`
  - `metamask-controller.js`
    - This is where most of the integration work for the new `PermissionController` occurs.
      Some functions that were internal to the original controller were moved here.
  - `controllers/permissions/`
    - `selectors.js`
      - These selectors are for `ControllerMessenger` selector subscriptions. The actual subscriptions occur in `metamask-controller.js`. See the `ControllerMessenger` implementation for details.
    - `specifications.js`
      - The caveat and permission specifications are required by the new `PermissionController`, and are used to specify the `eth_accounts` permission and its JSON-RPC method implementation.
        See the `PermissionController` readme for details.
  - `migrations/068.js`
    - The new state should be cross-referenced with the controllers that manage it.
      The accompanying tests should also be thoroughly reviewed.

Some files may appear new but have just moved and/or been renamed:

- `app/scripts/lib/rpc-method-middleware/handlers/request-accounts.js`
  - This was previously implemented in `controllers/permissions/permissionsMethodMiddleware.js`.
- `test/mocks/permissions.js`
  - A truncated version of `test/mocks/permission-controller.js`.

Co-authored-by: Mark Stacey <markjstacey@gmail.com>
2021-12-06 19:16:49 -08:00
George Marshall
3054991c9b
Updating styles so they don't override fontawesome, removing duplicate addons (#12971) 2021-12-06 15:55:21 -08:00
Etienne Dusseault
9fcfbe7609
Fix unlock-page component for new Storybook format (#12894)
* unlock-page

* Updating comments and removing broken args table

Co-authored-by: georgewrmarshall <george.marshall@consensys.net>
2021-12-06 15:08:13 -08:00
Dan J Miller
5554ca5e09
Update CHANGELOG.md
Co-authored-by: Thomas Huang <tmashuang@users.noreply.github.com>
2021-12-06 18:37:38 -03:30
ryanml
bab48c809a
Clear the clipboard after seed phrase is pasted (Restore vault) (#12987) 2021-12-06 12:17:56 -07:00
Mariona
6d135d7048
Fix: update URL for adding custom build on Firefox (#12978) 2021-12-06 15:22:25 -03:30
Jyoti Puri
2af45a656f
Adding validations for advance gas fee input fields (#12879) 2021-12-07 00:17:26 +05:30
Thomas Huang
d78cfebd43
Jestify app/scripts/lib/**/*.test.js (#12890)
* Jestify app/scripts/lib/*.test.js

* Mocha config on mocha test script

* Add app/scripts/lib to include subdirs
2021-12-06 10:40:39 -06:00
Jyoti Puri
6fc9b6b7a2
Using EIP-1559 V2 for approve transaction flow (#12906) 2021-12-06 22:09:35 +05:30
Jyoti Puri
a6bb503e52
Adding tooltips in edit gas fee network status section (#12916) 2021-12-06 21:32:23 +05:30
Alex Donesky
2dd8689d8a
fix gas-tooltip fonts (#12968) 2021-12-06 09:40:30 -06:00
Jyoti Puri
9dd5af3523
Implementing design feedbacks in EIP-1559 V2 flow (#12943) 2021-12-06 21:10:20 +05:30
Mark Stacey
b983971bfd
Disable remote-redux-devtools in non-dev builds (#12956)
`remote-redux-devtools` is now explicitly excluded and disabled in non-
dev builds, and in the `testDev` build. This was causing console errors
in the `testDev` build during e2e tests, which would cause certain
tests to fail.

This was already only supposed to be enabled for development builds,
but this library used the `NODE_ENV` environment variable to make that
determination. This gives us more control over when it's disabled.
2021-12-06 11:55:40 -03:30
ruleking
7c59fd035e
Update package.json + yarn.lock with contract-metadata version 1.31.0 (#12947)
* Update package.json: contract-metadata to newest release 1.31.0

* update lock file

* Fix: yarn-deduplicate lock file
2021-12-06 11:24:00 -03:30
Mark Stacey
b75ef5f0eb
Remove redundant EIP_1559_V2_ENABLED comparison (#12954)
A redundant comparison for the `EIP_1559_V2_ENABLED` variable has been
removed. This variable is a boolean, so it can be treated as a boolean
directly in most cases.

One such comparison has been preserved for the purpose of allowing unit
testing, because `process.env` entries are always strings in Node.js. A
comment was added to explain this.
2021-12-06 11:23:02 -03:30
George Marshall
6d34d85f6e
Textarea UI component (#12688)
* Initial Textarea component

* added no-scroll class and css

* added tests

* removed comment from prettier, updated README title

* updated tests

* added resize tests

* fixed grammar

* updated scss

* changes per linter

* updated title to match new folder structure for storybook

* reverted unintended change

Co-authored-by: hmalik88 <hassan.malik@consensys.net>
Co-authored-by: Hassan Malik <41640681+hmalik88@users.noreply.github.com>
2021-12-03 11:54:29 -05:00
Jyoti Puri
cd4ddffd9c
Adding gas limit section on advance gas fee modal (#12865) 2021-12-03 21:29:48 +05:30
Alex Donesky
6542d16349
1559 v2 tooltips (#12750)
* add tooltips
2021-12-03 09:44:23 -06:00
Mark Stacey
56c91262e9
Disable React dev tools in testDev builds (#12955)
The React dev tools can result in console errors if dev tools is not
open during the test. Some of our e2e tests fail if there are any
console errors, so these errors break those tests.

`react-devtools` has been completely disabled for `testDev` builds to
make debugging e2e tests easier. The React dev tools can still be used
from development builds.
2021-12-03 11:22:43 -03:30
Mark Stacey
91af73b211
Remove invalid disableRipple prop (#12948)
The `disableRipple` prop was resulting in a React error in development
builds because it was unrecognized by React. This prop dates back to
when we were using the `@material-ui` Button class. It no longer serves
any purpose, so it has been removed.
2021-12-03 11:22:14 -03:30