aboutsummaryrefslogtreecommitdiffstats
path: root/app/scripts/lib/events-proxy.js
diff options
context:
space:
mode:
authorDan Finlay <542863+danfinlay@users.noreply.github.com>2018-08-16 06:41:05 +0800
committerGitHub <noreply@github.com>2018-08-16 06:41:05 +0800
commit955ec2dca620f25beb2c7cd24c059f6ac22fdebe (patch)
treeafa2b160c8d0a49b2eeb548a62ca3dde8f88d57a /app/scripts/lib/events-proxy.js
parent8b73a69cd838d99710c35d69b694ae5f9f27b997 (diff)
parentce645561fb77a299ba6f38999af111def00bc17c (diff)
downloadtangerine-wallet-browser-955ec2dca620f25beb2c7cd24c059f6ac22fdebe.tar
tangerine-wallet-browser-955ec2dca620f25beb2c7cd24c059f6ac22fdebe.tar.gz
tangerine-wallet-browser-955ec2dca620f25beb2c7cd24c059f6ac22fdebe.tar.bz2
tangerine-wallet-browser-955ec2dca620f25beb2c7cd24c059f6ac22fdebe.tar.lz
tangerine-wallet-browser-955ec2dca620f25beb2c7cd24c059f6ac22fdebe.tar.xz
tangerine-wallet-browser-955ec2dca620f25beb2c7cd24c059f6ac22fdebe.tar.zst
tangerine-wallet-browser-955ec2dca620f25beb2c7cd24c059f6ac22fdebe.zip
Merge pull request #4279 from MetaMask/network-remove-provider-engine
Enhancement: New BlockTracker and Json-Rpc-Engine based Provider
Diffstat (limited to 'app/scripts/lib/events-proxy.js')
-rw-r--r--app/scripts/lib/events-proxy.js42
1 files changed, 0 insertions, 42 deletions
diff --git a/app/scripts/lib/events-proxy.js b/app/scripts/lib/events-proxy.js
deleted file mode 100644
index f83773ccc..000000000
--- a/app/scripts/lib/events-proxy.js
+++ /dev/null
@@ -1,42 +0,0 @@
-/**
- * Returns an EventEmitter that proxies events from the given event emitter
- * @param {any} eventEmitter
- * @param {object} listeners - The listeners to proxy to
- * @returns {any}
- */
-module.exports = function createEventEmitterProxy (eventEmitter, listeners) {
- let target = eventEmitter
- const eventHandlers = listeners || {}
- const proxy = /** @type {any} */ (new Proxy({}, {
- get: (_, name) => {
- // intercept listeners
- if (name === 'on') return addListener
- if (name === 'setTarget') return setTarget
- if (name === 'proxyEventHandlers') return eventHandlers
- return (/** @type {any} */ (target))[name]
- },
- set: (_, name, value) => {
- target[name] = value
- return true
- },
- }))
- function setTarget (/** @type {EventEmitter} */ eventEmitter) {
- target = eventEmitter
- // migrate listeners
- Object.keys(eventHandlers).forEach((name) => {
- /** @type {Array<Function>} */ (eventHandlers[name]).forEach((handler) => target.on(name, handler))
- })
- }
- /**
- * Attaches a function to be called whenever the specified event is emitted
- * @param {string} name
- * @param {Function} handler
- */
- function addListener (name, handler) {
- if (!eventHandlers[name]) eventHandlers[name] = []
- eventHandlers[name].push(handler)
- target.on(name, handler)
- }
- if (listeners) proxy.setTarget(eventEmitter)
- return proxy
-}