use enum for MessageStyle

This commit is contained in:
sbwalker
2025-09-16 11:16:23 -04:00
parent 188d3b42d8
commit 880a6e43d1
5 changed files with 30 additions and 21 deletions

View File

@ -4,7 +4,7 @@
@if (!string.IsNullOrEmpty(Message)) @if (!string.IsNullOrEmpty(Message))
{ {
@if (_action == "Alert") @if (_style == MessageStyle.Alert)
{ {
<div class="@_classname alert-dismissible fade show mb-3" role="alert"> <div class="@_classname alert-dismissible fade show mb-3" role="alert">
@((MarkupString)Message) @((MarkupString)Message)
@ -26,7 +26,7 @@
</div> </div>
} }
@if (_action == "Toast") @if (_style == MessageStyle.Toast)
{ {
<div class="app-modulemessage-toast bottom-0 end-0"> <div class="app-modulemessage-toast bottom-0 end-0">
<div class="@_classname alert-dismissible fade show mb-3" role="alert"> <div class="@_classname alert-dismissible fade show mb-3" role="alert">
@ -54,7 +54,7 @@
@code { @code {
private string _message = string.Empty; private string _message = string.Empty;
private string _classname = string.Empty; private string _classname = string.Empty;
private string _action = string.Empty; private MessageStyle _style;
[Parameter] [Parameter]
public string Message { get; set; } public string Message { get; set; }
@ -63,7 +63,7 @@
public MessageType Type { get; set; } public MessageType Type { get; set; }
[Parameter] [Parameter]
public string Action { get; set; } // Alert (default) or Toast public MessageStyle Style { get; set; } = MessageStyle.Alert;
[Parameter] [Parameter]
public RenderModeBoundary Parent { get; set; } public RenderModeBoundary Parent { get; set; }
@ -74,11 +74,10 @@
if (!string.IsNullOrEmpty(_message)) if (!string.IsNullOrEmpty(_message))
{ {
_classname = GetMessageType(Type); _classname = GetMessageType(Type);
_action = Action; _style = Style;
if (string.IsNullOrEmpty(_action)) _action = "Toast"; // default
if (Type == MessageType.Error) if (Type == MessageType.Error)
{ {
_action = "Alert"; // errors should always be displayed as alerts _style = MessageStyle.Alert; // errors should always be displayed as alerts
} }
} }
} }

View File

@ -0,0 +1,8 @@
namespace Oqtane.Modules
{
public enum MessageStyle
{
Alert,
Toast
}
}

View File

@ -379,17 +379,17 @@ namespace Oqtane.Modules
public void AddModuleMessage(string message, MessageType type, string position) public void AddModuleMessage(string message, MessageType type, string position)
{ {
AddModuleMessage(message, type, "top", ""); AddModuleMessage(message, type, position, MessageStyle.Alert);
} }
public void AddModuleMessage(string message, string action, MessageType type) public void AddModuleMessage(string message, MessageType type, MessageStyle style)
{ {
AddModuleMessage(message, type, "top", action); AddModuleMessage(message, type, "top", style);
} }
public void AddModuleMessage(string message, MessageType type, string position, string action) public void AddModuleMessage(string message, MessageType type, string position, MessageStyle style)
{ {
RenderModeBoundary.AddModuleMessage(message, type, position, action); RenderModeBoundary.AddModuleMessage(message, type, position, style);
} }
public void ClearModuleMessage() public void ClearModuleMessage()

View File

@ -12,7 +12,7 @@
{ {
@if (!string.IsNullOrEmpty(_messageContent) && _messagePosition == "top") @if (!string.IsNullOrEmpty(_messageContent) && _messagePosition == "top")
{ {
<ModuleMessage Message="@_messageContent" Type="@_messageType" Parent="@this" Action="@_action" /> <ModuleMessage Message="@_messageContent" Type="@_messageType" Parent="@this" Style="@_messageStyle" />
} }
@DynamicComponent @DynamicComponent
@if (_progressIndicator) @if (_progressIndicator)
@ -21,7 +21,7 @@
} }
@if (!string.IsNullOrEmpty(_messageContent) && _messagePosition == "bottom") @if (!string.IsNullOrEmpty(_messageContent) && _messagePosition == "bottom")
{ {
<ModuleMessage Message="@_messageContent" Type="@_messageType" Parent="@this" Action="@_action" /> <ModuleMessage Message="@_messageContent" Type="@_messageType" Parent="@this" Style="@_messageStyle" />
} }
} }
} }
@ -45,7 +45,7 @@
private string _messageContent; private string _messageContent;
private MessageType _messageType; private MessageType _messageType;
private string _messagePosition; private string _messagePosition;
private string _action; private MessageStyle _messageStyle;
private bool _progressIndicator = false; private bool _progressIndicator = false;
private string _error; private string _error;
@ -88,6 +88,7 @@
_messageContent = string.Format(Localizer["Error.Module.InvalidName"], Utilities.GetTypeNameLastSegment(ModuleState.ModuleType, 0)); _messageContent = string.Format(Localizer["Error.Module.InvalidName"], Utilities.GetTypeNameLastSegment(ModuleState.ModuleType, 0));
_messageType = MessageType.Error; _messageType = MessageType.Error;
_messagePosition = "top"; _messagePosition = "top";
_messageStyle = MessageStyle.Alert;
} }
} }
else else
@ -95,6 +96,7 @@
_messageContent = string.Format(Localizer["Error.Module.InvalidType"], ModuleState.ModuleDefinitionName); _messageContent = string.Format(Localizer["Error.Module.InvalidType"], ModuleState.ModuleDefinitionName);
_messageType = MessageType.Error; _messageType = MessageType.Error;
_messagePosition = "top"; _messagePosition = "top";
_messageStyle = MessageStyle.Alert;
} }
} }
} }
@ -106,22 +108,22 @@
public void AddModuleMessage(string message, MessageType type, string position) public void AddModuleMessage(string message, MessageType type, string position)
{ {
AddModuleMessage(message, type, "top", ""); AddModuleMessage(message, type, position, MessageStyle.Alert);
} }
public void AddModuleMessage(string message, string action, MessageType type) public void AddModuleMessage(string message, MessageType type, MessageStyle style)
{ {
AddModuleMessage(message, type, "top", action); AddModuleMessage(message, type, "top", style);
} }
public void AddModuleMessage(string message, MessageType type, string position, string action) public void AddModuleMessage(string message, MessageType type, string position, MessageStyle style)
{ {
if (message != _messageContent || type != _messageType || position != _messagePosition || action != _action) if (message != _messageContent || type != _messageType || position != _messagePosition || style != _messageStyle)
{ {
_messageContent = message; _messageContent = message;
_messageType = type; _messageType = type;
_messagePosition = position; _messagePosition = position;
_action = action; _messageStyle = style;
_progressIndicator = false; _progressIndicator = false;
StateHasChanged(); StateHasChanged();