UNPKG

@foreverrbum/ethsign

Version:

This package will allow you to electronically sign documents within your application

307 lines (285 loc) 9.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.testnets = exports.mainnets = exports.isTestnet = exports.getTorusChainSwitchOptions = exports.getTorusChainOptions = exports.getTestNetChain = exports.getMainNetChain = exports.getFortmaticChainOptions = exports.getChain = exports.default = exports.chains = void 0; var _lodash = _interopRequireDefault(require("lodash")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var chains = [{ name: "Ethereum Mainnet", chainId: 1, shortName: "eth", chain: "ETH", network: "mainnet", networkId: 1, nativeCurrency: { name: "Ether", symbol: "ETH", decimals: 18 }, rpc: ["https://mainnet.infura.io/v3/59e38e7a0505462d810e0ac606665fd1", "wss://mainnet.infura.io/ws/v3/59e38e7a0505462d810e0ac606665fd1", "https://api.mycryptoapi.com/eth", "https://cloudflare-eth.com"], faucets: [], explorers: [{ name: "etherscan", url: "https://etherscan.io", standard: "EIP3091" }], infoURL: "https://ethereum.org", fortmaticSupport: true, biconomySupport: false, torusSupport: true }, { name: "Binance Smart Chain Mainnet", chainId: 56, shortName: "bnb", chain: "BSC", network: "mainnet", networkId: 56, nativeCurrency: { name: "Binance Chain Native Token", symbol: "BNB", decimals: 18 }, rpc: ['https://bsc-dataseed.binance.org/', "https://bsc-dataseed1.binance.org", "https://bsc-dataseed2.binance.org", "https://bsc-dataseed3.binance.org", "https://bsc-dataseed4.binance.org", "https://bsc-dataseed1.defibit.io", "https://bsc-dataseed2.defibit.io", "https://bsc-dataseed3.defibit.io", "https://bsc-dataseed4.defibit.io", "https://bsc-dataseed1.ninicoin.io", "https://bsc-dataseed2.ninicoin.io", "https://bsc-dataseed3.ninicoin.io", "https://bsc-dataseed4.ninicoin.io", "wss://bsc-ws-node.nariox.org"], faucets: [], explorers: [{ name: "bscscan", url: "https://bscscan.com", standard: "EIP3091" }], infoURL: "https://www.binance.org", fortmaticSupport: true, biconomySupport: true, biconomyKey: 'TkNhgnRKe.570065b2-9510-4ecb-afe3-babe48ad6278', torusSupport: false }, { name: "Avalanche Mainnet", chainId: 43114, shortName: "Avalanche", chain: "AVAX", network: "mainnet", networkId: 1, nativeCurrency: { name: "Avalanche", symbol: "AVAX", decimals: 18 }, rpc: ["https://api.avax.network/ext/bc/C/rpc"], faucets: [], explorers: [], infoURL: "https://cchain.explorer.avax.network/", fortmaticSupport: false, biconomySupport: false, torusSupport: false }, { name: "Matic Mainnet", chainId: 137, shortName: "matic", chain: "Matic", network: "mainnet", torusNetwork: "matic", networkId: 137, nativeCurrency: { name: "Matic", symbol: "MATIC", decimals: 18 }, rpc: ["https://polygon-mainnet.g.alchemy.com/v2/b8HxLm8ftPKUWbEUInT5yb2WI_meyqNe", "wss://polygon-mainnet.g.alchemy.com/v2/b8HxLm8ftPKUWbEUInT5yb2WI_meyqNe", "https://rpc-mainnet.matic.network", "wss://ws-mainnet.matic.network"], faucets: [], explorers: [], infoURL: "https://matic.network/", fortmaticSupport: false, biconomySupport: true, biconomyKey: 'tpkapBz2J.18f4ffa5-a0d1-4a64-b65c-bc130b44cd98', torusSupport: true }, { name: "Fantom Opera", chainId: 250, shortName: "ftm", chain: "FTM", network: "mainnet", networkId: 250, nativeCurrency: { name: "Fantom", symbol: "FTM", decimals: 18 }, rpc: ["https://rpcapi.fantom.network"], faucets: [], explorers: [{ name: "ftmscan", url: "https://ftmscan.com", icon: "ftmscan", standard: "EIP3091" }], infoURL: "https://fantom.foundation", fortmaticSupport: false, biconomySupport: false, torusSupport: false }, // { // name: "Binance Smart Chain Testnet", // chainId: 97, // shortName: "bnbt", // chain: "BSC", // network: "Chapel", // networkId: 97, // nativeCurrency: { // name: "Binance Chain Native Token", // symbol: "tBNB", // decimals: 18 // }, // rpc: [ // "https://data-seed-prebsc-1-s1.binance.org:8545", // "https://data-seed-prebsc-2-s1.binance.org:8545", // "https://data-seed-prebsc-1-s2.binance.org:8545", // "https://data-seed-prebsc-2-s2.binance.org:8545", // "https://data-seed-prebsc-1-s3.binance.org:8545", // "https://data-seed-prebsc-2-s3.binance.org:8545" // ], // faucets: [ // "https://testnet.binance.org/faucet-smart" // ], // explorers: [ // { // name: "bscscan-testnet", // url: "https://testnet.bscscan.com", // standard: "EIP3091" // } // ], // infoURL: "https://testnet.binance.org/", // fortmaticSupport: true, // biconomySupport: true, // biconomyKey: 'l-5gPgQYJ.0ae80638-cb0a-47d3-81b1-3c0e88eec347', // torusSupport: false // }, { name: "Ethereum Ropsten Testnet", chainId: 3, shortName: "rop", chain: "ETH", network: "ropsten", networkId: 3, nativeCurrency: { name: "Ropsten Ether", symbol: "ROP", decimals: 18 }, rpc: ["https://ropsten.infura.io/v3/59e38e7a0505462d810e0ac606665fd1", "wss://ropsten.infura.io/ws/v3/59e38e7a0505462d810e0ac606665fd1"], faucets: ["https://faucet.ropsten.be?${ADDRESS}"], explorers: [], infoURL: "https://github.com/ethereum/ropsten", fortmaticSupport: false, biconomySupport: false, torusSupport: true } // { // name: "Moonbeam Testnet Moonbase Alpha", // chainId: 1287, // shortName: "mbase", // chain: "MOON", // network: "moonbase", // networkId: 1287, // nativeCurrency: { // name: "DEV", // symbol: "DEV", // decimals: 18 // }, // rpc: [ // "https://rpc.testnet.moonbeam.network" // ], // faucets: [ ], // explorers: ["https://docs.moonbeam.network/networks/testnet/"], // infoURL: "https://rpc.testnet.moonbeam.network", // fortmaticSupport: false, // biconomySupport: false, // torusSupport: false // }, // { // name: "Kovan Test Network", // chainId: 42, // networkId: 42, // nativeCurrency: { // name: "ETH", // symbol: "ETH", // decimals: 18 // }, // rpc: [ // "https://kovan.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161" // ], // faucets: [ ], // explorers: ["https://kovan.etherscan.io"], // infoURL: "https://kovan.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161", // fortmaticSupport: false, // torusSupport: false // } ]; exports.chains = chains; var getChain = function getChain(networkId) { var index = _lodash.default.findIndex(chains, function (o) { return o.chainId == networkId; }); return chains[index]; }; exports.getChain = getChain; var getFortmaticChainOptions = function getFortmaticChainOptions(networkId) { var index = _lodash.default.findIndex(chains, function (o) { return o.chainId == networkId; }); return { rpcUrl: chains[index].rpc[0], chainId: networkId }; }; exports.getFortmaticChainOptions = getFortmaticChainOptions; var getTorusChainOptions = function getTorusChainOptions(networkId) { var index = _lodash.default.findIndex(chains, function (o) { return o.chainId == networkId; }); return { network: { host: chains[index].torusNetwork ? chains[index].torusNetwork : chains[index].network, chainId: chains[index].chainId, networkName: chains[index].name, blockExplorer: chains[index].explorers.length > 0 && chains[index].explorers[0].url ? chains[index].explorers[0].url : chains[index].infoURL, ticker: chains[index].nativeCurrency.symbol, tickerName: chains[index].nativeCurrency.name }, showTorusButton: false }; }; exports.getTorusChainOptions = getTorusChainOptions; var getTorusChainSwitchOptions = function getTorusChainSwitchOptions(networkId) { var index = _lodash.default.findIndex(chains, function (o) { return o.chainId == networkId; }); return { host: chains[index].torusNetwork ? chains[index].torusNetwork : chains[index].network, chainId: chains[index].chainId, networkName: chains[index].name }; }; exports.getTorusChainSwitchOptions = getTorusChainSwitchOptions; var mainnets = ['Matic Mainnet', 'Fantom Opera', 'Ethereum Mainnet', 'Avalanche Mainnet', 'Binance Smart Chain Mainnet']; exports.mainnets = mainnets; var testnets = ['Ethereum Ropsten Testnet', 'Binance Smart Chain Testnet', 'Moonbeam Testnet Moonbase Alpha']; exports.testnets = testnets; var getMainNetChain = function getMainNetChain() { return chains.filter(function (chain) { return mainnets.includes(chain.name); }); }; exports.getMainNetChain = getMainNetChain; var getTestNetChain = function getTestNetChain() { return chains.filter(function (chain) { return testnets.includes(chain.name); }); }; exports.getTestNetChain = getTestNetChain; var isTestnet = function isTestnet(chainId) { return testnets.includes(getChain(chainId).name); }; exports.isTestnet = isTestnet; var _default = { chains: chains, getChain: getChain }; exports.default = _default;