UNPKG

@ethers-ancillary/exchain

Version:

An ethers-compatible provider for OKExChain.

58 lines 1.87 kB
"use strict"; exports.__esModule = true; exports.getNetwork = void 0; var ethers_1 = require("ethers"); var _version_1 = require("./_version"); var logger = new ethers_1.ethers.utils.Logger(_version_1.version); var networks = [ { name: "exchain", chainId: 0x41 }, { name: "exchain-testnet", chainId: 0x42 }, ]; function getNetwork(network) { if (network == null) { return null; } // Chain ID if (typeof (network) === "number") { var matches = networks.filter(function (n) { return (n.chainId === network); }); if (matches.length) { return { name: matches[0].name, chainId: matches[0].chainId }; } return { name: "unknown", chainId: network }; } // Chain name if (typeof (network) === "string") { var matches = networks.filter(function (n) { return (n.name === network); }); if (matches.length) { return { name: matches[0].name, chainId: matches[0].chainId }; } return null; } if (typeof (network.name) === "string" && typeof (network.chainId) === "number") { var byName = getNetwork(network.name); var byChainId = getNetwork(network.chainId); // Nothing standard; valid custom network if (byName == null && byChainId == null) { return { name: network.name, chainId: network.chainId }; } // Make sure if it is a standard chain the parameters match if (byName && byChainId && byName.name === byChainId.name && byName.chainId === byChainId.chainId) { return byName; } } return logger.throwArgumentError("network chainId mismatch", "network", network); } exports.getNetwork = getNetwork; //# sourceMappingURL=networks.js.map