From 4d18119ccf06b0a512258e45a1d5de095cc0cf9d Mon Sep 17 00:00:00 2001 From: ricmoo Date: Thu, 4 Aug 2016 20:29:20 -0400 Subject: [PATCH] Updated dist. --- dist/ethers-wallet.js | 196 ++++++++++++++++++++++++++++++++++++-- dist/ethers-wallet.min.js | 7 +- 2 files changed, 194 insertions(+), 9 deletions(-) diff --git a/dist/ethers-wallet.js b/dist/ethers-wallet.js index 1490fde03..709743637 100644 --- a/dist/ethers-wallet.js +++ b/dist/ethers-wallet.js @@ -871,8 +871,10 @@ function rpcSendAsync(url) { try { callback(null, JSON.parse(result)); } catch (error) { - console.log(error); - callback(new Error('invalid response')); + var responseError = new Error('invalid response'); + responseError.orginialError = error; + responseError.data = result; + callback(responseError); } }; @@ -1536,7 +1538,7 @@ utils.defineProperty(secretStorage, 'encrypt', function(privateKey, password, op module.exports = secretStorage; }).call(this,require("buffer").Buffer) -},{"./randomish.js":6,"./signing-key.js":8,"./utils.js":9,"aes-js":11,"buffer":40,"pbkdf2":68,"scrypt-js":85,"uuid":87}],8:[function(require,module,exports){ +},{"./randomish.js":6,"./signing-key.js":8,"./utils.js":9,"aes-js":11,"buffer":40,"pbkdf2":68,"scrypt-js":85,"uuid":88}],8:[function(require,module,exports){ (function (Buffer){ 'use strict'; @@ -1977,6 +1979,9 @@ var SigningKey = require('./signing-key.js'); var utils = require('./utils.js'); +// This ensures we inject a setImmediate into the global space, which +// dramatically improves the performance of the scrypt PBKDF. +require('setimmediate'); var transactionFields = [ {name: 'nonce', maxLength: 32, }, @@ -2265,7 +2270,7 @@ utils.defineProperty(Wallet, 'parseEther', function(ether) { module.exports = Wallet; }).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {},require("buffer").Buffer) -},{"./contract.js":4,"./providers.js":5,"./signing-key.js":8,"./utils.js":9,"buffer":40,"rlp":84}],11:[function(require,module,exports){ +},{"./contract.js":4,"./providers.js":5,"./signing-key.js":8,"./utils.js":9,"buffer":40,"rlp":84,"setimmediate":86}],11:[function(require,module,exports){ (function (Buffer){ "use strict"; @@ -19686,6 +19691,185 @@ function toBuffer (v) { }).call(this,require("buffer").Buffer) },{"buffer":40}],86:[function(require,module,exports){ +(function (process,global){ +(function (global, undefined) { + "use strict"; + + if (global.setImmediate) { + return; + } + + var nextHandle = 1; // Spec says greater than zero + var tasksByHandle = {}; + var currentlyRunningATask = false; + var doc = global.document; + var setImmediate; + + function addFromSetImmediateArguments(args) { + tasksByHandle[nextHandle] = partiallyApplied.apply(undefined, args); + return nextHandle++; + } + + // This function accepts the same arguments as setImmediate, but + // returns a function that requires no arguments. + function partiallyApplied(handler) { + var args = [].slice.call(arguments, 1); + return function() { + if (typeof handler === "function") { + handler.apply(undefined, args); + } else { + (new Function("" + handler))(); + } + }; + } + + function runIfPresent(handle) { + // From the spec: "Wait until any invocations of this algorithm started before this one have completed." + // So if we're currently running a task, we'll need to delay this invocation. + if (currentlyRunningATask) { + // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a + // "too much recursion" error. + setTimeout(partiallyApplied(runIfPresent, handle), 0); + } else { + var task = tasksByHandle[handle]; + if (task) { + currentlyRunningATask = true; + try { + task(); + } finally { + clearImmediate(handle); + currentlyRunningATask = false; + } + } + } + } + + function clearImmediate(handle) { + delete tasksByHandle[handle]; + } + + function installNextTickImplementation() { + setImmediate = function() { + var handle = addFromSetImmediateArguments(arguments); + process.nextTick(partiallyApplied(runIfPresent, handle)); + return handle; + }; + } + + function canUsePostMessage() { + // The test against `importScripts` prevents this implementation from being installed inside a web worker, + // where `global.postMessage` means something completely different and can't be used for this purpose. + if (global.postMessage && !global.importScripts) { + var postMessageIsAsynchronous = true; + var oldOnMessage = global.onmessage; + global.onmessage = function() { + postMessageIsAsynchronous = false; + }; + global.postMessage("", "*"); + global.onmessage = oldOnMessage; + return postMessageIsAsynchronous; + } + } + + function installPostMessageImplementation() { + // Installs an event handler on `global` for the `message` event: see + // * https://developer.mozilla.org/en/DOM/window.postMessage + // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages + + var messagePrefix = "setImmediate$" + Math.random() + "$"; + var onGlobalMessage = function(event) { + if (event.source === global && + typeof event.data === "string" && + event.data.indexOf(messagePrefix) === 0) { + runIfPresent(+event.data.slice(messagePrefix.length)); + } + }; + + if (global.addEventListener) { + global.addEventListener("message", onGlobalMessage, false); + } else { + global.attachEvent("onmessage", onGlobalMessage); + } + + setImmediate = function() { + var handle = addFromSetImmediateArguments(arguments); + global.postMessage(messagePrefix + handle, "*"); + return handle; + }; + } + + function installMessageChannelImplementation() { + var channel = new MessageChannel(); + channel.port1.onmessage = function(event) { + var handle = event.data; + runIfPresent(handle); + }; + + setImmediate = function() { + var handle = addFromSetImmediateArguments(arguments); + channel.port2.postMessage(handle); + return handle; + }; + } + + function installReadyStateChangeImplementation() { + var html = doc.documentElement; + setImmediate = function() { + var handle = addFromSetImmediateArguments(arguments); + // Create a