diff --git a/app/MindWork AI Studio/Assistants/AssistantBase.razor b/app/MindWork AI Studio/Assistants/AssistantBase.razor index 38d4b8b8..1451da41 100644 --- a/app/MindWork AI Studio/Assistants/AssistantBase.razor +++ b/app/MindWork AI Studio/Assistants/AssistantBase.razor @@ -97,14 +97,14 @@ { case ButtonData buttonData when !string.IsNullOrWhiteSpace(buttonData.Tooltip): - + @buttonData.Text break; case ButtonData buttonData: - + @buttonData.Text break; diff --git a/app/MindWork AI Studio/Tools/ButtonData.cs b/app/MindWork AI Studio/Tools/ButtonData.cs index 3d05dee8..da0c69c3 100644 --- a/app/MindWork AI Studio/Tools/ButtonData.cs +++ b/app/MindWork AI Studio/Tools/ButtonData.cs @@ -1,6 +1,21 @@ namespace AIStudio.Tools; -public readonly record struct ButtonData(string Text, string Icon, Color Color, string Tooltip, Func AsyncAction) : IButtonData +public readonly record struct ButtonData(string Text, string Icon, Color Color, string Tooltip, Func AsyncAction, Func? DisabledActionParam) : IButtonData { public ButtonTypes Type => ButtonTypes.BUTTON; + + public Func DisabledAction + { + get + { + var data = this; + return () => + { + if (data.DisabledActionParam is null) + return false; + + return data.DisabledActionParam(); + }; + } + } } \ No newline at end of file