From 89e244d4dc1394981cb36814dd22fa4290bdda19 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Mon, 6 Sep 2021 11:37:57 +0300 Subject: [PATCH] Studio: IModuleInstallingOptionProvider --- .../IModuleInstallingOptionProvider.cs | 10 +++++++ .../Options/ModuleInstallingOption.cs | 28 +++++++++++++++++++ .../Options/ModuleInstallingOptionType.cs | 10 +++++++ 3 files changed, 48 insertions(+) create mode 100644 studio/src/Volo.Abp.Studio.ModuleInstaller.Abstractions/Volo/Abp/Studio/ModuleInstalling/Options/IModuleInstallingOptionProvider.cs create mode 100644 studio/src/Volo.Abp.Studio.ModuleInstaller.Abstractions/Volo/Abp/Studio/ModuleInstalling/Options/ModuleInstallingOption.cs create mode 100644 studio/src/Volo.Abp.Studio.ModuleInstaller.Abstractions/Volo/Abp/Studio/ModuleInstalling/Options/ModuleInstallingOptionType.cs diff --git a/studio/src/Volo.Abp.Studio.ModuleInstaller.Abstractions/Volo/Abp/Studio/ModuleInstalling/Options/IModuleInstallingOptionProvider.cs b/studio/src/Volo.Abp.Studio.ModuleInstaller.Abstractions/Volo/Abp/Studio/ModuleInstalling/Options/IModuleInstallingOptionProvider.cs new file mode 100644 index 0000000000..ac557d5a51 --- /dev/null +++ b/studio/src/Volo.Abp.Studio.ModuleInstaller.Abstractions/Volo/Abp/Studio/ModuleInstalling/Options/IModuleInstallingOptionProvider.cs @@ -0,0 +1,10 @@ +using System.Collections.Generic; +using System.Threading.Tasks; + +namespace Volo.Abp.Studio.ModuleInstalling.Options +{ + public interface IModuleInstallingOptionProvider + { + Task> GetAsync(); + } +} diff --git a/studio/src/Volo.Abp.Studio.ModuleInstaller.Abstractions/Volo/Abp/Studio/ModuleInstalling/Options/ModuleInstallingOption.cs b/studio/src/Volo.Abp.Studio.ModuleInstaller.Abstractions/Volo/Abp/Studio/ModuleInstalling/Options/ModuleInstallingOption.cs new file mode 100644 index 0000000000..f8725e1e93 --- /dev/null +++ b/studio/src/Volo.Abp.Studio.ModuleInstaller.Abstractions/Volo/Abp/Studio/ModuleInstalling/Options/ModuleInstallingOption.cs @@ -0,0 +1,28 @@ +using System.Collections.Generic; +using JetBrains.Annotations; + +namespace Volo.Abp.Studio.ModuleInstalling.Options +{ + public class ModuleInstallingOption + { + public string Name { get; set; } + + public string Description { get; set; } + + public ModuleInstallingOptionType Type { get; set; } + + public Dictionary Values { get; set; } + + public ModuleInstallingOption( + [NotNull] string name, + [NotNull] string description, + [NotNull] ModuleInstallingOptionType type, + [CanBeNull] Dictionary values = null) + { + Name = Check.NotNullOrWhiteSpace(name, nameof(name)); + Description = Check.NotNullOrWhiteSpace(description, nameof(description)); + Type = type; + Values = values ?? new Dictionary(); + } + } +} \ No newline at end of file diff --git a/studio/src/Volo.Abp.Studio.ModuleInstaller.Abstractions/Volo/Abp/Studio/ModuleInstalling/Options/ModuleInstallingOptionType.cs b/studio/src/Volo.Abp.Studio.ModuleInstaller.Abstractions/Volo/Abp/Studio/ModuleInstalling/Options/ModuleInstallingOptionType.cs new file mode 100644 index 0000000000..140b1339df --- /dev/null +++ b/studio/src/Volo.Abp.Studio.ModuleInstaller.Abstractions/Volo/Abp/Studio/ModuleInstalling/Options/ModuleInstallingOptionType.cs @@ -0,0 +1,10 @@ +namespace Volo.Abp.Studio.ModuleInstalling.Options +{ + public enum ModuleInstallingOptionType + { + NotSpecified, + Checkbox, + FreeText, + ComboBox + } +} \ No newline at end of file