fix(uns): bind _filter + modal parent-ids as Razor expressions, not literals
v2-ci / build (push) Failing after 40s
v2-ci / unit-tests (tests/Core/ZB.MOM.WW.OtOpcUa.Cluster.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.ControlPlane.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Runtime.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Security.Tests) (push) Has been skipped
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.Host.IntegrationTests) (push) Has been skipped
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.IntegrationTests) (push) Has been skipped

GlobalUns passed string component params without an @ prefix
(Filter="_filter", ClusterId="_areaModalClusterId", etc.). Razor treats a
string-typed component-parameter value without @ as a LITERAL, so UnsTree.Filter
became the literal "_filter" and the modals received literal field-name strings
as their parent ids. The non-empty literal filter matched no node, so the tree
never rendered children beyond the enterprise roots; the modals would have created
children under a bogus cluster/area/line/equipment id.

Add @ to the six string-param bindings. Verified live in docker-dev: the full
Enterprise->Cluster->Area->Line->Equipment tree renders and an area created via the
modal persists with the correct ClusterId (MAIN). No unit test added — this is a
Razor binding issue not reachable without bUnit (not used in this project).
This commit is contained in:
Joseph Doherty
2026-06-08 15:15:46 -04:00
parent 8ba64b1d99
commit 14b469291a
@@ -38,7 +38,7 @@
else
{
<div style="padding:.5rem 1rem">
<UnsTree Roots="_roots" Filter="_filter"
<UnsTree Roots="_roots" Filter="@_filter"
OnToggleExpand="ToggleAsync"
OnAddChild="HandleAddChild"
OnAddVirtualTag="HandleAddVirtualTag"
@@ -50,7 +50,7 @@
<AreaModal Visible="_areaModalVisible"
IsNew="_areaModalIsNew"
ClusterId="_areaModalClusterId"
ClusterId="@_areaModalClusterId"
Existing="_areaModalExisting"
Clusters="ClusterOptions"
OnSaved="OnModalSavedAsync"
@@ -58,7 +58,7 @@
<LineModal Visible="_lineModalVisible"
IsNew="_lineModalIsNew"
UnsAreaId="_lineModalAreaId"
UnsAreaId="@_lineModalAreaId"
Existing="_lineModalExisting"
Areas="_lineModalAreaOptions"
OnSaved="OnModalSavedAsync"
@@ -66,7 +66,7 @@
<EquipmentModal Visible="_equipmentModalVisible"
IsNew="_equipmentModalIsNew"
UnsLineId="_equipmentModalLineId"
UnsLineId="@_equipmentModalLineId"
Existing="_equipmentModalExisting"
Lines="_equipmentModalLineOptions"
Drivers="_equipmentModalDriverOptions"
@@ -75,7 +75,7 @@
<TagModal Visible="_tagModalVisible"
IsNew="_tagModalIsNew"
EquipmentId="_tagModalEquipmentId"
EquipmentId="@_tagModalEquipmentId"
Existing="_tagModalExisting"
Drivers="_tagModalDriverOptions"
OnSaved="OnEquipmentChildModalSavedAsync"
@@ -83,7 +83,7 @@
<VirtualTagModal Visible="_vtagModalVisible"
IsNew="_vtagModalIsNew"
EquipmentId="_vtagModalEquipmentId"
EquipmentId="@_vtagModalEquipmentId"
Existing="_vtagModalExisting"
Scripts="_vtagModalScriptOptions"
OnSaved="OnEquipmentChildModalSavedAsync"