diff --git a/app/MindWork AI Studio/Assistants/EDI/AssistantEDI.razor b/app/MindWork AI Studio/Assistants/EDI/AssistantEDI.razor
index 52412baf..dd994681 100644
--- a/app/MindWork AI Studio/Assistants/EDI/AssistantEDI.razor
+++ b/app/MindWork AI Studio/Assistants/EDI/AssistantEDI.razor
@@ -18,4 +18,17 @@
+
+
+ @foreach (var language in Enum.GetValues())
+ {
+ @language.Name()
+ }
+
+ @if (this.selectedProgrammingLanguage is ProgrammingLanguages.OTHER)
+ {
+
+ }
+
+
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/EDI/AssistantEDI.razor.cs b/app/MindWork AI Studio/Assistants/EDI/AssistantEDI.razor.cs
index b1809517..267c86b7 100644
--- a/app/MindWork AI Studio/Assistants/EDI/AssistantEDI.razor.cs
+++ b/app/MindWork AI Studio/Assistants/EDI/AssistantEDI.razor.cs
@@ -1,7 +1,5 @@
using AIStudio.Chat;
-using Microsoft.AspNetCore.Components;
-
namespace AIStudio.Assistants.EDI;
public partial class AssistantEDI : AssistantBaseCore
@@ -43,4 +41,29 @@ public partial class AssistantEDI : AssistantBaseCore
{
return false;
}
+
+ private ProgrammingLanguages selectedProgrammingLanguage = ProgrammingLanguages.NONE;
+ private string otherProgrammingLanguage = string.Empty;
+
+ private string? ValidateProgrammingLanguage(ProgrammingLanguages language)
+ {
+ if (language == ProgrammingLanguages.OTHER)
+ return null;
+
+ if (language == ProgrammingLanguages.NONE)
+ return "Please select a programming language for the EDI server.";
+
+ return null;
+ }
+
+ private string? ValidateOtherLanguage(string language)
+ {
+ if(this.selectedProgrammingLanguage != ProgrammingLanguages.OTHER)
+ return null;
+
+ if(string.IsNullOrWhiteSpace(language))
+ return "Please specify the custom programming language for the EDI server.";
+
+ return null;
+ }
}
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/EDI/ProgrammingLanguages.cs b/app/MindWork AI Studio/Assistants/EDI/ProgrammingLanguages.cs
new file mode 100644
index 00000000..c39f00d7
--- /dev/null
+++ b/app/MindWork AI Studio/Assistants/EDI/ProgrammingLanguages.cs
@@ -0,0 +1,20 @@
+namespace AIStudio.Assistants.EDI;
+
+public enum ProgrammingLanguages
+{
+ NONE,
+
+ C,
+ CPP,
+ CSHARP,
+ GO,
+ JAVA,
+ JAVASCRIPT,
+ JULIA,
+ MATLAB,
+ PHP,
+ PYTHON,
+ RUST,
+
+ OTHER,
+}
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Assistants/EDI/ProgrammingLanguagesExtensions.cs b/app/MindWork AI Studio/Assistants/EDI/ProgrammingLanguagesExtensions.cs
new file mode 100644
index 00000000..e839ac22
--- /dev/null
+++ b/app/MindWork AI Studio/Assistants/EDI/ProgrammingLanguagesExtensions.cs
@@ -0,0 +1,24 @@
+namespace AIStudio.Assistants.EDI;
+
+public static class ProgrammingLanguagesExtensions
+{
+ public static string Name(this ProgrammingLanguages language) => language switch
+ {
+ ProgrammingLanguages.NONE => "None",
+
+ ProgrammingLanguages.C => "C",
+ ProgrammingLanguages.CPP => "C++",
+ ProgrammingLanguages.CSHARP => "C#",
+ ProgrammingLanguages.GO => "Go",
+ ProgrammingLanguages.JAVA => "Java",
+ ProgrammingLanguages.JAVASCRIPT => "JavaScript",
+ ProgrammingLanguages.JULIA => "Julia",
+ ProgrammingLanguages.MATLAB => "MATLAB",
+ ProgrammingLanguages.PHP => "PHP",
+ ProgrammingLanguages.PYTHON => "Python",
+ ProgrammingLanguages.RUST => "Rust",
+
+ ProgrammingLanguages.OTHER => "Other",
+ _ => "Unknown"
+ };
+}
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Settings/DataModel/DataEDI.cs b/app/MindWork AI Studio/Settings/DataModel/DataEDI.cs
index 8aa119a5..dcfd8fde 100644
--- a/app/MindWork AI Studio/Settings/DataModel/DataEDI.cs
+++ b/app/MindWork AI Studio/Settings/DataModel/DataEDI.cs
@@ -1,4 +1,4 @@
-using AIStudio.Assistants.Coding;
+using AIStudio.Assistants.EDI;
using AIStudio.Provider;
namespace AIStudio.Settings.DataModel;
@@ -13,7 +13,7 @@ public sealed class DataEDI
///
/// Preselect the language for implementing the EDI?
///
- public CommonCodingLanguages PreselectedProgrammingLanguage { get; set; }
+ public ProgrammingLanguages PreselectedProgrammingLanguage { get; set; }
///
/// Do you want to preselect any other language?