1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-23 01:39:44 +01:00
metamask-extension/app/scripts
Dan Finlay 78cdee23c0
Abstract domain provider from its stream transport (#6670)
* Abstract domain provider from its stream transport

Creating new provider-consuming extensions, like [a new
platform](https://github.com/MetaMask/metamask-extension/blob/develop/docs/porting_to_new_environment.md)
can be frustrating for new contributors because our provider
construction has been tangled with our streaming interface.

Here I've broken up our streaming domain connection from the provider
construction, so developers can more easily construct local and
domain-restricted providers without dealing with streams.

* Abstract public API from stream interface

* clean up noop

* Document non-streaming interface

* getSiteMetadata must be async

* Clean up filters on stream end

* Document cleaning up filters

* Allow named filterMiddleware to be cleaned up

* Linted

* Require site metadata

* Destroy any destroyable middleware during cleanup

* Lint
2019-07-15 16:28:04 -07:00
..
account-import-strategies account-import-strategies - ensure privateKey is prefixed before converting to buffer 2018-06-13 21:06:33 -07:00
controllers Version 6.7.2 gas limit fix (#6786) 2019-07-04 14:14:03 -02:30
lib Declare variables before use (#6806) 2019-07-05 14:01:34 -03:00
migrations Check for unused function arguments (#6583) 2019-05-08 15:51:33 -04:00
platforms Refactor ProviderApprovalController to use rpc and publicConfigStore (#6410) 2019-05-03 13:32:05 -04:00
background.js Remove NoticeController (#6382) 2019-04-01 22:33:54 -02:30
chromereload.js Fix console.error references 2016-08-29 17:32:39 -07:00
contentscript.js Refactor ProviderApprovalController to use rpc and publicConfigStore (#6410) 2019-05-03 13:32:05 -04:00
createStandardProvider.js Refactor ProviderApprovalController to use rpc and publicConfigStore (#6410) 2019-05-03 13:32:05 -04:00
edge-encryptor.js Update asmcrypto.js to latest version (#6767) 2019-07-02 22:16:20 -03:00
first-time-state.js controllers - network - move default config out of first-time-state 2018-05-02 18:03:59 -07:00
inpage.js Remove Drizzle tests (#6855) 2019-07-15 17:10:46 -03:00
metamask-controller.js Abstract domain provider from its stream transport (#6670) 2019-07-15 16:28:04 -07:00
phishing-detect.js Rename accountManager usages (#6790) 2019-07-10 16:31:48 -02:30
popup-core.js Rename accountManager usages (#6790) 2019-07-10 16:31:48 -02:30
README.md add READMEs to folders, re #3427 2018-03-14 15:33:22 +02:00
ui.js Default to the new UI for all users 2019-02-05 08:49:55 -03:30

Main MetaMask Code

This folder contains the core-code.

Currently, it is organized mostly based on file category, like:

controllers, migrations, lib

Ongoing Task

Refactor code-structure, thus the subsystems are reflected on the filesystem.

Examples