@keplr-wallet/chain-validator 0.12.87 → 0.12.88-rc.0
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/build/connection.d.ts +1 -0
- package/build/connection.js +30 -1
- package/build/connection.js.map +1 -1
- package/package.json +5 -5
- package/src/connection.ts +38 -0
package/build/connection.d.ts
CHANGED
|
@@ -7,3 +7,4 @@ export declare function checkRPCConnectivity(chainId: string, rpc: string, wsObj
|
|
|
7
7
|
close(): void;
|
|
8
8
|
}): Promise<void>;
|
|
9
9
|
export declare function checkRestConnectivity(chainId: string, rest: string): Promise<void>;
|
|
10
|
+
export declare function checkEvmRpcConnectivity(evmChainId: number, evmRpc: string): Promise<void>;
|
package/build/connection.js
CHANGED
|
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.checkRestConnectivity = exports.checkRPCConnectivity = exports.DifferentChainVersionError = void 0;
|
|
12
|
+
exports.checkEvmRpcConnectivity = exports.checkRestConnectivity = exports.checkRPCConnectivity = exports.DifferentChainVersionError = void 0;
|
|
13
13
|
const cosmos_1 = require("@keplr-wallet/cosmos");
|
|
14
14
|
const simple_fetch_1 = require("@keplr-wallet/simple-fetch");
|
|
15
15
|
class DifferentChainVersionError extends Error {
|
|
@@ -108,4 +108,33 @@ function checkRestConnectivity(chainId, rest) {
|
|
|
108
108
|
});
|
|
109
109
|
}
|
|
110
110
|
exports.checkRestConnectivity = checkRestConnectivity;
|
|
111
|
+
function checkEvmRpcConnectivity(evmChainId, evmRpc) {
|
|
112
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
113
|
+
let resultEvmChainId;
|
|
114
|
+
try {
|
|
115
|
+
// get the EVM chain id.
|
|
116
|
+
resultEvmChainId = yield (0, simple_fetch_1.simpleFetch)(evmRpc, {
|
|
117
|
+
method: "POST",
|
|
118
|
+
headers: {
|
|
119
|
+
"content-type": "application/json",
|
|
120
|
+
},
|
|
121
|
+
body: JSON.stringify({
|
|
122
|
+
jsonrpc: "2.0",
|
|
123
|
+
method: "eth_chainId",
|
|
124
|
+
params: [],
|
|
125
|
+
id: 1,
|
|
126
|
+
}),
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
catch (e) {
|
|
130
|
+
console.log(e);
|
|
131
|
+
throw new Error("Failed to get response eth_chainId from EVM RPC endpoint");
|
|
132
|
+
}
|
|
133
|
+
const evmChainIdFromResult = Number(resultEvmChainId.data.result);
|
|
134
|
+
if (evmChainIdFromResult !== evmChainId) {
|
|
135
|
+
throw new Error(`EVM RPC endpoint has different chain id (expected: ${evmChainId}, actual: ${evmChainIdFromResult})`);
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
exports.checkEvmRpcConnectivity = checkEvmRpcConnectivity;
|
|
111
140
|
//# sourceMappingURL=connection.js.map
|
package/build/connection.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@keplr-wallet/chain-validator",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.88-rc.0",
|
|
4
4
|
"main": "build/index.js",
|
|
5
5
|
"author": "chainapsis",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -16,11 +16,11 @@
|
|
|
16
16
|
"lint-fix": "eslint --fix \"src/**/*\" && prettier --write \"src/**/*\""
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@keplr-wallet/cosmos": "0.12.
|
|
20
|
-
"@keplr-wallet/simple-fetch": "0.12.
|
|
21
|
-
"@keplr-wallet/types": "0.12.
|
|
19
|
+
"@keplr-wallet/cosmos": "0.12.88-rc.0",
|
|
20
|
+
"@keplr-wallet/simple-fetch": "0.12.88-rc.0",
|
|
21
|
+
"@keplr-wallet/types": "0.12.88-rc.0",
|
|
22
22
|
"joi": "^17.5.0",
|
|
23
23
|
"utility-types": "^3.10.0"
|
|
24
24
|
},
|
|
25
|
-
"gitHead": "
|
|
25
|
+
"gitHead": "e5b507e7773babf680db0fb8669fff66a9130310"
|
|
26
26
|
}
|
package/src/connection.ts
CHANGED
|
@@ -148,3 +148,41 @@ export async function checkRestConnectivity(
|
|
|
148
148
|
);
|
|
149
149
|
}
|
|
150
150
|
}
|
|
151
|
+
|
|
152
|
+
export async function checkEvmRpcConnectivity(
|
|
153
|
+
evmChainId: number,
|
|
154
|
+
evmRpc: string
|
|
155
|
+
) {
|
|
156
|
+
let resultEvmChainId: SimpleFetchResponse<{
|
|
157
|
+
result: string;
|
|
158
|
+
}>;
|
|
159
|
+
|
|
160
|
+
try {
|
|
161
|
+
// get the EVM chain id.
|
|
162
|
+
resultEvmChainId = await simpleFetch<{
|
|
163
|
+
result: string;
|
|
164
|
+
}>(evmRpc, {
|
|
165
|
+
method: "POST",
|
|
166
|
+
headers: {
|
|
167
|
+
"content-type": "application/json",
|
|
168
|
+
},
|
|
169
|
+
body: JSON.stringify({
|
|
170
|
+
jsonrpc: "2.0",
|
|
171
|
+
method: "eth_chainId",
|
|
172
|
+
params: [],
|
|
173
|
+
id: 1,
|
|
174
|
+
}),
|
|
175
|
+
});
|
|
176
|
+
} catch (e) {
|
|
177
|
+
console.log(e);
|
|
178
|
+
throw new Error("Failed to get response eth_chainId from EVM RPC endpoint");
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
const evmChainIdFromResult = Number(resultEvmChainId.data.result);
|
|
182
|
+
|
|
183
|
+
if (evmChainIdFromResult !== evmChainId) {
|
|
184
|
+
throw new Error(
|
|
185
|
+
`EVM RPC endpoint has different chain id (expected: ${evmChainId}, actual: ${evmChainIdFromResult})`
|
|
186
|
+
);
|
|
187
|
+
}
|
|
188
|
+
}
|