diff --git a/apps/laboratory/src/components/AppKitInfo.tsx b/apps/laboratory/src/components/AppKitInfo.tsx index f9eb3c129d..aaeb978698 100644 --- a/apps/laboratory/src/components/AppKitInfo.tsx +++ b/apps/laboratory/src/components/AppKitInfo.tsx @@ -11,6 +11,7 @@ import { Text } from '@chakra-ui/react' +import { convertCaip10ToErc3770 } from '@reown/appkit-experimental/erc3770' import { useAppKitAccount, useAppKitNetwork } from '@reown/appkit/react' import { EmbeddedWalletInfo } from './EmbeddedWalletInfo' @@ -23,6 +24,18 @@ export function AppKitInfo({ clientId }: AppKitInfoProps) { const { caipAddress, address } = useAppKitAccount() const { chainId } = useAppKitNetwork() + const isEIP155 = caipAddress?.startsWith('eip155:') + const erc3770Address = React.useMemo(() => { + if (!isEIP155 || !caipAddress) { + return null + } + try { + return convertCaip10ToErc3770(caipAddress) + } catch (e) { + return null + } + }, [caipAddress, isEIP155]) + return ( @@ -38,6 +51,15 @@ export function AppKitInfo({ clientId }: AppKitInfoProps) { {caipAddress} + {erc3770Address && ( + + + Chain Specific Address (ERC-3770) + + {erc3770Address} + + )} + Address diff --git a/packages/experimental/exports/erc3770/index.ts b/packages/experimental/exports/erc3770/index.ts new file mode 100644 index 0000000000..1950a7ddf4 --- /dev/null +++ b/packages/experimental/exports/erc3770/index.ts @@ -0,0 +1,9 @@ +import { ConverterUtil } from '../../src/erc3770/utils/ConverterUtil.js' + +export function convertCaip10ToErc3770(caipAddress: string): string { + return ConverterUtil.convertCaip10ToErc3770(caipAddress) +} + +export function createErc3770Address(address: string, chainId: string): string { + return ConverterUtil.createErc3770Address(address, chainId) +} diff --git a/packages/experimental/package.json b/packages/experimental/package.json index bea9c1c378..4c35a4ecc0 100644 --- a/packages/experimental/package.json +++ b/packages/experimental/package.json @@ -18,12 +18,20 @@ "types": "./dist/types/exports/smart-session/index.d.ts", "import": "./dist/esm/exports/smart-session/index.js", "default": "./dist/esm/exports/smart-session/index.js" + }, + "./erc3770": { + "types": "./dist/types/exports/erc3770/index.d.ts", + "import": "./dist/esm/exports/erc3770/index.js", + "default": "./dist/esm/exports/erc3770/index.js" } }, "typesVersions": { "*": { "smart-session": [ "./dist/types/exports/smart-session/index.d.ts" + ], + "erc3770": [ + "./dist/types/exports/erc3770/index.d.ts" ] } }, @@ -42,6 +50,7 @@ "@reown/appkit-ui": "workspace:*", "lit": "3.1.0", "valtio": "1.13.2", + "viem": "2.23.0", "zod": "3.22.4" }, "devDependencies": { diff --git a/packages/experimental/src/erc3770/utils/ConstantsUtil.ts b/packages/experimental/src/erc3770/utils/ConstantsUtil.ts new file mode 100644 index 0000000000..75bf00672c --- /dev/null +++ b/packages/experimental/src/erc3770/utils/ConstantsUtil.ts @@ -0,0 +1,2210 @@ +type ChainMapping = Record + +const CHAIN_NAMES: ChainMapping = { + '1': 'eth', + '2': 'exp', + '3': 'rop', + '4': 'rin', + '5': 'gor', + '6': 'kot', + '7': 'tch', + '8': 'ubq', + '9': 'tubq', + '10': 'oeth', + '11': 'meta', + '12': 'kal', + '13': 'dstg', + '14': 'flr', + '15': 'diode', + '16': 'cflr', + '17': 'tfi', + '18': 'TST', + '19': 'sgb', + '20': 'esc', + '21': 'esct', + '22': 'eladid', + '23': 'eladidt', + '24': 'kardiachain', + '25': 'cro', + '26': 'L1test', + '27': 'shib', + '28': 'BobaRinkeby', + '29': 'L1', + '30': 'rsk', + '31': 'trsk', + '32': 'GooDT', + '33': 'GooD', + '34': 'scai', + '35': 'tbwg', + '36': 'dx', + '37': 'xpla', + '38': 'val', + '39': 'u2u', + '40': 'TelosEVM', + '41': 'TelosEVMTestnet', + '42': 'lukso', + '43': 'pangolin', + '44': 'crab', + '45': 'pangoro', + '46': 'darwinia', + '47': 'aic', + '48': 'etmp', + '49': 'etmpTest', + '50': 'xdc', + '51': 'txdc', + '52': 'cet', + '53': 'tcet', + '54': 'OP', + '55': 'ZYX', + '56': 'bnb', + '57': 'sys', + '58': 'OntologyMainnet', + '59': 'eos-legacy', + '60': 'go', + '61': 'etc', + '62': 'tetc', + '63': 'metc', + '64': 'ellaism', + '65': 'tokt', + '66': 'okt', + '67': 'dbm', + '68': 'SO1', + '69': 'okov', + '70': 'hsc', + '71': 'cfxtest', + '72': 'dxc', + '73': 'FNCY', + '74': 'idchain', + '75': 'DSC', + '76': 'mix', + '77': 'spoa', + '78': 'primuschain', + '79': 'zenith', + '80': 'GeneChain', + '81': 'joc', + '82': 'Meter', + '83': 'MeterTest', + '84': 'linqto-devnet', + '85': 'gttest', + '86': 'gt', + '87': 'nnw', + '88': 'vic', + '89': 'vict', + '90': 'gar-s0', + '91': 'gar-s1', + '92': 'gar-s2', + '93': 'gar-s3', + '94': 'sdlt', + '95': 'camdl', + '96': 'bkc', + '97': 'bnbt', + '98': 'six', + '99': 'poa', + '100': 'gno', + '101': 'eti', + '102': 'tw3g', + '103': 'WLC', + '104': 'tklc', + '105': 'dw3g', + '106': 'vlx', + '107': 'ntn', + '108': 'TT', + '109': 'shibariumecosystem', + '110': 'xpr', + '111': 'ETL', + '112': 'coinbit', + '113': 'deh', + '114': 'c2flr', + '115': 'debank-testnet', + '116': 'debank-mainnet', + '117': 'auptick', + '118': 'arcology', + '119': 'enuls', + '120': 'enulst', + '121': 'REAL', + '122': 'fuse', + '123': 'spark', + '124': 'dwu', + '125': 'OYchainTestnet', + '126': 'OYchainMainnet', + '127': 'feth', + '128': 'heco', + '129': 'Innovator', + '130': 'unichain', + '131': 'tgram', + '132': 'nfic', + '133': 'HSKT', + '134': 'rlc', + '135': 'AlyxTestnet', + '136': 'deam', + '137': 'pol', + '138': 'dfio-meta-main', + '139': 'woop', + '140': 'ETE', + '141': 'OPtest', + '142': 'dax', + '143': 'mon', + '144': 'PHI', + '145': 'SETH', + '146': 'sonic', + '147': 'FLAG', + '148': 'shimmerevm', + '150': 'sixt', + '151': 'rbn', + '152': 'rbn-devnet', + '153': 'rbn-testnet', + '154': 'rbn-tge', + '155': 'tenet-testnet', + '156': 'obe', + '157': 'puppynet', + '158': 'rba', + '159': 'rbat', + '160': 'eva', + '161': 'wall-e', + '162': 'tpht', + '163': 'pht', + '164': 'omni_omega', + '165': 'omni_testnet_deprecated', + '166': 'omni', + '167': 'atoshi', + '168': 'aioz', + '169': 'manta', + '170': 'hoosmartchain', + '171': 'CO2e', + '172': 'resil', + '175': 'OTC', + '176': 'dcchain', + '177': 'hsk', + '178': 'abeyt', + '179': 'abey', + '180': 'ame', + '181': 'water', + '182': 'iost', + '183': 'ethernity-mainnet', + '184': 'dojtestnet', + '185': 'mint', + '186': 'Seele', + '187': 'dojima', + '188': 'BMC', + '189': 'BMCT', + '190': 'cmdao-bbq-chain', + '191': 'ffg', + '193': 'cem', + '195': 'tokb', + '196': 'okb', + '197': 'NEUTR', + '198': 'bit', + '199': 'BTT', + '200': 'aox', + '201': 'moactest', + '202': 'edgeless-testnet', + '203': 'wow', + '204': 'obnb', + '205': 'ekaash', + '206': 'VCTEST', + '207': 'VC', + '208': 'utx', + '210': 'BTN', + '211': 'EDI', + '212': 'makalu', + '213': 'B2Hub-mainnet', + '214': 'shinarium', + '216': 'happytestnet', + '217': 'SIN2', + '218': 'SO1-old', + '220': 'sepscal', + '221': 'BlockEx', + '222': 'ASK', + '223': 'B2-mainnet', + '224': 'VRD-Testnet', + '225': 'LA', + '226': 'TLA', + '227': 'PROM', + '228': 'fhe', + '230': 'SDX', + '232': 'lens', + '233': 'ethernity-testnet', + '234': 'ProtoJumbo', + '236': 'deamtest', + '238': 'blast', + '239': 'tac', + '240': 'zkTCRO', + '242': 'plgchain', + '246': 'ewt', + '248': 'OAS', + '250': 'ftm', + '251': 'glide', + '252': 'fraxtal', + '253': 'glidexp', + '254': 'Swan', + '255': 'kroma', + '256': 'hecot', + '258': 'setm', + '259': 'neon', + '260': 'guru', + '261': 'tguru', + '262': 'SUR', + '266': 'neura', + '267': 'tneura', + '268': 'dneura', + '269': 'hpb', + '271': 'EGONm', + '273': 'xr1', + '274': 'lachain', + '278': 'fai', + '279': 'bpx', + '280': 'zksync-goerli', + '282': 'deprecated-zkTCRO', + '288': 'Boba', + '291': 'orderly', + '293': 'davinci', + '295': 'hedera-mainnet', + '296': 'hedera-testnet', + '297': 'hedera-previewnet', + '298': 'hedera-localnet', + '300': 'zksync-sepolia', + '301': 'Bobaopera', + '302': 'zkcandy-sepolia', + '303': 'ncnt', + '305': 'ZKSats-Mainnet', + '307': 'LOVELY-Testnet', + '308': 'furtheon', + '309': 'wyz', + '311': 'omax', + '313': 'ncn', + '314': 'filecoin', + '315': 'wem', + '320': 'zkcandy', + '321': 'kcs', + '322': 'kcst', + '323': 'cvm', + '324': 'zksync', + '325': 'grvt', + '326': 'grvt-sepolia', + '332': 'omaxt', + '333': 'w3q', + '335': 'DFKTEST', + '336': 'sdn', + '338': 'tcro', + '339': 'dapp', + '345': 'TSC', + '360': 'shape', + '361': 'theta-mainnet', + '363': 'theta-sapphire', + '364': 'theta-amber', + '365': 'theta-testnet', + '369': 'pls', + '371': 'tCNT', + '380': 'zkamoeba-test', + '381': 'zkamoeba', + '385': 'lisinski', + '388': 'zkCRO', + '395': 'camdl-testnet', + '397': 'near', + '398': 'near-testnet', + '399': 'N3', + '400': 'hpn', + '401': 'ozo_tst', + '404': 'syndr-l3', + '411': 'pepe', + '416': 'SX', + '418': 'latestnet', + '420': 'ogor', + '422': 'vrd', + '424': 'PGN', + '425': 'sten', + '426': 'mite', + '427': 'zeeth', + '428': 'GSV', + '434': 'BYC', + '443': 'ten-testnet', + '444': 'synapse-sepolia', + '456': 'arzio', + '462': 'tarea', + '463': 'area', + '466': 'appchain', + '478': 'formnetwork', + '480': 'wc', + '486': 'stnd', + '499': 'rupx', + '500': 'Camino', + '501': 'Columbus', + '510': 'syndicate-chain-mainnet', + '512': 'aac', + '513': 'aact', + '516': 'gz-mainnet', + '520': 'xt', + '529': 'fire', + '530': 'FxCore', + '534': 'CNDL', + '537': 'optrust', + '542': 'PAW', + '545': 'flow-testnet', + '550': 'river', + '555': 'CLASS', + '558': 'tao', + '565': 'prometheuz-testnet', + '568': 'dct', + '570': 'sys-rollux', + '571': 'metatime', + '579': 'filenova', + '588': 'metis-stardust', + '592': 'astr', + '595': 'maca', + '596': 'tkar', + '597': 'taca', + '599': 'metis-goerli', + '600': 'mesh-chain-testnet', + '601': 'VINE', + '610': 'darwin-devnet', + '612': 'eiob', + '614': 'glq', + '619': 'Skynet', + '624': 'thebinaryholdings-mainnet', + '625': 'thebinaryholdings-sepolia', + '632': 'nfbchain', + '634': 'avocado', + '646': 'flow-previewnet', + '647': 'SX-Testnet', + '648': 'ace', + '653': 'kalichain', + '654': 'kalichainMainnet', + '662': 'Amaxsmartchain', + '666': 'pixie-chain-testnet', + '667': 'laos', + '668': 'junca', + '669': 'juncat', + '678': 'janction', + '679': 'janction_testnet', + '686': 'kar', + '689': 'NEROT', + '690': 'redstone', + '698': 'Matchain', + '699': 'tMatchain', + '700': 'SNS', + '701': 'darwinia-koi', + '707': 'bcs', + '708': 'tbcs', + '710': 'fury', + '711': 'tuc', + '712': 'birdee-2', + '713': 'vrc', + '718': 'uxlink1', + '719': 'shibarium', + '721': 'LYC', + '727': 'blu', + '730': 'LOVELY', + '740': 'tcanto', + '741': 'vsct', + '742': 'SPAY', + '743': 'tranched-mainnet', + '747': 'flow-mainnet', + '753': 'rivalz', + '766': 'qom', + '776': 'opc', + '777': 'cth', + '785': 'autheo-Test-Chain', + '786': 'maal', + '787': 'aca', + '788': 'taero', + '789': 'peth', + '799': 'RupayaTestnet', + '800': 'LUCID', + '803': 'haic', + '805': 'Evoz', + '808': 'PFTEST', + '810': 'h1', + '813': 'meer', + '814': 'firechan-zkEVM', + '818': 'BOC', + '820': 'clo', + '821': 'tclo', + '822': 'runic-testnet', + '824': 'dly', + '825': 'tdly', + '831': 'cdt', + '841': 'tara', + '842': 'taratest', + '852': 'HongKong', + '859': 'zeethdev', + '861': 'elc', + '868': 'FSCMainnet', + '871': 'telc', + '876': 'BNKEN', + '877': 'DXT', + '880': 'ambros', + '888': 'wan', + '898': 'maxi-testnet', + '899': 'maxi-mainnet', + '900': 'gar-test-s0', + '901': 'gar-test-s1', + '902': 'gar-test-s2', + '903': 'gar-test-s3', + '909': 'PF', + '910': 'DBONE', + '911': 'TAPROOT-Mainnet', + '917': 'tfire', + '918': 'SlerfChain-Mainnet', + '919': 'modesep', + '927': 'ydk', + '938': 'haust', + '940': 'tpls', + '941': 't2bpls', + '942': 't3pls', + '943': 't4pls', + '945': 'bittensor-evm-testnet', + '956': 'munode', + '957': 'lyra', + '963': 'btc20', + '964': 'bittensor-evm-mainnet', + '969': 'sexy', + '970': 'ccn', + '971': 'Huygens', + '972': 'Ascraeus', + '973': 'PalmChain', + '977': 'yeti', + '979': 'sexyTestnet', + '980': 'top_evm', + '985': 'memochain', + '987': 'binary', + '989': 'top', + '990': 'ELm', + '995': '5ire', + '996': 'bnc', + '997': 'T5ire', + '998': 'hype-evm-testnet', + '999': 'twan', + '1000': 'gton', + '1001': 'kaia-kairos', + '1003': 'tet', + '1004': 't-ekta', + '1005': 'tlemx', + '1006': 'lemx', + '1007': 'tnew', + '1008': 'eun', + '1009': 'Jumboscan', + '1010': 'EVC', + '1011': 'rebusclassic', + '1012': 'new', + '1022': 'sku', + '1023': 'tclv', + '1024': 'clv', + '1028': 'tbtt-deprecated', + '1029': 'tBTT', + '1030': 'cfx', + '1031': 'prx', + '1038': 'bronos-testnet', + '1039': 'bronos-mainnet', + '1071': 'shimmerevm-testnet-deprecated', + '1072': 'shimmerevm-testnet-deprecated-1072', + '1073': 'shimmerevm-testnet', + '1075': 'iotaevm-testnet', + '1079': 'mintara-testnet', + '1080': 'mintara', + '1088': 'metis-andromeda', + '1089': 'humans', + '1099': 'moac', + '1100': 'dymension', + '1101': 'zkevm', + '1107': 'tblxq', + '1108': 'blxq', + '1111': 'wemix', + '1112': 'twemix', + '1113': 'B2Hub-testnet', + '1114': 'tcore2', + '1115': 'tcore', + '1116': 'core', + '1117': 'DOGSm', + '1123': 'B2-testnet', + '1125': 'taker', + '1130': 'DFI', + '1131': 'DFI-T', + '1133': 'changi', + '1135': 'lisk', + '1138': 'ASARt', + '1139': 'MATH', + '1140': 'tMATH', + '1147': 'tFLAG', + '1149': 'Plexchain', + '1170': 'auoc', + '1174': 'lith', + '1177': 'sht', + '1188': 'MOS', + '1197': 'iora', + '1200': 'cai', + '1201': 'avis', + '1202': 'wtt', + '1209': 'SBC', + '1210': 'caisepolia', + '1212': 'tADF', + '1213': 'popcat', + '1214': 'enter', + '1215': 'ADF', + '1221': 'Cycle', + '1223': 'cyclej', + '1224': 'hyb_deprecated', + '1225': 'hyb', + '1227': 'BTCP', + '1228': 'cyclec', + '1229': 'xzo', + '1230': 'UltronTestnet', + '1231': 'UtronMainnet', + '1234': 'step', + '1235': 'itx', + '1243': 'ARC', + '1244': 'TARC', + '1246': 'om', + '1248': 'Dogether', + '1252': 'CICT', + '1260': 'ACCESt', + '1280': 'HO', + '1284': 'mbeam', + '1285': 'mriver', + '1286': 'mrock-old', + '1287': 'mbase', + '1288': 'mrock', + '1291': 'swtr', + '1294': 'Bobabeam', + '1297': 'Bobabase', + '1298': 'tAGC', + '1299': 'AGC', + '1300': 'glue', + '1301': 'unichain-sep', + '1311': 'TDOS', + '1313': 'JHC', + '1314': 'alyx', + '1315': 'story-aeneid', + '1319': 'aia', + '1320': 'aiatestnet', + '1328': 'sei-testnet', + '1329': 'sei', + '1337': 'geth', + '1338': 'ATL', + '1339': 'ELY', + '1343': 'blitz', + '1353': 'CIC', + '1369': 'zafic', + '1370': 'RAMA', + '1377': 'tRAMA', + '1379': 'KLC', + '1388': 'ASAR', + '1392': 'mun', + '1402': 'zkevmtest', + '1414': 'silicon-sepolia-testnet-deprecated', + '1422': 'testnet-zkEVM-mango-pre-audit-upgraded', + '1433': 'RIK', + '1440': 'LAS', + '1442': 'testnet-zkEVM-mango', + '1452': 'gil', + '1453': 'metatimeistanbul', + '1455': 'CTEX', + '1456': 'zkbase', + '1480': 'vana', + '1490': 'vitruveo', + '1499': 'IGC', + '1501': 'chainx', + '1506': 'Sherpax', + '1507': 'SherpaxTestnet', + '1513': 'Story', + '1514': 'sty', + '1515': 'beagle', + '1516': 'story-testnet', + '1555': 'DSCs', + '1559': 'tenet', + '1570': 'starchain-testnet', + '1578': 'starchain', + '1605': 'Beth', + '1617': 'etins', + '1618': 'cate', + '1620': 'ath', + '1625': 'gravity', + '1648': 'pivotal-mainnet', + '1657': 'bta', + '1662': 'Liquichain', + '1663': 'Gobi', + '1686': 'minttest', + '1687': 'mintsepoliatest', + '1688': 'LUDAN', + '1689': 'NERO', + '1701': 'AnytypeChain', + '1707': 'TBSI', + '1708': 'tTBSI', + '1717': 'DRC', + '1718': 'PCM', + '1729': 'reya', + '1740': 'metall2-testnet', + '1750': 'metall2', + '1773': 'TeaParty', + '1777': 'gauss', + '1789': 'zkbase-sepolia', + '1804': 'kerleano', + '1807': 'rAna', + '1811': 'lif3-testnet', + '1818': 'cube', + '1819': 'cubet', + '1821': 'RUBY', + '1829': 'playblock', + '1833': 'verify-testnet', + '1853': 'HighOctane', + '1856': 'tsf', + '1868': 'soneium', + '1875': 'wbt', + '1881': 'gitshockchain', + '1890': 'lightlink_phoenix', + '1891': 'lightlink_pegasus', + '1898': 'boya', + '1899': 'red', + '1904': 'SCN', + '1907': 'bitci', + '1908': 'tbitci', + '1909': 'MRK', + '1911': 'scal', + '1912': 'tRUBY', + '1918': 'UPBEth', + '1923': 'swellchain', + '1924': 'swellchain-sep', + '1927': 'arvix', + '1945': 'onus-testnet', + '1946': 'soneium-minato', + '1949': 'tbio', + '1951': 'dchain-mainnet', + '1953': 'tSEL', + '1954': 'Dexilla', + '1956': 'AIW3-Testnet', + '1961': 'SEL', + '1967': 'mtc', + '1969': 'tscs', + '1970': 'scs', + '1971': 'atlr', + '1972': 'rede', + '1975': 'onus-mainnet', + '1984': 'euntest', + '1985': 'satoshie', + '1986': 'satoshie_testnet', + '1987': 'egem', + '1989': 'lydia', + '1992': 'hubblenet', + '1993': 'b3-sepolia', + '1994': 'ekta', + '1995': 'edx', + '1996': 'Sanko', + '1997': 'kyoto', + '1998': 'kyoto-testnet', + '2000': 'dc', + '2001': 'milkAda', + '2002': 'milkALGO', + '2004': 'mtl', + '2008': 'cloudwalk_testnet', + '2009': 'cloudwalk_mainnet', + '2013': 'panarchy', + '2014': 'tnow', + '2016': 'netz', + '2017': 'tel', + '2018': 'pmint_dev', + '2019': 'pmint_test', + '2020': 'ron', + '2021': 'edg', + '2022': 'edgt', + '2023': 'taycan-testnet', + '2024': 'saturn', + '2025': 'rpg', + '2026': 'edgeless', + '2031': 'cfg', + '2032': 'ncfg', + '2035': 'phala', + '2037': 'kiwi', + '2038': 'shraptest', + '2039': 'aleph', + '2040': 'Vanar', + '2043': 'NEURO', + '2044': 'Shrapnel', + '2045': 'AIW3', + '2047': 'stos-testnet', + '2048': 'stos-mainnet', + '2049': 'movo', + '2071': 'ACCES', + '2077': 'QKA', + '2088': 'air', + '2089': 'algl', + '2100': 'eco', + '2101': 'esp', + '2109': 'exn', + '2112': 'uchain', + '2121': 'cmcx', + '2122': 'Metad', + '2124': 'MEU', + '2136': 'bigsb_testnet', + '2137': 'bigsb', + '2138': 'dfio-meta-test', + '2140': 'oneness', + '2141': 'oneness-testnet', + '2151': 'boa', + '2152': 'fra', + '2153': 'findora-testnet', + '2154': 'findora-forge', + '2162': 'animechaint', + '2187': 'g7', + '2192': 'snax', + '2199': 'msn', + '2202': 'ABNm', + '2203': 'BTC', + '2213': 'evanesco', + '2221': 'tkava', + '2222': 'kava', + '2223': 'VChain', + '2241': 'KRST', + '2300': 'bomb', + '2306': 'ebro', + '2309': 'arevia', + '2310': 'cratd2c', + '2311': 'lpv', + '2323': 'sma', + '2330': 'alt', + '2331': 'rss3-testnet', + '2332': 'smam', + '2340': 'atla', + '2342': 'omnia', + '2345': 'goat', + '2355': 'silicon-zk', + '2357': 'deprecated-kroma-sepolia', + '2358': 'kroma-sepolia', + '2368': 'KiteAI', + '2370': 'nzt', + '2390': 'tacchain_2390-1', + '2399': 'bombt', + '2400': 'TCGV', + '2410': 'K2-mainnet', + '2415': 'xodex', + '2420': 'rufus', + '2424': 'inevm-testnet', + '2425': 'kcc', + '2426': 'stndtestnet', + '2442': 'zkevm-testnet-cardona', + '2458': 'thrc', + '2468': 'hrc', + '2477': '6do', + '2484': 'u2u_nebulas', + '2488': 'now', + '2511': 'karak-goerli', + '2512': 'K2-testnet', + '2522': 'fraxtal-testnet', + '2525': 'inevm', + '2552': 'horizon', + '2559': 'ktoc', + '2569': 'tpc', + '2605': 'pho', + '2606': 'pocrnet', + '2611': 'REDLC', + '2612': 'EZChain', + '2613': 'Fuji-EZChain', + '2625': 'twbt', + '2648': 'ailayer-testnet', + '2649': 'ailayer-mainnet', + '2662': 'apexmainnet', + '2710': 'tmorph', + '2718': 'k-laos', + '2730': 'txr', + '2731': 'TIME', + '2741': 'abstract', + '2748': 'Nanon', + '2777': 'gmnetwork-mainnet', + '2810': 'hmorph', + '2818': 'morph', + '2868': 'hypt', + '2882': 'chips', + '2888': 'BobaGoerli', + '2889': 'ARMA', + '2907': 'ELUX', + '2911': 'hychain', + '2941': 'xenon', + '2999': 'bty', + '3000': 'cennz-r', + '3001': 'cennz-n', + '3003': 'cau', + '3011': '3ULL', + '3030': 'BCHYPER', + '3031': 'ORL', + '3033': 'rebus-testnet', + '3068': 'bfc', + '3073': 'move', + '3084': 'nysl', + '3100': 'Immu3', + '3102': 'VFI', + '3109': 'SAVM', + '3110': 'tSAVM', + '3141': 'filecoin-hyperspace', + '3269': 'dubx', + '3270': 'testdubx', + '3306': 'debounce-devnet', + '3331': 'zcrbeach', + '3332': 'esl2-m', + '3333': 'es-t', + '3334': 'w3q-g', + '3335': 'esl2-d', + '3336': 'esl2-t', + '3337': 'es-d', + '3338': 'PEAQ', + '3339': 'es-m', + '3366': 'meron-testnet', + '3369': 'meron', + '3400': 'prb', + '3424': 'EVOm', + '3434': 'SCAIt', + '3456': 'LayerEdge-testnet', + '3490': 'gtc', + '3500': 'prbtestnet', + '3501': 'JFIN', + '3502': 'jzero', + '3601': 'pando-mainnet', + '3602': 'pando-testnet', + '3630': 'TYCON', + '3636': 'BTNX', + '3637': 'BTCm', + '3639': 'ISLAMI', + '3645': 'ISLAMIT', + '3666': 'jouleverse', + '3690': 'btx', + '3693': 'empire', + '3698': 'SPCt', + '3699': 'SPCm', + '3701': 'xplatest', + '3737': 'csb', + '3776': 'astrzk', + '3797': 'alv', + '3799': 'tTangle', + '3885': 'firechain-zkEVM-testnet', + '3888': 'kalymainnet', + '3889': 'kalytestnet', + '3912': 'drac', + '3939': 'dost', + '3966': 'dyno', + '3967': 'tdyno', + '3969': 'paynetwork', + '3993': 'apexsep', + '3999': 'ycc', + '4000': 'ozo', + '4001': 'PERIUM', + '4002': 'tftm', + '4003': 'x1-fastnet', + '4040': 'tcbr', + '4048': 'GANTestnet', + '4051': 'BobaoperaTestnet', + '4058': 'ocean', + '4061': 'Nahmii3Mainnet', + '4062': 'Nahmii3Testnet', + '4078': 'muster', + '4080': 'tbc', + '4088': 'ZRH', + '4090': 'Oasis', + '4096': 'BNIt', + '4099': 'BNIm', + '4102': 'aioz-testnet', + '4139': 'humans_testnet', + '4141': 'TPBXt', + '4157': 'crossfi-testnet', + '4158': 'crossfi', + '4162': 'SXR', + '4181': 'PHIv1', + '4200': 'Merlin-Mainnet', + '4201': 'lukso-testnet', + '4202': 'lisksep', + '4203': 'Merlin-Testnet', + '4242': 'nexi', + '4243': 'NexiV2', + '4269': 'laika-testnet', + '4321': 'echos', + '4328': 'BobaFujiTestnet', + '4337': 'beam', + '4400': 'CreditEdge', + '4422': 'PikaMinter', + '4444': 'html', + '4460': 'orderlyl2', + '4488': 'HYDRA', + '4544': 'EmoneyTestnet', + '4545': 'emoney', + '4613': 'very', + '4646': 'mst', + '4653': 'gold', + '4661': 'appchaintestnet', + '4689': 'iotex-mainnet', + '4690': 'iotex-testnet', + '4759': 'TESTMEV', + '4777': 'TBXN', + '4786': 'evnode', + '4801': 'wcsep', + '4893': 'GC', + '4913': 'oev-network', + '4918': 'txvm', + '4919': 'xvm', + '4999': 'BXN', + '5000': 'mantle', + '5001': 'mantle-testnet', + '5002': 'treasurenet', + '5003': 'mnt-sep', + '5005': 'tntest', + '5039': 'onigiritest', + '5040': 'onigiri', + '5050': 'skate', + '5051': 'nollie-testnet', + '5080': 'pzo', + '5090': 'pio', + '5100': 'syndicate-chain-testnet', + '5101': 'syndicate-chain-frame', + '5102': 'sic-testnet', + '5103': 'coordinape-testnet', + '5104': 'charmverse-testnet', + '5105': 'superloyalty-testnet', + '5106': 'azra-testnet', + '5112': 'ham', + '5115': 'citrea-testnet', + '5151': 'ZKME', + '5165': 'ftn', + '5169': 'SLN', + '5177': 'tlc', + '5197': 'es', + '5234': 'hmnd', + '5290': '_old_fire', + '5315': 'UZMI', + '5317': 'toptrust', + '5321': 'itx-testnet', + '5330': 'sseed', + '5333': 'nets', + '5353': 'ttrn', + '5371': 'setl', + '5372': 'settlus-testnet', + '5373': 'setl-sepolia', + '5424': 'edeXa', + '5439': 'egax', + '5464': 'saga', + '5511': 'PP', + '5522': 'VEX', + '5545': 'Duck-Chain-Mainnet', + '5551': 'Nahmii', + '5553': 'NahmiiTestnet', + '5555': 'cverse', + '5611': 'obnbt', + '5615': 'arcturus-testnet', + '5616': 'ARCT', + '5656': 'QIE', + '5675': 'tfilenova', + '5678': 'tango', + '5700': 'tsys', + '5729': 'hik', + '5758': 'satst', + '5777': 'ggui', + '5845': 'tangle', + '5851': 'OntologyTestnet', + '5858': 'ChangChain', + '5869': 'rbd', + '6000': 'bouncebit-testnet', + '6001': 'bouncebit-mainnet', + '6060': 'BCH', + '6065': 'TRESTEST', + '6066': 'TRESMAIN', + '6102': 'cascadia', + '6118': 'UPTN-TEST', + '6119': 'UPTN', + '6278': 'rails', + '6283': 'laosnetwork', + '6320': 'nfbchaintest', + '6321': 'eaura', + '6322': 'aura', + '6363': 'DGS', + '6398': 'connext-sepolia', + '6502': 'Peerpay', + '6550': 'FlammaTestnet', + '6552': 'SRC-test', + '6565': 'fox', + '6626': 'pixie-chain', + '6660': 'LATESTt', + '6661': 'cyba', + '6666': 'tcyba', + '6667': 'str', + '6678': 'EMC', + '6688': 'iris', + '6699': 'ox-chain', + '6701': 'PAXB', + '6779': 'compverse', + '6789': 'STANDm', + '6805': 'raceeth', + '6806': 'racesep', + '6868': 'POOLS', + '6880': 'mtt-mainnet', + '6900': 'cataclysm-1', + '6934': 'xyl', + '6942': 'laika', + '6969': 'tombchain', + '6999': 'psc', + '7000': 'zetachain-mainnet', + '7001': 'zetachain-testnet', + '7007': 'BSTC', + '7027': 'ELLA', + '7070': 'planq', + '7077': 'planq-atlas-testnet', + '7099': 'bbnt', + '7100': 'nume', + '7117': '0xl3', + '7118': 'hth', + '7171': 'bitrock', + '7181': 'uxlink1-sep', + '7200': 'xsat', + '7208': 'nxra-mainnet', + '7210': 'nibiru-testnet-1', + '7222': 'nibiru-devnet-3', + '7233': 'INI', + '7234': 'INICHAIN', + '7244': 'ZEUS-Testnet', + '7300': 'XPLAVERSE', + '7331': 'kly', + '7332': 'EON', + '7341': 'shyft', + '7484': 'raba', + '7518': 'MEV', + '7560': 'cyeth', + '7575': 'tadil', + '7576': 'adil', + '7668': 'trn-mainnet', + '7672': 'trn-porcini', + '7700': 'canto', + '7701': 'TestnetCanto', + '7744': 'phr', + '7770': 'Pandasea-Testnet', + '7771': 'tbitrock', + '7774': 'GdccMainnet', + '7775': 'GDCC', + '7776': 'pandaSea-mainnet', + '7777': 'RiseOfTheWarbotsTestnet', + '7778': 'ore', + '7798': 'oex', + '7860': 'maal-test', + '7862': 'maal-v2', + '7863': 'maal-test-v2', + '7865': 'power', + '7878': 'tscas', + '7879': 'vexon', + '7887': 'kintoMainnet', + '7895': 'ard', + '7897': 'arena-z', + '7923': 'DTBX', + '7924': 'MO', + '7957': 'texor', + '7979': 'dos', + '8000': 'teleport', + '8001': 'teleport-testnet', + '8008': 'polynomial', + '8017': 'isc', + '8029': 'mdgl', + '8047': 'boat', + '8054': 'karak-sepolia', + '8080': 'Liberty10', + '8081': 'Liberty20', + '8082': 'Sphinx10', + '8086': 'Bitcoin', + '8087': 'E-Dollar', + '8098': 'StreamuX', + '8108': 'zen', + '8131': 'meertest', + '8132': 'meermix', + '8133': 'meerpriv', + '8134': 'amana', + '8135': 'flana', + '8136': 'mizana', + '8181': 'tBOC', + '8192': 'tqf', + '8194': 'ttqf', + '8217': 'kaia-mainnet', + '8227': 'space', + '8272': 'BTON', + '8285': 'Kortho', + '8329': 'lrz', + '8333': 'b3', + '8386': 'xprotocol', + '8387': 'fuck', + '8408': 'zentest', + '8428': 'THAT', + '8453': 'base', + '8545': 'ChakraTN', + '8654': 'toki', + '8655': 'toki-testnet', + '8668': 'hela', + '8723': 'olo', + '8724': 'tolo', + '8726': 'stor', + '8727': 'tstor', + '8732': 'bln', + '8738': 'alph', + '8768': 'tmy', + '8811': 'haven1', + '8822': 'iotaevm', + '8844': 'THYDRA', + '8848': 'maro', + '8866': 'superlumio', + '8869': 'lif3-mainnet', + '8880': 'unq', + '8881': 'qtz', + '8882': 'opl', + '8883': 'sph', + '8886': 'tave', + '8888': 'XANAChain', + '8889': 'vsc', + '8890': 'tore', + '8898': 'mmt', + '8899': 'jbc', + '8911': 'alg', + '8912': 'algTest', + '8921': 'algl2', + '8922': 'algl2Test', + '8989': 'gmmt', + '8995': 'berg', + '9000': 'evmos-testnet', + '9001': 'evmos', + '9003': 'Qubetics', + '9007': 'ShidoTestnet', + '9008': 'Shido', + '9012': 'brb', + '9024': 'NexaTestnet', + '9025': 'Nexa', + '9069': 'AP3X', + '9070': 'tAP3X', + '9090': 'inco-gentry', + '9091': 'KPA', + '9100': 'GENEC', + '9108': 'Destra', + '9170': '_old_tfire', + '9223': 'COF', + '9302': 'GNET', + '9339': 'DOGSt', + '9372': 'OAS_TEST', + '9393': 'delasep', + '9395': 'MTHN', + '9496': 'twvm', + '9527': 'trpg', + '9528': 'QETTest', + '9559': 'testneon', + '9696': 'rebus', + '9700': 'MainnetDev', + '9728': 'BobaBnbTestnet', + '9768': 'NetZt', + '9779': 'pn', + '9788': 'tabitestv2', + '9789': 'tabitest', + '9790': 'carbon', + '9792': 'carbon-testnet', + '9797': 'OZ7m', + '9818': 'tIMP', + '9819': 'IMP', + '9876': 'binarytestnet', + '9888': 'Dogelayer', + '9897': 'arena-z-testnet', + '9898': 'lrs', + '9901': 'zytron-linea', + '9911': 'spent', + '9966': 'uxer', + '9977': 'tMIND', + '9980': 'combo-mainnet', + '9981': 'volley-mainnet', + '9982': 'mfevscan', + '9990': 'AGNG', + '9996': 'MIND', + '9997': 'alt-testnet', + '9998': 'ZTC', + '9999': 'myn', + '10000': 'smartbch', + '10001': 'smartbchtest', + '10010': 'ward', + '10024': 'gon', + '10025': 'aeon', + '10066': 'chainopera-testnet', + '10081': 'joct', + '10085': 'volcanochain', + '10086': 'SJ', + '10096': 'mnv', + '10101': 'GEN', + '10143': 'mon-testnet', + '10200': 'chi', + '10201': 'PWR', + '10222': 'glc', + '10242': 'aa', + '10243': 'aat', + '10248': '0xt', + '10321': 'TAOm', + '10324': 'TAOt', + '10395': 'TWLC', + '10507': 'Jade', + '10508': 'Snow', + '10823': 'CCP', + '10849': 'lamina1', + '10850': 'lamina1id', + '10888': 'gameswift-chain-testnet', + '10946': 'quadrans', + '10947': 'quadranstestnet', + '11000': 'KBC', + '11011': 'shapesep', + '11100': 'BOL', + '11110': 'astra', + '11111': 'WAGMI', + '11115': 'astra-testnet', + '11119': 'hbit', + '11124': 'abstract-sepolia', + '11221': 'SC20', + '11227': 'jiritsutes', + '11235': 'ISLM', + '11437': 'shyftt', + '11451': 'egoldchain', + '11501': 'bevm', + '11503': 'bevm-test', + '11504': 'bevm-signet', + '11521': 'satschain', + '11612': 'SRDXt', + '11820': 'artela-mainnet', + '11822': 'Artela', + '11888': 'SANold', + '11891': 'Arianee', + '12001': 'fuseZK', + '12009': 'sats', + '12020': 'ATR', + '12051': 'tZERO', + '12052': 'ZERO', + '12123': 'BRC', + '12306': 'fibo', + '12321': 'blgchain', + '12323': 'huddle01', + '12324': 'l3x', + '12325': 'l3x-testnet', + '12345': 'steptest', + '12358': 'gdpr', + '12553': 'rss3', + '12715': 'tRIK', + '12781': 'PDA-TESTNET', + '12890': 'tqnet', + '12898': 'playfair', + '13000': 'SPS', + '13308': 'Credit', + '13337': 'beam-testnet', + '13370': 'cannon', + '13371': 'imx', + '13381': 'Phoenix', + '13396': 'masa', + '13473': 'imx-testnet', + '13505': 'gravitysep', + '13600': 'KNB', + '13746': 'g7t', + '13812': 'sus', + '14000': 'SPS-Test', + '14088': 'ZRHt', + '14149': 'BitharvestMainnet', + '14235': 'bitlazer', + '14324': 'evo', + '14333': 'vitruveo-test', + '14800': 'vana-moksha', + '14801': 'satori', + '14853': 'hmnd-t5', + '15003': 'imx-devnet', + '15257': 'poodlt', + '15259': 'poodle', + '15430': 'KYMTC', + '15551': 'loop', + '15555': 'TrustTestnet', + '15557': 'eos-testnet', + '16000': 'mtt', + '16001': 'mtttest', + '16116': 'DFV', + '16166': 'cph', + '16180': 'plyr-phi', + '16182': 'eventum-testnet', + '16350': 'tIncentiv', + '16481': 'pivotal-sepolia', + '16507': 'Genesys', + '16600': '0gai-testnet', + '16688': 'nyancat', + '16718': 'airdao', + '16888': 'tivar', + '17000': 'holesky', + '17001': 'redstone-holesky', + '17069': 'garnet', + '17071': 'pop', + '17117': 'DFV-testnet', + '17171': 'G8Cm', + '17172': 'eclipse', + '17180': 'PCT', + '17217': 'KONET', + '17777': 'eos', + '18000': 'ZKST', + '18122': 'STN', + '18159': 'pom', + '18181': 'G8Ct', + '18231': 'unreal-old', + '18233': 'unreal', + '18686': 'MXCzkEVM', + '18880': 'expchain', + '18881': 'ultra-testnet', + '18888': 'titan_tkx', + '18889': 'titan_tkx-testnet', + '19011': 'HMV', + '19077': 'tbcx', + '19180': 'locachain', + '19191': 'bcx', + '19224': 'DCSMs', + '19515': 'SEPt', + '19516': 'SECm', + '19527': 'mgt', + '19546': 'zytron-linea-testnet', + '19600': 'LBRY', + '19777': 'astra-sepolia', + '19845': 'btcix', + '19991': 'ultra', + '20001': 'Camelark', + '20041': 'niza', + '20073': 'niza_testnet', + '20143': 'mon-devnet', + '20441': 'xusd', + '20729': 'CLOTestnet', + '20736': 'p12', + '20765': 'jono11', + '20993': 'fluent-dev-net', + '21004': 'c4ei', + '21097': 'rivest-testnet', + '21133': 'aah', + '21210': '1money', + '21223': 'DCPm', + '21224': 'DCPt', + '21337': 'cennz-a', + '21363': 'leth', + '21816': 'omc', + '21912': 'onf', + '22023': 'SFL', + '22040': 'airdao-test', + '22222': 'NAUTCHAIN', + '22324': 'goldx-testnet', + '22776': 'mapo', + '23006': 'ABNt', + '23023': 'pblk', + '23118': 'opside', + '23294': 'sapphire', + '23295': 'sapphire-testnet', + '23451': 'dreyerx', + '23452': 'dreyerx-testnet', + '23888': 'blastT', + '24076': 'tKYMTC', + '24116': 'railst', + '24484': 'web', + '24734': 'mintme', + '25186': 'LILA', + '25327': 'Everclear', + '25839': 'talv', + '25888': 'GOLDT', + '25925': 'bkct', + '26026': 'frm', + '26100': 'qpn', + '26482': 'ducatusx-testnet', + '26483': 'ducatusx', + '26600': 'HTZ', + '26863': 'OAC', + '26988': 'tNewFi', + '27181': 'klaosnova', + '27483': 'Nanon-Testnet', + '27827': 'zeroonemai', + '28516': 'Vizing-Testnet', + '28518': 'Vizing', + '28528': 'obgor', + '28882': 'BobaSepolia', + '29112': 'hychain-testnet', + '29223': 'nexameta', + '29225': 'nexatest', + '29536': 'tkec', + '29548': 'MCHV', + '30000': 'qchain', + '30067': 'Piece', + '30088': 'MiYou', + '30103': 'ceri', + '30730': 'moveleg', + '30731': 'movedev', + '30732': 'movetest', + '31102': 'esn', + '31223': 'CLDTX', + '31224': 'CLD', + '31337': 'got', + '31414': 'tmthn', + '31415': 'wpay', + '31611': 'mezo', + '31753': 'INTD', + '31754': 'tINTD', + '32001': 'w3gamez', + '32382': 'SANR', + '32520': 'Brise', + '32659': 'fsn', + '32769': 'zil', + '32770': 'zq2-proto-mainnet', + '32990': 'zil-isolated-server', + '33033': 'ngl', + '33101': 'zil-testnet', + '33103': 'zq2-proto-testnet', + '33111': 'curtis', + '33133': 'tngl', + '33139': 'apechain', + '33210': 'cloudverse', + '33333': 'avs', + '33385': 'zil-devnet', + '33401': 'slingshot', + '33469': 'zq2-devnet', + '33979': 'funki', + '33999': 'dapp-sepolia', + '34443': 'mode', + '34504': 'ZEUSX', + '35011': 'j2o', + '35441': 'q', + '35443': 'q-testnet', + '37111': 'lens-sepolia', + '38400': 'cmrpg', + '38401': 'ttrpg', + '39656': 'prm', + '39797': 'nrg', + '39815': 'oho', + '40000': 'divc', + '41455': 'aleph-zero', + '41500': 'ox-beta', + '41923': 'edu-chain', + '42001': 'pmon', + '42026': 'donatuz', + '42069': 'PC', + '42070': 'wmtx', + '42072': 'agent', + '42096': 'HEU', + '42161': 'arb1', + '42170': 'arb-nova', + '42220': 'celo', + '42261': 'emerald-testnet', + '42262': 'emerald', + '42355': 'goldx', + '42420': 'assetchain', + '42421': 'rwa', + '42766': 'ZKFair-Mainnet', + '42793': 'etlk', + '42801': 'GST', + '42888': 'keth', + '43110': 'avaeth', + '43111': 'hemi', + '43113': 'Fuji', + '43114': 'avax', + '43288': 'bobaavax', + '43521': 'form', + '43851': 'ZKFair-Testnet', + '44444': 'FREN', + '44445': 'QTM', + '44787': 'ALFA', + '45000': 'AutobahnNetwork', + '45454': 'SWP', + '45510': 'dee', + '45513': 'bless', + '46688': 'tfsn', + '47763': 'neox-mainnet', + '47803': 'bax', + '47805': 'REI', + '48795': 'spacetestnet', + '48899': 'zircuit-testnet', + '48900': 'zircuit-mainnet', + '49049': 'floripa', + '49088': 'tbfc', + '49321': 'Stork', + '49797': 'tnrg', + '50000': 'citro', + '50001': 'LOE', + '50005': 'YVM', + '50006': 'YVT', + '50021': 'tgton', + '50104': 'sophon', + '50311': 'STT', + '50341': 'reddio-devnet', + '50505': 'stb-testnet', + '50888': 'Erbie', + '51178': 'Lumoz-Testnet', + '51712': 'SRDXm', + '52014': 'etn-mainnet', + '52225': 'CTS', + '53277': 'DOID', + '53302': 'seedsep', + '53456': 'birdlayer', + '53457': 'dodochain', + '53935': 'DFK', + '54170': 'graphiteTest', + '54176': 'overprotocol', + '54211': 'ISLMT', + '54321': 'ToronetTestnet', + '55004': 'teth', + '55007': 'titan-sepolia', + '55244': 'spn', + '55551': 'pton', + '55555': 'reichain', + '55556': 'trei', + '55614': 'FlammaMainnet', + '56026': 'lambda', + '56288': 'BobaBnb', + '56400': 'testnetzer', + '56789': 'VELO', + '56797': 'doidTestnet', + '57000': 'tsys-rollux', + '57054': 'blaze', + '57073': 'ink', + '57451': 'coinsecnetwork', + '58008': 'sepPGN', + '58680': 'Lumoz-Quidditch-Testnet', + '59140': 'linea-goerli', + '59141': 'linea-sepolia', + '59144': 'linea', + '59902': 'metis-sepolia', + '59971': 'gcode', + '60000': 'TKM-test0', + '60001': 'TKM-test1', + '60002': 'TKM-test2', + '60103': 'TKM-test103', + '60808': 'bob', + '61022': 'Orange-Chain-Mainnet', + '61166': 'treasure', + '61406': 'kec', + '61800': 'aium-dev', + '61803': 'Etica', + '61916': 'DoKEN', + '62049': 'OPTOPIA-Testnet', + '62050': 'Optopia', + '62092': 'tiktrix-testnet', + '62298': 'citrea-devnet', + '62320': 'BKLV', + '62621': 'mtv', + '62831': 'plyr-tau-testnet', + '62850': 'laossigma', + '63000': 'esync-mainnet', + '63001': 'ecs-testnet-old', + '63002': 'esync-testnet', + '63157': 'geist', + '65349': 'cratd2c-testnet', + '65357': 've', + '65450': 'SRC', + '65535': 'xcc', + '65536': 'automatamainnet', + '66665': 'ceth', + '66988': 'janusnetwork-testnet', + '67390': 'mcl', + '67588': 'Cosmic', + '68770': 'dm2', + '68775': 'dm2t', + '69420': 'cndr', + '70000': 'TKM0', + '70001': 'TKM1', + '70002': 'TKM2', + '70103': 'TKM103', + '70700': 'pop-apex', + '70701': 'pop-boss', + '71111': 'GuapX', + '71117': 'wadzchain-testnet', + '71393': 'ckb', + '71401': 'gw-testnet-v1', + '71402': 'gw-mainnet-v1', + '72080': 'nxra-testnet', + '72778': 'caga', + '72888': 'caga-mainnet', + '72992': 'GrokChain', + '73114': 'ICBT', + '73115': 'ICBX', + '73799': 'vt', + '73927': 'mvm', + '75000': 'resin', + '75338': 'applayer-testnet', + '75512': 'GEEK', + '75513': 'GEEK_Test', + '77001': 'BORAchain', + '77238': 'fnc', + '77612': 'vscm', + '77652': 'Carrchain-Testnet', + '77677': 'cycles', + '77777': 'Toronet', + '78110': 'firenze', + '78281': 'dfly', + '78430': 'amplify', + '78431': 'bulletin', + '78432': 'conduit', + '78600': 'vanguard', + '79879': 'STANDt', + '80001': 'maticmum', + '80002': 'polygonamoy', + '80008': 'polynomialSepolia', + '80084': 'berachainbArtio', + '80085': 'berachainArtio', + '80094': 'berachain', + '80096': 'hzc', + '80451': 'geo', + '80931': 'forta', + '81041': 'nordek', + '81341': 'amanatest', + '81342': 'amanamix', + '81343': 'amanapriv', + '81351': 'flanatest', + '81352': 'flanamix', + '81353': 'flanapriv', + '81361': 'mizanatest', + '81362': 'mizanamix', + '81363': 'mizanapriv', + '81457': 'blastmainnet', + '81720': 'qnet', + '82459': 'tSLN', + '82614': 'vemp-horizon', + '83144': 'xprotocoltestnet', + '83278': 'Esa', + '83868': 'xprotocolsepolia', + '83872': 'ZEDX', + '84531': 'basegor', + '84532': 'basesep', + '84841': 'O', + '84886': 'Aerie', + '85321': 'gdpr-testnet', + '85449': 'Cyber', + '88002': 'NAUTTest', + '88559': 'INO', + '88800': 'ZKasino', + '88811': 'unit0-mainnet', + '88817': 'unit0-testnet', + '88819': 'unit0-stagenet', + '88866': 'Matr1x-Testnet', + '88880': 'chz', + '88882': 'chzspicy', + '88888': 'chzmainnet', + '88899': 'unite', + '90001': 'dhobyghaut', + '90002': 'UBITSCAN', + '90210': 'bvhl', + '90354': 'camp', + '91002': 'NAUT', + '91111': 'henez', + '91120': 'MetaDAP', + '91715': 'combo-testnet', + '92001': 'lambda-testnet', + '93572': 'tLILA', + '93747': 'stratovm', + '95432': 'sriscan', + '96368': 'tlux', + '96369': 'lux', + '96370': 'Lumoz-Chain-Mainnet', + '96970': 'mantis', + '97053': 'TetronTestnet', + '97055': 'Tetron', + '97288': 'BobaBnbOld', + '97435': 'sling', + '97453': 'sidra', + '97531': 'greenchain', + '97766': 'metabenzscan', + '97970': 'OZ7t', + '98864': 'plume-devnet', + '98865': 'plume', + '98881': 'ebi', + '98985': 'superposition-testnet', + '99099': 'ELt', + '99876': 'EMCTestnet', + '99879': 'EMCSepolia', + '99998': 'usctest', + '99999': 'usc', + '100000': 'qkc-r', + '100001': 'qkc-s0', + '100002': 'qkc-s1', + '100003': 'qkc-s2', + '100004': 'qkc-s3', + '100005': 'qkc-s4', + '100006': 'qkc-s5', + '100007': 'qkc-s6', + '100008': 'qkc-s7', + '100009': 'vechain', + '100010': 'vechain-testnet', + '100011': 'qkc-l2', + '100100': 'chi1', + '101010': 'stabilityprotocol', + '102030': 'ctc', + '102031': 'ctctest', + '102032': 'ctcdev', + '103090': 'CRFI', + '103454': 'masatest', + '104566': 'cas', + '105105': 'stratis', + '105363': 'Lumoz-Chain-Testnet', + '108801': 'bro', + '110000': 'qkc-d-r', + '110001': 'qkc-d-s0', + '110002': 'qkc-d-s1', + '110003': 'qkc-d-s2', + '110004': 'qkc-d-s3', + '110005': 'qkc-d-s4', + '110006': 'qkc-d-s5', + '110007': 'qkc-d-s6', + '110008': 'qkc-d-s7', + '110011': 'qkc-l2-t', + '110110': 'mars', + '111000': 'testsbr', + '111111': 'sbr', + '111188': 're-al', + '111451': 'egoldchaint', + '112358': 'metao', + '119139': 'MetaDAP-T', + '121224': 'fushuma', + '123321': 'gemchain', + '123456': 'dadil', + '124832': 'mitosis-testnet', + '128123': 'etlt', + '131313': 'DIONE', + '131419': 'ETND', + '132902': 'formtestnet', + '141319': 'mag', + '141491': 'BitharvestTestnet', + '142857': 'ICPlaza', + '153153': 'Odyssey', + '158245': 'cryptox', + '158345': 'xcoin', + '161201': 'openledgertest', + '161212': 'playfi', + '165279': 'ECLAT', + '167000': 'tko-mainnet', + '167004': 'taiko-a2', + '167005': 'taiko-l2', + '167006': 'taiko-l3', + '167007': 'tko-jolnir', + '167008': 'tko-katla', + '167009': 'tko-hekla', + '168168': 'zchains', + '171000': 'fairt', + '171717': 'wadzchain-mainnet', + '175177': 'lpc', + '175188': 'lpy', + '175190': 'lpl', + '188710': 'bdcc', + '188881': 'condor', + '192940': 'fhet', + '193939': 'R0AR-Chain', + '198989': 'lydia-testnet', + '199991': 'MAZZE', + '200000': 'fait', + '200101': 'milkTAda', + '200200': 'zoo', + '200202': 'milkTAlgo', + '200625': 'aka', + '200810': 'btrt', + '200901': 'btr', + '201018': 'alaya', + '201030': 'alayadev', + '201804': 'myth', + '202020': 'tDSC', + '202105': 'Duck-Chain-Testnet', + '202202': 'bethel-sydney', + '202212': 'x1-devnet', + '202401': 'YMTECH-BESU', + '202424': 'Blockfit', + '202624': 'twl-jellie', + '204005': 'x1-testnet', + '205205': 'auroria', + '210049': 'atlas', + '210209': 'sorian', + '210210': 'sorianTestnet', + '210425': 'platon', + '212013': 'litentry', + '220315': 'mas', + '221230': 'reap', + '221231': 'reap-testnet', + '222222': 'hdx', + '222555': 'deepl', + '222666': 'tdeepl', + '224168': 'TAFECO', + '224400': 'conet-mainnet', + '224422': 'conet-sebolia', + '224433': 'conet-cancun', + '229772': 'abyss', + '230315': 'hsktest', + '234666': 'hym', + '235711': 'unitestnet', + '240240': 'sto', + '240515': 'Orange-Chain-Testnet', + '241120': 'anomaly-andromeda-testnet', + '246529': 'ats', + '246785': 'atstau', + '247253': 'saakuru-testnet', + '256256': 'cmp-mainnet', + '262371': 'tECLAT', + '266256': 'gz-testnet', + '271271': 'EGONt', + '272247': 'nxytest', + '272520': 'nxy', + '281121': 'SoChain', + '281123': 'athene-parthenon', + '282828': 'zillsep', + '292003': 'CIP', + '309075': 'OWCTm', + '313313': 'saharatest', + '314159': 'filecoin-calibration', + '322202': 'parex', + '323213': 'BGBC-Testnet', + '325000': 'CampV2', + '327126': 'waba', + '328527': 'nal', + '330844': 'tc', + '333313': 'BGBC', + '333331': 'avst', + '333333': 'N3-Test', + '333666': 'oonetest', + '333777': 'oonedev', + '333888': 'sparta', + '333999': 'olympus', + '336655': 'UPchain-testnet', + '336666': 'UPchain-mainnet', + '355110': 'bitfinity-mainnet', + '355113': 'bitfinity-testnet', + '360890': 'lavita-mainnet', + '363636': 'DS2', + '373737': 'hap-testnet', + '381931': 'metal', + '381932': 'Tahoe', + '383353': 'CheeseChain', + '404040': 'TPBXm', + '413413': 'aie', + '420000': 'Infinaeon', + '420042': 'vsg', + '420420': 'KEK', + '420666': 'tKEK', + '420692': 'alterium', + '421611': 'arb-rinkeby', + '421613': 'arb-goerli', + '421614': 'arb-sep', + '424242': 'fastexTestnet', + '431140': 'markr-go', + '432201': 'dexalot-testnet', + '432204': 'dexalot', + '440017': 'graphite', + '444444': 'syndr', + '444900': 'wlkt', + '471100': 'psep', + '473861': 'ultrapro', + '474142': 'oc', + '484752': 'wcsep-dep', + '486487': 'gbl-testnet', + '490000': 'ATN', + '490092': 'pumpfi-testnet', + '504441': 'PDA', + '512512': 'cmp', + '513100': 'dis', + '526916': 'DoCoin', + '534351': 'scr-sepolia', + '534352': 'scr', + '534353': 'scr-alpha', + '534354': 'scr-prealpha', + '534849': 'shi', + '535037': 'BESC', + '541764': 'overprotocol-testnet', + '543210': 'zero-network', + '552981': 'OWCTt', + '555555': 'pentagon-testnet', + '555666': 'eclipset', + '555888': 'DustBoy_IoT', + '621847': 'DJT', + '622277': 'hyp', + '622463': 'atlas-testnet', + '631571': 'poltergeist', + '641230': 'BRNKC', + '651940': 'ALL', + '656476': 'open-campus-codex', + '660279': 'xai', + '666666': 'vpioneer', + '666888': 'hela-testnet', + '668668': 'cnw', + '686868': 'WonChain', + '696969': 'galadriel-devnet', + '706883': 'Fidesinnova', + '710420': 'tiltyardmainnet', + '713715': 'sei-devnet', + '715131': 'zth', + '721529': 'ERAM', + '723107': 'tixchain', + '743111': 'hemi-sep', + '751230': 'BRNKCTEST', + '752024': 'ternoa', + '752025': 'ternoa-mainnet', + '756689': 'payscan', + '761412': 'Miexs', + '763373': 'inksepolia', + '764984': 'lamina1test', + '767368': 'lamina1idtest', + '776877': 'mdlrm', + '786786': 'zebro', + '800001': 'octa', + '808080': 'bizt-testnet', + '808813': 'bob-sepolia', + '810180': 'zklink-nova', + '810181': 'zklink-nova-sepolia', + '810182': 'zklink-nova-goerli', + '812397': 'SGV', + '820522': 'tTSC', + '827431': 'CURVEm', + '839320': 'prmtest', + '839999': 'txsat', + '840000': 'runevm-test', + '846000': 'bloqs4good', + '855456': 'dodao', + '879151': 'blx', + '888882': 'REXX', + '888888': 'vision', + '888991': 'unitetestnet', + '900000': 'psc-s0', + '910000': 'psc-t-s0', + '911867': 'odyssey-testnet', + '912559': 'ria-dev', + '918273': 'owshen-mainnet', + '920000': 'psc-d-s0', + '920001': 'psc-d-s1', + '923018': 'tFNCY', + '955081': 'jono12', + '955305': 'elv', + '978657': 'treasure-ruby', + '978658': 'treasure-topaz', + '984122': 'forma', + '984123': 'sketchpad', + '988207': 'ecrox', + '998899': 'supernetchain', + '999999': 'AMC', + '1100789': 'nmtTest', + '1127469': 'tiltyard', + '1212101': '1money-testnet', + '1234567': 'shr', + '1261120': 'azktn', + '1313114': 'etho', + '1313500': 'xero', + '1337702': 'kintsugi', + '1337802': 'kiln', + '1337803': 'zhejiang', + '1398243': 'automatatest', + '1398244': 'automataorbittestnet', + '1501869': 'water9', + '1612127': 'alberio', + '1637450': 'xteriotest', + '1731313': 'TDD', + '1998991': 'xp-test', + '2021398': 'dbk', + '2099156': 'plian-mainnet', + '2203181': 'platondev', + '2206132': 'platondev2', + '2222222': 'cweb-bnb', + '2611555': 'DPU', + '2702128': 'xterio', + '3132023': 'sahara', + '3141592': 'filecoin-butterfly', + '3397901': 'funkisepolia', + '3441005': 'mantaTestnet', + '3441006': 'mantaSepoliaTestnet', + '4000003': 'alt-zerogas', + '4281033': 'worldscal', + '4284265': 'zuuxchain', + '4444444': 'altarTestnet', + '4457845': 'zero-sepolia', + '5112023': 'NUMB', + '5167003': 'MXCdiscontinued', + '5167004': 'MXC', + '5201420': 'etn-testnet', + '5318008': 'kreact', + '5511555': 'PPTEST', + '5555555': 'imversed', + '5555558': 'imversed-testnet', + '6038361': 'azkyt', + '6231991': 'block-chain-lol-testnet', + '6666665': 'SafeMainnet', + '6666666': 'SafeTestnet', + '7082400': 'coti-testnet', + '7225878': 'saakuru', + '7355310': 'vsl', + '7668378': 'tqom', + '7762959': 'music', + '7777777': 'zora', + '7849306': 'ozean-poseidon', + '8007736': 'plian-mainnet-l2', + '8008135': 'fhe-helium', + '8080808': 'hokum', + '8601152': 'waterfall', + '8794598': 'hap', + '8888881': 'quarix-testnet', + '8888888': 'quarix', + '9322252': 'xcap', + '9322253': 'milv', + '9999999': 'fluence', + '10058111': 'spotlight', + '10058112': 'spotlightsep', + '10067275': 'plian-testnet-l2', + '10101010': 'SVRNm', + '10241024': 'AlienX', + '10241025': 'ALIENXHal', + '11145513': 'bless-sepolia', + '11155111': 'sep', + '11155420': 'opsep', + '11166111': 'R0AR-Test-Chain', + '12020498': 'lummio', + '12052024': 'memento-test', + '12227331': 'neox', + '12227332': 'neox-t4', + '13068200': 'coti-devnet', + '13371337': 'tpep', + '14288640': 'anduschain-mainnet', + '16658437': 'plian-testnet', + '16969696': 'mpsc', + '17000920': 'tlambda', + '18071918': 'Mande', + '18289463': 'ilt', + '19850818': 'tDBC', + '19880818': 'DBC', + '20180427': 'stabilitytestnet', + '20180430': 'spectrum', + '20181205': 'qki', + '20201022': 'pg', + '20221001': 'Soon-Devnet', + '20230825': 'Vcity', + '20240324': 'dbkse', + '20240603': 'dbkchain', + '20241133': 'Proxima', + '20256789': 'ETP', + '20482050': 'hokum-testnet', + '21000000': 'corn', + '21000001': 'corn-testnet', + '22052002': 'xlon', + '24132016': 'xmtp', + '24772477': '6dotest', + '27082017': 'exlvolta', + '27082022': 'exl', + '28122024': 'a8', + '28945486': 'auxi', + '29032022': 'fla', + '31415926': 'filecoin-local', + '33626250': 'suave-toliman', + '33772211': 'txoc', + '34949059': 'citronus-citro', + '35855456': 'JOYS', + '37084624': 'nebula-testnet', + '39916801': 'kchain', + '43214913': 'mais', + '50591822': 'stavanger', + '52027071': 'dtbc', + '52027080': 'tdtbc', + '52164803': 'fluence-testnet', + '61717561': 'aqua', + '65010000': 'bakerloo-0', + '65010001': 'bakerloo-01', + '65010002': 'bakerloo-02', + '65010003': 'bakerloo-03', + '65100000': 'piccadilly-0', + '65100001': 'piccadilly-01', + '65100002': 'piccadilly-02', + '65100003': 'piccadilly-03', + '65100004': 'piccadilly-04', + '68840142': 'frametest', + '77787778': 'HETH', + '79479957': 'SXR-Testnet', + '88558801': 'backstop-testnet', + '88888888': 'team', + '89346162': 'reya-cronos', + '94204209': 'polygon-blackberry', + '96969696': 'tpsc', + '97912060': 'chad', + '99415706': 'TOYS', + '100000000': 'ETHOS', + '108160679': 'Oraichain', + '111557560': 'cysep', + '123420111': 'opcelestia-raspberry', + '161221135': 'plume-testnet', + '168587773': 'blastsepolia', + '192837465': 'GTH', + '222000222': 'kanazawa', + '241320161': 'xmtp-sepolia', + '245022926': 'neonevm-devnet', + '245022929': 'neonevm-devnet-rollup', + '245022934': 'neonevm-mainnet', + '245022940': 'neonevm-testnet', + '253368190': 'flame', + '278611351': 'razor', + '311752642': 'oneledger', + '328527624': 'nalsep', + '333000333': 'meld', + '344106930': 'deprected-calypso-testnet', + '356256156': 'tGTH', + '420420421': 'wst', + '476158412': 'deprecated-europa-testnet', + '476462898': 'Skopje', + '486217935': 'dGTH', + '503129905': 'deprecated-nebula-testnet', + '531050104': 'sophon-testnet', + '666666666': 'degen-chain', + '728126428': 'tron', + '888888888': 'ancient8', + '889910245': 'PTCE', + '889910246': 'POLYTECH', + '974399131': 'calypso-testnet', + '994873017': 'lumia-mainnet', + '999999999': 'zsep', + '1020352220': 'titan-testnet', + '1122334455': 'ipos', + '1146703430': 'cyb', + '1273227453': 'human-mainnet', + '1278060416': 'Vasyl', + '1313161554': 'aurora', + '1313161555': 'aurora-testnet', + '1313161556': 'aurora-betanet', + '1313161560': 'powergold', + '1313161567': 'turbo', + '1350216234': 'titan-mainnet', + '1351057110': 'chaos-tenet', + '1380012617': 'rari-mainnet', + '1380996178': 'rptr', + '1444673419': 'europa-testnet', + '1482601649': 'nebula-mainnet', + '1511670449': 'GPT', + '1517929550': 'deprecated-titan-testnet', + '1523903251': 'HaustTestnet', + '1564830818': 'calypso-mainnet', + '1570754601': 'hst-test', + '1666600000': 'hmy-s0', + '1666600001': 'hmy-s1', + '1666600002': 'hmy-s2', + '1666600003': 'hmy-s3', + '1666700000': 'hmy-b-s0', + '1666700001': 'hmy-b-s1', + '1666900000': 'hmy-ps-s0', + '1666900001': 'hmy-ps-s1', + '1702448187': 'Witness', + '1722641160': 'silicon-sepolia-testnet', + '1802203764': 'kkrt-sepolia', + '1903648807': 'Gemuchain', + '1918988905': 'rari-testnet', + '1952959480': 'lumiatestnet', + '2021121117': 'hop', + '2046399126': 'europa', + '2478899481': 'Kermit', + '2863311531': 'a8old', + '3125659152': 'pirl', + '4216137055': 'frankenstein', + '7078815900': 'mekong', + '7088110746': 'pectra5', + '11297108099': 'tpalm', + '11297108109': 'palm', + '28872323069': 'GS-ETH', + '37714555429': 'xaitestnet', + '44474237230': 'deriw-dev', + '88153591557': 'arb-blueberry', + '107107114116': 'kkrt-sepolia-deprecated', + '111222333444': 'alphabet', + '111551119090': 'thanos-sepolia', + '123420000220': 'fluence-stage', + '123420000558': 'PIN', + '123420000586': 'sivo-defi-testnet', + '123420000588': 'volmex', + '197710212030': 'ntt', + '197710212031': 'haradev', + '202402181627': 'gmnetwork-testnet', + '383414847825': 'zeniq', + '666301171999': 'ipdc', + '6022140761023': 'mole', + '16604737732183': 'flame-testnet', + '868455272153094': 'gw-testnet-v1-deprecated', + '920637907288165': 'kkrt-starknet-sepolia', + '2713017997578000': 'dchaint', + '2716446429837000': 'dchainmainnet' +} as const + +export const ConstantsUtil = { + CHAIN_NAMES +} diff --git a/packages/experimental/src/erc3770/utils/ConverterUtil.ts b/packages/experimental/src/erc3770/utils/ConverterUtil.ts new file mode 100644 index 0000000000..ea5d0e8ff7 --- /dev/null +++ b/packages/experimental/src/erc3770/utils/ConverterUtil.ts @@ -0,0 +1,55 @@ +import { getAddress } from 'viem' + +/* eslint-disable func-style */ +import { ConstantsUtil } from '../utils/ConstantsUtil.js' + +const convertCaip10ToErc3770 = (caipAddress: string): string => { + const parts = caipAddress.split(':') + + const [namespace, chainId, address] = parts + if ( + parts.length !== 3 || + namespace === undefined || + chainId === undefined || + address === undefined + ) { + throw new Error('Invalid CAIP address format') + } + + if (namespace && namespace.toLowerCase() !== 'eip155') { + throw new Error('Only EIP-155 namespace is supported') + } + + const shortName = ConstantsUtil.CHAIN_NAMES[chainId] + if (!shortName) { + throw new Error(`Chain ID ${chainId} not found in shortname list`) + } + + try { + const checksumAddress = getAddress(address) + + return `${shortName}:${checksumAddress}` + } catch (error) { + throw new Error('Invalid ERC-55 address format') + } +} + +const createErc3770Address = (address: string, chainId: string): string => { + const shortName = ConstantsUtil.CHAIN_NAMES[chainId] + if (!shortName) { + throw new Error(`Chain ID ${chainId} not found in shortname list`) + } + + try { + const checksumAddress = getAddress(address) + + return `${shortName}:${checksumAddress}` + } catch (error) { + throw new Error('Invalid ERC-55 address format') + } +} + +export const ConverterUtil = { + convertCaip10ToErc3770, + createErc3770Address +} diff --git a/packages/experimental/tests/erc3770/ConverterUtil.test.ts b/packages/experimental/tests/erc3770/ConverterUtil.test.ts new file mode 100644 index 0000000000..bb8add0b4b --- /dev/null +++ b/packages/experimental/tests/erc3770/ConverterUtil.test.ts @@ -0,0 +1,91 @@ +import { describe, expect, it } from 'vitest' + +import { ConverterUtil } from '../../src/erc3770/utils/ConverterUtil' + +describe('ConverterUtil', () => { + describe('convertCaip10ToErc3770', () => { + it('should convert Ethereum mainnet CAIP address to ERC-3770 format with checksum', () => { + const caipAddress = 'eip155:1:0xfb6916095ca1df60bb79ce92ce3ea74c37c5d359' + const result = ConverterUtil.convertCaip10ToErc3770(caipAddress) + expect(result).toBe('eth:0xfB6916095ca1df60bB79Ce92cE3Ea74c37c5d359') + }) + + it('should convert Polygon mainnet CAIP address to ERC-3770 format with checksum', () => { + const caipAddress = 'eip155:137:0x4b20993bc481177ec7e8f571cecae8a9e22c02db' + const result = ConverterUtil.convertCaip10ToErc3770(caipAddress) + expect(result).toBe('pol:0x4B20993Bc481177ec7E8f571ceCaE8A9e22C02db') + }) + + it('should throw error for invalid CAIP format', () => { + const invalidAddress = 'invalid:format' + expect(() => ConverterUtil.convertCaip10ToErc3770(invalidAddress)).toThrow( + 'Invalid CAIP address format' + ) + }) + + it('should throw error for non-EIP155 namespace', () => { + const nonEip155Address = 'solana:1:0x123456789abcdef123456789abcdef123456789a' + expect(() => ConverterUtil.convertCaip10ToErc3770(nonEip155Address)).toThrow( + 'Only EIP-155 namespace is supported' + ) + }) + + it('should throw error for unknown chain ID', () => { + const unknownChainAddress = 'eip155:0:0x123456789abcdef123456789abcdef123456789a' + expect(() => ConverterUtil.convertCaip10ToErc3770(unknownChainAddress)).toThrow( + 'Chain ID 0 not found in shortname list' + ) + }) + + it('should handle case-insensitive namespace', () => { + const mixedCaseAddress = 'EIP155:1:0x123456789abcdef123456789abcdef123456789a' + const result = ConverterUtil.convertCaip10ToErc3770(mixedCaseAddress) + expect(result).toBe('eth:0x123456789aBCdEF123456789aBCdef123456789A') + }) + + it('should throw error for invalid ethereum address', () => { + const invalidCaipAddress = 'eip155:1:0xinvalid' + expect(() => ConverterUtil.convertCaip10ToErc3770(invalidCaipAddress)).toThrow() + }) + }) + + describe('createErc3770Address', () => { + it('should create ERC-3770 address for Ethereum mainnet with checksum', () => { + const address = '0xfb6916095ca1df60bb79ce92ce3ea74c37c5d359' + const result = ConverterUtil.createErc3770Address(address, '1') + expect(result).toBe('eth:0xfB6916095ca1df60bB79Ce92cE3Ea74c37c5d359') + }) + + it('should create ERC-3770 address for Polygon mainnet with checksum', () => { + const address = '0x4b20993bc481177ec7e8f571cecae8a9e22c02db' + const result = ConverterUtil.createErc3770Address(address, '137') + expect(result).toBe('pol:0x4B20993Bc481177ec7E8f571ceCaE8A9e22C02db') + }) + + it('should throw error for unknown chain ID', () => { + const address = '0x123456789abcdef123456789abcdef123456789a' + expect(() => ConverterUtil.createErc3770Address(address, '0')).toThrow( + 'Chain ID 0 not found in shortname list' + ) + }) + + it('should throw error for invalid ethereum address', () => { + const invalidAddress = '0xinvalid' + expect(() => ConverterUtil.createErc3770Address(invalidAddress, '1')).toThrow( + 'Invalid ERC-55 address format' + ) + }) + + it('should normalize the ethereum address to checksum format', () => { + const lowercase = '0x123456789abcdef123456789abcdef123456789a' + const result = ConverterUtil.createErc3770Address(lowercase, '1') + expect(result).toBe('eth:0x123456789aBCdEF123456789aBCdef123456789A') + }) + + it('should maintain consistent checksum for mixed-case input', () => { + const mixedCase = '0xFB6916095CA1DF60BB79CE92CE3EA74C37C5D359' + const result = ConverterUtil.createErc3770Address(mixedCase, '1') + expect(result).toBe('eth:0xfB6916095ca1df60bB79Ce92cE3Ea74c37c5d359') + }) + }) +}) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 20548a7e2a..8aa2058131 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -617,7 +617,7 @@ importers: dependencies: '@walletconnect/ethereum-provider': specifier: 2.17.4-canary-ak-1 - version: 2.17.4-canary-ak-1(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) + version: 2.17.4-canary-ak-1(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) devDependencies: vite: specifier: 5.4.12 @@ -1282,7 +1282,7 @@ importers: version: link:../../packages/appkit '@walletconnect/ethereum-provider': specifier: 2.17.4-canary-ak-1 - version: 2.17.4-canary-ak-1(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) + version: 2.17.4-canary-ak-1(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) ethers: specifier: 6.13.2 version: 6.13.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) @@ -1567,7 +1567,7 @@ importers: dependencies: '@walletconnect/ethereum-provider': specifier: 2.17.4-canary-ak-1 - version: 2.17.4-canary-ak-1(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) + version: 2.17.4-canary-ak-1(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) vue: specifier: 3.4.3 version: 3.4.3(typescript@5.3.3) @@ -2364,6 +2364,9 @@ importers: valtio: specifier: 1.13.2 version: 1.13.2(@types/react@18.3.1)(react@18.3.1) + viem: + specifier: 2.23.0 + version: 2.23.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) zod: specifier: 3.22.4 version: 3.22.4 @@ -25145,40 +25148,6 @@ snapshots: - utf-8-validate - zod - '@reown/appkit-core@1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)': - dependencies: - '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) - '@reown/appkit-wallet': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10) - '@walletconnect/universal-provider': 2.17.2(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(utf-8-validate@5.0.10) - valtio: 1.11.2(@types/react@18.2.62)(react@18.3.1) - viem: 2.23.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@deno/kv' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/blob' - - '@vercel/kv' - - aws4fetch - - bufferutil - - db0 - - encoding - - ioredis - - react - - typescript - - uploadthing - - utf-8-validate - - zod - '@reown/appkit-core@1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) @@ -25213,13 +25182,13 @@ snapshots: - utf-8-validate - zod - '@reown/appkit-core@1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)': + '@reown/appkit-core@1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: - '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) + '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) '@reown/appkit-wallet': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10) '@walletconnect/universal-provider': 2.17.2(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(utf-8-validate@5.0.10) valtio: 1.11.2(@types/react@18.3.1)(react@18.3.1) - viem: 2.23.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) + viem: 2.23.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' @@ -25251,42 +25220,6 @@ snapshots: dependencies: buffer: 6.0.3 - '@reown/appkit-scaffold-ui@1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.2.62)(react@18.3.1))': - dependencies: - '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) - '@reown/appkit-core': 1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) - '@reown/appkit-ui': 1.6.5-rc.1.0 - '@reown/appkit-utils': 1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.2.62)(react@18.3.1)) - '@reown/appkit-wallet': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10) - lit: 3.1.0 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@deno/kv' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/blob' - - '@vercel/kv' - - aws4fetch - - bufferutil - - db0 - - encoding - - ioredis - - react - - typescript - - uploadthing - - utf-8-validate - - valtio - - zod - '@reown/appkit-scaffold-ui@1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.2.62)(react@18.3.1))(zod@3.23.8)': dependencies: '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) @@ -25323,12 +25256,12 @@ snapshots: - valtio - zod - '@reown/appkit-scaffold-ui@1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.3.1)(react@18.3.1))': + '@reown/appkit-scaffold-ui@1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.3.1)(react@18.3.1))(zod@3.23.8)': dependencies: - '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) - '@reown/appkit-core': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) + '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-core': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) '@reown/appkit-ui': 1.6.5-rc.1.0 - '@reown/appkit-utils': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.3.1)(react@18.3.1)) + '@reown/appkit-utils': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.3.1)(react@18.3.1))(zod@3.23.8) '@reown/appkit-wallet': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10) lit: 3.1.0 transitivePeerDependencies: @@ -25359,43 +25292,6 @@ snapshots: - valtio - zod - '@reown/appkit-siwe@1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)': - dependencies: - '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) - '@reown/appkit-core': 1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) - '@reown/appkit-ui': 1.6.5-rc.1.0 - '@reown/appkit-utils': 1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.2.62)(react@18.3.1)) - '@reown/appkit-wallet': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10) - '@walletconnect/utils': 2.17.2(db0@0.2.3)(ioredis@5.4.2) - lit: 3.1.0 - valtio: 1.11.2(@types/react@18.2.62)(react@18.3.1) - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@deno/kv' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/blob' - - '@vercel/kv' - - aws4fetch - - bufferutil - - db0 - - encoding - - ioredis - - react - - typescript - - uploadthing - - utf-8-validate - - zod - '@reown/appkit-siwe@1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) @@ -25433,12 +25329,12 @@ snapshots: - utf-8-validate - zod - '@reown/appkit-siwe@1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)': + '@reown/appkit-siwe@1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: - '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) - '@reown/appkit-core': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) + '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-core': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) '@reown/appkit-ui': 1.6.5-rc.1.0 - '@reown/appkit-utils': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.3.1)(react@18.3.1)) + '@reown/appkit-utils': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.3.1)(react@18.3.1))(zod@3.23.8) '@reown/appkit-wallet': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10) '@walletconnect/utils': 2.17.2(db0@0.2.3)(ioredis@5.4.2) lit: 3.1.0 @@ -25475,43 +25371,6 @@ snapshots: lit: 3.1.0 qrcode: 1.5.3 - '@reown/appkit-utils@1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.2.62)(react@18.3.1))': - dependencies: - '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) - '@reown/appkit-core': 1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) - '@reown/appkit-polyfills': 1.6.5-rc.1.0 - '@reown/appkit-wallet': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10) - '@walletconnect/logger': 2.1.2 - '@walletconnect/universal-provider': 2.17.2(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(utf-8-validate@5.0.10) - valtio: 1.11.2(@types/react@18.2.62)(react@18.3.1) - viem: 2.23.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@deno/kv' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/blob' - - '@vercel/kv' - - aws4fetch - - bufferutil - - db0 - - encoding - - ioredis - - react - - typescript - - uploadthing - - utf-8-validate - - zod - '@reown/appkit-utils@1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.2.62)(react@18.3.1))(zod@3.23.8)': dependencies: '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) @@ -25549,16 +25408,16 @@ snapshots: - utf-8-validate - zod - '@reown/appkit-utils@1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.3.1)(react@18.3.1))': + '@reown/appkit-utils@1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.3.1)(react@18.3.1))(zod@3.23.8)': dependencies: - '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) - '@reown/appkit-core': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) + '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-core': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) '@reown/appkit-polyfills': 1.6.5-rc.1.0 '@reown/appkit-wallet': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10) '@walletconnect/logger': 2.1.2 '@walletconnect/universal-provider': 2.17.2(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(utf-8-validate@5.0.10) valtio: 1.11.2(@types/react@18.3.1)(react@18.3.1) - viem: 2.23.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) + viem: 2.23.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' @@ -25597,49 +25456,6 @@ snapshots: - typescript - utf-8-validate - '@reown/appkit@1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)': - dependencies: - '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) - '@reown/appkit-core': 1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) - '@reown/appkit-polyfills': 1.6.5-rc.1.0 - '@reown/appkit-scaffold-ui': 1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.2.62)(react@18.3.1)) - '@reown/appkit-siwe': 1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) - '@reown/appkit-ui': 1.6.5-rc.1.0 - '@reown/appkit-utils': 1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.2.62)(react@18.3.1)) - '@reown/appkit-wallet': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10) - '@walletconnect/types': 2.17.2(db0@0.2.3)(ioredis@5.4.2) - '@walletconnect/universal-provider': 2.17.2(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(utf-8-validate@5.0.10) - '@walletconnect/utils': 2.17.2(db0@0.2.3)(ioredis@5.4.2) - bs58: 6.0.0 - valtio: 1.11.2(@types/react@18.2.62)(react@18.3.1) - viem: 2.23.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@deno/kv' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/blob' - - '@vercel/kv' - - aws4fetch - - bufferutil - - db0 - - encoding - - ioredis - - react - - typescript - - uploadthing - - utf-8-validate - - zod - '@reown/appkit@1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) @@ -25683,22 +25499,22 @@ snapshots: - utf-8-validate - zod - '@reown/appkit@1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)': + '@reown/appkit@1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: - '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) - '@reown/appkit-core': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) + '@reown/appkit-common': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) + '@reown/appkit-core': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) '@reown/appkit-polyfills': 1.6.5-rc.1.0 - '@reown/appkit-scaffold-ui': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.3.1)(react@18.3.1)) - '@reown/appkit-siwe': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) + '@reown/appkit-scaffold-ui': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.3.1)(react@18.3.1))(zod@3.23.8) + '@reown/appkit-siwe': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) '@reown/appkit-ui': 1.6.5-rc.1.0 - '@reown/appkit-utils': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.3.1)(react@18.3.1)) + '@reown/appkit-utils': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(valtio@1.11.2(@types/react@18.3.1)(react@18.3.1))(zod@3.23.8) '@reown/appkit-wallet': 1.6.5-rc.1.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10) '@walletconnect/types': 2.17.2(db0@0.2.3)(ioredis@5.4.2) '@walletconnect/universal-provider': 2.17.2(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(utf-8-validate@5.0.10) '@walletconnect/utils': 2.17.2(db0@0.2.3)(ioredis@5.4.2) bs58: 6.0.0 valtio: 1.11.2(@types/react@18.3.1)(react@18.3.1) - viem: 2.23.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.22.4) + viem: 2.23.0(bufferutil@4.0.9)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' @@ -30521,46 +30337,6 @@ snapshots: - uploadthing - utf-8-validate - '@walletconnect/ethereum-provider@2.17.4-canary-ak-1(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)': - dependencies: - '@reown/appkit': 1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) - '@walletconnect/jsonrpc-http-connection': 1.0.8 - '@walletconnect/jsonrpc-provider': 1.0.14 - '@walletconnect/jsonrpc-types': 1.0.4 - '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/keyvaluestorage': 1.1.1(db0@0.2.3)(ioredis@5.4.2) - '@walletconnect/sign-client': 2.17.3(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(utf-8-validate@5.0.10) - '@walletconnect/types': 2.17.3(db0@0.2.3)(ioredis@5.4.2) - '@walletconnect/universal-provider': 2.17.3(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(utf-8-validate@5.0.10) - '@walletconnect/utils': 2.17.3(db0@0.2.3)(ioredis@5.4.2) - events: 3.3.0 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@deno/kv' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/blob' - - '@vercel/kv' - - aws4fetch - - bufferutil - - db0 - - encoding - - ioredis - - react - - typescript - - uploadthing - - utf-8-validate - - zod - '@walletconnect/ethereum-provider@2.17.4-canary-ak-1(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: '@reown/appkit': 1.6.5-rc.1.0(@types/react@18.2.62)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) @@ -30601,9 +30377,9 @@ snapshots: - utf-8-validate - zod - '@walletconnect/ethereum-provider@2.17.4-canary-ak-1(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)': + '@walletconnect/ethereum-provider@2.17.4-canary-ak-1(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: - '@reown/appkit': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10) + '@reown/appkit': 1.6.5-rc.1.0(@types/react@18.3.1)(bufferutil@4.0.9)(db0@0.2.3)(ioredis@5.4.2)(react@18.3.1)(typescript@5.3.3)(utf-8-validate@5.0.10)(zod@3.23.8) '@walletconnect/jsonrpc-http-connection': 1.0.8 '@walletconnect/jsonrpc-provider': 1.0.14 '@walletconnect/jsonrpc-types': 1.0.4