biconomy-hyphen
Version:
Hyphen SDK to enable instant and seamless cross-chain deposits & withdrawals
36 lines (35 loc) • 1.21 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.isEthersProvider = exports.isNativeAddress = exports.toJSONRPCPayload = void 0;
const ethers_1 = require("ethers");
const config_1 = require("./config");
function toJSONRPCPayload(engine, method, params) {
if (!method) {
throw new Error('JSONRPC method should be specified for params: "' + JSON.stringify(params) + '"!');
}
if (!engine.jsonRPC || engine.jsonRPC.messageId === undefined) {
throw new Error("engine object should have jsonRPC key with field 'messageId'");
}
// advance message ID
engine.jsonRPC.messageId++;
return {
jsonrpc: '2.0',
id: engine.jsonRPC.messageId,
method,
params: params || []
};
}
exports.toJSONRPCPayload = toJSONRPCPayload;
;
function isNativeAddress(address) {
let result = false;
if (address && address.toLowerCase() === config_1.config.NATIVE_ADDRESS) {
result = true;
}
return result;
}
exports.isNativeAddress = isNativeAddress;
const isEthersProvider = (provider) => {
return ethers_1.ethers.providers.Provider.isProvider(provider);
};
exports.isEthersProvider = isEthersProvider;