diff --git a/src/common/entity/domain_icon.ts b/src/common/entity/domain_icon.ts index 2a0c3031b3..bab18abb71 100644 --- a/src/common/entity/domain_icon.ts +++ b/src/common/entity/domain_icon.ts @@ -1,30 +1,33 @@ import { mdiAccount, mdiAccountArrowRight, - mdiAirHumidifierOff, mdiAirHumidifier, - mdiFlash, + mdiAirHumidifierOff, mdiBluetooth, mdiBluetoothConnect, + mdiCalendar, + mdiCast, + mdiCastConnected, + mdiClock, + mdiEmoticonDead, + mdiFlash, + mdiGestureTapButton, mdiLanConnect, mdiLanDisconnect, - mdiLockOpen, + mdiLock, mdiLockAlert, mdiLockClock, - mdiLock, - mdiCastConnected, - mdiCast, - mdiEmoticonDead, + mdiLockOpen, + mdiPackageUp, mdiPowerPlug, mdiPowerPlugOff, + mdiRestart, mdiSleep, mdiTimerSand, mdiToggleSwitch, mdiToggleSwitchOff, - mdiZWave, - mdiClock, - mdiCalendar, mdiWeatherNight, + mdiZWave, } from "@mdi/js"; import { HassEntity } from "home-assistant-js-websocket"; /** @@ -52,6 +55,16 @@ export const domainIcon = ( case "binary_sensor": return binarySensorIcon(compareState, stateObj); + case "button": + switch (stateObj?.attributes.device_class) { + case "restart": + return mdiRestart; + case "update": + return mdiPackageUp; + default: + return mdiGestureTapButton; + } + case "cover": return coverIcon(compareState, stateObj); diff --git a/src/util/hass-attributes-util.ts b/src/util/hass-attributes-util.ts index 807bf40215..a87c8b02aa 100644 --- a/src/util/hass-attributes-util.ts +++ b/src/util/hass-attributes-util.ts @@ -39,6 +39,7 @@ const hassAttributeUtil = { "vibration", "window", ], + button: ["restart", "update"], cover: [ "awning", "blind",