UNPKG

@funkit/chains

Version:

Funkit Chains SDK centralizes chain information across all funkit apps and packages.

1,085 lines (1,081 loc) 29.2 kB
// src/const/index.ts import { abstract, arbitrum, arbitrumSepolia, base, bsc, goerli, ink, mainnet, mantle, optimism, polygon, scroll, zksync } from "viem/chains"; // src/const/chainId.ts var HYPER_EVM_CHAIN_ID = 999; var ETHEREAL_CHAIN_ID = 5064014; var LIGHTER_CHAIN_ID = 3586256; var MONAD_CHAIN_ID = 143; var SOLANA_MAINNET_CHAIN_ID = 1151111081099710; var HYPERCORE_CHAIN_ID = 1337; var BITCOIN_MAINNET_CHAIN_ID = 8253038; var LIGHTNING_MAINNET_CHAIN_ID = 29780; var TRON_MAINNET_CHAIN_ID = 728126428; var ROBINHOOD_MAINNET_CHAIN_ID = 4663; // src/const/chainMetadata.ts function isNotNullish(value) { return value != null; } var abstractIcon = { iconBackground: "#96bedc", iconUrl: "https://sdk-cdn.fun.xyz/images/abstract.svg" }; var arbitrumIcon = { iconBackground: "#96bedc", iconUrl: "https://sdk-cdn.fun.xyz/images/arbitrum.svg" }; var avalancheIcon = { iconBackground: "#e84141", iconUrl: "https://sdk-cdn.fun.xyz/images/avalanche.svg" }; var baseIcon = { iconBackground: "#0052ff", iconUrl: "https://sdk-cdn.fun.xyz/images/base.svg" }; var bitcoinIcon = { iconBackground: "#000000", iconUrl: "https://sdk-cdn.fun.xyz/images/bitcoin.svg" }; var lightningIcon = { iconBackground: "#000000", iconUrl: "https://sdk-cdn.fun.xyz/images/lightning.svg" }; var blastIcon = { iconBackground: "#000000", iconUrl: "https://sdk-cdn.fun.xyz/images/blast.svg" }; var bscIcon = { iconBackground: "#ebac0e", iconUrl: "https://sdk-cdn.fun.xyz/images/bsc.svg" }; var cronosIcon = { iconBackground: "#002D74", iconUrl: "https://sdk-cdn.fun.xyz/images/cronos.svg" }; var solanaIcon = { iconBackground: "#2C2C3D", iconUrl: "https://sdk-cdn.fun.xyz/images/solana.svg" }; var ethereumIcon = { iconBackground: "#484c50", iconUrl: "https://sdk-cdn.fun.xyz/images/ethereum.svg" }; var etherealIcon = { iconBackground: "#000000", iconUrl: "https://sdk-cdn.fun.xyz/images/ethereal.svg" }; var hardhatIcon = { iconBackground: "#f9f7ec", iconUrl: "https://sdk-cdn.fun.xyz/images/hardhat.svg" }; var klaytnIcon = { iconBackground: "transparent", iconUrl: "https://sdk-cdn.fun.xyz/images/klaytn.svg" }; var optimismIcon = { iconBackground: "#ff5a57", iconUrl: "https://sdk-cdn.fun.xyz/images/optimism.svg" }; var mantaIcon = { iconBackground: "#ffffff", iconUrl: "https://sdk-cdn.fun.xyz/images/manta.svg" }; var mantleIcon = { iconBackground: "#000000", iconUrl: "https://sdk-cdn.fun.xyz/images/mantle.svg" }; var monadIcon = { iconBackground: "#ffffff", iconUrl: "https://sdk-cdn.fun.xyz/images/monad.svg" }; var polygonIcon = { iconBackground: "#9f71ec", iconUrl: "https://sdk-cdn.fun.xyz/images/polygon.svg" }; var scrollIcon = { iconBackground: "#000000", iconUrl: "https://sdk-cdn.fun.xyz/images/scroll.svg" }; var xdcIcon = { iconBackground: "#f9f7ec", iconUrl: "https://sdk-cdn.fun.xyz/images/xdc.svg" }; var zetachainIcon = { iconBackground: "#000000", iconUrl: "https://sdk-cdn.fun.xyz/images/zetachain.svg" }; var zkSyncIcon = { iconBackground: "#f9f7ec", iconUrl: "https://sdk-cdn.fun.xyz/images/zkSync.svg" }; var zoraIcon = { iconBackground: "#000000", iconUrl: "https://sdk-cdn.fun.xyz/images/zora.svg" }; var roninIcon = { iconBackground: "#1273EA", iconUrl: "https://sdk-cdn.fun.xyz/images/ronin.svg" }; var hyperEvmIcon = { iconBackground: "#000000", iconUrl: "https://sdk-cdn.fun.xyz/images/hyperevm.svg" }; var hyperCoreIcon = { iconBackground: "#000000", iconUrl: "https://sdk-cdn.fun.xyz/images/hyperevm.svg" }; var inkIcon = { iconBackground: "#7132F5", iconUrl: "https://sdk-cdn.fun.xyz/images/ink.svg" }; var lighterIcon = { iconBackground: "#000000", iconUrl: "https://sdk-cdn.fun.xyz/images/lighter.svg" }; var tronIcon = { iconBackground: "#FF080B", iconUrl: "https://sdk-cdn.fun.xyz/images/tron.svg" }; var robinhoodIcon = { iconBackground: "#00C805", iconUrl: "https://sdk-cdn.fun.xyz/images/robinhood.svg" }; var chainMetadataByName = { abstract: { chainId: 2741, name: "Abstract", ...abstractIcon }, arbitrum: { chainId: 42161, name: "Arbitrum", ...arbitrumIcon }, arbitrumGoerli: { chainId: 421613, name: "Arbitrum Goerli", ...arbitrumIcon }, arbitrumSepolia: { chainId: 421614, name: "Arbitrum Sepolia", ...arbitrumIcon }, avalanche: { chainId: 43114, name: "Avalanche", ...avalancheIcon }, avalancheFuji: { chainId: 43113, name: "Avalanche Fuji", ...avalancheIcon }, base: { chainId: 8453, name: "Base", ...baseIcon }, baseGoerli: { chainId: 84531, name: "Base Goerli", ...baseIcon }, baseSepolia: { chainId: 84532, name: "Base Sepolia", ...baseIcon }, blast: { chainId: 81457, name: "Blast", ...blastIcon }, blastSepolia: { chainId: 168587773, name: "Blast Sepolia", ...blastIcon }, bsc: { chainId: 56, name: "BSC", ...bscIcon }, bscTestnet: { chainId: 97, name: "BSC Testnet", ...bscIcon }, cronos: { chainId: 25, name: "Cronos", ...cronosIcon }, cronosTestnet: { chainId: 338, name: "Cronos Testnet", ...cronosIcon }, ethereal: { chainId: ETHEREAL_CHAIN_ID, name: "Ethereal", ...etherealIcon }, goerli: { chainId: 5, name: "Goerli", ...ethereumIcon }, hardhat: { chainId: 31337, name: "Hardhat", ...hardhatIcon }, holesky: { chainId: 17e3, name: "Holesky", ...ethereumIcon }, hyperEvm: { chainId: HYPER_EVM_CHAIN_ID, name: "HyperEVM", ...hyperEvmIcon }, ink: { chainId: 57073, name: "Ink", ...inkIcon }, kovan: { chainId: 42, name: "Kovan", ...ethereumIcon }, klaytn: { chainId: 8217, name: "Klaytn", ...klaytnIcon }, klaytnBaobab: { chainId: 1001, name: "Klaytn Baobab", ...klaytnIcon }, lighter: { chainId: LIGHTER_CHAIN_ID, name: "Lighter", ...lighterIcon }, mainnet: { chainId: 1, name: "Ethereum", ...ethereumIcon }, manta: { chainId: 169, name: "Manta", ...mantaIcon }, mantaSepolia: { chainId: 3441006, name: "Manta Sepolia", ...mantaIcon }, mantaTestnet: { chainId: 3441005, name: "Manta Testnet", ...mantaIcon }, mantle: { chainId: 5e3, name: "Mantle", ...mantleIcon }, mantleTestnet: { chainId: 5001, name: "Mantle Testnet", ...mantleIcon }, monad: { chainId: MONAD_CHAIN_ID, name: "Monad", ...monadIcon }, optimism: { chainId: 10, name: "Optimism", ...optimismIcon }, optimismGoerli: { chainId: 420, name: "Optimism Goerli", ...optimismIcon }, optimismKovan: { chainId: 69, name: "Optimism Kovan", ...optimismIcon }, optimismSepolia: { chainId: 11155420, name: "Optimism Sepolia", ...optimismIcon }, polygon: { chainId: 137, name: "Polygon", ...polygonIcon }, polygonMumbai: { chainId: 80001, name: "Polygon Mumbai", ...polygonIcon }, rinkeby: { chainId: 4, name: "Rinkeby", ...ethereumIcon }, robinhood: { chainId: ROBINHOOD_MAINNET_CHAIN_ID, name: "Robinhood", ...robinhoodIcon }, ropsten: { chainId: 3, name: "Ropsten", ...ethereumIcon }, ronin: { chainId: 2020, name: "Ronin", ...roninIcon }, scroll: { chainId: 534352, name: "Scroll", ...scrollIcon }, sepolia: { chainId: 11155111, name: "Sepolia", ...ethereumIcon }, // Non-evm -- Funkit solana support solanaMainnet: { chainId: SOLANA_MAINNET_CHAIN_ID, name: "Solana", ...solanaIcon }, // Non-evm -- Funkit Tron support tron: { chainId: Number(TRON_MAINNET_CHAIN_ID), name: "Tron", ...tronIcon }, // Non-evm -- Funkit HyperCore support hyperCore: { chainId: HYPERCORE_CHAIN_ID, name: "HyperCore", ...hyperCoreIcon }, // Non-evm -- Funkit Bitcoin support bitcoin: { chainId: BITCOIN_MAINNET_CHAIN_ID, name: "Bitcoin", ...bitcoinIcon }, // Non-evm -- Funkit Bitcoin Lightning support lightning: { chainId: LIGHTNING_MAINNET_CHAIN_ID, name: "Lightning", ...lightningIcon }, xdc: { chainId: 50, name: "XinFin", ...xdcIcon }, xdcTestnet: { chainId: 51, name: "XinFin Testnet", ...xdcIcon }, zetachain: { chainId: 7e3, name: "ZetaChain", ...zetachainIcon }, zetachainAthensTestnet: { chainId: 7001, name: "Zeta Athens", ...zetachainIcon }, zkSync: { chainId: 324, name: "zkSync", ...zkSyncIcon }, zkSyncTestnet: { chainId: 280, name: "zkSync Testnet", ...zkSyncIcon }, zora: { chainId: 7777777, name: "Zora", ...zoraIcon }, zoraSepolia: { chainId: 999999999, name: "Zora Sepolia", ...zoraIcon } }; var chainMetadataById = Object.fromEntries( Object.values(chainMetadataByName).filter(isNotNullish).map(({ chainId, ...metadata }) => [chainId, metadata]) ); // src/const/index.ts var hyperEvmChain = { id: HYPER_EVM_CHAIN_ID, name: "HyperEVM", nativeCurrency: { name: "HYPE", symbol: "HYPE", decimals: 18 }, rpcUrls: { default: { http: [ "https://rpc.hyperliquid.xyz/evm", "https://rpc.hypurrscan.io", "https://hyperliquid-json-rpc.stakely.io", "https://hyperliquid.drpc.org", "https://rpc.hyperlend.finance" ], wss: ["wss://hyperliquid.drpc.org"] } }, blockExplorers: { default: { name: "HyperEVMScan", url: "https://hyperevmscan.io", apiUrl: "" } }, contracts: { ensRegistry: { address: "0x" }, ensUniversalResolver: { address: "0x", blockCreated: -1 }, multicall3: { address: "0xcA11bde05977b3631167028862bE2a173976CA11", blockCreated: -1 } } }; var etherealChain = { id: ETHEREAL_CHAIN_ID, name: "Ethereal", nativeCurrency: { name: "USDe", symbol: "USDe", decimals: 18 }, rpcUrls: { default: { http: ["https://rpc.ethereal.trade"] } }, blockExplorers: { default: { name: "Ethereal Explorer", url: "https://explorer.ethereal.trade" } }, contracts: { ensRegistry: { address: "0x" }, ensUniversalResolver: { address: "0x", blockCreated: -1 }, multicall3: { address: "0xcA11bde05977b3631167028862bE2a173976CA11", blockCreated: 36197 } } }; var lighterChain = { id: LIGHTER_CHAIN_ID, name: "Lighter", nativeCurrency: { name: "USDC", symbol: "USDC", decimals: 6 }, rpcUrls: { default: { http: ["https://mainnet.zklighter.elliot.ai"] } }, blockExplorers: { default: { name: "Lighter Explorer", url: "https://app.lighter.xyz/explorer", path: { tx: "logs", address: "accounts", block: "blocks", transfer: "" } } }, contracts: { ensRegistry: { address: "0x" }, ensUniversalResolver: { address: "0x", blockCreated: -1 }, multicall3: { address: "0x", blockCreated: -1 } } }; var monadChain = { id: MONAD_CHAIN_ID, name: "Monad", nativeCurrency: { name: "MON", symbol: "MON", decimals: 18 }, rpcUrls: { default: { http: [ "https://rpc.monad.xyz", "https://rpc1.monad.xyz", "https://rpc2.monad.xyz", "https://rpc3.monad.xyz" ] } }, blockExplorers: { default: { name: "Monad Explorer", url: "https://monadscan.com" } }, contracts: { ensRegistry: { address: "0x" }, ensUniversalResolver: { address: "0x", blockCreated: -1 }, multicall3: { address: "0xcA11bde05977b3631167028862bE2a173976CA11", blockCreated: -1 } } }; var solanaChain = { id: SOLANA_MAINNET_CHAIN_ID, name: "Solana", nativeCurrency: { symbol: "SOL", decimals: 9, name: "Solana" }, rpcUrls: { default: { http: ["https://api.mainnet-beta.solana.com"] } }, blockExplorers: { default: { name: "Orb", url: "https://orbmarkets.io", apiUrl: "" } }, contracts: { ensRegistry: { address: "0x" }, ensUniversalResolver: { address: "0x", blockCreated: -1 }, multicall3: { address: "0x", blockCreated: -1 } } }; var hyperCoreChain = { id: HYPERCORE_CHAIN_ID, name: "Hyperliquid", nativeCurrency: { symbol: "USDC", // USDC Spot is the native asset of HyperCore, not HYPE decimals: 8, // USDC Spot has 8 decimals on HyperCore, not 6! name: "USDC" }, rpcUrls: { default: { http: ["https://rpc.hyperliquid.xyz"] } }, blockExplorers: { default: { name: "HypurrScan", url: "https://hypurrscan.io" } }, contracts: { ensRegistry: { address: "0x" }, ensUniversalResolver: { address: "0x", blockCreated: -1 }, multicall3: { address: "0x", blockCreated: -1 } } }; var bitcoinChain = { id: Number(BITCOIN_MAINNET_CHAIN_ID), name: "Bitcoin", nativeCurrency: { symbol: "BTC", decimals: 8, name: "Bitcoin" }, rpcUrls: { default: { http: ["https://blockstream.info/api"] } }, blockExplorers: { default: { name: "Mempool", url: "https://mempool.space" } }, contracts: {} }; var lightningChain = { id: Number(LIGHTNING_MAINNET_CHAIN_ID), name: "Lightning", nativeCurrency: { symbol: "BTC", decimals: 8, name: "Bitcoin" }, /** * No public JSON-RPC exists for Lightning. The URL is a * placeholder to satisfy viem's non-empty rpcUrls.default.http requirement * (same convention as bitcoinChain). Lightning is filtered out of wagmi * via isCheckoutSupported:false (see chainMetadata below), so this URL is * never actually called internally. In the rare case an external SDK * consumer imports this chain and passes it to wagmi directly, the * placeholder defers (not prevents) failure they get a clearer * HttpRequestError at the first JSON-RPC call instead of UrlRequiredError * at config-build time. */ rpcUrls: { default: { http: ["https://api.sparkscan.io"] } }, blockExplorers: { default: { name: "Sparkscan", url: "https://sparkscan.io" } }, contracts: {} }; var tronChain = { id: Number(TRON_MAINNET_CHAIN_ID), name: "Tron", nativeCurrency: { symbol: "TRX", decimals: 6, name: "Tron" }, rpcUrls: { default: { http: ["https://api.trongrid.io/jsonrpc"] } }, blockExplorers: { default: { name: "TronScan", url: "https://tronscan.org", path: { tx: "transaction", transfer: "/transfers" } } }, contracts: {} }; var robinhoodChain = { id: ROBINHOOD_MAINNET_CHAIN_ID, name: "Robinhood Chain", nativeCurrency: { name: "Ethereum", symbol: "ETH", decimals: 18 }, rpcUrls: { default: { http: ["https://rpc.mainnet.chain.robinhood.com"], webSocket: ["wss://feed.mainnet.chain.robinhood.com"] } }, blockExplorers: { default: { name: "Robinhood Chain Explorer", url: "https://robinhoodchain.blockscout.com" } }, // TODO: get deployment address and block created once chain details are public contracts: { ensRegistry: { address: "0x" }, ensUniversalResolver: { address: "0x", blockCreated: -1 }, multicall3: { address: "0xcA11bde05977b3631167028862bE2a173976CA11", blockCreated: -1 } } }; var FUNKIT_CONNECT_SUPPORTED_CHAINS_ID_LIST = [ /** MAINNETS **/ mainnet.id, base.id, polygon.id, arbitrum.id, optimism.id, bsc.id, zksync.id, mantle.id, solanaChain.id, scroll.id, hyperEvmChain.id, hyperCoreChain.id, abstract.id, bitcoinChain.id, etherealChain.id, monadChain.id, lighterChain.id, tronChain.id, robinhoodChain.id, ink.id, /** TESTNETS **/ goerli.id, arbitrumSepolia.id ]; var FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO = { /** MAINNETS **/ [mainnet.id]: { name: mainnet.name, nativeCurrency: { symbol: mainnet.nativeCurrency.symbol, decimals: mainnet.nativeCurrency.decimals, name: mainnet.nativeCurrency.name }, chainInfo: mainnet, explorerInfo: mainnet.blockExplorers.default, isCheckoutSupported: true, isMainnet: true, pickPriority: 4, fallbackRpcUrls: [ "https://eth.llamarpc.com", "https://eth.drpc.org", "https://1rpc.io/eth", "https://mainnet.gateway.tenderly.co", "https://ethereum-rpc.publicnode.com", "https://eth.merkle.io" ] }, [base.id]: { name: base.name, nativeCurrency: { symbol: base.nativeCurrency.symbol, decimals: base.nativeCurrency.decimals, name: base.nativeCurrency.name }, chainInfo: base, explorerInfo: base.blockExplorers.default, isCheckoutSupported: true, isMainnet: true, pickPriority: 2, fallbackRpcUrls: [ "https://base.llamarpc.com", "https://1rpc.io/base", "https://base.gateway.tenderly.co", "https://base-rpc.publicnode.com", "https://base.meowrpc.com" ] }, [polygon.id]: { name: polygon.name, nativeCurrency: { symbol: polygon.nativeCurrency.symbol, decimals: polygon.nativeCurrency.decimals, name: polygon.nativeCurrency.name }, coreToken: { symbol: "MATIC", decimals: 18, name: "MATIC" }, chainInfo: polygon, explorerInfo: polygon.blockExplorers.default, isCheckoutSupported: true, isMainnet: true, pickPriority: 1, fallbackRpcUrls: [ "https://polygon.drpc.org", "https://1rpc.io/matic", "https://polygon.gateway.tenderly.co", "https://polygon-bor-rpc.publicnode.com", "https://api.zan.top/polygon-mainnet" ] }, [arbitrum.id]: { name: "Arbitrum", // arbitrum.name returns 'Arbitrum One' which is too wordy for us. nativeCurrency: { symbol: arbitrum.nativeCurrency.symbol, decimals: arbitrum.nativeCurrency.decimals, name: arbitrum.nativeCurrency.name }, coreToken: { symbol: "ARB", decimals: 18, name: "Arbitrium" }, chainInfo: arbitrum, explorerInfo: arbitrum.blockExplorers.default, isCheckoutSupported: true, isMainnet: true, pickPriority: 3, fallbackRpcUrls: [ "https://arbitrum.drpc.org", "https://arbitrum.gateway.tenderly.co", "https://1rpc.io/arb", "https://arbitrum-one-rpc.publicnode.com", "https://arbitrum.meowrpc.com" ] }, [optimism.id]: { name: optimism.name, nativeCurrency: { symbol: optimism.nativeCurrency.symbol, decimals: optimism.nativeCurrency.decimals, name: optimism.nativeCurrency.name }, coreToken: { symbol: "OP", decimals: 18, name: "Optimism" }, chainInfo: optimism, explorerInfo: optimism.blockExplorers.default, isCheckoutSupported: true, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [ "https://0xrpc.io/op", "https://optimism.drpc.org", "https://optimism.gateway.tenderly.co", "https://1rpc.io/op", "https://optimism-rpc.publicnode.com" ] }, [bsc.id]: { name: bsc.name, nativeCurrency: { symbol: bsc.nativeCurrency.symbol, decimals: bsc.nativeCurrency.decimals, name: bsc.nativeCurrency.name }, chainInfo: bsc, explorerInfo: bsc.blockExplorers.default, isCheckoutSupported: true, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [ "https://binance.llamarpc.com", "https://1rpc.io/bnb", "https://bsc.drpc.org", "https://bsc-rpc.publicnode.com", "https://bsc.blockrazor.xyz", "https://bsc.meowrpc.com" ] }, [zksync.id]: { name: "zkSync", nativeCurrency: { symbol: zksync.nativeCurrency.symbol, decimals: zksync.nativeCurrency.decimals, name: zksync.nativeCurrency.name }, coreToken: { symbol: "ZK", decimals: 18, name: "zkSync" }, chainInfo: zksync, explorerInfo: zksync.blockExplorers.default, isCheckoutSupported: false, isMainnet: true, pickPriority: 5, fallbackRpcUrls: [ "https://1rpc.io/zksync2-era", "https://zksync.meowrpc.com" ] }, [mantle.id]: { name: mantle.name, nativeCurrency: { symbol: mantle.nativeCurrency.symbol, decimals: mantle.nativeCurrency.decimals, name: mantle.nativeCurrency.name }, coreToken: { symbol: "MNT", decimals: 18, name: "Mantle" }, chainInfo: mantle, explorerInfo: mantle.blockExplorers.default, isCheckoutSupported: false, isMainnet: true, pickPriority: 6, fallbackRpcUrls: [ "https://mantle.drpc.org", "https://mantle-rpc.publicnode.com" ] }, [solanaChain.id]: { name: solanaChain.name, nativeCurrency: { symbol: solanaChain.nativeCurrency.symbol, decimals: solanaChain.nativeCurrency.decimals, name: solanaChain.nativeCurrency.name }, chainInfo: solanaChain, explorerInfo: solanaChain.blockExplorers.default, // Solana payment not enabled for regular checkout isCheckoutSupported: false, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [] }, [scroll.id]: { name: scroll.name, nativeCurrency: { symbol: scroll.nativeCurrency.symbol, decimals: scroll.nativeCurrency.decimals, name: scroll.nativeCurrency.name }, chainInfo: scroll, explorerInfo: scroll.blockExplorers.default, isCheckoutSupported: false, isMainnet: true, pickPriority: 7, fallbackRpcUrls: [ "https://scroll-rpc.publicnode.com", "https://scroll-mainnet.public.blastapi.io" ] }, [abstract.id]: { name: abstract.name, nativeCurrency: { symbol: abstract.nativeCurrency.symbol, decimals: abstract.nativeCurrency.decimals, name: abstract.nativeCurrency.name }, chainInfo: abstract, explorerInfo: abstract.blockExplorers.default, isCheckoutSupported: true, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [] }, [hyperEvmChain.id]: { name: hyperEvmChain.name, nativeCurrency: { symbol: hyperEvmChain.nativeCurrency.symbol, decimals: hyperEvmChain.nativeCurrency.decimals, name: hyperEvmChain.nativeCurrency.name }, chainInfo: hyperEvmChain, explorerInfo: hyperEvmChain.blockExplorers.default, isCheckoutSupported: true, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [ "https://hyperliquid.drpc.org", "https://rpc.hypurrscan.io", "https://hyperliquid-json-rpc.stakely.io", "https://hyperliquid.rpc.blxrbdn.com" ] }, [etherealChain.id]: { name: etherealChain.name, nativeCurrency: { symbol: etherealChain.nativeCurrency.symbol, decimals: etherealChain.nativeCurrency.decimals, name: etherealChain.nativeCurrency.name }, chainInfo: etherealChain, explorerInfo: etherealChain.blockExplorers.default, isCheckoutSupported: true, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [] }, [monadChain.id]: { name: monadChain.name, nativeCurrency: { symbol: monadChain.nativeCurrency.symbol, decimals: monadChain.nativeCurrency.decimals, name: monadChain.nativeCurrency.name }, chainInfo: monadChain, explorerInfo: monadChain.blockExplorers.default, isCheckoutSupported: true, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [] }, [hyperCoreChain.id]: { name: hyperCoreChain.name, nativeCurrency: { symbol: hyperCoreChain.nativeCurrency.symbol, decimals: hyperCoreChain.nativeCurrency.decimals, name: hyperCoreChain.nativeCurrency.name }, chainInfo: hyperCoreChain, explorerInfo: hyperCoreChain.blockExplorers.default, // Hypercore payment not enabled for regular checkout isCheckoutSupported: false, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: ["https://rpc.hypurrscan.io"] }, [lighterChain.id]: { name: lighterChain.name, nativeCurrency: { symbol: lighterChain.nativeCurrency.symbol, decimals: lighterChain.nativeCurrency.decimals, name: lighterChain.nativeCurrency.name }, chainInfo: lighterChain, explorerInfo: lighterChain.blockExplorers.default, // Lighter payment not enabled for regular checkout isCheckoutSupported: false, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [] }, [bitcoinChain.id]: { name: bitcoinChain.name, nativeCurrency: { symbol: bitcoinChain.nativeCurrency.symbol, decimals: bitcoinChain.nativeCurrency.decimals, name: bitcoinChain.nativeCurrency.name }, chainInfo: bitcoinChain, explorerInfo: bitcoinChain.blockExplorers.default, // Bitcoin payment not enabled for regular wallet checkout isCheckoutSupported: false, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [] }, [lightningChain.id]: { name: lightningChain.name, nativeCurrency: { symbol: lightningChain.nativeCurrency.symbol, decimals: lightningChain.nativeCurrency.decimals, name: lightningChain.nativeCurrency.name }, chainInfo: lightningChain, explorerInfo: lightningChain.blockExplorers.default, // Lightning payment not enabled for regular wallet checkout isCheckoutSupported: false, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [] }, [tronChain.id]: { name: tronChain.name, nativeCurrency: { symbol: tronChain.nativeCurrency.symbol, decimals: tronChain.nativeCurrency.decimals, name: tronChain.nativeCurrency.name }, chainInfo: tronChain, explorerInfo: tronChain.blockExplorers.default, // Tron payment not enabled for regular wallet checkout isCheckoutSupported: false, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [] }, /** TESTNETS **/ [goerli.id]: { name: goerli.name, nativeCurrency: { symbol: goerli.nativeCurrency.symbol, decimals: goerli.nativeCurrency.decimals, name: goerli.nativeCurrency.name }, chainInfo: goerli, explorerInfo: goerli.blockExplorers.default, isCheckoutSupported: true, // testnet has no fiat checkouts supported isMainnet: false, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [] }, [arbitrumSepolia.id]: { name: arbitrumSepolia.name, nativeCurrency: { symbol: arbitrumSepolia.nativeCurrency.symbol, decimals: arbitrumSepolia.nativeCurrency.decimals, name: arbitrumSepolia.nativeCurrency.name }, chainInfo: arbitrumSepolia, explorerInfo: { name: "Arbiscan", url: "https://sepolia.arbiscan.io" }, isCheckoutSupported: true, // testnet has no fiat checkouts supported isMainnet: false, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [] }, [robinhoodChain.id]: { name: robinhoodChain.name, nativeCurrency: { symbol: robinhoodChain.nativeCurrency.symbol, decimals: robinhoodChain.nativeCurrency.decimals, name: robinhoodChain.nativeCurrency.name }, chainInfo: robinhoodChain, explorerInfo: robinhoodChain.blockExplorers.default, isCheckoutSupported: true, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: [] }, [ink.id]: { name: ink.name, nativeCurrency: { symbol: ink.nativeCurrency.symbol, decimals: ink.nativeCurrency.decimals, name: ink.nativeCurrency.name }, chainInfo: ink, explorerInfo: ink.blockExplorers.default, isCheckoutSupported: true, isMainnet: true, pickPriority: Number.MAX_SAFE_INTEGER, fallbackRpcUrls: ["https://ink.drpc.org", "https://rpc-qnd.inkonchain.com"] } }; var FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO_LIST = Object.values( FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO ).flatMap((item) => { if (!item) { return []; } return [item.chainInfo]; }); var FUNKIT_CONNECT_SUPPORTED_CHECKOUT_CHAINS_INFO_LIST = FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO_LIST.filter( (chainInfo) => { const chainId = chainInfo.id; return !!(chainId && FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO[chainId]?.isCheckoutSupported && FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO[chainId]?.isMainnet); } ); var FUNKIT_CONNECT_CHECKOUT_NATIVE_CURRENCY_ADDRESS = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee"; export { BITCOIN_MAINNET_CHAIN_ID, ETHEREAL_CHAIN_ID, FUNKIT_CONNECT_CHECKOUT_NATIVE_CURRENCY_ADDRESS, FUNKIT_CONNECT_SUPPORTED_CHAINS_ID_LIST, FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO, FUNKIT_CONNECT_SUPPORTED_CHAINS_INFO_LIST, FUNKIT_CONNECT_SUPPORTED_CHECKOUT_CHAINS_INFO_LIST, HYPERCORE_CHAIN_ID, HYPER_EVM_CHAIN_ID, LIGHTER_CHAIN_ID, LIGHTNING_MAINNET_CHAIN_ID, MONAD_CHAIN_ID, ROBINHOOD_MAINNET_CHAIN_ID, SOLANA_MAINNET_CHAIN_ID, TRON_MAINNET_CHAIN_ID, bitcoinChain, chainMetadataById, etherealChain, hyperCoreChain, hyperEvmChain, lighterChain, lightningChain, monadChain, robinhoodChain, solanaChain, tronChain }; //# sourceMappingURL=index.js.map