Better move error visibility

This commit is contained in:
2024-11-03 14:36:37 -06:00
parent 7258ac29a0
commit 8a415a6c9d
7 changed files with 148 additions and 29 deletions

View File

@@ -0,0 +1,39 @@
@using System.Timers
<div class="TemporaryModal PrimaryTheme ThemeVariant--Contrast">
<div class="content">
@ChildContent
</div>
<button class="close" @onclick="OnClickClose">X</button>
<div class="countdown" style="--timeToClose: @TimeToClose">
<div class="time-background">
<div class="time"></div>
</div>
<div class="time-helper-text">This message will close soon.</div>
</div>
</div>
@code {
[Parameter][EditorRequired] public RenderFragment? ChildContent { get; set; }
[Parameter][EditorRequired] public EventCallback OnClickClose { get; set; }
[Parameter] public int SecondsUntilClose { get; set; } = 3;
private string TimeToClose => $"{SecondsUntilClose}s";
private System.Timers.Timer closingTimer = new System.Timers.Timer();
protected override void OnParametersSet()
{
closingTimer = new System.Timers.Timer(TimeSpan.FromSeconds(SecondsUntilClose).TotalMilliseconds)
{
AutoReset = false
};
closingTimer.Elapsed += new System.Timers.ElapsedEventHandler(OnTimerElapsed);
closingTimer.Start();
}
private void OnTimerElapsed(object? source, ElapsedEventArgs elapsedEventArgs)
{
OnClickClose.InvokeAsync();
}
}