fix(adminui): DriverBrowseTree uses local field, not parameter mutation

This commit is contained in:
Joseph Doherty
2026-05-28 16:18:58 -04:00
parent 7c9621040e
commit e439100937
@@ -37,6 +37,12 @@
private bool _loading = true;
private string? _error;
private List<TreeItem>? _roots;
private string _selectedNodeIdLocal = "";
protected override void OnParametersSet()
{
_selectedNodeIdLocal = SelectedNodeId ?? "";
}
protected override async Task OnInitializedAsync()
{
@@ -76,14 +82,14 @@
private async Task SelectAsync(TreeItem item)
{
SelectedNodeId = item.Node.NodeId;
_selectedNodeIdLocal = item.Node.NodeId;
await OnNodeSelected.InvokeAsync(item.Node);
}
private RenderFragment RenderNode(TreeItem item, int depth) => __builder =>
{
var indent = $"padding-left:{depth * 18}px";
var selectedCls = SelectedNodeId == item.Node.NodeId ? "bg-primary-subtle" : "";
var selectedCls = _selectedNodeIdLocal == item.Node.NodeId ? "bg-primary-subtle" : "";
<div class="d-flex align-items-center gap-1 py-1 @selectedCls" style="@indent">
@if (item.Node.Kind == BrowseNodeKind.Folder && item.Node.HasChildrenHint)
{