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

14131 Commits

Author SHA1 Message Date
Mark Stacey
8b10b85891 Update lockfile
The lockfile became invalid due to dependencies introduced in cherry-
picked commits.
2022-03-21 23:07:20 -02:30
Mark Stacey
49e65a7061 Fix SrpInput small viewport styles (#14087)
The styles for smaller viewports were broken because I forgot to update
the small-screen grid template after adding the "paste-tip". The styles
have now been updated to fit the content properly on all of our
supported screen sizes.
2022-03-21 23:05:42 -02:30
Mark Stacey
0be6c65eb3
Fix SrpInput small viewport styles (#14087)
The styles for smaller viewports were broken because I forgot to update
the small-screen grid template after adding the "paste-tip". The styles
have now been updated to fit the content properly on all of our
supported screen sizes.
2022-03-21 22:11:53 -02:30
Guillaume Roux
37e49cb2ba
Dark Mode : Hide token confirm (#14076) 2022-03-21 16:37:15 -05:00
Mark Stacey
00341cd3b3 Split SRP input by word (#14016)
* Initial implementation of new SrpInput component

This new version of the SrpInput component uses a separate field for
each word of the SRP. Only one field can be revealed at a time, making
it less likely that it gets accidentally revealed to somebody.

* Fix copy mistakes

* Move container div from 'create vault' to 'srp-input', and setup grid layout

* Increase size of title

* Remove hard-coded width in Storybook to allow testing different viewport sizes

* Improve layout

* Improve margins

* Update dropdown text

* Expand SRP input section

* Remove unused localized messages

* Update dropdown option names in unit tests

* Replace checkbox with show/hide toggle

* Remove unused localized message

* Fix 'data-testid' prop name

* Fix e2e test imports using paste

* Use 'ActionableMessage' component for error message

* Convert error popover to actionable message

* Add tip about pasting the SRP

* Remove invalid prop

The "info" style of `ActionableMessage` is the default, so no type is
required.

* Use more readable test convenience methods

The method `toBeInTheDocument()` is now used over `not.toBeNull()` to
improve the readability of tests. Likewise, the convenience method
`.clear` is now used to clear fields rather than manually entering the
key combination to clear a field.

* Fix misspelled word
2022-03-21 18:53:07 -02:30
Mark Stacey
4adadd3325 Add ShowHideToggle component (#13979)
Add a new component for controlling whether a field should be shown
or hidden. This will be used in later PRs as a control for sensitive
fields that are hidden by default.

This component should be fully accessible. Both mouse and keyboard
interactions have been tested, and `aria-label` attributes have been
added to explain the two "eye" icons that don't have any corresponding
text.

Thorough unit tests have been written, testing all props except
`className` (I don't know how to test that using Jest/`jsdom`).
2022-03-21 18:51:19 -02:30
Mark Stacey
35f51275ad Add pasteIntoField webdriver method (#14004)
A new method has been added to the e2e webdriver for pasting text into
a field. This will be required to properly test a change to the SRP
input, which will be coming in a separate PR.

A few existing e2e tests have been updated to use this method to input
the SRP, to show that it works properly.
2022-03-21 18:51:18 -02:30
Mark Stacey
c154145e85 Add IconEye and IconEyeSlash icon components (#13978)
Add two new FontAwesome icon components. The first is an eye, and the
second is an eye with a slash through it. These will be used in a
subsequent PR for a "Show/Hide" toggle.
2022-03-21 18:51:18 -02:30
Mark Stacey
851f9b30b4 Add data-test-id prop to TextField component (#13973)
The `data-test-id` prop has been added to `TextField`. This prop allows
selecting this component more easily from e2e and unit tests. This is
required for a subsequent PR that includes a text field that cannot be
selected for by placeholder or contents or label (any of which would
have been preferable).
2022-03-21 18:51:18 -02:30
Mark Stacey
1eecc59969 Improve unit tests for SrpInput component (#13803)
The library `@testing-library/user-event` has been updated to the
latest beta version, so that our unit tests better model real user
interactions. In particular, I found that previously the `paste` event
was missing the `clipboardData` API, so it was impossible to implement
any custom handling of paste events (which we will need in later PRs).

See the `v14.0.0-beta.1` release notes for a list of all breaking
changes [1]. The main change is that all methods now return Promises.
The `paste` method has also been dramatically simplified.

The unit tests have also been updated to reset all mocks before each
test. These tests don't have any shared mocks, but this is generally a
good practice, to ensure that tests don't develop accidental inter-
dependencies.

[1]: https://github.com/testing-library/user-event/releases/tag/v14.0.0-beta.1
2022-03-21 18:51:18 -02:30
Mark Stacey
22f9de9a2c Refactor: Extract SRP input from create vault component (#13720)
This is a pure refactor that extracts the SRP input from the
`CreateNewVault` component. This is intended to make future changes to
the SRP input easier, and to reduce duplication between the old and new
onboarding flows.

Extensive unit tests have been added for the new SRP input component.

A new test library was added (`@testing-library/user-event`) for
simulating user events with components rendered using the
`@testing-library` library.

A new helper method has been added (`renderWithLocalization`) for
rendering components using `@testing-library` with just our
localization contexts added as a wrapper. The localization contexts
were already added by the `renderWithProviders` helper function, but
there is no need for a Redux provider in these unit tests.
2022-03-21 18:51:18 -02:30
David Walsh
3f761ecd8c
Remove dead CSS code from Swaps (#14084) 2022-03-21 14:11:11 -07:00
Frederik Bolding
be17d8f3d9
snaps-skunkworks@0.10.6 (#14070)
* snaps-skunkworks@0.10.6

* iframe-execution-environment@0.4.2

Co-authored-by: Erik Marks <rekmarks@protonmail.com>
2022-03-21 13:55:08 -07:00
MetaMask Bot
716931a492 Version v10.11.3 2022-03-21 20:52:04 +00:00
Guillaume Roux
7596261bed
Dark Mode : ConfirmEncryptionPublicKey (#14074) 2022-03-21 14:56:30 -05:00
Mark Stacey
2931957870
Split SRP input by word (#14016)
* Initial implementation of new SrpInput component

This new version of the SrpInput component uses a separate field for
each word of the SRP. Only one field can be revealed at a time, making
it less likely that it gets accidentally revealed to somebody.

* Fix copy mistakes

* Move container div from 'create vault' to 'srp-input', and setup grid layout

* Increase size of title

* Remove hard-coded width in Storybook to allow testing different viewport sizes

* Improve layout

* Improve margins

* Update dropdown text

* Expand SRP input section

* Remove unused localized messages

* Update dropdown option names in unit tests

* Replace checkbox with show/hide toggle

* Remove unused localized message

* Fix 'data-testid' prop name

* Fix e2e test imports using paste

* Use 'ActionableMessage' component for error message

* Convert error popover to actionable message

* Add tip about pasting the SRP

* Remove invalid prop

The "info" style of `ActionableMessage` is the default, so no type is
required.

* Use more readable test convenience methods

The method `toBeInTheDocument()` is now used over `not.toBeNull()` to
improve the readability of tests. Likewise, the convenience method
`.clear` is now used to clear fields rather than manually entering the
key combination to clear a field.

* Fix misspelled word
2022-03-21 16:39:26 -02:30
Elliot Winkler
4447727eb6
Add TypeScript to the linting process (#13495)
This commit allows developers to write TypeScript files and lint them
(either via a language server in their editor of choice or through the
`yarn lint` command).

The new TypeScript configuration as well as the updated ESLint
configuration not only includes support for parsing TypeScript files,
but also provides some compatibility between JavaScript and TypeScript.
That is, it makes it possible for a TypeScript file that imports a
JavaScript file or a JavaScript file that imports a TypeScript file to
be linted.

Note that this commit does not integrate TypeScript into the build
system yet, so we cannot start converting files to TypeScript and
pushing them to the repo until that final step is complete.
2022-03-21 12:54:47 -06:00
David Walsh
ea4181d227
Dark Mode: Snackbar component (#14075) 2022-03-21 19:26:21 +01:00
VSaric
b797e24b9e
Don’t show ‘What’s new’ pop up to new users (#13886) 2022-03-21 12:57:59 -05:00
George Marshall
8ef28702f2
Dark Mode: more icon updates (#14064)
* Updating settings icons to use fontawesome and removing unused svgs

* Updating more icons to use font-awesome icons and removing unused svgs
2022-03-21 08:29:57 -07:00
George Marshall
1c008eb966
Updating settings icons to use fontawesome and removing unused svgs (#14061) 2022-03-21 08:58:36 -05:00
George Marshall
9d1818df1b
Dark Mode: updating COLORS.BLACK to COLORS.TEXT_DEFAULT (#14063) 2022-03-21 08:58:27 -05:00
George Marshall
40c341f1c0
Updating permissions connect to use correct dark mode colors (#14065) 2022-03-21 08:58:14 -05:00
David Walsh
59a5566958
Dark Mode: Send flow inputs (#14006) 2022-03-21 08:55:01 -05:00
vonoro
fc50115fef
fix: typo in messages.json (#14067) 2022-03-21 08:41:17 -05:00
David Walsh
dd0d844e8e
Dark Mode: Modals (#14030) 2022-03-21 08:39:28 -05:00
David Walsh
fc2e104ec6
Dark Mode: Permissions header (#14017) 2022-03-21 08:35:58 -05:00
David Walsh
20b6bc0bd4
Dark Mode: Signature Windows (#14018) 2022-03-21 08:35:23 -05:00
David Walsh
ac0191a5b3
Dark Mode: Remove unused colors (#14025) 2022-03-21 08:35:10 -05:00
David Walsh
ccecc7d036
Dark Mode: Implement 3-Dot Menu Hover (#14027) 2022-03-21 08:34:54 -05:00
David Walsh
cd6dc8157a
Dark Mode: Button Group (#14031) 2022-03-21 08:34:29 -05:00
David Walsh
1bb276bb9a
Remove AddToAddressBook modal (#14032) 2022-03-21 08:34:10 -05:00
David Walsh
a79d3eb928
Dark Mode: Select Quote Popover (#14054) 2022-03-21 08:33:22 -05:00
David Walsh
bb41494ccd
Dark Mode: Token Details (#14056) 2022-03-21 08:33:06 -05:00
David Walsh
579714b7f6
Remove unused CircleIcon and AlertCircleIcon components (#14057) 2022-03-21 08:31:32 -05:00
David Walsh
95ecd56689
Dark Mode: Update Dialog colors (#14058) 2022-03-21 08:30:13 -05:00
David Walsh
78f748b36d
Dark Mode: Collectibles (#14060) 2022-03-21 08:29:56 -05:00
David Walsh
1b1aae0577
Fix token icon when going from token detail to swaps (#14062) 2022-03-21 08:29:38 -05:00
Daniel
95f830438a
Add a new fiat onboarding option via MoonPay (#13934) 2022-03-21 10:26:52 +01:00
Guillaume Roux
64d35458b0
Dark Mode : Onboarding flow (#14020) 2022-03-18 19:43:33 -05:00
Guillaume Roux
c3901e4ba8
Dark Mode : Gas fee (#14005) 2022-03-18 19:43:10 -05:00
David Walsh
91a30bc464
Dark Mode: Loading Heartbeat (#14015) 2022-03-18 17:20:40 -07:00
Alex Donesky
524e0aaf07
unbreak storybook (#14059) 2022-03-18 19:04:59 -05:00
David Walsh
b43d565af7
Dark Mode: Reveal Seed colors (#14028) 2022-03-18 15:55:33 -07:00
Guillaume Roux
2454bd8124
confirmation screen dark mode (#14024) 2022-03-18 14:10:20 -07:00
David Walsh
c0e930ea53
Dark Mode: Standardize error colors (#14029) 2022-03-18 15:15:41 -05:00
David Walsh
79d00f72e1
Dark Mode: Update swaps link colors (#14033) 2022-03-18 13:07:07 -07:00
Alex Donesky
8df8f81df7
Deprecate extensionizer for webextension-polyfill (#13960)
* deprecate extensionizer for webextension-polyfill

* fix tests

* remove extensionizer

* fix browser windows api calls

* fix broken on firefox

* fix getAcceptLanguages call

* update more browser apis that are now promisified

* remove unnecessary console error ignoring in e2e tests
2022-03-18 14:07:05 -05:00
seaona
093c69cf76
Fix flaky test: add account (#14045) 2022-03-18 18:47:28 +01:00
seaona
22306826ff
Set Chrome logger to level 3: Log_Fatal (#14044) 2022-03-18 18:45:23 +01:00