{"version":3,"sources":["../src/contractUriPattern.js","../src/knownChains.js","../src/loadAbi.js","../src/parseUri.js","../src/resolveContractUri.js"],"names":["chains","whatsabi","loaders","getAddress","createClient","http","getCode"],"mappings":"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","file":"index.cjs","sourcesContent":["/**\n * Regular expression pattern for matching contract URIs.\n * Looks like evm://<chainId>/<address>?<query>\n * Valid query params (all optional)\n * - rpcUrl: string\n * - etherscanBaseUrl: string\n * - followProxies: boolean\n * - etherscanApiKey: string\n */\nexport const contractUriPattern = /^evm:\\/\\/(?<chainId>\\d+)\\/(?<address>0x[a-fA-F0-9]{40})(\\?(?<query>.+))?$/\n","import * as chains from 'viem/chains'\n\n/**\n * @type {import('./KnownChainsType.js').KnownChainsType}\n */\nexport const knownChains = {\n\t[chains.mainnet.id]: chains.mainnet,\n\t[chains.optimism.id]: chains.optimism,\n\t[chains.optimismSepolia.id]: chains.optimismSepolia,\n\t[chains.arbitrum.id]: chains.arbitrum,\n\t[chains.base.id]: chains.base,\n\t[chains.baseSepolia.id]: chains.baseSepolia,\n\t[chains.polygon.id]: chains.polygon,\n\t[chains.zora.id]: chains.zora,\n\t[chains.sepolia.id]: chains.sepolia,\n\t[chains.fuseSparknet.id]: chains.fuseSparknet,\n\t[chains.funkiMainnet.id]: chains.funkiMainnet,\n\t[chains.funkiSepolia.id]: chains.funkiSepolia,\n\t[chains.flareTestnet.id]: chains.flareTestnet,\n\t[chains.evmosTestnet.id]: chains.evmosTestnet,\n\t[chains.defichainEvm.id]: chains.defichainEvm,\n\t[chains.cyberTestnet.id]: chains.cyberTestnet,\n\t[chains.blastSepolia.id]: chains.blastSepolia,\n\t[chains.areonNetwork.id]: chains.areonNetwork,\n\t[chains.arbitrumNova.id]: chains.arbitrumNova,\n\t[chains.zoraTestnet.id]: chains.zoraTestnet,\n\t[chains.zoraSepolia.id]: chains.zoraSepolia,\n\t[chains.yooldoVerse.id]: chains.yooldoVerse,\n\t[chains.taikoJolnir.id]: chains.taikoJolnir,\n\t[chains.skaleNebula.id]: chains.skaleNebula,\n\t[chains.skaleExorde.id]: chains.skaleExorde,\n\t[chains.skaleEuropa.id]: chains.skaleEuropa,\n\t[chains.rss3Sepolia.id]: chains.rss3Sepolia,\n\t[chains.rootPorcini.id]: chains.rootPorcini,\n\t[chains.reyaNetwork.id]: chains.reyaNetwork,\n\t[chains.polygonAmoy.id]: chains.polygonAmoy,\n\t[chains.palmTestnet.id]: chains.palmTestnet,\n\t[chains.neonMainnet.id]: chains.neonMainnet,\n\t[chains.moonbeamDev.id]: chains.moonbeamDev,\n\t[chains.modeTestnet.id]: chains.modeTestnet,\n\t[chains.metisGoerli.id]: chains.metisGoerli,\n\t[chains.liskSepolia.id]: chains.liskSepolia,\n\t[chains.lineaGoerli.id]: chains.lineaGoerli,\n\t[chains.kavaTestnet.id]: chains.kavaTestnet,\n\t[chains.haqqMainnet.id]: chains.haqqMainnet,\n\t[chains.flowTestnet.id]: chains.flowTestnet,\n\t[chains.flowMainnet.id]: chains.flowMainnet,\n\t[chains.ektaTestnet.id]: chains.ektaTestnet,\n\t[chains.bobaSepolia.id]: chains.bobaSepolia,\n\t[chains.bevmMainnet.id]: chains.bevmMainnet,\n\t[chains.beamTestnet.id]: chains.beamTestnet,\n\t[chains.astarZkyoto.id]: chains.astarZkyoto,\n\t[chains.apexTestnet.id]: chains.apexTestnet,\n\t[chains.zkLinkNovaSepoliaTestnet.id]: chains.zkLinkNovaSepoliaTestnet,\n\t[chains.xdcTestnet.id]: chains.xdcTestnet,\n\t[chains.xaiTestnet.id]: chains.xaiTestnet,\n\t[chains.taikoKatla.id]: chains.taikoKatla,\n\t[chains.taikoHekla.id]: chains.taikoHekla,\n\t[chains.skaleTitan.id]: chains.skaleTitan,\n\t[chains.skaleRazor.id]: chains.skaleRazor,\n\t[chains.seiTestnet.id]: chains.seiTestnet,\n\t[chains.pulsechain.id]: chains.pulsechain,\n\t[chains.pgnTestnet.id]: chains.pgnTestnet,\n\t[chains.otimDevnet.id]: chains.otimDevnet,\n\t[chains.neonDevnet.id]: chains.neonDevnet,\n\t[chains.mevTestnet.id]: chains.mevTestnet,\n\t[chains.l3xTestnet.id]: chains.l3xTestnet,\n\t[chains.jbcTestnet.id]: chains.jbcTestnet,\n\t[chains.harmonyOne.id]: chains.harmonyOne,\n\t[chains.eosTestnet.id]: chains.eosTestnet,\n\t[chains.bxnTestnet.id]: chains.bxnTestnet,\n\t[chains.btrTestnet.id]: chains.btrTestnet,\n\t[chains.bscTestnet.id]: chains.bscTestnet,\n\t[chains.bitTorrent.id]: chains.bitTorrent,\n\t[chains.baseGoerli.id]: chains.baseGoerli,\n\t[chains.astarZkEVM.id]: chains.astarZkEVM,\n\t[chains.zetachain.id]: chains.zetachain,\n\t[chains.xrSepolia.id]: chains.xrSepolia,\n\t[chains.x1Testnet.id]: chains.x1Testnet,\n\t[chains.thaiChain.id]: chains.thaiChain,\n\t[chains.shibarium.id]: chains.shibarium,\n\t[chains.seiDevnet.id]: chains.seiDevnet,\n\t[chains.satoshiVM.id]: chains.satoshiVM,\n\t[chains.rootstock.id]: chains.rootstock,\n\t[chains.moonriver.id]: chains.moonriver,\n\t[chains.metachain.id]: chains.metachain,\n\t[chains.localhost.id]: chains.localhost,\n\t[chains.etherlink.id]: chains.etherlink,\n\t[chains.dogechain.id]: chains.dogechain,\n\t[chains.crossbell.id]: chains.crossbell,\n\t[chains.avalanche.id]: chains.avalanche,\n\t[chains.zhejiang.id]: chains.zhejiang,\n\t[chains.wanchain.id]: chains.wanchain,\n\t[chains.songbird.id]: chains.songbird,\n\t[chains.sapphire.id]: chains.sapphire,\n\t[chains.redstone.id]: chains.redstone,\n\t[chains.qTestnet.id]: chains.qTestnet,\n\t[chains.qMainnet.id]: chains.qMainnet,\n\t[chains.nautilus.id]: chains.nautilus,\n\t[chains.filecoin.id]: chains.filecoin,\n\t[chains.edgeware.id]: chains.edgeware,\n\t[chains.edgeless.id]: chains.edgeless,\n\t[chains.darwinia.id]: chains.darwinia,\n\t[chains.ancient8.id]: chains.ancient8,\n\t[chains.zilliqa.id]: chains.zilliqa,\n\t[chains.vechain.id]: chains.vechain,\n\t[chains.syscoin.id]: chains.syscoin,\n\t[chains.stratis.id]: chains.stratis,\n\t[chains.shimmer.id]: chains.shimmer,\n\t[chains.phoenix.id]: chains.phoenix,\n\t[chains.nexilix.id]: chains.nexilix,\n\t[chains.metalL2.id]: chains.metalL2,\n\t[chains.mandala.id]: chains.mandala,\n\t[chains.holesky.id]: chains.holesky,\n\t[chains.hardhat.id]: chains.hardhat,\n\t[chains.fraxtal.id]: chains.fraxtal,\n\t[chains.coreDao.id]: chains.coreDao,\n\t[chains.classic.id]: chains.classic,\n\t[chains.bahamut.id]: chains.bahamut,\n\t[chains.auroria.id]: chains.auroria,\n\t[chains.zkSync.id]: chains.zkSync,\n\t[chains.zkFair.id]: chains.zkFair,\n\t[chains.xLayer.id]: chains.xLayer,\n\t[chains.unreal.id]: chains.unreal,\n\t[chains.taraxa.id]: chains.taraxa,\n\t[chains.scroll.id]: chains.scroll,\n\t[chains.rollux.id]: chains.rollux,\n\t[chains.plinga.id]: chains.plinga,\n\t[chains.merlin.id]: chains.merlin,\n\t[chains.mantle.id]: chains.mantle,\n\t[chains.klaytn.id]: chains.klaytn,\n\t[chains.karura.id]: chains.karura,\n\t[chains.hedera.id]: chains.hedera,\n\t[chains.goerli.id]: chains.goerli,\n\t[chains.gnosis.id]: chains.gnosis,\n\t[chains.fantom.id]: chains.fantom,\n\t[chains.dchain.id]: chains.dchain,\n\t[chains.cronos.id]: chains.cronos,\n\t[chains.chiliz.id]: chains.chiliz,\n\t[chains.bronos.id]: chains.bronos,\n\t[chains.bitkub.id]: chains.bitkub,\n\t[chains.aurora.id]: chains.aurora,\n\t[chains.wemix.id]: chains.wemix,\n\t[chains.tenet.id]: chains.tenet,\n\t[chains.taiko.id]: chains.taiko,\n\t[chains.spicy.id]: chains.spicy,\n\t[chains.ronin.id]: chains.ronin,\n\t[chains.opBNB.id]: chains.opBNB,\n\t[chains.oasys.id]: chains.oasys,\n\t[chains.metis.id]: chains.metis,\n\t[chains.meter.id]: chains.meter,\n\t[chains.manta.id]: chains.manta,\n\t[chains.lycan.id]: chains.lycan,\n\t[chains.lukso.id]: chains.lukso,\n\t[chains.linea.id]: chains.linea,\n\t[chains.kroma.id]: chains.kroma,\n\t[chains.iotex.id]: chains.iotex,\n\t[chains.inEVM.id]: chains.inEVM,\n\t[chains.flare.id]: chains.flare,\n\t[chains.evmos.id]: chains.evmos,\n\t[chains.degen.id]: chains.degen,\n\t[chains.cyber.id]: chains.cyber,\n\t[chains.canto.id]: chains.canto,\n\t[chains.blast.id]: chains.blast,\n\t[chains.astar.id]: chains.astar,\n\t[chains.acala.id]: chains.acala,\n\t[chains.rss3.id]: chains.rss3,\n\t[chains.root.id]: chains.root,\n\t[chains.real.id]: chains.real,\n\t[chains.palm.id]: chains.palm,\n\t[chains.nexi.id]: chains.nexi,\n\t[chains.mode.id]: chains.mode,\n\t[chains.lyra.id]: chains.lyra,\n\t[chains.lisk.id]: chains.lisk,\n\t[chains.kava.id]: chains.kava,\n\t[chains.gobi.id]: chains.gobi,\n\t[chains.fuse.id]: chains.fuse,\n\t[chains.fibo.id]: chains.fibo,\n\t[chains.ekta.id]: chains.ekta,\n\t[chains.crab.id]: chains.crab,\n\t[chains.celo.id]: chains.celo,\n\t[chains.boba.id]: chains.boba,\n\t[chains.beam.id]: chains.beam,\n\t[chains.xdc.id]: chains.xdc,\n\t[chains.xai.id]: chains.xai,\n\t[chains.sei.id]: chains.sei,\n\t[chains.pgn.id]: chains.pgn,\n\t[chains.okc.id]: chains.okc,\n\t[chains.mev.id]: chains.mev,\n\t[chains.l3x.id]: chains.l3x,\n\t[chains.koi.id]: chains.koi,\n\t[chains.kcc.id]: chains.kcc,\n\t[chains.jbc.id]: chains.jbc,\n\t[chains.bsc.id]: chains.bsc,\n\t[chains.ham.id]: chains.ham,\n\t[chains.eos.id]: chains.eos,\n\t[chains.eon.id]: chains.eon,\n\t[chains.dfk.id]: chains.dfk,\n\t[chains.bxn.id]: chains.bxn,\n\t[chains.btr.id]: chains.btr,\n\t[chains.bob.id]: chains.bob,\n}\n","import { loaders, whatsabi } from '@shazow/whatsabi'\n\n/**\n * @param {object} options\n * @param {import('@tevm/utils').Address} options.address\n * @param {import('viem').Client} options.client\n * @param {string | undefined} options.explorerUrl\n * @param {boolean} options.followProxies\n * @param {string | undefined} options.etherscanApiKey\n * @returns {ReturnType<typeof import('@shazow/whatsabi').autoload>}\n */\nexport const loadAbi = async ({ address, client, explorerUrl, followProxies, etherscanApiKey }) => {\n\treturn whatsabi.autoload(address, {\n\t\tprovider: client,\n\t\tfollowProxies,\n\t\tabiLoader: new loaders.MultiABILoader([\n\t\t\tnew loaders.SourcifyABILoader({\n\t\t\t\tchainId: client.chain?.id ?? 1,\n\t\t\t}),\n\t\t\t...(explorerUrl !== undefined\n\t\t\t\t? [\n\t\t\t\t\t\tnew loaders.EtherscanABILoader({\n\t\t\t\t\t\t\tbaseURL: explorerUrl,\n\t\t\t\t\t\t\t...(etherscanApiKey !== undefined ? { apiKey: etherscanApiKey } : {}),\n\t\t\t\t\t\t}),\n\t\t\t\t\t]\n\t\t\t\t: []),\n\t\t]),\n\t})\n}\n","import { getAddress } from '@tevm/utils'\nimport { contractUriPattern } from './contractUriPattern.js'\n\n/**\n * @param {import('./ContractUri.js').ContractUri} uri\n * @returns {import('./ParsedUri.js').ParsedUri | undefined}\n */\nexport const parseUri = (uri) => {\n\tconst match = contractUriPattern.exec(uri)\n\tif (!match) {\n\t\treturn undefined\n\t}\n\n\tconst chainId = Number.parseInt(match.groups?.['chainId'] ?? '1')\n\tconst address = getAddress(/** @type {string}*/ (match.groups?.['address']))\n\tconst query = match.groups?.['query']\n\n\tconst params = new URLSearchParams(query || '')\n\n\treturn {\n\t\tchainId: /** @type {import('./KnownChainIds.js').KnownChainIds}*/ (chainId),\n\t\taddress: address,\n\t\trpcUrl: params.get('rpcUrl') || undefined,\n\t\tetherscanApiKey: params.get('etherscanApiKey') || undefined,\n\t\tetherscanBaseUrl: params.get('etherscanBaseUrl') || undefined,\n\t\tfollowProxies: params.get('followProxies') === 'true' || undefined,\n\t}\n}\n","import { http, createClient } from 'viem'\nimport { getCode } from 'viem/actions'\nimport { knownChains } from './knownChains.js'\nimport { loadAbi } from './loadAbi.js'\nimport { parseUri } from './parseUri.js'\n\nexport class UnknownChainError extends Error {\n\t/**\n\t * @type {'UnknownChainError'}\n\t * @override\n\t */\n\tname = 'UnknownChainError'\n\t/**\n\t * @type {'UnknownChainError'}\n\t */\n\t_tag = 'UnknownChainError'\n\t/**\n\t * @param {number} chainId\n\t */\n\tconstructor(chainId) {\n\t\tsuper(\n\t\t\t`Unknown chain ID: ${chainId}. No default rpc known. Please pass in a valid rpc url as a query string \\`?rpcUrl=\\${rpcUrl}\\` or open a pr to viem to add your chain to viem/chains`,\n\t\t)\n\t}\n}\n\n// TODO pass in tevm config too\n/**\n * @param {import('./ContractUri.js').ContractUri} contractUri\n * @param {import('@tevm/config').ResolvedCompilerConfig} config\n * @returns { Promise<{abi: import('@tevm/utils').Abi, address: import('@tevm/utils').Address, deployedBytecode: import('@tevm/utils').Hex} | undefined>}\n * @throws {UnknownChainError} if the chainId is not known and no rpcUrl is provided\n */\nexport const resolveContractUri = async (contractUri, config) => {\n\tconsole.log('todo config', config)\n\tconst parsedUri = parseUri(contractUri)\n\tif (!parsedUri) {\n\t\treturn undefined\n\t}\n\tconst chain = knownChains[parsedUri.chainId]\n\tif (!chain && !parsedUri.rpcUrl) {\n\t\tthrow new UnknownChainError(parsedUri.chainId)\n\t}\n\tconst client = createClient({\n\t\ttransport: http(parsedUri.rpcUrl),\n\t\tchain,\n\t})\n\tconst explorerUrl = parsedUri.etherscanBaseUrl ?? chain.blockExplorers?.default.url\n\n\tconst whatsabiResult = await loadAbi({\n\t\tclient,\n\t\texplorerUrl,\n\t\taddress: parsedUri.address,\n\t\tfollowProxies: parsedUri.followProxies ?? true,\n\t\tetherscanApiKey: parsedUri.etherscanApiKey,\n\t})\n\tconst deployedBytecode = await getCode(client, {\n\t\taddress: /** @type {import('@tevm/utils').Address}*/ (whatsabiResult.address),\n\t})\n\tif (!deployedBytecode) {\n\t\tthrow new Error('Could not fetch deployed bytecode')\n\t}\n\treturn {\n\t\tabi: /** @type {any}*/ (whatsabiResult.abi),\n\t\taddress: parsedUri.address,\n\t\tdeployedBytecode,\n\t\t// TODO we want to represent proxies in some way like listing the resolved addy\n\t\t// ...{resolvedAddress: whatsabiResult.address},\n\t\t// TODO if we can get a verified contract we should compile it with solc and return solc output too\n\t}\n}\n"]}