From 1f97ff7935cb2a08d2269b07c3d12c982f14cc99 Mon Sep 17 00:00:00 2001 From: Ivan Yaremenchuk Date: Sun, 2 Oct 2022 20:37:56 -0500 Subject: [PATCH] Return back IProviderPlugin and IUploaderPlugin --- .../Abstraction => }/INetworkPlugin.cs | 4 +++- NftFaucet.Plugins/IProviderPlugin.cs | 8 ++++++++ NftFaucet.Plugins/IUploaderPlugin.cs | 8 ++++++++ NftFaucet.sln | 9 +-------- NftFaucet/NftFaucet.csproj | 3 +-- NftFaucet/Services/InitializationService.cs | 4 ++-- NftFaucet/Services/PluginLoader.cs | 20 +++++++++---------- .../ArbitrumNetworkPlugin.cs | 1 + .../AvalancheNetworkPlugin.cs | 1 + .../BscNetworkPlugin.cs | 1 + .../EthereumNetworkPlugin.cs | 1 + .../MoonbeamNetworkPlugin.cs | 1 + .../OptimismNetworkPlugin.cs | 1 + .../PolygonNetworkPlugin.cs | 1 + .../SolanaNetworkPlugin.cs | 1 + .../EthereumKey.cs | 2 +- .../EthereumKeygenProvider.cs | 2 +- .../KeygenProviderPlugin.cs | 14 +++++++++++++ .../NftFaucet.ProviderPlugins.Keygens.csproj} | 1 + .../SolanaKey.cs | 2 +- .../SolanaKeygenProvider.cs | 2 +- .../MetamaskProviderPlugin.cs | 12 +++++++++++ .../PhantomProviderPlugin.cs | 12 +++++++++++ ...Faucet.ProviderPlugins.SolanaKeygen.csproj | 17 ---------------- .../CrustUploaderPlugin.cs | 12 +++++++++++ .../InfuraUploaderPlugin.cs | 12 +++++++++++ .../NftStorageUploaderPlugin.cs | 12 +++++++++++ 27 files changed, 120 insertions(+), 44 deletions(-) rename NftFaucet.Plugins/{Models/Abstraction => }/INetworkPlugin.cs (56%) create mode 100644 NftFaucet.Plugins/IProviderPlugin.cs create mode 100644 NftFaucet.Plugins/IUploaderPlugin.cs rename plugins/provider-plugins/{NftFaucet.ProviderPlugins.EthereumKeygen => NftFaucet.ProviderPlugins.Keygens}/EthereumKey.cs (95%) rename plugins/provider-plugins/{NftFaucet.ProviderPlugins.EthereumKeygen => NftFaucet.ProviderPlugins.Keygens}/EthereumKeygenProvider.cs (99%) create mode 100644 plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/KeygenProviderPlugin.cs rename plugins/provider-plugins/{NftFaucet.ProviderPlugins.EthereumKeygen/NftFaucet.ProviderPlugins.EthereumKeygen.csproj => NftFaucet.ProviderPlugins.Keygens/NftFaucet.ProviderPlugins.Keygens.csproj} (87%) rename plugins/provider-plugins/{NftFaucet.ProviderPlugins.SolanaKeygen => NftFaucet.ProviderPlugins.Keygens}/SolanaKey.cs (95%) rename plugins/provider-plugins/{NftFaucet.ProviderPlugins.SolanaKeygen => NftFaucet.ProviderPlugins.Keygens}/SolanaKeygenProvider.cs (99%) create mode 100644 plugins/provider-plugins/NftFaucet.ProviderPlugins.Metamask/MetamaskProviderPlugin.cs create mode 100644 plugins/provider-plugins/NftFaucet.ProviderPlugins.Phantom/PhantomProviderPlugin.cs delete mode 100644 plugins/provider-plugins/NftFaucet.ProviderPlugins.SolanaKeygen/NftFaucet.ProviderPlugins.SolanaKeygen.csproj create mode 100644 plugins/upload-plugins/NftFaucet.UploadPlugins.Crust/CrustUploaderPlugin.cs create mode 100644 plugins/upload-plugins/NftFaucet.UploadPlugins.Infura/InfuraUploaderPlugin.cs create mode 100644 plugins/upload-plugins/NftFaucet.UploadPlugins.NftStorage/NftStorageUploaderPlugin.cs diff --git a/NftFaucet.Plugins/Models/Abstraction/INetworkPlugin.cs b/NftFaucet.Plugins/INetworkPlugin.cs similarity index 56% rename from NftFaucet.Plugins/Models/Abstraction/INetworkPlugin.cs rename to NftFaucet.Plugins/INetworkPlugin.cs index 505633d..1ff6aa1 100644 --- a/NftFaucet.Plugins/Models/Abstraction/INetworkPlugin.cs +++ b/NftFaucet.Plugins/INetworkPlugin.cs @@ -1,4 +1,6 @@ -namespace NftFaucet.Plugins.Models.Abstraction; +using NftFaucet.Plugins.Models.Abstraction; + +namespace NftFaucet.Plugins; public interface INetworkPlugin { diff --git a/NftFaucet.Plugins/IProviderPlugin.cs b/NftFaucet.Plugins/IProviderPlugin.cs new file mode 100644 index 0000000..737d201 --- /dev/null +++ b/NftFaucet.Plugins/IProviderPlugin.cs @@ -0,0 +1,8 @@ +using NftFaucet.Plugins.Models.Abstraction; + +namespace NftFaucet.Plugins; + +public interface IProviderPlugin +{ + public IReadOnlyCollection Providers { get; } +} diff --git a/NftFaucet.Plugins/IUploaderPlugin.cs b/NftFaucet.Plugins/IUploaderPlugin.cs new file mode 100644 index 0000000..712363c --- /dev/null +++ b/NftFaucet.Plugins/IUploaderPlugin.cs @@ -0,0 +1,8 @@ +using NftFaucet.Plugins.Models.Abstraction; + +namespace NftFaucet.Plugins; + +public interface IUploaderPlugin +{ + public IReadOnlyCollection Uploaders { get; } +} diff --git a/NftFaucet.sln b/NftFaucet.sln index cc747c7..9462cf7 100644 --- a/NftFaucet.sln +++ b/NftFaucet.sln @@ -12,14 +12,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ProviderPlugins", "Provider EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "UploadPlugins", "UploadPlugins", "{5FA46262-EDA0-43BB-A1E5-57F50AD7EE00}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NftFaucet.ProviderPlugins.EthereumKeygen", "plugins\provider-plugins\NftFaucet.ProviderPlugins.EthereumKeygen\NftFaucet.ProviderPlugins.EthereumKeygen.csproj", "{B1D73FDE-0ECD-4917-8B9A-AEFD8C8C39C5}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NftFaucet.ProviderPlugins.Keygens", "plugins\provider-plugins\NftFaucet.ProviderPlugins.Keygens\NftFaucet.ProviderPlugins.Keygens.csproj", "{B1D73FDE-0ECD-4917-8B9A-AEFD8C8C39C5}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NftFaucet.Domain", "NftFaucet.Domain\NftFaucet.Domain.csproj", "{384ECEAB-40B1-4F22-AFBD-F710B935E23A}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NftFaucet.ProviderPlugins.Metamask", "plugins\provider-plugins\NftFaucet.ProviderPlugins.Metamask\NftFaucet.ProviderPlugins.Metamask.csproj", "{3028C0A8-073A-4160-92C7-34D148F1D19C}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NftFaucet.ProviderPlugins.SolanaKeygen", "plugins\provider-plugins\NftFaucet.ProviderPlugins.SolanaKeygen\NftFaucet.ProviderPlugins.SolanaKeygen.csproj", "{A48C079B-5466-4AE5-AA15-0D9D7C3A01A9}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NftFaucet.ProviderPlugins.Phantom", "plugins\provider-plugins\NftFaucet.ProviderPlugins.Phantom\NftFaucet.ProviderPlugins.Phantom.csproj", "{D6522592-0719-479F-AD8E-D58D4D7B207C}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NftFaucet.UploadPlugins.Crust", "plugins\upload-plugins\NftFaucet.UploadPlugins.Crust\NftFaucet.UploadPlugins.Crust.csproj", "{BA56B8D0-B2BD-4170-9D95-D2A1ED29E334}" @@ -72,10 +70,6 @@ Global {3028C0A8-073A-4160-92C7-34D148F1D19C}.Debug|Any CPU.Build.0 = Debug|Any CPU {3028C0A8-073A-4160-92C7-34D148F1D19C}.Release|Any CPU.ActiveCfg = Release|Any CPU {3028C0A8-073A-4160-92C7-34D148F1D19C}.Release|Any CPU.Build.0 = Release|Any CPU - {A48C079B-5466-4AE5-AA15-0D9D7C3A01A9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A48C079B-5466-4AE5-AA15-0D9D7C3A01A9}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A48C079B-5466-4AE5-AA15-0D9D7C3A01A9}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A48C079B-5466-4AE5-AA15-0D9D7C3A01A9}.Release|Any CPU.Build.0 = Release|Any CPU {D6522592-0719-479F-AD8E-D58D4D7B207C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {D6522592-0719-479F-AD8E-D58D4D7B207C}.Debug|Any CPU.Build.0 = Debug|Any CPU {D6522592-0719-479F-AD8E-D58D4D7B207C}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -136,7 +130,6 @@ Global {B1D73FDE-0ECD-4917-8B9A-AEFD8C8C39C5} = {9DE3CDEC-37AE-4FB0-B115-984EB47F57C5} {3028C0A8-073A-4160-92C7-34D148F1D19C} = {9DE3CDEC-37AE-4FB0-B115-984EB47F57C5} {D6522592-0719-479F-AD8E-D58D4D7B207C} = {9DE3CDEC-37AE-4FB0-B115-984EB47F57C5} - {A48C079B-5466-4AE5-AA15-0D9D7C3A01A9} = {9DE3CDEC-37AE-4FB0-B115-984EB47F57C5} {BA56B8D0-B2BD-4170-9D95-D2A1ED29E334} = {5FA46262-EDA0-43BB-A1E5-57F50AD7EE00} {3F51D52C-3A40-4206-9715-02425786B485} = {5FA46262-EDA0-43BB-A1E5-57F50AD7EE00} {F0F74D75-68EC-4B56-897E-7292A05B963B} = {5FA46262-EDA0-43BB-A1E5-57F50AD7EE00} diff --git a/NftFaucet/NftFaucet.csproj b/NftFaucet/NftFaucet.csproj index 0c0713a..516c7c2 100644 --- a/NftFaucet/NftFaucet.csproj +++ b/NftFaucet/NftFaucet.csproj @@ -31,10 +31,9 @@ - + - diff --git a/NftFaucet/Services/InitializationService.cs b/NftFaucet/Services/InitializationService.cs index 4b35d82..009d0d1 100644 --- a/NftFaucet/Services/InitializationService.cs +++ b/NftFaucet/Services/InitializationService.cs @@ -43,8 +43,8 @@ public class InitializationService : IInitializationService _appState.PluginStorage.Contracts == null; _appState.PluginStorage.Networks ??= _pluginLoader.NetworkPlugins.SelectMany(x => x.Networks).Where(x => x != null).ToArray(); - _appState.PluginStorage.Providers ??= _pluginLoader.ProviderPlugins.Where(x => x != null).ToArray(); - _appState.PluginStorage.Uploaders ??= _pluginLoader.UploadPlugins.Where(x => x != null).ToArray(); + _appState.PluginStorage.Providers ??= _pluginLoader.ProviderPlugins.SelectMany(x => x.Providers).Where(x => x != null).ToArray(); + _appState.PluginStorage.Uploaders ??= _pluginLoader.UploaderPlugins.SelectMany(x => x.Uploaders).Where(x => x != null).ToArray(); _appState.PluginStorage.Contracts ??= _appState.PluginStorage.Networks.SelectMany(x => x.DeployedContracts).Where(x => x != null).ToArray(); if (isFirstRun) diff --git a/NftFaucet/Services/PluginLoader.cs b/NftFaucet/Services/PluginLoader.cs index 36614bc..b2ebdde 100644 --- a/NftFaucet/Services/PluginLoader.cs +++ b/NftFaucet/Services/PluginLoader.cs @@ -6,11 +6,12 @@ using NftFaucet.NetworkPlugins.Moonbeam; using NftFaucet.NetworkPlugins.Optimism; using NftFaucet.NetworkPlugins.Polygon; using NftFaucet.NetworkPlugins.Solana; +using NftFaucet.Plugins; using NftFaucet.Plugins.Models.Abstraction; using NftFaucet.ProviderPlugins.EthereumKeygen; +using NftFaucet.ProviderPlugins.Keygens; using NftFaucet.ProviderPlugins.Metamask; using NftFaucet.ProviderPlugins.Phantom; -using NftFaucet.ProviderPlugins.SolanaKeygen; using NftFaucet.UploadPlugins.Crust; using NftFaucet.UploadPlugins.Infura; using NftFaucet.UploadPlugins.NftStorage; @@ -31,18 +32,17 @@ public class PluginLoader new SolanaNetworkPlugin(), }; - public IReadOnlyCollection ProviderPlugins { get; } = new IProvider[] + public IReadOnlyCollection ProviderPlugins { get; } = new IProviderPlugin[] { - new MetamaskProvider(), - new EthereumKeygenProvider(), - new PhantomProvider(), - new SolanaKeygenProvider(), + new MetamaskProviderPlugin(), + new PhantomProviderPlugin(), + new KeygenProviderPlugin(), }; - public IReadOnlyCollection UploadPlugins { get; } = new IUploader[] + public IReadOnlyCollection UploaderPlugins { get; } = new IUploaderPlugin[] { - new InfuraUploader(), - new NftStorageUploader(), - new CrustUploader(), + new InfuraUploaderPlugin(), + new NftStorageUploaderPlugin(), + new CrustUploaderPlugin(), }; } diff --git a/plugins/network-plugins/NftFaucet.NetworkPlugins.Arbitrum/ArbitrumNetworkPlugin.cs b/plugins/network-plugins/NftFaucet.NetworkPlugins.Arbitrum/ArbitrumNetworkPlugin.cs index d80fdb4..bb1e9c9 100644 --- a/plugins/network-plugins/NftFaucet.NetworkPlugins.Arbitrum/ArbitrumNetworkPlugin.cs +++ b/plugins/network-plugins/NftFaucet.NetworkPlugins.Arbitrum/ArbitrumNetworkPlugin.cs @@ -1,4 +1,5 @@ using NftFaucet.NetworkPlugins.Arbitrum.Networks; +using NftFaucet.Plugins; using NftFaucet.Plugins.Models.Abstraction; namespace NftFaucet.NetworkPlugins.Arbitrum; diff --git a/plugins/network-plugins/NftFaucet.NetworkPlugins.Avalanche/AvalancheNetworkPlugin.cs b/plugins/network-plugins/NftFaucet.NetworkPlugins.Avalanche/AvalancheNetworkPlugin.cs index 49f461d..2f92619 100644 --- a/plugins/network-plugins/NftFaucet.NetworkPlugins.Avalanche/AvalancheNetworkPlugin.cs +++ b/plugins/network-plugins/NftFaucet.NetworkPlugins.Avalanche/AvalancheNetworkPlugin.cs @@ -1,4 +1,5 @@ using NftFaucet.NetworkPlugins.Avalanche.Networks; +using NftFaucet.Plugins; using NftFaucet.Plugins.Models.Abstraction; namespace NftFaucet.NetworkPlugins.Avalanche; diff --git a/plugins/network-plugins/NftFaucet.NetworkPlugins.BinanceSmartChain/BscNetworkPlugin.cs b/plugins/network-plugins/NftFaucet.NetworkPlugins.BinanceSmartChain/BscNetworkPlugin.cs index 9d715de..c059fe3 100644 --- a/plugins/network-plugins/NftFaucet.NetworkPlugins.BinanceSmartChain/BscNetworkPlugin.cs +++ b/plugins/network-plugins/NftFaucet.NetworkPlugins.BinanceSmartChain/BscNetworkPlugin.cs @@ -1,4 +1,5 @@ using NftFaucet.NetworkPlugins.BinanceSmartChain.Networks; +using NftFaucet.Plugins; using NftFaucet.Plugins.Models.Abstraction; namespace NftFaucet.NetworkPlugins.BinanceSmartChain; diff --git a/plugins/network-plugins/NftFaucet.NetworkPlugins.Ethereum/EthereumNetworkPlugin.cs b/plugins/network-plugins/NftFaucet.NetworkPlugins.Ethereum/EthereumNetworkPlugin.cs index 2b6d251..1eb92ac 100644 --- a/plugins/network-plugins/NftFaucet.NetworkPlugins.Ethereum/EthereumNetworkPlugin.cs +++ b/plugins/network-plugins/NftFaucet.NetworkPlugins.Ethereum/EthereumNetworkPlugin.cs @@ -1,4 +1,5 @@ using NftFaucet.NetworkPlugins.Ethereum.Networks; +using NftFaucet.Plugins; using NftFaucet.Plugins.Models.Abstraction; namespace NftFaucet.NetworkPlugins.Ethereum; diff --git a/plugins/network-plugins/NftFaucet.NetworkPlugins.Moonbeam/MoonbeamNetworkPlugin.cs b/plugins/network-plugins/NftFaucet.NetworkPlugins.Moonbeam/MoonbeamNetworkPlugin.cs index b69fcba..b86f0f9 100644 --- a/plugins/network-plugins/NftFaucet.NetworkPlugins.Moonbeam/MoonbeamNetworkPlugin.cs +++ b/plugins/network-plugins/NftFaucet.NetworkPlugins.Moonbeam/MoonbeamNetworkPlugin.cs @@ -1,4 +1,5 @@ using NftFaucet.NetworkPlugins.Moonbeam.Networks; +using NftFaucet.Plugins; using NftFaucet.Plugins.Models.Abstraction; namespace NftFaucet.NetworkPlugins.Moonbeam; diff --git a/plugins/network-plugins/NftFaucet.NetworkPlugins.Optimism/OptimismNetworkPlugin.cs b/plugins/network-plugins/NftFaucet.NetworkPlugins.Optimism/OptimismNetworkPlugin.cs index ab347e1..6fbcb56 100644 --- a/plugins/network-plugins/NftFaucet.NetworkPlugins.Optimism/OptimismNetworkPlugin.cs +++ b/plugins/network-plugins/NftFaucet.NetworkPlugins.Optimism/OptimismNetworkPlugin.cs @@ -1,4 +1,5 @@ using NftFaucet.NetworkPlugins.Optimism.Networks; +using NftFaucet.Plugins; using NftFaucet.Plugins.Models.Abstraction; namespace NftFaucet.NetworkPlugins.Optimism; diff --git a/plugins/network-plugins/NftFaucet.NetworkPlugins.Polygon/PolygonNetworkPlugin.cs b/plugins/network-plugins/NftFaucet.NetworkPlugins.Polygon/PolygonNetworkPlugin.cs index b313089..0df4608 100644 --- a/plugins/network-plugins/NftFaucet.NetworkPlugins.Polygon/PolygonNetworkPlugin.cs +++ b/plugins/network-plugins/NftFaucet.NetworkPlugins.Polygon/PolygonNetworkPlugin.cs @@ -1,4 +1,5 @@ using NftFaucet.NetworkPlugins.Polygon.Networks; +using NftFaucet.Plugins; using NftFaucet.Plugins.Models.Abstraction; namespace NftFaucet.NetworkPlugins.Polygon; diff --git a/plugins/network-plugins/NftFaucet.NetworkPlugins.Solana/SolanaNetworkPlugin.cs b/plugins/network-plugins/NftFaucet.NetworkPlugins.Solana/SolanaNetworkPlugin.cs index 206829e..05d7ee5 100644 --- a/plugins/network-plugins/NftFaucet.NetworkPlugins.Solana/SolanaNetworkPlugin.cs +++ b/plugins/network-plugins/NftFaucet.NetworkPlugins.Solana/SolanaNetworkPlugin.cs @@ -1,4 +1,5 @@ using NftFaucet.NetworkPlugins.Solana.Networks; +using NftFaucet.Plugins; using NftFaucet.Plugins.Models.Abstraction; namespace NftFaucet.NetworkPlugins.Solana; diff --git a/plugins/provider-plugins/NftFaucet.ProviderPlugins.EthereumKeygen/EthereumKey.cs b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/EthereumKey.cs similarity index 95% rename from plugins/provider-plugins/NftFaucet.ProviderPlugins.EthereumKeygen/EthereumKey.cs rename to plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/EthereumKey.cs index f1d139e..e52f2d1 100644 --- a/plugins/provider-plugins/NftFaucet.ProviderPlugins.EthereumKeygen/EthereumKey.cs +++ b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/EthereumKey.cs @@ -2,7 +2,7 @@ using Cryptography.ECDSA; using Nethereum.Hex.HexConvertors.Extensions; using Nethereum.Util; -namespace NftFaucet.ProviderPlugins.EthereumKeygen; +namespace NftFaucet.ProviderPlugins.Keygens; public class EthereumKey { diff --git a/plugins/provider-plugins/NftFaucet.ProviderPlugins.EthereumKeygen/EthereumKeygenProvider.cs b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/EthereumKeygenProvider.cs similarity index 99% rename from plugins/provider-plugins/NftFaucet.ProviderPlugins.EthereumKeygen/EthereumKeygenProvider.cs rename to plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/EthereumKeygenProvider.cs index 629ecdc..768145a 100644 --- a/plugins/provider-plugins/NftFaucet.ProviderPlugins.EthereumKeygen/EthereumKeygenProvider.cs +++ b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/EthereumKeygenProvider.cs @@ -14,7 +14,7 @@ using NftFaucet.Plugins.Models; using NftFaucet.Plugins.Models.Abstraction; using NftFaucet.Plugins.Models.Enums; -namespace NftFaucet.ProviderPlugins.EthereumKeygen; +namespace NftFaucet.ProviderPlugins.Keygens; public sealed class EthereumKeygenProvider : Provider { diff --git a/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/KeygenProviderPlugin.cs b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/KeygenProviderPlugin.cs new file mode 100644 index 0000000..52ec85a --- /dev/null +++ b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/KeygenProviderPlugin.cs @@ -0,0 +1,14 @@ +using NftFaucet.Plugins; +using NftFaucet.Plugins.Models.Abstraction; +using NftFaucet.ProviderPlugins.EthereumKeygen; + +namespace NftFaucet.ProviderPlugins.Keygens; + +public class KeygenProviderPlugin : IProviderPlugin +{ + public IReadOnlyCollection Providers { get; } = new IProvider[] + { + new EthereumKeygenProvider(), + new SolanaKeygenProvider(), + }; +} diff --git a/plugins/provider-plugins/NftFaucet.ProviderPlugins.EthereumKeygen/NftFaucet.ProviderPlugins.EthereumKeygen.csproj b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/NftFaucet.ProviderPlugins.Keygens.csproj similarity index 87% rename from plugins/provider-plugins/NftFaucet.ProviderPlugins.EthereumKeygen/NftFaucet.ProviderPlugins.EthereumKeygen.csproj rename to plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/NftFaucet.ProviderPlugins.Keygens.csproj index 90f846d..7e2757c 100644 --- a/plugins/provider-plugins/NftFaucet.ProviderPlugins.EthereumKeygen/NftFaucet.ProviderPlugins.EthereumKeygen.csproj +++ b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/NftFaucet.ProviderPlugins.Keygens.csproj @@ -12,6 +12,7 @@ + diff --git a/plugins/provider-plugins/NftFaucet.ProviderPlugins.SolanaKeygen/SolanaKey.cs b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/SolanaKey.cs similarity index 95% rename from plugins/provider-plugins/NftFaucet.ProviderPlugins.SolanaKeygen/SolanaKey.cs rename to plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/SolanaKey.cs index 3373d76..b851b09 100644 --- a/plugins/provider-plugins/NftFaucet.ProviderPlugins.SolanaKeygen/SolanaKey.cs +++ b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/SolanaKey.cs @@ -1,7 +1,7 @@ using Solnet.Wallet; using Solnet.Wallet.Bip39; -namespace NftFaucet.ProviderPlugins.SolanaKeygen; +namespace NftFaucet.ProviderPlugins.EthereumKeygen; public class SolanaKey { diff --git a/plugins/provider-plugins/NftFaucet.ProviderPlugins.SolanaKeygen/SolanaKeygenProvider.cs b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/SolanaKeygenProvider.cs similarity index 99% rename from plugins/provider-plugins/NftFaucet.ProviderPlugins.SolanaKeygen/SolanaKeygenProvider.cs rename to plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/SolanaKeygenProvider.cs index 225b430..c230010 100644 --- a/plugins/provider-plugins/NftFaucet.ProviderPlugins.SolanaKeygen/SolanaKeygenProvider.cs +++ b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Keygens/SolanaKeygenProvider.cs @@ -15,7 +15,7 @@ using Solnet.Rpc.Models; using Solnet.Rpc.Utilities; using Solnet.Wallet; -namespace NftFaucet.ProviderPlugins.SolanaKeygen; +namespace NftFaucet.ProviderPlugins.EthereumKeygen; public class SolanaKeygenProvider : Provider { diff --git a/plugins/provider-plugins/NftFaucet.ProviderPlugins.Metamask/MetamaskProviderPlugin.cs b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Metamask/MetamaskProviderPlugin.cs new file mode 100644 index 0000000..ea99470 --- /dev/null +++ b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Metamask/MetamaskProviderPlugin.cs @@ -0,0 +1,12 @@ +using NftFaucet.Plugins; +using NftFaucet.Plugins.Models.Abstraction; + +namespace NftFaucet.ProviderPlugins.Metamask; + +public class MetamaskProviderPlugin : IProviderPlugin +{ + public IReadOnlyCollection Providers { get; } = new IProvider[] + { + new MetamaskProvider(), + }; +} diff --git a/plugins/provider-plugins/NftFaucet.ProviderPlugins.Phantom/PhantomProviderPlugin.cs b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Phantom/PhantomProviderPlugin.cs new file mode 100644 index 0000000..c891e31 --- /dev/null +++ b/plugins/provider-plugins/NftFaucet.ProviderPlugins.Phantom/PhantomProviderPlugin.cs @@ -0,0 +1,12 @@ +using NftFaucet.Plugins; +using NftFaucet.Plugins.Models.Abstraction; + +namespace NftFaucet.ProviderPlugins.Phantom; + +public class PhantomProviderPlugin : IProviderPlugin +{ + public IReadOnlyCollection Providers { get; } = new IProvider[] + { + new PhantomProvider(), + }; +} diff --git a/plugins/provider-plugins/NftFaucet.ProviderPlugins.SolanaKeygen/NftFaucet.ProviderPlugins.SolanaKeygen.csproj b/plugins/provider-plugins/NftFaucet.ProviderPlugins.SolanaKeygen/NftFaucet.ProviderPlugins.SolanaKeygen.csproj deleted file mode 100644 index 2a9c51a..0000000 --- a/plugins/provider-plugins/NftFaucet.ProviderPlugins.SolanaKeygen/NftFaucet.ProviderPlugins.SolanaKeygen.csproj +++ /dev/null @@ -1,17 +0,0 @@ - - - - net6.0 - enable - disable - - - - - - - - - - - diff --git a/plugins/upload-plugins/NftFaucet.UploadPlugins.Crust/CrustUploaderPlugin.cs b/plugins/upload-plugins/NftFaucet.UploadPlugins.Crust/CrustUploaderPlugin.cs new file mode 100644 index 0000000..30f47b0 --- /dev/null +++ b/plugins/upload-plugins/NftFaucet.UploadPlugins.Crust/CrustUploaderPlugin.cs @@ -0,0 +1,12 @@ +using NftFaucet.Plugins; +using NftFaucet.Plugins.Models.Abstraction; + +namespace NftFaucet.UploadPlugins.Crust; + +public class CrustUploaderPlugin : IUploaderPlugin +{ + public IReadOnlyCollection Uploaders { get; } = new[] + { + new CrustUploader(), + }; +} diff --git a/plugins/upload-plugins/NftFaucet.UploadPlugins.Infura/InfuraUploaderPlugin.cs b/plugins/upload-plugins/NftFaucet.UploadPlugins.Infura/InfuraUploaderPlugin.cs new file mode 100644 index 0000000..1bebc9a --- /dev/null +++ b/plugins/upload-plugins/NftFaucet.UploadPlugins.Infura/InfuraUploaderPlugin.cs @@ -0,0 +1,12 @@ +using NftFaucet.Plugins; +using NftFaucet.Plugins.Models.Abstraction; + +namespace NftFaucet.UploadPlugins.Infura; + +public class InfuraUploaderPlugin : IUploaderPlugin +{ + public IReadOnlyCollection Uploaders { get; } = new[] + { + new InfuraUploader(), + }; +} diff --git a/plugins/upload-plugins/NftFaucet.UploadPlugins.NftStorage/NftStorageUploaderPlugin.cs b/plugins/upload-plugins/NftFaucet.UploadPlugins.NftStorage/NftStorageUploaderPlugin.cs new file mode 100644 index 0000000..f6c5548 --- /dev/null +++ b/plugins/upload-plugins/NftFaucet.UploadPlugins.NftStorage/NftStorageUploaderPlugin.cs @@ -0,0 +1,12 @@ +using NftFaucet.Plugins; +using NftFaucet.Plugins.Models.Abstraction; + +namespace NftFaucet.UploadPlugins.NftStorage; + +public class NftStorageUploaderPlugin : IUploaderPlugin +{ + public IReadOnlyCollection Uploaders { get; } = new[] + { + new NftStorageUploader(), + }; +}