@using RobotNet.VDA5050.State @if (ShowNameCard) { Battery State } @if (BatteryState != null) { Charge: @BatteryState.BatteryCharge.ToString("F1")% Voltage: @BatteryState.BatteryVoltage?.ToString("F2") V Health: @BatteryState.BatteryHealth.ToString("F1")% Charging: @if (BatteryState.Charging) { Yes } else { No } @if (BatteryState.Reach > 0) { Reach: @BatteryState.Reach?.ToString("F0") m } } else { No battery data available } @code { [Parameter] public bool ShowNameCard { get; set; } = true; public BatteryState? BatteryState { get; set; } private Color GetBatteryColor(double charge) { if (charge > 50) return Color.Success; if (charge > 20) return Color.Warning; return Color.Error; } public void Update(BatteryState? batteryState) { BatteryState = batteryState; StateHasChanged(); } }