public sealed class WaterZoneFactsA water panel's derived-numbers block.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
The part is WaterZoneFacts.vxml, which holds the argument.
⚠ One type under two tags, and it used to be two types. The body panel wants the same block under water-facts and without a refusal, and a component's host tag was a compile-time header — so the ledger recorded "the same part under another name" as unsayable and this file declared a second, near-identical class. What was missing was a spelling, not a mechanism: UiDocument.Adopt has always taken the tag and only fallen back to TagName, so panel.Add<WaterZoneFacts>("water-facts") was already legal C# and markup now says the same thing as tag="water-facts".
⚠ The refusal row is absent rather than suppressed. A panel that never passes a reason leaves the @if arm unbuilt, so the body panel's tree is what the second type produced, element for element — which is what WaterFactsTests asserts by dumping both.
Fields and properties (3)
protected override string TagNamepublic IReadOnlyList<WaterFactLine> FactsWhat the block says, in order.
public string RefusedAnd what it says the settings refuse, or empty.
Methods (3)
protected override void OnCreated()protected override void OnRemoved()public void Show(IEnumerable<(string Label, string Value)> facts, string? why)Replaces the block.
Used by (2)
- WaterFactsTestsVixen.Editor.Water.Tests
- WaterModuleVixen.Editor.Water