LANCommander/LANCommander.UI/Components/Chat/ChatMessageInput.razor
Pat Hartl a92c7be6ec Enhance chat list
- Added SafeAvatar component for retrieving user avatars with fallback to initials
- Added a title/name for chat threads
- Moved chat input to a separate component
2025-11-03 23:27:05 -06:00

39 lines
No EOL
860 B
Text

@namespace LANCommander.UI.Components
<TextArea
@ref="_textArea"
Disabled="_sendingMessage"
MinRows="1"
AutoSize="true"
BindOnInput
OnPressEnter="SendMessage"
@bind-Value="_contents">
</TextArea>
@code {
[Parameter] public EventCallback<string> OnSendMessage { get; set; }
TextArea _textArea;
string _contents;
bool _sendingMessage;
async Task SendMessage(PressEnterEventArgs args)
{
if (!args.ShiftKey)
{
args.PreventLineBreak();
_sendingMessage = true;
if (OnSendMessage.HasDelegate)
await OnSendMessage.InvokeAsync(_contents);
_contents = String.Empty;
_sendingMessage = false;
await Task.Yield();
await InvokeAsync(StateHasChanged);
}
}
}