From 8408d25ceff9e74d7a81dc819d93a467047d9bac Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Sun, 12 Sep 2021 01:00:37 -0700 Subject: [PATCH] Clean up ha state label badge (#10020) --- src/components/entity/ha-state-label-badge.ts | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/src/components/entity/ha-state-label-badge.ts b/src/components/entity/ha-state-label-badge.ts index 644c3afb32..365e19c0be 100644 --- a/src/components/entity/ha-state-label-badge.ts +++ b/src/components/entity/ha-state-label-badge.ts @@ -106,19 +106,24 @@ export class HaStateLabelBadge extends LitElement { private _computeValue(domain: string, entityState: HassEntity) { switch (domain) { + case "alarm_control_panel": case "binary_sensor": case "device_tracker": case "person": - case "updater": + case "scene": case "sun": - case "alarm_control_panel": case "timer": + case "updater": return null; + // @ts-expect-error we don't break and go to default case "sensor": + if (entityState.attributes.device_class === "moon__phase") { + return null; + } + // eslint-disable-next-line: disable=no-fallthrough default: - return entityState.attributes.device_class === "moon__phase" - ? null - : entityState.state === UNKNOWN + return entityState.state === UNKNOWN || + entityState.state === UNAVAILABLE ? "-" : entityState.attributes.unit_of_measurement ? formatNumber(entityState.state, this.hass!.locale) @@ -160,16 +165,19 @@ export class HaStateLabelBadge extends LitElement { case "device_tracker": case "updater": case "person": + case "scene": case "sun": return stateIcon(entityState); case "timer": return entityState.state === "active" ? "hass:timer-outline" : "hass:timer-off-outline"; - default: - return entityState?.attributes.device_class === "moon__phase" + case "sensor": + return entityState.attributes.device_class === "moon__phase" ? stateIcon(entityState) : null; + default: + return null; } }