aboutsummaryrefslogtreecommitdiffstats
path: root/library/controller.js
diff options
context:
space:
mode:
Diffstat (limited to 'library/controller.js')
-rw-r--r--library/controller.js159
1 files changed, 0 insertions, 159 deletions
diff --git a/library/controller.js b/library/controller.js
deleted file mode 100644
index 5823287cc..000000000
--- a/library/controller.js
+++ /dev/null
@@ -1,159 +0,0 @@
-const urlUtil = require('url')
-const extend = require('xtend')
-const Dnode = require('dnode')
-const eos = require('end-of-stream')
-const ParentStream = require('iframe-stream').ParentStream
-const PortStream = require('../app/scripts/lib/port-stream.js')
-const notification = require('../app/scripts/lib/notifications.js')
-const messageManager = require('../app/scripts/lib/message-manager')
-const setupMultiplex = require('../app/scripts/lib/stream-utils.js').setupMultiplex
-const MetamaskController = require('../app/scripts/metamask-controller')
-const extension = require('../app/scripts/lib/extension')
-
-const STORAGE_KEY = 'metamask-config'
-
-
-initializeZeroClient()
-
-function initializeZeroClient() {
-
- const controller = new MetamaskController({
- // User confirmation callbacks:
- showUnconfirmedMessage,
- unlockAccountMessage,
- showUnapprovedTx,
- // Persistence Methods:
- setData,
- loadData,
- })
- const idStore = controller.idStore
-
- function unlockAccountMessage () {
- console.log('notif stub - unlockAccountMessage')
- }
-
- function showUnconfirmedMessage (msgParams, msgId) {
- console.log('notif stub - showUnconfirmedMessage')
- }
-
- function showUnapprovedTx (txParams, txData, onTxDoneCb) {
- console.log('notif stub - showUnapprovedTx')
- }
-
- //
- // connect to other contexts
- //
-
- var connectionStream = new ParentStream()
-
- connectRemote(connectionStream, getParentHref())
-
- function connectRemote (connectionStream, originDomain) {
- var isMetaMaskInternalProcess = (originDomain === '127.0.0.1:9001')
- if (isMetaMaskInternalProcess) {
- // communication with popup
- setupTrustedCommunication(connectionStream, 'MetaMask')
- } else {
- // communication with page
- setupUntrustedCommunication(connectionStream, originDomain)
- }
- }
-
- function setupUntrustedCommunication (connectionStream, originDomain) {
- // setup multiplexing
- var mx = setupMultiplex(connectionStream)
- // connect features
- controller.setupProviderConnection(mx.createStream('provider'), originDomain)
- controller.setupPublicConfig(mx.createStream('publicConfig'))
- }
-
- function setupTrustedCommunication (connectionStream, originDomain) {
- // setup multiplexing
- var mx = setupMultiplex(connectionStream)
- // connect features
- setupControllerConnection(mx.createStream('controller'))
- controller.setupProviderConnection(mx.createStream('provider'), originDomain)
- }
-
- //
- // remote features
- //
-
- function setupControllerConnection (stream) {
- controller.stream = stream
- var api = controller.getApi()
- var dnode = Dnode(api)
- stream.pipe(dnode).pipe(stream)
- dnode.on('remote', (remote) => {
- // push updates to popup
- controller.ethStore.on('update', controller.sendUpdate.bind(controller))
- controller.listeners.push(remote)
- idStore.on('update', controller.sendUpdate.bind(controller))
-
- // teardown on disconnect
- eos(stream, () => {
- controller.ethStore.removeListener('update', controller.sendUpdate.bind(controller))
- })
- })
- }
-
- function loadData () {
- var oldData = getOldStyleData()
- var newData
- try {
- newData = JSON.parse(window.localStorage[STORAGE_KEY])
- } catch (e) {}
-
- var data = extend({
- meta: {
- version: 0,
- },
- data: {
- config: {
- provider: {
- type: 'testnet',
- },
- },
- },
- }, oldData || null, newData || null)
- return data
- }
-
- function getOldStyleData () {
- var config, wallet, seedWords
-
- var result = {
- meta: { version: 0 },
- data: {},
- }
-
- try {
- config = JSON.parse(window.localStorage['config'])
- result.data.config = config
- } catch (e) {}
- try {
- wallet = JSON.parse(window.localStorage['lightwallet'])
- result.data.wallet = wallet
- } catch (e) {}
- try {
- seedWords = window.localStorage['seedWords']
- result.data.seedWords = seedWords
- } catch (e) {}
-
- return result
- }
-
- function setData (data) {
- window.localStorage[STORAGE_KEY] = JSON.stringify(data)
- }
-
- function getParentHref(){
- try {
- var parentLocation = window.parent.location
- return parentLocation.hostname + ':' + parentLocation.port
- } catch (err) {
- return 'unknown'
- }
- }
-
-}