Add support for Arb Sepolia and Opt Sepolia

This commit is contained in:
Dario Gabriel Lipicar 2024-03-13 16:18:19 -03:00 committed by dlipicar
parent 3eddcf99e3
commit 11b5052973
5 changed files with 106 additions and 0 deletions

View File

@ -19,9 +19,11 @@ Used [contracts](NftFaucet/Contracts) are based on [OpenZeppilin contracts](http
| Kovan | [0x99ea658e02baDE18c43Af5Fa8c18cfF4f251E311](https://kovan.etherscan.io/token/0x99ea658e02baDE18c43Af5Fa8c18cfF4f251E311) | [0xdBDD0377D1799910A4B0a4306F8d812265bF33Cb](https://kovan.etherscan.io/token/0xdBDD0377D1799910A4B0a4306F8d812265bF33Cb) |
| Sepolia | [0x9F64932Be34D5D897C4253D17707b50921f372B6](https://sepolia.etherscan.io/token/0x9F64932Be34D5D897C4253D17707b50921f372B6) | [0x1eD60FedfF775D500DDe21A974cd4E92e0047Cc8](https://sepolia.etherscan.io/token/0x1eD60FedfF775D500DDe21A974cd4E92e0047Cc8) |
| OptimismKovan | [0xee52f32f4bbcedc2a1ed1c195936132937f2d371](https://kovan-optimistic.etherscan.io/token/0xee52f32f4bbcedc2a1ed1c195936132937f2d371) | [0xCc0040129f197F63D37ebd77E62a6F96dDcd4e0A](https://kovan-optimistic.etherscan.io/token/0xCc0040129f197F63D37ebd77E62a6F96dDcd4e0A) |
| OptimismSepolia | [0xa7DF1338aDE48bcDc4194929B9853a2F9516BF54](https://sepolia-optimism.etherscan.io/address/0xa7df1338ade48bcdc4194929b9853a2f9516bf54) | [0x1Fbaab49e7E3228B1F265CE894c5537434E7468b](https://sepolia-optimism.etherscan.io/address/0x1fbaab49e7e3228b1f265ce894c5537434e7468b) |
| PolygonMumbai | [0xeE8272220A0988279627714144Ff6981E204fbE4](https://mumbai.polygonscan.com/token/0xeE8272220A0988279627714144Ff6981E204fbE4) | [0x23147CdbD963A3D0fec0F25E4604844f477F65d2](https://mumbai.polygonscan.com/token/0x23147CdbD963A3D0fec0F25E4604844f477F65d2) |
| MoonbaseAlpha | [0x9F64932Be34D5D897C4253D17707b50921f372B6](https://moonbase.moonscan.io/token/0x9F64932Be34D5D897C4253D17707b50921f372B6) | [0xf67C575502fc1cE399a3e1895dDf41847185D7bD](https://moonbase.moonscan.io/token/0xf67C575502fc1cE399a3e1895dDf41847185D7bD) |
| ArbitrumRinkeby | [0x9F64932Be34D5D897C4253D17707b50921f372B6](https://testnet.arbiscan.io/token/0x9F64932Be34D5D897C4253D17707b50921f372B6) | [0xf67C575502fc1cE399a3e1895dDf41847185D7bD](https://testnet.arbiscan.io/token/0xf67C575502fc1cE399a3e1895dDf41847185D7bD) |
| ArbitrumSepolia | [0x1Fbaab49e7E3228B1F265CE894c5537434E7468b](https://sepolia.arbiscan.io/address/0x1fbaab49e7e3228b1f265ce894c5537434e7468b) | [0xa7DF1338aDE48bcDc4194929B9853a2F9516BF54](https://sepolia.arbiscan.io/address/0xa7df1338ade48bcdc4194929b9853a2f9516bf54) |
| AvalancheFuji | [0x9F64932Be34D5D897C4253D17707b50921f372B6](https://testnet.snowtrace.io/token/0x9F64932Be34D5D897C4253D17707b50921f372B6) | [0xf67C575502fc1cE399a3e1895dDf41847185D7bD](https://testnet.snowtrace.io/token/0xf67C575502fc1cE399a3e1895dDf41847185D7bD) |
| BnbChainTestnet | [0xe6ee919a81da4dad1e632614ba4fdb8d748eb278](https://testnet.bscscan.com/token/0xe6ee919a81da4dad1e632614ba4fdb8d748eb278) | [0xa6d787d1ec987a96ba2a8bf4dae79234e4a2125a](https://testnet.bscscan.com/token/0xa6d787d1ec987a96ba2a8bf4dae79234e4a2125a) |

View File

@ -11,5 +11,6 @@ public class ArbitrumNetworkPlugin : INetworkPlugin
new ArbitrumOneNetwork(),
new ArbitrumNovaNetwork(),
new ArbitrumRinkebyNetwork(),
new ArbitrumSepoliaNetwork(),
};
}

View File

@ -0,0 +1,51 @@
using System.Globalization;
using NftFaucet.Domain.Models;
using NftFaucet.Domain.Models.Abstraction;
using NftFaucet.Domain.Models.Enums;
using NftFaucet.Plugins.Models;
namespace NftFaucet.NetworkPlugins.Arbitrum.Networks;
public sealed class ArbitrumSepoliaNetwork : Network
{
public override Guid Id { get; } = Guid.Parse("707e99a4-45af-4642-b7a8-b2908b8bed72");
public override string Name { get; } = "Arbitrum Sepolia";
public override string ShortName { get; } = "ArbSepolia";
public override ulong? ChainId { get; } = 421614;
public override int? Order { get; } = 4;
public override string MainCurrency { get; } = "ETH";
public override string SmallestCurrency { get; } = "wei";
public override string ImageName { get; } = "arbitrum-black.svg";
public override NetworkType Type { get; } = NetworkType.Ethereum;
public override NetworkSubtype SubType { get; } = NetworkSubtype.Arbitrum;
public override Uri PublicRpcUrl { get; } = new Uri("https://sepolia-rollup.arbitrum.io/rpc");
public override Uri ExplorerUrl { get; } = new Uri("https://sepolia.arbiscan.io/");
public override IReadOnlyCollection<IContract> DeployedContracts { get; } = new[]
{
new Contract
{
Id = Guid.Parse("b7d73acc-0fdf-4367-88c2-a58c498c54de"),
Name = "ERC-721 Faucet",
Symbol = "FA721",
Address = "0x1Fbaab49e7E3228B1F265CE894c5537434E7468b",
Type = ContractType.Erc721,
DeploymentTxHash = "0x4665a6e35c739678387b3814624d1092b4f47b290b312a00c319fb302169e818",
DeployedAt = DateTime.Parse("Mar-13-2024 05:57:47 PM", CultureInfo.InvariantCulture),
IsVerified = true,
MinBalanceRequired = 50000000000000,
},
new Contract
{
Id = Guid.Parse("a7b5b5a5-053c-49c5-9258-4d211d1e751b"),
Name = "ERC-1155 Faucet",
Symbol = "FA1155",
Address = "0xa7DF1338aDE48bcDc4194929B9853a2F9516BF54",
Type = ContractType.Erc1155,
DeploymentTxHash = "0x3f150cafaa822da77c785b2ad85d0286ba3781e09b592172e8a55e7c32e3da69",
DeployedAt = DateTime.Parse("Mar-13-2024 05:57:10 PM", CultureInfo.InvariantCulture),
IsVerified = true,
MinBalanceRequired = 50000000000000,
},
};
}

View File

@ -0,0 +1,51 @@
using System.Globalization;
using NftFaucet.Domain.Models;
using NftFaucet.Domain.Models.Abstraction;
using NftFaucet.Domain.Models.Enums;
using NftFaucet.Plugins.Models;
namespace NftFaucet.NetworkPlugins.Optimism.Networks;
public sealed class OptimismSepoliaNetwork : Network
{
public override Guid Id { get; } = Guid.Parse("24a46bde-4d06-4ff3-ae69-9b302ed5f31f");
public override string Name { get; } = "Optimism Sepolia";
public override string ShortName { get; } = "OpSepolia";
public override ulong? ChainId { get; } = 11155420;
public override int? Order { get; } = 4;
public override string MainCurrency { get; } = "ETH";
public override string SmallestCurrency { get; } = "wei";
public override string ImageName { get; } = "optimism-black.svg";
public override NetworkType Type { get; } = NetworkType.Ethereum;
public override NetworkSubtype SubType { get; } = NetworkSubtype.Optimism;
public override Uri PublicRpcUrl { get; } = new Uri("https://sepolia.optimism.io");
public override Uri ExplorerUrl { get; } = new Uri("https://sepolia-optimism.etherscan.io/");
public override IReadOnlyCollection<IContract> DeployedContracts { get; } = new[]
{
new Contract
{
Id = Guid.Parse("d417bf45-dc23-4bd1-a038-71c8c936bd18"),
Name = "ERC-721 Faucet",
Symbol = "FA721",
Address = "0xa7DF1338aDE48bcDc4194929B9853a2F9516BF54",
Type = ContractType.Erc721,
DeploymentTxHash = "0x4933b66c41f47f1c64b6d767401e44cd6e4bf142d540a8f676c57d1eb8418738",
DeployedAt = DateTime.Parse("Mar-13-2024 05:58:26 PM", CultureInfo.InvariantCulture),
IsVerified = true,
MinBalanceRequired = 50000000000000,
},
new Contract
{
Id = Guid.Parse("fe34c710-cd8d-4bac-8da0-ae832ec0fee8"),
Name = "ERC-1155 Faucet",
Symbol = "FA1155",
Address = "0x1Fbaab49e7E3228B1F265CE894c5537434E7468b",
Type = ContractType.Erc1155,
DeploymentTxHash = "0x4b4663597543d41c0af9f9f014b598e6c0a8718c8f35e2b074ebb517357b5bc9",
DeployedAt = DateTime.Parse("Mar-13-2024 05:59:18 PM", CultureInfo.InvariantCulture),
IsVerified = true,
MinBalanceRequired = 50000000000000,
},
};
}

View File

@ -11,5 +11,6 @@ public class OptimismNetworkPlugin : INetworkPlugin
new OptimismMainnetNetwork(),
new OptimismKovanNetwork(),
new OptimismGoerliNetwork(),
new OptimismSepoliaNetwork(),
};
}