fix(adminui): confirm equipment-page and script deletes (R04 H1)

The equipment page's Remove reference / Delete virtual tag / Delete alarm row
buttons and the ScriptEdit Delete ran on the first click. They now go through
RawConfirmDialog, the same confirm /raw uses. The ScriptEdit change is limited
to the delete button and its dialog.

Refs #745
Claude-Session: https://claude.ai/code/session_01Ub9hGmYLQvn9XETzw7CMsT
This commit is contained in:
Joseph Doherty
2026-10-22 17:53:06 -04:00
parent e16146fa0c
commit a4cdedc31c
3 changed files with 98 additions and 4 deletions
@@ -11,6 +11,7 @@
@using System.Text
@using ZB.MOM.WW.OtOpcUa.Configuration
@using ZB.MOM.WW.OtOpcUa.Configuration.Entities
@using ZB.MOM.WW.OtOpcUa.AdminUI.Components.Shared.Raw
@inject IDbContextFactory<OtOpcUaConfigDbContext> DbFactory
@inject NavigationManager Nav
@@ -69,9 +70,14 @@ else
<button type="submit" class="btn btn-primary" disabled="@_busy">@(IsNew ? "Create" : "Save changes")</button>
<a href="/scripts" class="btn btn-outline-secondary">Cancel</a>
</div>
@if (!IsNew) { <button type="button" class="btn btn-outline-danger ms-auto" @onclick="DeleteAsync" disabled="@_busy">Delete</button> }
@if (!IsNew) { <button type="button" class="btn btn-outline-danger ms-auto" @onclick="() => _confirmDeleteVisible = true" disabled="@_busy">Delete</button> }
</div>
</EditForm>
@* R04 H1: the delete used to run on the first click. *@
<RawConfirmDialog @bind-Visible="_confirmDeleteVisible" Title="Delete script"
Message="@($"Delete the script '{_existing?.Name ?? _form.Name}'? This cannot be undone.")"
OnConfirm="DeleteAsync" />
}
</PageErrorBoundary>
@@ -84,6 +90,7 @@ else
private bool _loaded;
private bool _busy;
private string? _error;
private bool _confirmDeleteVisible;
protected override async Task OnInitializedAsync()
{