From 64f0c7c0af3d97f6e7cdedd6b333a7d13063557c Mon Sep 17 00:00:00 2001 From: Sam Date: Tue, 24 Sep 2024 16:11:41 -0400 Subject: [PATCH] feat: support Base resolution --- src/Resolution.ts | 39 +- src/config/ens-config.json | 173 +++++---- src/config/resolver-keys.json | 59 +++- src/config/uns-config.json | 648 +++++++++++++++++++++++++++------- src/types/index.ts | 6 +- src/types/publicTypes.ts | 2 + src/utils/index.ts | 35 +- 7 files changed, 742 insertions(+), 220 deletions(-) diff --git a/src/Resolution.ts b/src/Resolution.ts index 76c7ad25..7a8ad573 100644 --- a/src/Resolution.ts +++ b/src/Resolution.ts @@ -71,6 +71,7 @@ export default class Resolution { constructor(config: {sourceConfig?: SourceConfig; apiKey?: string} = {}) { const uns = this.getUnsConfig(config); + const unsBase = this.getUnsBaseConfig(config); const zns = this.getZnsConfig(config); const ens = this.getEnsConfig(config); @@ -86,6 +87,10 @@ export default class Resolution { usedServices: [uns], native: uns instanceof Uns ? uns : new Uns(), }, + [NamingServiceName.UNS_BASE]: { + usedServices: [unsBase], + native: unsBase instanceof Uns ? unsBase : new Uns(), + }, [NamingServiceName.ZNS]: { usedServices: equalUdApiProviders ? [uns] : [uns, zns], native: zns instanceof Zns ? zns : new Zns(), @@ -1202,13 +1207,36 @@ export default class Resolution { : new Uns(config.sourceConfig?.uns); } - getZnsConfig(config: ResolutionConfig): Zns | UdApi { + private getUnsBaseConfig(config: ResolutionConfig): Uns | UdApi { + if (config.apiKey) { + return new Uns({ + locations: { + Layer1: { + url: `${DEFAULT_UNS_PROXY_SERVICE_URL}/chains/eth/rpc`, + network: 'mainnet', + proxyServiceApiKey: config.apiKey, + }, + Layer2: { + url: `${DEFAULT_UNS_PROXY_SERVICE_URL}/chains/base/rpc`, + network: 'base-mainnet', + proxyServiceApiKey: config.apiKey, + }, + }, + }); + } + + return isApi(config.sourceConfig?.uns) + ? new UdApi(config.sourceConfig?.uns) + : new Uns(config.sourceConfig?.uns); + } + + private getZnsConfig(config: ResolutionConfig): Zns | UdApi { return isApi(config.sourceConfig?.zns) ? new UdApi(config.sourceConfig?.zns) : new Zns(config.sourceConfig?.zns); } - getEnsConfig(config: ResolutionConfig): Ens | UdApi { + private getEnsConfig(config: ResolutionConfig): Ens | UdApi { if (config.apiKey) { return new Ens({ url: `${DEFAULT_UNS_PROXY_SERVICE_URL}/chains/eth/rpc`, @@ -1231,5 +1259,10 @@ type ServicesEntry = { }; function isApi(obj: any): obj is Api { - return obj && obj.api; + return ( + typeof obj === 'object' && + obj !== null && + 'api' in obj && + typeof obj.api === 'boolean' + ); } diff --git a/src/config/ens-config.json b/src/config/ens-config.json index ae045a1e..9ac2956d 100644 --- a/src/config/ens-config.json +++ b/src/config/ens-config.json @@ -1,5 +1,5 @@ { - "version": "0.1.8", + "version": "0.2.6", "networks": { "1": { "contracts": { @@ -33,6 +33,7 @@ }, "PublicResolver": { "address": "0x231b0Ee14048e9dCcD1d247744d114a4EB5E8E63", + "legacyAddresses": ["0x4976fb03C32e5B8cfe2b6cCB31c09Ba78EBaBa41"], "deploymentBlock": "0x10243b3" }, "ProxyAdmin": { @@ -52,114 +53,168 @@ "LegacyETHRegistrarController": { "address": "0x283Af0B28c62C092C9727F1Ee09c02CA627EB7F5", "deploymentBlock": "0x8f2277" + }, + "DNSRegistrar": { + "address": "0x58774Bb8acD458A640aF0B88238369A167546ef2", + "deploymentBlock": "0xc6faf4" + }, + "DNSSECImpl": { + "address": "0x46c6F79952d3046Bf673a28132ff2a81F306959c", + "deploymentBlock": "0xc6fa9e" + }, + "Root": { + "address": "0xaB528d626EC275E3faD363fF1393A41F581c5897", + "deploymentBlock": "0x8F22BC" } } }, - "5": { + "1337": { "contracts": { "ENSRegistry": { - "address": "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e", - "deploymentBlock": "0x1fd6d3" + "address": "0x50eBEc0b0EAfc732324C1A28963C1FcB7889DA39", + "deploymentBlock": "0x5e", + "legacyAddresses": [] }, "BaseRegistrarImplementation": { - "address": "0x57f1887a8BF19b14fC0dF6Fd9B2acc9Af147eA85", - "deploymentBlock": "0x1fd6dd" + "address": "0xc86965b7720a64c86263030f7B2902c752084F46", + "deploymentBlock": "0x5f", + "legacyAddresses": [] }, "ReverseRegistrar": { - "address": "0x4f7A657451358a22dc397d5eE7981FfC526cd856", - "deploymentBlock": "0x830309" + "address": "0xdb787398b6595b4F0a8d6072A8AF69774D967f5F", + "deploymentBlock": "0x60", + "legacyAddresses": [] }, "NameWrapper": { - "address": "0x114D4603199df73e7D157787f8778E21fCd13066", - "deploymentBlock": "0x83f9a2" + "address": "0xd70Ab4F5767a8fa0e1e261A2f51189316a7C0d86", + "deploymentBlock": "0x63", + "legacyAddresses": [] }, "DummyOracle": { - "address": "0x0000000000000000000000000000000000000000", - "deploymentBlock": "0x0" + "address": "0x6D264795bBa755974bBBB84Ea5E66eA893BbF606", + "deploymentBlock": "0x65", + "legacyAddresses": [] }, "StablePriceOracle": { - "address": "0x0000000000000000000000000000000000000000", - "deploymentBlock": "0x0" + "address": "0x25D0359804421aDF8E28c3629f611bfD4F04F4fD", + "deploymentBlock": "0x66", + "legacyAddresses": [] }, "ETHRegistrarController": { - "address": "0xCc5e7dB10E65EED1BBD105359e7268aa660f6734", - "deploymentBlock": "0x83fa46" + "address": "0x51A944e573DdcA58500583A997F2E46616A15770", + "deploymentBlock": "0x67", + "legacyAddresses": [] }, "PublicResolver": { - "address": "0xd7a4F6473f32aC2Af804B3686AE8F1932bC35750", - "deploymentBlock": "0x83fa9e" + "address": "0xcA8C131DC1f9f62EE54012b10BCA2DA71B8d42e7", + "deploymentBlock": "0x70", + "legacyAddresses": ["0xb9025e16A304BA1604e4b93e0A5d6cc4C699a772"] }, "ProxyAdmin": { - "address": "0xf4906E210523F9dA79E33811A44EE000441F4E04", - "deploymentBlock": "0x5b57e8" + "address": "0x4e44E79e0cEc05D9e62e952B2088c02A3C450aeC", + "deploymentBlock": "0x36", + "legacyAddresses": [] }, "ENSCustody": { - "address": "0x74d1fA29295028e58573b894A4bF2cE8541036d4", - "deploymentBlock": "0x8b85b3", - "implementation": "0x223350B4892300EA6E8adEF48C955dcf1C544D02", - "forwarder": "0x74d1fA29295028e58573b894A4bF2cE8541036d4" + "address": "0x57b1b0EABC6d5004a227A707625BdCD2257Acd63", + "deploymentBlock": "0x87", + "implementation": "0x97e711b69fa03aA2859153FCA5656F213A7b51c3", + "forwarder": "0x57b1b0EABC6d5004a227A707625BdCD2257Acd63", + "legacyAddresses": [] }, "LegacyENSRegistry": { - "address": "0x112234455C3a32FD11230C42E7Bccd4A84e02010", - "deploymentBlock": "0xa890" + "address": "0xDF1eCDd1d075d212f62d77e33f152c2FF8F26D69", + "deploymentBlock": "0x73", + "legacyAddresses": [] }, "LegacyETHRegistrarController": { - "address": "0x283Af0B28c62C092C9727F1Ee09c02CA627EB7F5", - "deploymentBlock": "0x1fd6f0" + "address": "0x942518378eb0f32aAaB57B9c8176432AcCCdA331", + "deploymentBlock": "0x68", + "legacyAddresses": [] + }, + "DNSSECImpl": { + "address": "0x87d45031F0507132474f7b913ba7e1B8A9B222a6", + "deploymentBlock": "0x7a" + }, + "DNSRegistrar": { + "address": "0x15f5427fbbE5e4c3aA2137C176B7558F5B53265D", + "deploymentBlock": "0x81" + }, + "Root": { + "address": "0x99127fc7FB6d6ef5eE2d59b9e0F30c8451A0d9ce", + "deploymentBlock": "0x82" + }, + "LegacyPublicResolver": { + "address": "0x4fbf7B2f171336958BE5D15FF762a5CfF5363568", + "deploymentBlock": "0x3b" } } }, - "1337": { + "11155111": { "contracts": { "ENSRegistry": { - "address": "0x24F45688D421f46cca60734BdC648ad192dB0f2E", - "deploymentBlock": "0x28" + "address": "0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e", + "deploymentBlock": "0x387fc8" }, "BaseRegistrarImplementation": { - "address": "0x7e76aE49D6F4c6158757693b050BF88f039DeA21", - "deploymentBlock": "0x29" + "address": "0x57f1887a8BF19b14fC0dF6Fd9B2acc9Af147eA85", + "deploymentBlock": "0x387fcb" }, "ReverseRegistrar": { - "address": "0xEE9A59532B50514d4Cb2440b19E9539b6380CEcf", - "deploymentBlock": "0x2a" + "address": "0xA0a1AbcDAe1a2a4A2EF8e9113Ff0e02DD81DC0C6", + "deploymentBlock": "0x39d263" }, "NameWrapper": { - "address": "0xf6b7c221342BC966f4396790895530bF4E9799eB", - "deploymentBlock": "0x2d" + "address": "0x0635513f179D50A207757E05759CbD106d7dFcE8", + "deploymentBlock": "0x39d549" }, "DummyOracle": { - "address": "0x38Dae41aEed12884D39dabD8F8a81Bb5B4562756", - "deploymentBlock": "0x2f" + "address": "0x10E7e7D64d7dA687f7DcF8443Df58A0415329b15", + "deploymentBlock": "0x39d560" }, "StablePriceOracle": { - "address": "0xf7c9FD8E37863CF3f2da6A3ea0B1D1E3FaadeAD4", - "deploymentBlock": "0x30" + "address": "0x0000000000000000000000000000000000000000", + "deploymentBlock": "0x0" }, "ETHRegistrarController": { - "address": "0x4Eb9dE1Fc0d800e941F326d6699E9E11969557ea", - "deploymentBlock": "0x31" + "address": "0xFED6a969AaA60E4961FCD3EBF1A2e8913ac65B72", + "deploymentBlock": "0x39d5a4" }, "PublicResolver": { - "address": "0xeC71E4E674fe0f432693DC2b935C34bd2774C003", - "deploymentBlock": "0x3a" - }, - "ProxyAdmin": { - "address": "0x4e44E79e0cEc05D9e62e952B2088c02A3C450aeC", - "deploymentBlock": "0x36" - }, - "ENSCustody": { - "address": "0xf7313E5a57432B8A90233F7158D6dDE03572Dd9f", - "deploymentBlock": "0x3f", - "implementation": "0x38b83990077ac5DA78Aa9e72f5747D3A0b2374D9", - "forwarder": "0xf7313E5a57432B8A90233F7158D6dDE03572Dd9f" + "address": "0x8FADE66B79cC9f707aB26799354482EB93a5B7dD", + "legacyAddresses": ["0x0CeEC524b2807841739D3B5E161F5bf1430FFA48"], + "deploymentBlock": "0x39d5ab" }, "LegacyENSRegistry": { - "address": "0xB17aAe5B3A7815433fC82Cfd67Ea245767894f03", - "deploymentBlock": "0x3c" + "address": "0x94f523b8261B815b87EFfCf4d18E6aBeF18d6e4b", + "deploymentBlock": "0x387fc1" }, "LegacyETHRegistrarController": { - "address": "0x3F1194B9019002863Ad0DBBE295294547c0d36A9", - "deploymentBlock": "0x32" + "address": "0x7e02892cfc2Bfd53a75275451d73cF620e793fc0", + "deploymentBlock": "0x39d575" + }, + "DNSRegistrar": { + "address": "0x5a07C75Ae469Bf3ee2657B588e8E6ABAC6741b4f", + "deploymentBlock": "0x4c7608" + }, + "DNSSECImpl": { + "address": "0xe62E4b6cE018Ad6e916fcC24545e20a33b9d8653", + "deploymentBlock": "0x3f3236" + }, + "Root": { + "address": "0xDaaF96c344f63131acadD0Ea35170E7892d3dfBA", + "deploymentBlock": "0x387fc9" + }, + "ProxyAdmin": { + "address": "0xCbF16B0E2A06916F0Ca4892F704349d13E11cF66", + "legacyAddresses": [], + "deploymentBlock": "0x5588B8" + }, + "ENSCustody": { + "address": "0xd2Bf816C7b23fF6e7d141ECC4c1e41DcC857aD45", + "deploymentBlock": "0x5588b9", + "implementation": "0x49Ac063337cF2fB26dD421Ab650b893CD54b900F", + "forwarder": "0xd2Bf816C7b23fF6e7d141ECC4c1e41DcC857aD45" } } } diff --git a/src/config/resolver-keys.json b/src/config/resolver-keys.json index 1903157d..f045ef0e 100644 --- a/src/config/resolver-keys.json +++ b/src/config/resolver-keys.json @@ -1,5 +1,5 @@ { - "version": "2.1.27", + "version": "2.1.33", "information": { "description": "This file describes all resolver keys with a defined meaning and related metadata used by Unstoppable Domains UNS Registry", "documentation": "https://docs.unstoppabledomains.com/developer-toolkit/records-reference/", @@ -56,6 +56,11 @@ "deprecated": false, "validationRegex": "^0x[a-fA-F0-9]{40}$" }, + "crypto.FARMS.version.MATIC.address": { + "deprecatedKeyName": "FARMS_MATIC", + "deprecated": false, + "validationRegex": "^0x[a-fA-F0-9]{40}$" + }, "crypto.USDC.address": { "deprecatedKeyName": "USDC", "deprecated": true, @@ -154,12 +159,12 @@ "crypto.ADA.address": { "deprecatedKeyName": "ADA", "deprecated": false, - "validationRegex": "^[1-9a-km-zA-HJ-NP-Z]{104}$|^A[1-9A-HJ-NP-Za-km-z]{58}$|^addr[0-9a-zA-Z]{99}$" + "validationRegex": "^[1-9a-km-zA-HJ-NP-Z]{104}$|^A[1-9A-HJ-NP-Za-km-z]{58}$|^addr([0-9a-zA-Z]{99}|[0-9a-zA-Z]{54})$" }, "crypto.EOS.address": { "deprecatedKeyName": "EOS", "deprecated": false, - "validationRegex": "^[a-z][a-z1-5.]{10}[a-z1-5]$" + "validationRegex": "^[1-5a-z]{12}$|^EOS[a-zA-Z0-9]{50}$|^PUB_K[0-9]_[a-zA-Z0-9]{50}$" }, "crypto.XLM.address": { "deprecatedKeyName": "XLM", @@ -319,7 +324,7 @@ "crypto.BSV.address": { "deprecatedKeyName": "BSV", "deprecated": false, - "validationRegex": "^bitcoincash:[a-zA-Z0-9]{42}$" + "validationRegex": "^[a-zA-Z0-9]{33,34}$" }, "crypto.GAS.address": { "deprecatedKeyName": "GAS", @@ -458,7 +463,7 @@ }, "crypto.TLOS.address": { "deprecatedKeyName": "TLOS", - "validationRegex": "^[a-z][a-z1-5.]{10}[a-z1-5]$", + "validationRegex": "^[1-5a-z]{12}$", "deprecated": false }, "crypto.XDC.address": { @@ -511,11 +516,31 @@ "validationRegex": "^0x[a-fA-F0-9]{40}$", "deprecated": false }, + "crypto.WETH.version.ERC20.address": { + "deprecatedKeyName": "WETH_ERC20", + "validationRegex": "^0x[a-fA-F0-9]{40}$", + "deprecated": false + }, + "crypto.WETH.version.MATIC.address": { + "deprecatedKeyName": "WETH_MATIC", + "deprecated": false, + "validationRegex": "^0x[a-fA-F0-9]{40}$" + }, + "crypto.WETH.version.BEP20.address": { + "deprecatedKeyName": "WETH_BEP20", + "validationRegex": "^0x[a-fA-F0-9]{40}$", + "deprecated": false + }, "crypto.USDT.version.ERC20.address": { "deprecatedKeyName": "USDT_ERC20", "validationRegex": "^0x[a-fA-F0-9]{40}$", "deprecated": false }, + "crypto.USDT.version.MATIC.address": { + "deprecatedKeyName": "USDT_MATIC", + "validationRegex": "^0x[a-fA-F0-9]{40}$", + "deprecated": false + }, "crypto.USDT.version.TRON.address": { "deprecatedKeyName": "USDT_TRON", "validationRegex": "^[T][a-zA-HJ-NP-Z0-9]{33}$", @@ -523,7 +548,7 @@ }, "crypto.USDT.version.EOS.address": { "deprecatedKeyName": "USDT_EOS", - "validationRegex": "^[a-z][a-z1-5.]{10}[a-z1-5]$", + "validationRegex": "^[1-5a-z]{12}$|^EOS[a-zA-Z0-9]{50}$|^PUB_K[0-9]_[a-zA-Z0-9]{50}$", "deprecated": false }, "crypto.USDT.version.OMNI.address": { @@ -531,10 +556,15 @@ "validationRegex": "^(bc1|[13])[a-zA-HJ-NP-Z0-9]{25,39}$", "deprecated": false }, + "crypto.USDT.version.OKB.address": { + "deprecatedKeyName": "USDT_OKB", + "validationRegex": "^0x[a-fA-F0-9]{40}$", + "deprecated": false + }, "crypto.USDT.version.OKC.address": { "deprecatedKeyName": "USDT_OKC", "validationRegex": "^0x[a-fA-F0-9]{40}$|^ex[a-zA-HJ-NP-Z0-9]{6,90}$", - "deprecated": false + "deprecated": true }, "crypto.FTM.version.ERC20.address": { "deprecatedKeyName": "FTM_ERC20", @@ -1373,7 +1403,7 @@ }, "crypto.RUNE.address": { "deprecatedKeyName": "RUNE", - "validationRegex": "^(bnb|tbnb)[a-zA-HJ-NP-Z0-9]{39}$", + "validationRegex": "^thor[a-zA-HJ-NP-Z0-9]{39}$", "deprecated": false }, "crypto.HBAR.address": { @@ -1423,7 +1453,7 @@ }, "crypto.EGLD.address": { "deprecatedKeyName": "EGLD", - "validationRegex": "^0x[a-zA-Z0-9]*$", + "validationRegex": "^erd[a-zA-Z0-9]{59}$", "deprecated": false }, "crypto.TUSD.version.ERC20.address": { @@ -1528,7 +1558,7 @@ }, "crypto.STX.address": { "deprecatedKeyName": "STX", - "validationRegex": "^[a-zA-Z0-9]*$", + "validationRegex": "^SP[A-Z0-9]{38,39}$", "deprecated": false }, "crypto.MANA.version.ERC20.address": { @@ -1853,7 +1883,7 @@ }, "crypto.ERG.address": { "deprecatedKeyName": "ERG", - "validationRegex": "^0x[a-zA-Z0-9]*$", + "validationRegex": "^[a-zA-Z0-9]{51}$", "deprecated": false }, "crypto.WIN.address": { @@ -2593,7 +2623,7 @@ }, "crypto.SUI.address": { "deprecatedKeyName": "SUI", - "validationRegex": "^0x[a-fA-F0-9]{40}$", + "validationRegex": "^0x([0-9a-fA-F]{64}|[a-fA-F0-9]{40})$", "deprecated": false }, "crypto.MOON.address": { @@ -2650,6 +2680,11 @@ "deprecatedKeyName": "VERSE", "validationRegex": "^0x[a-fA-F0-9]{40}$", "deprecated": false + }, + "crypto.NIBI.address": { + "deprecatedKeyName": "NIBI", + "validationRegex": "^nibi1[a-z0-9]{38}$", + "deprecated": false } } } diff --git a/src/config/uns-config.json b/src/config/uns-config.json index 574b1590..7d28688b 100644 --- a/src/config/uns-config.json +++ b/src/config/uns-config.json @@ -1,5 +1,5 @@ { - "version": "0.8.3", + "version": "0.9.11", "networks": { "1": { "contracts": { @@ -111,113 +111,30 @@ "address": "0x65c6abdf52aD08A53A77488D1Acc5c666ada840F", "legacyAddresses": [], "deploymentBlock": "0xf335e0" - } - } - }, - "5": { - "contracts": { - "UNSRegistry": { - "address": "0x070e83FCed225184E67c86302493ffFCDB953f71", - "implementation": "0x2ab164829617D51cD8c29848b8DcE163bFAF70aa", - "legacyAddresses": [], - "deploymentBlock": "0x5b57ea", - "forwarder": "0x070e83FCed225184E67c86302493ffFCDB953f71" - }, - "CNSRegistry": { - "address": "0x801452cFAC27e79a11c6b185986fdE09e8637589", - "legacyAddresses": [], - "deploymentBlock": "0x5b57d7", - "forwarder": "0x00443017FFaa4C840Caf5Dc7d3CB59147f363080" - }, - "MintingManager": { - "address": "0x9ee42D3EB042e06F8Cd241890C4fA0d51e4DA345", - "implementation": "0xe72E170CeA8F6665DcF6B8c350511F9771f21800", - "legacyAddresses": [], - "deploymentBlock": "0x5b57ec", - "forwarder": "0x7F9F48cF94C69ce91D4b442DA186F31118ac0185" }, - "UNSOperator": { - "address": "0xd484eF427E87462F8ee816B0eA219c841f802eF6", - "legacyAddresses": [], - "deploymentBlock": "0x7ff335", - "implementation": "0x7DB4481290635743721FbDB9f96b1b0Cdf5CaE69" - }, - "ProxyAdmin": { - "address": "0xf4906E210523F9dA79E33811A44EE000441F4E04", - "legacyAddresses": [], - "deploymentBlock": "0x5b57e8" - }, - "SignatureController": { - "address": "0x5199dAE4B24B987ba18FcE1b64664D1B798d372B", - "legacyAddresses": [], - "deploymentBlock": "0x5b57d8" - }, - "MintingController": { - "address": "0xCEC41677be322049cC885c0DAe2fE0D52CA195ca", - "legacyAddresses": [], - "deploymentBlock": "0x5b57d9", - "deprecated": true - }, - "WhitelistedMinter": { + "ZilliqaRecover": { "address": "0x0000000000000000000000000000000000000000", "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true + "deploymentBlock": "0x0" }, - "URIPrefixController": { - "address": "0x29465e3d2daA588E62375977bCe9b3f51406a794", - "legacyAddresses": [], - "deploymentBlock": "0x5b57da", - "deprecated": true + "Seaport": { + "address": "0x0000000000000068F116a894984e2DB1123eB395", + "deploymentBlock": "0x0" }, - "DomainZoneController": { + "SeaportProxyBuyer": { "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], "deploymentBlock": "0x0", - "deprecated": true - }, - "Resolver": { - "address": "0x0555344A5F440Bd1d8cb6B42db46c5e5D4070437", - "legacyAddresses": [], - "deploymentBlock": "0x5b57dc", - "forwarder": "0xFCc1A95B7287Ae7a8B7cA813F12991dF5714d4C7" - }, - "ProxyReader": { - "address": "0x76007c52C73972A441aFA1A0E1016B140ffdE689", - "implementation": "0xAa61dBf197646Bd01747f0AFf4Fa24135B4568Fb", - "legacyAddresses": [ - "0x77cb0e7503Ea82315421BcF0eE9603451cd285F6", - "0xE3b961856C417d081a02cBa0161a051268F52677", - "0x9A70ff906D422C2FD0F7B94244D6b36DB62Ee982", - "0xFc5f608149f4D9e2Ed0733efFe9DD57ee24BCF68" - ], - "deploymentBlock": "0x78b972" + "implementation": "0x0000000000000000000000000000000000000000", + "forwarder": "0x0000000000000000000000000000000000000000" }, - "TwitterValidationOperator": { - "address": "0x0000000000000000000000000000000000000000", - "legacyAddresses": [], + "USDC": { + "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", "deploymentBlock": "0x0" }, - "FreeMinter": { + "L1GasPriceOracle": { "address": "0x0000000000000000000000000000000000000000", "legacyAddresses": [], - "deploymentBlock": "0x0", - "deprecated": true - }, - "MintableERC721Predicate": { - "address": "0x56E14C4C1748a818a5564D33cF774c59EB3eDF59", - "legacyAddresses": [], - "deploymentBlock": "0x2fc240" - }, - "RootChainManager": { - "address": "0xBbD7cBFA79faee899Eaf900F13C9065bF03B1A74", - "legacyAddresses": [], - "deploymentBlock": "0x2dc9b9" - }, - "DotCoinBurner": { - "address": "0x65c6abdf52aD08A53A77488D1Acc5c666ada840F", - "legacyAddresses": [], - "deploymentBlock": "0x78f5ac" + "deploymentBlock": "0x0" } } }, @@ -225,7 +142,7 @@ "contracts": { "UNSRegistry": { "address": "0xa9a6A3626993D487d2Dbda3173cf58cA1a9D9e9f", - "implementation": "0xC4999E1daef4ecBd4E0F71A00B4a78B53e617922", + "implementation": "0x11227E54F19934164A81d5aDd1ce5825D46B2271", "legacyAddresses": [], "deploymentBlock": "0x01272eb5", "forwarder": "0xa9a6A3626993D487d2Dbda3173cf58cA1a9D9e9f" @@ -238,7 +155,7 @@ }, "MintingManager": { "address": "0x7be83293BeeDc9Eba1bd76c66A65F10F3efaeC26", - "implementation": "0xfd27d20F8eABAE006Dae997460344b3C0CB81bD9", + "implementation": "0x8Efbe119357753c5d12f078AC081E37a5AFACf33", "legacyAddresses": [], "deploymentBlock": "0x01272f41", "forwarder": "0xC37d3c4326ab0E1D2b9D8b916bBdf5715f780fcF" @@ -325,6 +242,32 @@ "address": "0x65c6abdf52aD08A53A77488D1Acc5c666ada840F", "legacyAddresses": [], "deploymentBlock": "0x021cac00" + }, + "ZilliqaRecover": { + "address": "0x07B58C81f160257BCb3a2d549ea02D36E3e70461", + "legacyAddresses": [], + "deploymentBlock": "0x032b35a6", + "implementation": "0x50752EcBedBb07543C4191E2492e2e888a7D04bD", + "forwarder": "0x07B58C81f160257BCb3a2d549ea02D36E3e70461" + }, + "Seaport": { + "address": "0x0000000000000068F116a894984e2DB1123eB395", + "deploymentBlock": "0x0" + }, + "SeaportProxyBuyer": { + "address": "0x8b031F472F7f90ac1fAE1616Ddf1283CDDe084bF", + "deploymentBlock": "0x037b22db", + "implementation": "0x53B01e32807127D3c2Fb6eA1A3b268753183Ed68", + "forwarder": "0x8b031F472F7f90ac1fAE1616Ddf1283CDDe084bF" + }, + "USDC": { + "address": "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359", + "deploymentBlock": "0x0" + }, + "L1GasPriceOracle": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" } } }, @@ -397,10 +340,10 @@ "forwarder": "0x11dD97b7Ca847DfB6504e61B7B9Eb30F55E554a0" }, "ProxyReader": { - "address": "0x5CC819C9915eADfcEBd76952B8C1BC36CADd7376", - "implementation": "0xBDeFCF6429D0AC68236A6BEb321cBD2Ce66B463C", + "address": "0xcd12F3f3faae97679a844aA184c0589ea8176656", + "implementation": "0x0930ffb2c192B0C9A9dd2372Cf7f2845ef39CBb6", "legacyAddresses": [], - "deploymentBlock": "0x1f" + "deploymentBlock": "0x23" }, "TwitterValidationOperator": { "address": "0x0000000000000000000000000000000000000000", @@ -424,44 +367,176 @@ "deploymentBlock": "0x0f" }, "DotCoinBurner": { - "address": "0x54563a9e1cD2dCBD0BCA90D3CFA4A647e02C404a", + "address": "0x951c830a0471C04DCB60Ce244DEe38eE4b0609ec", "legacyAddresses": [], - "deploymentBlock": "0x27" + "deploymentBlock": "0x5c" + }, + "ZilliqaRecover": { + "address": "0xDD622cF8306F18d736705e4Cc03f7FF83A899FD0", + "deploymentBlock": "0x2e", + "implementation": "0xf6b7c221342BC966f4396790895530bF4E9799eB", + "legacyAddresses": [], + "forwarder": "0xDD622cF8306F18d736705e4Cc03f7FF83A899FD0" + }, + "Seaport": { + "address": "0x5CC819C9915eADfcEBd76952B8C1BC36CADd7376", + "deploymentBlock": "0x1f" + }, + "SeaportProxyBuyer": { + "address": "0x7e76aE49D6F4c6158757693b050BF88f039DeA21", + "deploymentBlock": "0x29", + "implementation": "0x24F45688D421f46cca60734BdC648ad192dB0f2E", + "forwarder": "0x7e76aE49D6F4c6158757693b050BF88f039DeA21" + }, + "USDC": { + "address": "0xbE92182CAB5b84Fd18b34881A0c32771e84f5b8B", + "deploymentBlock": "0x21", + "implementation": "0xDa9E1b3e395bFb0A45F03C7F615146B9d896c959", + "forwarder": "0xbE92182CAB5b84Fd18b34881A0c32771e84f5b8B" + }, + "L1GasPriceOracle": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" } } }, - "80001": { + "8453": { "contracts": { - "UNSRegistry": { - "address": "0x2a93C52E7B6E7054870758e15A1446E769EdfB93", - "implementation": "0x010aEA2d9a25B0E0f05C27946e6FFFE0b88ad721", + "CNSRegistry": { + "address": "0x0000000000000000000000000000000000000000", "legacyAddresses": [], - "deploymentBlock": "0x01213f43", - "forwarder": "0x2a93C52E7B6E7054870758e15A1446E769EdfB93" + "deploymentBlock": "0x0", + "forwarder": "0x0000000000000000000000000000000000000000" }, - "CNSRegistry": { + "SignatureController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "MintingController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "WhitelistedMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "URIPrefixController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "DomainZoneController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "Resolver": { "address": "0x0000000000000000000000000000000000000000", "legacyAddresses": [], "deploymentBlock": "0x0", "forwarder": "0x0000000000000000000000000000000000000000" }, - "MintingManager": { - "address": "0x428189346bb3CC52f031A1092fd47C919AC30A9f", - "implementation": "0x78DB6F11a5bA8Ee61D1e5Ee25880212747ffB46F", + "TwitterValidationOperator": { + "address": "0x0000000000000000000000000000000000000000", "legacyAddresses": [], - "deploymentBlock": "0x01213f4a", - "forwarder": "0xEf3a491A8750BEC2Dff5339CF6Df94436d432C4d" + "deploymentBlock": "0x0" }, - "UNSOperator": { - "address": "0x576a376832181ddD19d17CD4505F6BF8FEdb428E", + "FreeMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "MintableERC721Predicate": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "RootChainManager": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "Seaport": { + "address": "0x0000000000000068F116a894984e2DB1123eB395", + "deploymentBlock": "0x0", + "legacyAddresses": [] + }, + "DotCoinBurner": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "ZilliqaRecover": { + "address": "0x0000000000000000000000000000000000000000", "legacyAddresses": [], - "deploymentBlock": "0x01e03592", - "implementation": "0xaBB7934fFD76282dc9d5126A5549C2695C9b52A2" + "deploymentBlock": "0x0" + }, + "USDC": { + "address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "deploymentBlock": "0x0", + "legacyAddresses": [] }, "ProxyAdmin": { - "address": "0x460d63117c7Ab1624b7474C45BF46eC6702f57ce", + "address": "0x03EBd257caDe479638c9f1Dc69d1ECbbF98e301C", + "deploymentBlock": "0x1215A51", + "legacyAddresses": [] + }, + "UNSRegistry": { + "address": "0xF6c1b83977DE3dEffC476f5048A0a84d3375d498", + "deploymentBlock": "0x01215a53", + "implementation": "0xE0F063F1e63E8Ac83118B08b03603d7826C718bb", + "forwarder": "0xF6c1b83977DE3dEffC476f5048A0a84d3375d498", + "legacyAddresses": [] + }, + "MintingManager": { + "address": "0xe56D6aa367B7a16385Ea867F556339bbC361F983", + "deploymentBlock": "0x01215a5c", + "implementation": "0xd30b3cB992777134E2a338BcF422a311339E75b1", + "forwarder": "0xd57f8F7be4BaE8f2bf24792Fec2Ca06513c83c1D", + "legacyAddresses": [] + }, + "UNSOperator": { + "address": "0x1E2A1f502fbe0018ED1a019D9c874e21d0a66Cb3", + "deploymentBlock": "0x01215a62", + "implementation": "0x9fd7AF306e76DCf7CF41D5c9bFbc55BA33C962B1", + "legacyAddresses": [] + }, + "ProxyReader": { + "address": "0x78c4b414e1abdf0de267deda01dffd4cd0817a16", + "deploymentBlock": "0x1219245", + "implementation": "0x6B5F9068Aa94eFf728585665244cb5AB8735E71A", + "legacyAddresses": [] + }, + "SeaportProxyBuyer": { + "address": "0x19d40e8b3338669BfC40747F5D5bDb8a14422Fdb", + "deploymentBlock": "0x01215b4f", + "implementation": "0x99d55A02f5d9c76d31C6Ff57cc36A7862D5E1029", + "forwarder": "0x19d40e8b3338669BfC40747F5D5bDb8a14422Fdb", + "legacyAddresses": [] + }, + "L1GasPriceOracle": { + "address": "0x420000000000000000000000000000000000000F", "legacyAddresses": [], - "deploymentBlock": "0x01213b22" + "deploymentBlock": "0x0" + } + } + }, + "80002": { + "contracts": { + "CNSRegistry": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "forwarder": "0x0000000000000000000000000000000000000000" }, "SignatureController": { "address": "0x0000000000000000000000000000000000000000", @@ -498,16 +573,135 @@ "deploymentBlock": "0x0", "forwarder": "0x0000000000000000000000000000000000000000" }, + "TwitterValidationOperator": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "FreeMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "MintableERC721Predicate": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "RootChainManager": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "ProxyAdmin": { + "address": "0xCbF16B0E2A06916F0Ca4892F704349d13E11cF66", + "legacyAddresses": [], + "deploymentBlock": "0x53f24d" + }, + "UNSOperator": { + "address": "0x89D35aABc8427a32ee7032e73975271e1480fd4E", + "legacyAddresses": [], + "deploymentBlock": "0x53f775", + "implementation": "0x49Ac063337cF2fB26dD421Ab650b893CD54b900F" + }, + "UNSRegistry": { + "address": "0xAb005176D74900A9c25fDA144e2f9f329A409166", + "legacyAddresses": [], + "deploymentBlock": "0x53f76a", + "implementation": "0x223350B4892300EA6E8adEF48C955dcf1C544D02", + "forwarder": "0xAb005176D74900A9c25fDA144e2f9f329A409166" + }, + "MintingManager": { + "address": "0xabec3fF0F0b6375F65CB9aEB01e8347bf697082F", + "legacyAddresses": [], + "deploymentBlock": "0x53f770", + "implementation": "0x5e6f02BA94648Fb25Ca98C6a577c04A0Db34c724", + "forwarder": "0xC738bD0E31CF0f7a777D815F8cA965f3c064C012" + }, "ProxyReader": { - "address": "0xBD4674F11d512120dFc8BAe5f84963d7419A5db2", - "implementation": "0x952e0E876ad3a47F503Fb53eB04dD89aA1e6B8Da", - "legacyAddresses": [ - "0x71f7C0A978A541aB13Bd5783470f38b0dd71Cf78", - "0x6fe7c857C1B0E54492C8762f27e0a45CA7ff264B", - "0xbd9e01F6513E7C05f71Bf21d419a3bDF1EA9104b", - "0x332A8191905fA8E6eeA7350B5799F225B8ed30a9" - ], - "deploymentBlock": "0x01bb07d3" + "address": "0x109e7315189E476AB21166955a0fB9BE9b531BEc", + "legacyAddresses": [], + "deploymentBlock": "0x53fff5", + "implementation": "0xA35F199591bD4F0Cb301ff85b6109Bda146dfb09" + }, + "DotCoinBurner": { + "address": "0xFc86844dE82FA7906C9789ca3161004F18Ca8ff4", + "legacyAddresses": [], + "deploymentBlock": "0x540d0d" + }, + "ZilliqaRecover": { + "address": "0x002380ccAFf852dEF50a176873d50f8019e36FBc", + "legacyAddresses": [], + "deploymentBlock": "0x540d6a", + "implementation": "0xBf101Ad6226024D1d26180136311d77387353c71", + "forwarder": "0x002380ccAFf852dEF50a176873d50f8019e36FBc" + }, + "Seaport": { + "address": "0x0000000000000068F116a894984e2DB1123eB395", + "deploymentBlock": "0x0" + }, + "SeaportProxyBuyer": { + "address": "0x4FF860525ccb6E992E0A4579860465f7EF581aed", + "deploymentBlock": "0x7c4d06", + "implementation": "0xf02a5fA08b86aC35EC3D6Df6878832334696788E", + "forwarder": "0x4FF860525ccb6E992E0A4579860465f7EF581aed" + }, + "USDC": { + "address": "0x9E85b0F8a298Eb0ACc175cFFEd0674718d552C11", + "deploymentBlock": "0xb7c92b", + "implementation": "0xf66A05D55F6a71E74e131b9870B9131EE56ef12E", + "forwarder": "0x9E85b0F8a298Eb0ACc175cFFEd0674718d552C11" + }, + "L1GasPriceOracle": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + } + } + }, + "84532": { + "contracts": { + "CNSRegistry": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "forwarder": "0x0000000000000000000000000000000000000000" + }, + "SignatureController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "MintingController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "WhitelistedMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "URIPrefixController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "DomainZoneController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "Resolver": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "forwarder": "0x0000000000000000000000000000000000000000" }, "TwitterValidationOperator": { "address": "0x0000000000000000000000000000000000000000", @@ -530,10 +724,200 @@ "legacyAddresses": [], "deploymentBlock": "0x0" }, + "Seaport": { + "address": "0x0000000000000068F116a894984e2DB1123eB395", + "deploymentBlock": "0x0", + "legacyAddresses": [] + }, + "ProxyAdmin": { + "address": "0xd57f8F7be4BaE8f2bf24792Fec2Ca06513c83c1D", + "legacyAddresses": [], + "deploymentBlock": "0xcbf182" + }, + "UNSRegistry": { + "address": "0xEc353DCE22C2B97814608A6b2e44889506A4Aabf", + "deploymentBlock": "0xcbf184", + "implementation": "0xD0AB7f2490736c60575123aF2Ce0D2D6b13D5490", + "forwarder": "0xEc353DCE22C2B97814608A6b2e44889506A4Aabf", + "legacyAddresses": [] + }, + "MintingManager": { + "address": "0x050Ceb85167D510558E793a483b479f2917B4b9b", + "deploymentBlock": "0xcbf18d", + "implementation": "0x6B5F9068Aa94eFf728585665244cb5AB8735E71A", + "forwarder": "0xEa5AE30C714ccd63Fca6D791Eea1E26CB1be0c1d", + "legacyAddresses": [] + }, + "UNSOperator": { + "address": "0x99d55A02f5d9c76d31C6Ff57cc36A7862D5E1029", + "deploymentBlock": "0xcbf193", + "implementation": "0x3a2Ad968667a8214BEAe6AfA45192DD24109a3e7", + "legacyAddresses": [] + }, + "ProxyReader": { + "address": "0x8Fc4DBA4A6F5AE8992E8f9B64D6d995BD3AfE2c4", + "deploymentBlock": "0xcbf1a9", + "implementation": "0x37e22Fd398B8c95128f5235e991682cF6e9F5d9c", + "legacyAddresses": [] + }, + "SeaportProxyBuyer": { + "address": "0x78c4B414e1AbdF0dE267deDa01DFFd4cd0817A16", + "deploymentBlock": "0xcbf1b5", + "implementation": "0x6C95A12CcEA79971C51b16f707D8CdDd7d1b5033", + "forwarder": "0x78c4B414e1AbdF0dE267deDa01DFFd4cd0817A16", + "legacyAddresses": [] + }, "DotCoinBurner": { - "address": "0x65c6abdf52aD08A53A77488D1Acc5c666ada840F", + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "ZilliqaRecover": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "USDC": { + "address": "0x5dEaC602762362FE5f135FA5904351916053cF70", + "deploymentBlock": "0x0" + }, + "L1GasPriceOracle": { + "address": "0x420000000000000000000000000000000000000F", + "legacyAddresses": [], + "deploymentBlock": "0x0" + } + } + }, + "11155111": { + "contracts": { + "ProxyAdmin": { + "address": "0xCbF16B0E2A06916F0Ca4892F704349d13E11cF66", + "legacyAddresses": [], + "deploymentBlock": "0x5588B8" + }, + "ENSCustody": { + "address": "0xd2Bf816C7b23fF6e7d141ECC4c1e41DcC857aD45", + "legacyAddresses": [], + "deploymentBlock": "0x5588b9", + "implementation": "0x49Ac063337cF2fB26dD421Ab650b893CD54b900F", + "forwarder": "0xd2Bf816C7b23fF6e7d141ECC4c1e41DcC857aD45" + }, + "CNSRegistry": { + "address": "0xAb005176D74900A9c25fDA144e2f9f329A409166", + "legacyAddresses": [], + "deploymentBlock": "0x558be7", + "forwarder": "0xD3146C740c0Fa128ab1aEA90e4E75194AC0Bbc9B" + }, + "SignatureController": { + "address": "0x5e6f02BA94648Fb25Ca98C6a577c04A0Db34c724", + "legacyAddresses": [], + "deploymentBlock": "0x558bee" + }, + "MintingController": { + "address": "0xabec3fF0F0b6375F65CB9aEB01e8347bf697082F", + "legacyAddresses": [], + "deploymentBlock": "0x558bef", + "deprecated": true + }, + "URIPrefixController": { + "address": "0x89D35aABc8427a32ee7032e73975271e1480fd4E", + "legacyAddresses": [], + "deploymentBlock": "0x558bf6", + "deprecated": true + }, + "Resolver": { + "address": "0xf8F0622A88eC688140890153191Db1713442618D", + "legacyAddresses": [], + "deploymentBlock": "0x558bfc", + "forwarder": "0xA35F199591bD4F0Cb301ff85b6109Bda146dfb09" + }, + "WhitelistedMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "DomainZoneController": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "TwitterValidationOperator": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "FreeMinter": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0", + "deprecated": true + }, + "MintableERC721Predicate": { + "address": "0xf8D2ecCA43F50F04922A13c417aEd05C34F1EF52", + "legacyAddresses": [], + "deploymentBlock": "0x486873" + }, + "RootChainManager": { + "address": "0x34F5A25B627f50Bb3f5cAb72807c4D4F405a9232", + "legacyAddresses": [], + "deploymentBlock": "0x486867" + }, + "UNSRegistry": { + "address": "0xDD907B4d80B4a979fd77eE502580c55F2700292c", + "deploymentBlock": "0x55a711", + "legacyAddresses": [], + "implementation": "0x7f21bA760352326c55FD6A83D218c2FCd294Dd1c", + "forwarder": "0xDD907B4d80B4a979fd77eE502580c55F2700292c" + }, + "MintingManager": { + "address": "0x1620637c0ce88cccfa919ef562b4398e3187189d", + "deploymentBlock": "0x55a715", "legacyAddresses": [], - "deploymentBlock": "0x01bbafc7" + "implementation": "0x63B6F3F80d12A70eA26a57cdFDc16F33e6fD319A", + "forwarder": "0x38F532B32E0b42E747483A37Dfaf05460b1F4Fa3" + }, + "UNSOperator": { + "address": "0x41fD65E5a1cbdcCdD69F8C11DA4c829F7d3565A6", + "deploymentBlock": "0x55A717", + "legacyAddresses": [], + "implementation": "0xf9A7A6516Ee73E4Bd3FA9fbABdA3C8DeA40c89FA" + }, + "ProxyReader": { + "address": "0x880F7D37E9E4EB6868F92F4bB9C8C0995178fdA9", + "deploymentBlock": "0x55a857", + "legacyAddresses": [], + "implementation": "0xdA0E8ec8f801593161e689275Ab1394e7791ee18" + }, + "DotCoinBurner": { + "address": "0x64E3ecF931610d2503247b7c7A885688de54241A", + "legacyAddresses": [], + "deploymentBlock": "0x55f932" + }, + "ZilliqaRecover": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" + }, + "Seaport": { + "address": "0x0000000000000068F116a894984e2DB1123eB395", + "deploymentBlock": "0x0" + }, + "SeaportProxyBuyer": { + "address": "0x0000000000000000000000000000000000000000", + "deploymentBlock": "0x0", + "implementation": "0x0000000000000000000000000000000000000000", + "forwarder": "0x0000000000000000000000000000000000000000" + }, + "USDC": { + "address": "0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238", + "deploymentBlock": "0x0" + }, + "L1GasPriceOracle": { + "address": "0x0000000000000000000000000000000000000000", + "legacyAddresses": [], + "deploymentBlock": "0x0" } } } diff --git a/src/types/index.ts b/src/types/index.ts index 91fe80d4..4d1631d0 100644 --- a/src/types/index.ts +++ b/src/types/index.ts @@ -121,9 +121,11 @@ const StringUnion = (...values: UnionType[]) => { export const UnsSupportedNetwork = StringUnion( 'mainnet', - 'goerli', + 'sepolia', 'polygon-mainnet', - 'polygon-mumbai', + 'polygon-amoy', + 'base-mainnet', + 'base-sepolia', ); export type UnsSupportedNetwork = typeof UnsSupportedNetwork.type; diff --git a/src/types/publicTypes.ts b/src/types/publicTypes.ts index 2d26c3da..3d2cfa48 100644 --- a/src/types/publicTypes.ts +++ b/src/types/publicTypes.ts @@ -48,6 +48,7 @@ export enum UnsLocation { export enum NamingServiceName { UNS = 'UNS', + UNS_BASE = 'UNS_BASE', ENS = 'ENS', ZNS = 'ZNS', } @@ -280,6 +281,7 @@ export enum BlockchainType { ETH = 'ETH', MATIC = 'MATIC', ZIL = 'ZIL', + BASE = 'BASE', } export type DomainLocation = { diff --git a/src/utils/index.ts b/src/utils/index.ts index 381ef436..0e5ce080 100644 --- a/src/utils/index.ts +++ b/src/utils/index.ts @@ -7,15 +7,19 @@ type NetworkSignedLinkURLs = Record; const ProviderURLMap: Record = { infura: { mainnet: 'https://mainnet.infura.io/v3/', - goerli: 'https://goerli.infura.io/v3/', + sepolia: 'https://sepolia.infura.io/v3/', 'polygon-mainnet': 'https://polygon-mainnet.infura.io/v3/', - 'polygon-mumbai': 'https://polygon-mumbai.infura.io/v3/', + 'polygon-amoy': 'https://polygon-amoy.infura.io/v3/', + 'base-mainnet': 'https://base-mainnet.infura.io/v3/', + 'base-sepolia': 'https://base-sepolia.infura.io/v3/', }, alchemy: { mainnet: 'https://eth-mainnet.alchemyapi.io/v2/', - goerli: 'https://eth-goerli.alchemyapi.io/v2/', + sepolia: 'https://eth-sepolia.alchemyapi.io/v2/', 'polygon-mainnet': 'https://polygon-mainnet.g.alchemy.com/v2/', - 'polygon-mumbai': 'https://polygon-mumbai.g.alchemy.com/v2/', + 'polygon-amoy': 'https://polygon-amoy.g.alchemy.com/v2/', + 'base-mainnet': 'https://base-mainnet.g.alchemy.com/v2/', + 'base-sepolia': 'https://base-sepolia.g.alchemy.com/v2/', }, }; @@ -76,6 +80,7 @@ export function constructRecords( return records; } +// TODO: Replace this with supported_tlds calls export const domainExtensionToNamingServiceName = { crypto: NamingServiceName.UNS, zil: NamingServiceName.ZNS, @@ -84,6 +89,7 @@ export const domainExtensionToNamingServiceName = { xyz: NamingServiceName.ENS, kred: NamingServiceName.ENS, reverse: NamingServiceName.ENS, + udtest: NamingServiceName.UNS_BASE, }; export const findNamingServiceName = ( @@ -102,17 +108,22 @@ export const findNamingServiceName = ( export const EthereumNetworks = { mainnet: 1, - goerli: 5, + sepolia: 11155111, 'polygon-mainnet': 137, - 'polygon-mumbai': 80001, + 'polygon-amoy': 80002, + 'base-mainnet': 8453, + 'base-sepolia': 84532, } as const; -export const EthereumNetworksInverted = { - 1: 'mainnet', - 5: 'goerli', - 137: 'polygon-mainnet', - 80001: 'polygon-mumbai', -} as const; +export const EthereumNetworksInverted = Object.entries(EthereumNetworks).reduce< + Record +>( + (acc, [originalKey, originalValue]) => ({ + ...acc, + [originalValue]: originalKey, + }), + {}, +); export const wrapResult = (func: () => T): Promise> => { let callResult;