1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-11-25 20:02:58 +01:00
metamask-extension/development
Mark Stacey f763979bed
Add support for one-click onboarding (#7017)
* Add support for one-click onboarding

MetaMask now allows sites to register as onboarding the user, so that
the user is redirected back to the initiating site after onboarding.
This is accomplished through the use of the `metamask-onboarding`
library and the MetaMask forwarder.

At the end of onboarding, a 'snackbar'-stype component will explain to the
user they are about to be moved back to the originating dapp, and it will
show the origin of that dapp. This is intended to help prevent phishing
attempts, as it highlights that a redirect is taking place to an untrusted
third party.

If the onboarding initiator tab is closed when onboarding is finished,
the user is redirected to the onboarding originator as a fallback.

Closes #6161

* Add onboarding button to contract test dapp

The `contract-test` dapp (run with `yarn dapp`, used in e2e tests) now
uses a `Connect` button instead of connecting automatically. This
button also serves as an onboarding button when a MetaMask installation
is not detected.

* Add new static server for test dapp

The `static-server` library we were using for the `contract-test` dapp
didn't allow referencing files outside the server root. This should
have been possible to work around using symlinks, but there was a bug
that resulted in symlinks crashing the server.

Instead it has been replaced with a simple static file server that
will serve paths starting with `node_modules` from the project root.
This will be useful in testing the onboarding library without vendoring
it.

* Add `@metamask/onboarding` and `@metamask/forwarder`

Both libraries used to test onboarding are now included as dev
dependencies, to help with testing. A few convenience scripts
were added to help with this (`yarn forwarder` and `yarn dapp-forwarder`)
2019-11-22 13:03:51 -04:00
..
states Add a/b test for full screen transaction confirmations (#7162) 2019-09-24 17:08:38 -04:00
.jsdoc.json Remove unused AppVeyor configuration (#6840) 2019-07-12 12:42:36 -03:00
announcer.js eslint --fix . 2018-07-02 18:49:33 -04:00
auto-changelog.sh Add shellcheck lint (#7392) 2019-11-19 10:46:10 -05:00
backGroundConnectionModifiers.js Check for unused function arguments (#6583) 2019-05-08 15:51:33 -04:00
genStates.js Speed up genStates script by using built-in require fn 2018-11-20 14:04:50 -03:30
gource-viz.sh dev - move gource instructions from docs to development script 2019-09-10 22:05:16 +08:00
index.html
metamaskbot-build-announce.js Disable import/no-unresolved on lines that require build 2019-11-14 09:17:55 -04:00
mock-3box.js Update ESLint rules for curly braces style (#7477) 2019-11-19 20:33:20 -03:30
mock-dev.js Disable import/no-unresolved on lines that require build 2019-11-14 09:17:55 -04:00
README.md add READMEs to folders, re #3427 2018-03-14 15:33:22 +02:00
require-react-devtools.js Add React and Redux DevTools (#6793) 2019-07-11 12:27:06 -02:30
rollback.sh Add shellcheck lint (#7392) 2019-11-19 10:46:10 -05:00
run-ganache Replace deprecated shell-parallel with concurrently (#6807) 2019-07-09 14:09:31 -02:30
run-version-bump.js eslint --fix . 2018-07-02 18:49:33 -04:00
selector.js eslint --fix . 2018-07-02 18:49:33 -04:00
sentry-publish.js Disable import/no-unresolved on lines that require build 2019-11-14 09:17:55 -04:00
show-deps-install-scripts.js Update ESLint rules for curly braces style (#7477) 2019-11-19 20:33:20 -03:30
source-map-explorer.sh ci - create source-map-explorer build-artifacts (#7141) 2019-09-11 23:35:30 +08:00
sourcemap-validator.js Update ESLint rules for curly braces style (#7477) 2019-11-19 20:33:20 -03:30
static-server.js Add support for one-click onboarding (#7017) 2019-11-22 13:03:51 -04:00
test.html
verify-locale-strings.js Verify locales on CI (#7199) 2019-09-21 13:31:33 -03:00
version-bump.js Version 5.0.3 (#5785) 2018-11-20 08:34:14 -10:00

Development

Several files which are needed for developing on(!) MetaMask.

Usually each files contains information about its scope / usage.