@qevm/providers 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/alchemy-provider.d.ts +1 -1
- package/lib/alchemy-provider.d.ts.map +1 -1
- package/lib/alchemy-provider.js +29 -53
- package/lib/alchemy-provider.js.map +1 -1
- package/lib/ankr-provider.d.ts +1 -1
- package/lib/ankr-provider.d.ts.map +1 -1
- package/lib/ankr-provider.js +16 -36
- package/lib/ankr-provider.js.map +1 -1
- package/lib/base-provider.d.ts +3 -4
- package/lib/base-provider.d.ts.map +1 -1
- package/lib/base-provider.js +1477 -2132
- package/lib/base-provider.js.map +1 -1
- package/lib/browser-ipc-provider.js +1 -1
- package/lib/browser-ipc-provider.js.map +1 -1
- package/lib/browser-net.js +1 -2
- package/lib/browser-net.js.map +1 -1
- package/lib/browser-ws.js +5 -5
- package/lib/browser-ws.js.map +1 -1
- package/lib/cloudflare-provider.js +20 -83
- package/lib/cloudflare-provider.js.map +1 -1
- package/lib/etherscan-provider.js +237 -357
- package/lib/etherscan-provider.js.map +1 -1
- package/lib/fallback-provider.js +301 -430
- package/lib/fallback-provider.js.map +1 -1
- package/lib/formatter.d.ts +4 -4
- package/lib/formatter.d.ts.map +1 -1
- package/lib/formatter.js +107 -110
- package/lib/formatter.js.map +1 -1
- package/lib/index.js +25 -25
- package/lib/index.js.map +1 -1
- package/lib/infura-provider.d.ts +1 -1
- package/lib/infura-provider.d.ts.map +1 -1
- package/lib/infura-provider.js +34 -58
- package/lib/infura-provider.js.map +1 -1
- package/lib/ipc-provider.js +20 -40
- package/lib/ipc-provider.js.map +1 -1
- package/lib/json-rpc-batch-provider.d.ts +0 -1
- package/lib/json-rpc-batch-provider.d.ts.map +1 -1
- package/lib/json-rpc-batch-provider.js +27 -48
- package/lib/json-rpc-batch-provider.js.map +1 -1
- package/lib/json-rpc-provider.d.ts +1 -1
- package/lib/json-rpc-provider.d.ts.map +1 -1
- package/lib/json-rpc-provider.js +283 -482
- package/lib/json-rpc-provider.js.map +1 -1
- package/lib/nodesmith-provider.js +12 -32
- package/lib/nodesmith-provider.js.map +1 -1
- package/lib/pocket-provider.d.ts +1 -1
- package/lib/pocket-provider.d.ts.map +1 -1
- package/lib/pocket-provider.js +17 -37
- package/lib/pocket-provider.js.map +1 -1
- package/lib/url-json-rpc-provider.d.ts +1 -1
- package/lib/url-json-rpc-provider.d.ts.map +1 -1
- package/lib/url-json-rpc-provider.js +45 -116
- package/lib/url-json-rpc-provider.js.map +1 -1
- package/lib/web3-provider.d.ts +2 -2
- package/lib/web3-provider.d.ts.map +1 -1
- package/lib/web3-provider.js +49 -70
- package/lib/web3-provider.js.map +1 -1
- package/lib/websocket-provider.d.ts +2 -2
- package/lib/websocket-provider.d.ts.map +1 -1
- package/lib/websocket-provider.js +128 -225
- package/lib/websocket-provider.js.map +1 -1
- package/lib/ws.js +1 -1
- package/lib/ws.js.map +1 -1
- package/package.json +17 -14
- package/src.ts/alchemy-provider.ts +1 -1
- package/src.ts/ankr-provider.ts +1 -1
- package/src.ts/base-provider.ts +9 -9
- package/src.ts/etherscan-provider.ts +1 -1
- package/src.ts/fallback-provider.ts +4 -4
- package/src.ts/formatter.ts +2 -2
- package/src.ts/infura-provider.ts +1 -1
- package/src.ts/json-rpc-batch-provider.ts +1 -1
- package/src.ts/json-rpc-provider.ts +3 -3
- package/src.ts/pocket-provider.ts +1 -1
- package/src.ts/url-json-rpc-provider.ts +1 -1
- package/src.ts/websocket-provider.ts +1 -1
package/lib/index.js
CHANGED
|
@@ -1,53 +1,54 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Formatter = exports.showThrottleMessage = exports.isCommunityResourcable = exports.isCommunityResource = exports.getNetwork = exports.
|
|
4
|
-
|
|
3
|
+
exports.Formatter = exports.showThrottleMessage = exports.isCommunityResourcable = exports.isCommunityResource = exports.getNetwork = exports.JsonRpcSigner = exports.IpcProvider = exports.WebSocketProvider = exports.Web3Provider = exports.StaticJsonRpcProvider = exports.PocketProvider = exports.NodesmithProvider = exports.JsonRpcBatchProvider = exports.JsonRpcProvider = exports.InfuraWebSocketProvider = exports.InfuraProvider = exports.EtherscanProvider = exports.CloudflareProvider = exports.AnkrProvider = exports.AlchemyWebSocketProvider = exports.AlchemyProvider = exports.FallbackProvider = exports.UrlJsonRpcProvider = exports.Resolver = exports.BaseProvider = exports.Provider = void 0;
|
|
4
|
+
exports.getDefaultProvider = getDefaultProvider;
|
|
5
|
+
const abstract_provider_1 = require("@qevm/abstract-provider");
|
|
5
6
|
Object.defineProperty(exports, "Provider", { enumerable: true, get: function () { return abstract_provider_1.Provider; } });
|
|
6
|
-
|
|
7
|
+
const networks_1 = require("@ethersproject/networks");
|
|
7
8
|
Object.defineProperty(exports, "getNetwork", { enumerable: true, get: function () { return networks_1.getNetwork; } });
|
|
8
|
-
|
|
9
|
+
const base_provider_1 = require("./base-provider");
|
|
9
10
|
Object.defineProperty(exports, "BaseProvider", { enumerable: true, get: function () { return base_provider_1.BaseProvider; } });
|
|
10
11
|
Object.defineProperty(exports, "Resolver", { enumerable: true, get: function () { return base_provider_1.Resolver; } });
|
|
11
|
-
|
|
12
|
+
const alchemy_provider_1 = require("./alchemy-provider");
|
|
12
13
|
Object.defineProperty(exports, "AlchemyProvider", { enumerable: true, get: function () { return alchemy_provider_1.AlchemyProvider; } });
|
|
13
14
|
Object.defineProperty(exports, "AlchemyWebSocketProvider", { enumerable: true, get: function () { return alchemy_provider_1.AlchemyWebSocketProvider; } });
|
|
14
|
-
|
|
15
|
+
const ankr_provider_1 = require("./ankr-provider");
|
|
15
16
|
Object.defineProperty(exports, "AnkrProvider", { enumerable: true, get: function () { return ankr_provider_1.AnkrProvider; } });
|
|
16
|
-
|
|
17
|
+
const cloudflare_provider_1 = require("./cloudflare-provider");
|
|
17
18
|
Object.defineProperty(exports, "CloudflareProvider", { enumerable: true, get: function () { return cloudflare_provider_1.CloudflareProvider; } });
|
|
18
|
-
|
|
19
|
+
const etherscan_provider_1 = require("./etherscan-provider");
|
|
19
20
|
Object.defineProperty(exports, "EtherscanProvider", { enumerable: true, get: function () { return etherscan_provider_1.EtherscanProvider; } });
|
|
20
|
-
|
|
21
|
+
const fallback_provider_1 = require("./fallback-provider");
|
|
21
22
|
Object.defineProperty(exports, "FallbackProvider", { enumerable: true, get: function () { return fallback_provider_1.FallbackProvider; } });
|
|
22
|
-
|
|
23
|
+
const ipc_provider_1 = require("./ipc-provider");
|
|
23
24
|
Object.defineProperty(exports, "IpcProvider", { enumerable: true, get: function () { return ipc_provider_1.IpcProvider; } });
|
|
24
|
-
|
|
25
|
+
const infura_provider_1 = require("./infura-provider");
|
|
25
26
|
Object.defineProperty(exports, "InfuraProvider", { enumerable: true, get: function () { return infura_provider_1.InfuraProvider; } });
|
|
26
27
|
Object.defineProperty(exports, "InfuraWebSocketProvider", { enumerable: true, get: function () { return infura_provider_1.InfuraWebSocketProvider; } });
|
|
27
|
-
|
|
28
|
+
const json_rpc_provider_1 = require("./json-rpc-provider");
|
|
28
29
|
Object.defineProperty(exports, "JsonRpcProvider", { enumerable: true, get: function () { return json_rpc_provider_1.JsonRpcProvider; } });
|
|
29
30
|
Object.defineProperty(exports, "JsonRpcSigner", { enumerable: true, get: function () { return json_rpc_provider_1.JsonRpcSigner; } });
|
|
30
|
-
|
|
31
|
+
const json_rpc_batch_provider_1 = require("./json-rpc-batch-provider");
|
|
31
32
|
Object.defineProperty(exports, "JsonRpcBatchProvider", { enumerable: true, get: function () { return json_rpc_batch_provider_1.JsonRpcBatchProvider; } });
|
|
32
|
-
|
|
33
|
+
const nodesmith_provider_1 = require("./nodesmith-provider");
|
|
33
34
|
Object.defineProperty(exports, "NodesmithProvider", { enumerable: true, get: function () { return nodesmith_provider_1.NodesmithProvider; } });
|
|
34
|
-
|
|
35
|
+
const pocket_provider_1 = require("./pocket-provider");
|
|
35
36
|
Object.defineProperty(exports, "PocketProvider", { enumerable: true, get: function () { return pocket_provider_1.PocketProvider; } });
|
|
36
|
-
|
|
37
|
+
const url_json_rpc_provider_1 = require("./url-json-rpc-provider");
|
|
37
38
|
Object.defineProperty(exports, "StaticJsonRpcProvider", { enumerable: true, get: function () { return url_json_rpc_provider_1.StaticJsonRpcProvider; } });
|
|
38
39
|
Object.defineProperty(exports, "UrlJsonRpcProvider", { enumerable: true, get: function () { return url_json_rpc_provider_1.UrlJsonRpcProvider; } });
|
|
39
|
-
|
|
40
|
+
const web3_provider_1 = require("./web3-provider");
|
|
40
41
|
Object.defineProperty(exports, "Web3Provider", { enumerable: true, get: function () { return web3_provider_1.Web3Provider; } });
|
|
41
|
-
|
|
42
|
+
const websocket_provider_1 = require("./websocket-provider");
|
|
42
43
|
Object.defineProperty(exports, "WebSocketProvider", { enumerable: true, get: function () { return websocket_provider_1.WebSocketProvider; } });
|
|
43
|
-
|
|
44
|
+
const formatter_1 = require("./formatter");
|
|
44
45
|
Object.defineProperty(exports, "Formatter", { enumerable: true, get: function () { return formatter_1.Formatter; } });
|
|
45
46
|
Object.defineProperty(exports, "isCommunityResourcable", { enumerable: true, get: function () { return formatter_1.isCommunityResourcable; } });
|
|
46
47
|
Object.defineProperty(exports, "isCommunityResource", { enumerable: true, get: function () { return formatter_1.isCommunityResource; } });
|
|
47
48
|
Object.defineProperty(exports, "showThrottleMessage", { enumerable: true, get: function () { return formatter_1.showThrottleMessage; } });
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
49
|
+
const logger_1 = require("@ethersproject/logger");
|
|
50
|
+
const _version_1 = require("./_version");
|
|
51
|
+
const logger = new logger_1.Logger(_version_1.version);
|
|
51
52
|
////////////////////////
|
|
52
53
|
// Helper Functions
|
|
53
54
|
function getDefaultProvider(network, options) {
|
|
@@ -58,7 +59,7 @@ function getDefaultProvider(network, options) {
|
|
|
58
59
|
if (typeof (network) === "string") {
|
|
59
60
|
// @TODO: Add support for IpcProvider; maybe if it ends in ".ipc"?
|
|
60
61
|
// Handle http and ws (and their secure variants)
|
|
61
|
-
|
|
62
|
+
const match = network.match(/^(ws|http)s?:/i);
|
|
62
63
|
if (match) {
|
|
63
64
|
switch (match[1].toLowerCase()) {
|
|
64
65
|
case "http":
|
|
@@ -72,7 +73,7 @@ function getDefaultProvider(network, options) {
|
|
|
72
73
|
}
|
|
73
74
|
}
|
|
74
75
|
}
|
|
75
|
-
|
|
76
|
+
const n = (0, networks_1.getNetwork)(network);
|
|
76
77
|
if (!n || !n._defaultProvider) {
|
|
77
78
|
logger.throwError("unsupported getDefaultProvider network", logger_1.Logger.errors.NETWORK_ERROR, {
|
|
78
79
|
operation: "getDefaultProvider",
|
|
@@ -93,5 +94,4 @@ function getDefaultProvider(network, options) {
|
|
|
93
94
|
IpcProvider: ipc_provider_1.IpcProvider,
|
|
94
95
|
}, options);
|
|
95
96
|
}
|
|
96
|
-
exports.getDefaultProvider = getDefaultProvider;
|
|
97
97
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"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"}
|
package/lib/infura-provider.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Network, Networkish } from "@ethersproject/networks";
|
|
2
|
-
import { ConnectionInfo } from "@
|
|
2
|
+
import { ConnectionInfo } from "@qevm/web";
|
|
3
3
|
import { WebSocketProvider } from "./websocket-provider";
|
|
4
4
|
import { CommunityResourcable } from "./formatter";
|
|
5
5
|
import { UrlJsonRpcProvider } from "./url-json-rpc-provider";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infura-provider.d.ts","sourceRoot":"","sources":["../src.ts/infura-provider.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"infura-provider.d.ts","sourceRoot":"","sources":["../src.ts/infura-provider.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAuB,MAAM,aAAa,CAAC;AAMxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAK7D,qBAAa,uBAAwB,SAAQ,iBAAkB,YAAW,oBAAoB;IAC1F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;gBAEnB,OAAO,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,GAAG;IAiB9C,mBAAmB,IAAI,OAAO;CAGjC;AAED,qBAAa,cAAe,SAAQ,kBAAkB;IAClD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAE/B,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,GAAG,GAAG,uBAAuB;IAIxF,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG;IA8BlC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,GAAG,cAAc;IAwD5D,mBAAmB,IAAI,OAAO;CAGjC"}
|
package/lib/infura-provider.js
CHANGED
|
@@ -1,63 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
-
};
|
|
16
|
-
})();
|
|
17
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
3
|
exports.InfuraProvider = exports.InfuraWebSocketProvider = void 0;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
var provider = new InfuraProvider(network, apiKey);
|
|
32
|
-
var connection = provider.connection;
|
|
4
|
+
const properties_1 = require("@ethersproject/properties");
|
|
5
|
+
const websocket_provider_1 = require("./websocket-provider");
|
|
6
|
+
const formatter_1 = require("./formatter");
|
|
7
|
+
const logger_1 = require("@ethersproject/logger");
|
|
8
|
+
const _version_1 = require("./_version");
|
|
9
|
+
const logger = new logger_1.Logger(_version_1.version);
|
|
10
|
+
const url_json_rpc_provider_1 = require("./url-json-rpc-provider");
|
|
11
|
+
const defaultProjectId = "84842078b09946638c03157f83405213";
|
|
12
|
+
class InfuraWebSocketProvider extends websocket_provider_1.WebSocketProvider {
|
|
13
|
+
constructor(network, apiKey) {
|
|
14
|
+
const provider = new InfuraProvider(network, apiKey);
|
|
15
|
+
const connection = provider.connection;
|
|
33
16
|
if (connection.password) {
|
|
34
17
|
logger.throwError("INFURA WebSocket project secrets unsupported", logger_1.Logger.errors.UNSUPPORTED_OPERATION, {
|
|
35
18
|
operation: "InfuraProvider.getWebSocketProvider()"
|
|
36
19
|
});
|
|
37
20
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
(0, properties_1.defineReadOnly)(
|
|
41
|
-
(0, properties_1.defineReadOnly)(
|
|
42
|
-
(0, properties_1.defineReadOnly)(
|
|
43
|
-
return _this;
|
|
21
|
+
const url = connection.url.replace(/^http/i, "ws").replace("/v3/", "/ws/v3/");
|
|
22
|
+
super(url, network);
|
|
23
|
+
(0, properties_1.defineReadOnly)(this, "apiKey", provider.projectId);
|
|
24
|
+
(0, properties_1.defineReadOnly)(this, "projectId", provider.projectId);
|
|
25
|
+
(0, properties_1.defineReadOnly)(this, "projectSecret", provider.projectSecret);
|
|
44
26
|
}
|
|
45
|
-
|
|
27
|
+
isCommunityResource() {
|
|
46
28
|
return (this.projectId === defaultProjectId);
|
|
47
|
-
};
|
|
48
|
-
return InfuraWebSocketProvider;
|
|
49
|
-
}(websocket_provider_1.WebSocketProvider));
|
|
50
|
-
exports.InfuraWebSocketProvider = InfuraWebSocketProvider;
|
|
51
|
-
var InfuraProvider = /** @class */ (function (_super) {
|
|
52
|
-
__extends(InfuraProvider, _super);
|
|
53
|
-
function InfuraProvider() {
|
|
54
|
-
return _super !== null && _super.apply(this, arguments) || this;
|
|
55
29
|
}
|
|
56
|
-
|
|
30
|
+
}
|
|
31
|
+
exports.InfuraWebSocketProvider = InfuraWebSocketProvider;
|
|
32
|
+
class InfuraProvider extends url_json_rpc_provider_1.UrlJsonRpcProvider {
|
|
33
|
+
static getWebSocketProvider(network, apiKey) {
|
|
57
34
|
return new InfuraWebSocketProvider(network, apiKey);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
|
|
35
|
+
}
|
|
36
|
+
static getApiKey(apiKey) {
|
|
37
|
+
const apiKeyObj = {
|
|
61
38
|
apiKey: defaultProjectId,
|
|
62
39
|
projectId: defaultProjectId,
|
|
63
40
|
projectSecret: null
|
|
@@ -79,9 +56,9 @@ var InfuraProvider = /** @class */ (function (_super) {
|
|
|
79
56
|
}
|
|
80
57
|
apiKeyObj.apiKey = apiKeyObj.projectId;
|
|
81
58
|
return apiKeyObj;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
|
|
59
|
+
}
|
|
60
|
+
static getUrl(network, apiKey) {
|
|
61
|
+
let host = null;
|
|
85
62
|
switch (network ? network.name : "unknown") {
|
|
86
63
|
case "homestead":
|
|
87
64
|
host = "mainnet.infura.io";
|
|
@@ -116,10 +93,10 @@ var InfuraProvider = /** @class */ (function (_super) {
|
|
|
116
93
|
value: network
|
|
117
94
|
});
|
|
118
95
|
}
|
|
119
|
-
|
|
96
|
+
const connection = {
|
|
120
97
|
allowGzip: true,
|
|
121
98
|
url: ("https:/" + "/" + host + "/v3/" + apiKey.projectId),
|
|
122
|
-
throttleCallback:
|
|
99
|
+
throttleCallback: (attempt, url) => {
|
|
123
100
|
if (apiKey.projectId === defaultProjectId) {
|
|
124
101
|
(0, formatter_1.showThrottleMessage)();
|
|
125
102
|
}
|
|
@@ -131,11 +108,10 @@ var InfuraProvider = /** @class */ (function (_super) {
|
|
|
131
108
|
connection.password = apiKey.projectSecret;
|
|
132
109
|
}
|
|
133
110
|
return connection;
|
|
134
|
-
}
|
|
135
|
-
|
|
111
|
+
}
|
|
112
|
+
isCommunityResource() {
|
|
136
113
|
return (this.projectId === defaultProjectId);
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
}(url_json_rpc_provider_1.UrlJsonRpcProvider));
|
|
114
|
+
}
|
|
115
|
+
}
|
|
140
116
|
exports.InfuraProvider = InfuraProvider;
|
|
141
117
|
//# sourceMappingURL=infura-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infura-provider.js","sourceRoot":"","sources":["../src.ts/infura-provider.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC
|
|
1
|
+
{"version":3,"file":"infura-provider.js","sourceRoot":"","sources":["../src.ts/infura-provider.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAGb,0DAA2D;AAG3D,6DAAyD;AACzD,2CAAwE;AAExE,kDAA+C;AAC/C,yCAAqC;AACrC,MAAM,MAAM,GAAG,IAAI,eAAM,CAAC,kBAAO,CAAC,CAAC;AAEnC,mEAA6D;AAG7D,MAAM,gBAAgB,GAAG,kCAAkC,CAAA;AAE3D,MAAa,uBAAwB,SAAQ,sCAAiB;IAK1D,YAAY,OAAoB,EAAE,MAAY;QAC1C,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACrD,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;QACvC,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,CAAC,UAAU,CAAC,8CAA8C,EAAE,eAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE;gBACnG,SAAS,EAAE,uCAAuC;aACrD,CAAC,CAAC;QACP,CAAC;QAED,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC9E,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAEpB,IAAA,2BAAc,EAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;QACnD,IAAA,2BAAc,EAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;QACtD,IAAA,2BAAc,EAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IAClE,CAAC;IAED,mBAAmB;QACf,OAAO,CAAC,IAAI,CAAC,SAAS,KAAK,gBAAgB,CAAC,CAAC;IACjD,CAAC;CACJ;AAzBD,0DAyBC;AAED,MAAa,cAAe,SAAQ,0CAAkB;IAIlD,MAAM,CAAC,oBAAoB,CAAC,OAAoB,EAAE,MAAY;QAC1D,OAAO,IAAI,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,MAAW;QACxB,MAAM,SAAS,GAAiE;YAC5E,MAAM,EAAE,gBAAgB;YACxB,SAAS,EAAE,gBAAgB;YAC3B,aAAa,EAAE,IAAI;SACtB,CAAC;QAEF,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YAAC,OAAO,SAAS,CAAC;QAAC,CAAC;QAEzC,IAAI,OAAM,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC9B,SAAS,CAAC,SAAS,GAAG,MAAM,CAAC;QAEjC,CAAC;aAAM,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,EAAE,CAAC;YACtC,MAAM,CAAC,cAAc,CAAC,CAAC,OAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,EACzD,oCAAoC,EAAE,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YACzE,MAAM,CAAC,cAAc,CAAC,CAAC,OAAM,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,QAAQ,CAAC,EAC7D,uBAAuB,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC;YAE5D,SAAS,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;YACvC,SAAS,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;QAEnD,CAAC;aAAM,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YAC1B,SAAS,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAC3C,CAAC;QAED,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC;QAEvC,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,OAAgB,EAAE,MAAW;QACvC,IAAI,IAAI,GAAW,IAAI,CAAC;QACxB,QAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAA,CAAC,CAAC,SAAS,EAAE,CAAC;YACvC,KAAK,WAAW;gBACZ,IAAI,GAAG,mBAAmB,CAAC;gBAC3B,MAAM;YACV,KAAK,QAAQ;gBACT,IAAI,GAAG,kBAAkB,CAAC;gBAC1B,MAAM;YACV,KAAK,SAAS;gBACV,IAAI,GAAG,mBAAmB,CAAC;gBAC3B,MAAM;YACV,KAAK,OAAO;gBACR,IAAI,GAAG,2BAA2B,CAAC;gBACnC,MAAM;YACV,KAAK,UAAU;gBACX,IAAI,GAAG,0BAA0B,CAAC;gBAClC,MAAM;YACV,KAAK,UAAU;gBACX,IAAI,GAAG,4BAA4B,CAAC;gBACpC,MAAM;YACV,KAAK,iBAAiB;gBAClB,IAAI,GAAG,2BAA2B,CAAC;gBACnC,MAAM;YACV,KAAK,UAAU;gBACX,IAAI,GAAG,4BAA4B,CAAC;gBACpC,MAAM;YACV,KAAK,iBAAiB;gBAClB,IAAI,GAAG,2BAA2B,CAAC;gBACnC,MAAM;YACV;gBACI,MAAM,CAAC,UAAU,CAAC,qBAAqB,EAAE,eAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE;oBACrE,QAAQ,EAAE,SAAS;oBACnB,KAAK,EAAE,OAAO;iBACjB,CAAC,CAAC;QACX,CAAC;QAED,MAAM,UAAU,GAAmB;YAC/B,SAAS,EAAE,IAAI;YACf,GAAG,EAAE,CAAC,SAAS,GAAG,GAAG,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC;YACzD,gBAAgB,EAAE,CAAC,OAAe,EAAE,GAAW,EAAE,EAAE;gBAC/C,IAAI,MAAM,CAAC,SAAS,KAAK,gBAAgB,EAAE,CAAC;oBACxC,IAAA,+BAAmB,GAAE,CAAC;gBAC1B,CAAC;gBACD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC;SACJ,CAAC;QAEF,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,EAAE,CAAC;YAC/B,UAAU,CAAC,IAAI,GAAG,EAAE,CAAC;YACrB,UAAU,CAAC,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAA;QAC9C,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,mBAAmB;QACf,OAAO,CAAC,IAAI,CAAC,SAAS,KAAK,gBAAgB,CAAC,CAAC;IACjD,CAAC;CACJ;AAjGD,wCAiGC"}
|
package/lib/ipc-provider.js
CHANGED
|
@@ -1,58 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
-
};
|
|
16
|
-
})();
|
|
17
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
3
|
exports.IpcProvider = void 0;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
function IpcProvider(path, network) {
|
|
28
|
-
var _this = this;
|
|
4
|
+
const net_1 = require("net");
|
|
5
|
+
const properties_1 = require("@ethersproject/properties");
|
|
6
|
+
const logger_1 = require("@ethersproject/logger");
|
|
7
|
+
const _version_1 = require("./_version");
|
|
8
|
+
const logger = new logger_1.Logger(_version_1.version);
|
|
9
|
+
const json_rpc_provider_1 = require("./json-rpc-provider");
|
|
10
|
+
class IpcProvider extends json_rpc_provider_1.JsonRpcProvider {
|
|
11
|
+
constructor(path, network) {
|
|
29
12
|
if (path == null) {
|
|
30
13
|
logger.throwError("missing path", logger_1.Logger.errors.MISSING_ARGUMENT, { arg: "path" });
|
|
31
14
|
}
|
|
32
|
-
|
|
33
|
-
(0, properties_1.defineReadOnly)(
|
|
34
|
-
return _this;
|
|
15
|
+
super("ipc://" + path, network);
|
|
16
|
+
(0, properties_1.defineReadOnly)(this, "path", path);
|
|
35
17
|
}
|
|
36
18
|
// @TODO: Create a connection to the IPC path and use filters instead of polling for block
|
|
37
|
-
|
|
19
|
+
send(method, params) {
|
|
38
20
|
// This method is very simple right now. We create a new socket
|
|
39
21
|
// connection each time, which may be slower, but the main
|
|
40
22
|
// advantage we are aiming for now is security. This simplifies
|
|
41
23
|
// multiplexing requests (since we do not need to multiplex).
|
|
42
|
-
|
|
43
|
-
var payload = JSON.stringify({
|
|
24
|
+
let payload = JSON.stringify({
|
|
44
25
|
method: method,
|
|
45
26
|
params: params,
|
|
46
27
|
id: 42,
|
|
47
28
|
jsonrpc: "2.0"
|
|
48
29
|
});
|
|
49
|
-
return new Promise(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
stream.on("data",
|
|
30
|
+
return new Promise((resolve, reject) => {
|
|
31
|
+
let response = Buffer.alloc(0);
|
|
32
|
+
let stream = (0, net_1.connect)(this.path);
|
|
33
|
+
stream.on("data", (data) => {
|
|
53
34
|
response = Buffer.concat([response, data]);
|
|
54
35
|
});
|
|
55
|
-
stream.on("end",
|
|
36
|
+
stream.on("end", () => {
|
|
56
37
|
try {
|
|
57
38
|
resolve(JSON.parse(response.toString()).result);
|
|
58
39
|
// @TODO: Better pull apart the error
|
|
@@ -63,15 +44,14 @@ var IpcProvider = /** @class */ (function (_super) {
|
|
|
63
44
|
stream.destroy();
|
|
64
45
|
}
|
|
65
46
|
});
|
|
66
|
-
stream.on("error",
|
|
47
|
+
stream.on("error", (error) => {
|
|
67
48
|
reject(error);
|
|
68
49
|
stream.destroy();
|
|
69
50
|
});
|
|
70
51
|
stream.write(payload);
|
|
71
52
|
stream.end();
|
|
72
53
|
});
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
}(json_rpc_provider_1.JsonRpcProvider));
|
|
54
|
+
}
|
|
55
|
+
}
|
|
76
56
|
exports.IpcProvider = IpcProvider;
|
|
77
57
|
//# sourceMappingURL=ipc-provider.js.map
|
package/lib/ipc-provider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ipc-provider.js","sourceRoot":"","sources":["../src.ts/ipc-provider.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC
|
|
1
|
+
{"version":3,"file":"ipc-provider.js","sourceRoot":"","sources":["../src.ts/ipc-provider.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAEb,6BAA8B;AAE9B,0DAA2D;AAG3D,kDAA+C;AAC/C,yCAAqC;AACrC,MAAM,MAAM,GAAG,IAAI,eAAM,CAAC,kBAAO,CAAC,CAAC;AAEnC,2DAAsD;AAGtD,MAAa,WAAY,SAAQ,mCAAe;IAG5C,YAAY,IAAY,EAAE,OAAoB;QAC1C,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACf,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,eAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;QACvF,CAAC;QAED,KAAK,CAAC,QAAQ,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;QAEhC,IAAA,2BAAc,EAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,0FAA0F;IAE1F,IAAI,CAAC,MAAc,EAAE,MAAkB;QACnC,+DAA+D;QAC/D,0DAA0D;QAC1D,+DAA+D;QAC/D,6DAA6D;QAE7D,IAAI,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;YACzB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,MAAM;YACd,EAAE,EAAE,EAAE;YACN,OAAO,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAE/B,IAAI,MAAM,GAAG,IAAA,aAAO,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEhC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACvB,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAE,QAAQ,EAAE,IAAI,CAAE,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBAClB,IAAI,CAAC;oBACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;oBAChD,qCAAqC;oBACrC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACrB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,MAAM,CAAC,KAAK,CAAC,CAAC;oBACd,MAAM,CAAC,OAAO,EAAE,CAAC;gBACrB,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACzB,MAAM,CAAC,KAAK,CAAC,CAAC;gBACd,MAAM,CAAC,OAAO,EAAE,CAAC;YACrB,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACtB,MAAM,CAAC,GAAG,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AAzDD,kCAyDC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-rpc-batch-provider.d.ts","sourceRoot":"","sources":["../src.ts/json-rpc-batch-provider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"json-rpc-batch-provider.d.ts","sourceRoot":"","sources":["../src.ts/json-rpc-batch-provider.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAItD,qBAAa,oBAAqB,SAAQ,eAAe;IACrD,uBAAuB,EAAE,MAAM,CAAC,KAAK,CAAC;IACtC,aAAa,EAAE,KAAK,CAAC;QACjB,OAAO,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YAAC,EAAE,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,KAAK,CAAA;SAAE,CAAC;QAC5E,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;QAC/B,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;KACjC,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;CAgFzD"}
|
|
@@ -1,33 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
-
};
|
|
16
|
-
})();
|
|
17
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
3
|
exports.JsonRpcBatchProvider = void 0;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
4
|
+
const properties_1 = require("@ethersproject/properties");
|
|
5
|
+
const web_1 = require("@qevm/web");
|
|
6
|
+
const json_rpc_provider_1 = require("./json-rpc-provider");
|
|
22
7
|
// Experimental
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
return _super !== null && _super.apply(this, arguments) || this;
|
|
27
|
-
}
|
|
28
|
-
JsonRpcBatchProvider.prototype.send = function (method, params) {
|
|
29
|
-
var _this = this;
|
|
30
|
-
var request = {
|
|
8
|
+
class JsonRpcBatchProvider extends json_rpc_provider_1.JsonRpcProvider {
|
|
9
|
+
send(method, params) {
|
|
10
|
+
const request = {
|
|
31
11
|
method: method,
|
|
32
12
|
params: params,
|
|
33
13
|
id: (this._nextId++),
|
|
@@ -36,40 +16,40 @@ var JsonRpcBatchProvider = /** @class */ (function (_super) {
|
|
|
36
16
|
if (this._pendingBatch == null) {
|
|
37
17
|
this._pendingBatch = [];
|
|
38
18
|
}
|
|
39
|
-
|
|
40
|
-
|
|
19
|
+
const inflightRequest = { request, resolve: null, reject: null };
|
|
20
|
+
const promise = new Promise((resolve, reject) => {
|
|
41
21
|
inflightRequest.resolve = resolve;
|
|
42
22
|
inflightRequest.reject = reject;
|
|
43
23
|
});
|
|
44
24
|
this._pendingBatch.push(inflightRequest);
|
|
45
25
|
if (!this._pendingBatchAggregator) {
|
|
46
26
|
// Schedule batch for next event loop + short duration
|
|
47
|
-
this._pendingBatchAggregator = setTimeout(
|
|
27
|
+
this._pendingBatchAggregator = setTimeout(() => {
|
|
48
28
|
// Get teh current batch and clear it, so new requests
|
|
49
29
|
// go into the next batch
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
30
|
+
const batch = this._pendingBatch;
|
|
31
|
+
this._pendingBatch = null;
|
|
32
|
+
this._pendingBatchAggregator = null;
|
|
53
33
|
// Get the request as an array of requests
|
|
54
|
-
|
|
55
|
-
|
|
34
|
+
const request = batch.map((inflight) => inflight.request);
|
|
35
|
+
this.emit("debug", {
|
|
56
36
|
action: "requestBatch",
|
|
57
37
|
request: (0, properties_1.deepCopy)(request),
|
|
58
|
-
provider:
|
|
38
|
+
provider: this
|
|
59
39
|
});
|
|
60
|
-
return (0, web_1.fetchJson)(
|
|
61
|
-
|
|
40
|
+
return (0, web_1.fetchJson)(this.connection, JSON.stringify(request)).then((result) => {
|
|
41
|
+
this.emit("debug", {
|
|
62
42
|
action: "response",
|
|
63
43
|
request: request,
|
|
64
44
|
response: result,
|
|
65
|
-
provider:
|
|
45
|
+
provider: this
|
|
66
46
|
});
|
|
67
47
|
// For each result, feed it to the correct Promise, depending
|
|
68
48
|
// on whether it was a success or error
|
|
69
|
-
batch.forEach(
|
|
70
|
-
|
|
49
|
+
batch.forEach((inflightRequest, index) => {
|
|
50
|
+
const payload = result[index];
|
|
71
51
|
if (payload.error) {
|
|
72
|
-
|
|
52
|
+
const error = new Error(payload.error.message);
|
|
73
53
|
error.code = payload.error.code;
|
|
74
54
|
error.data = payload.error.data;
|
|
75
55
|
inflightRequest.reject(error);
|
|
@@ -78,22 +58,21 @@ var JsonRpcBatchProvider = /** @class */ (function (_super) {
|
|
|
78
58
|
inflightRequest.resolve(payload.result);
|
|
79
59
|
}
|
|
80
60
|
});
|
|
81
|
-
},
|
|
82
|
-
|
|
61
|
+
}, (error) => {
|
|
62
|
+
this.emit("debug", {
|
|
83
63
|
action: "response",
|
|
84
64
|
error: error,
|
|
85
65
|
request: request,
|
|
86
|
-
provider:
|
|
66
|
+
provider: this
|
|
87
67
|
});
|
|
88
|
-
batch.forEach(
|
|
68
|
+
batch.forEach((inflightRequest) => {
|
|
89
69
|
inflightRequest.reject(error);
|
|
90
70
|
});
|
|
91
71
|
});
|
|
92
72
|
}, 10);
|
|
93
73
|
}
|
|
94
74
|
return promise;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
}(json_rpc_provider_1.JsonRpcProvider));
|
|
75
|
+
}
|
|
76
|
+
}
|
|
98
77
|
exports.JsonRpcBatchProvider = JsonRpcBatchProvider;
|
|
99
78
|
//# sourceMappingURL=json-rpc-batch-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-rpc-batch-provider.js","sourceRoot":"","sources":["../src.ts/json-rpc-batch-provider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"json-rpc-batch-provider.js","sourceRoot":"","sources":["../src.ts/json-rpc-batch-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { Bytes } from "@qevm/bytes";
|
|
|
4
4
|
import { Network, Networkish } from "@ethersproject/networks";
|
|
5
5
|
import { Deferrable } from "@ethersproject/properties";
|
|
6
6
|
import { AccessList } from "@qevm/transactions";
|
|
7
|
-
import { ConnectionInfo } from "@
|
|
7
|
+
import { ConnectionInfo } from "@qevm/web";
|
|
8
8
|
import { BaseProvider, Event } from "./base-provider";
|
|
9
9
|
export declare class JsonRpcSigner extends Signer implements TypedDataSigner {
|
|
10
10
|
readonly provider: JsonRpcProvider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-rpc-provider.d.ts","sourceRoot":"","sources":["../src.ts/json-rpc-provider.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC5F,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEjG,OAAO,EAAE,KAAK,EAA8C,MAAM,aAAa,CAAC;AAEhF,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAA6B,UAAU,EAA6D,MAAM,2BAA2B,CAAC;AAE7I,OAAO,EAAE,UAAU,EAAiB,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAmB,MAAM,
|
|
1
|
+
{"version":3,"file":"json-rpc-provider.d.ts","sourceRoot":"","sources":["../src.ts/json-rpc-provider.ts"],"names":[],"mappings":"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"}
|