mirror of
https://github.com/home-assistant/core.git
synced 2025-10-28 04:59:31 +00:00
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Norbert Rittel <norbert@rittel.de> Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
86 lines
2.8 KiB
Python
86 lines
2.8 KiB
Python
"""Utils functions."""
|
|
|
|
from enum import Enum
|
|
|
|
|
|
class DeviceType(Enum):
|
|
"""Device types enum."""
|
|
|
|
GENERIC = "mdi:lan-connect"
|
|
MOBILE = PHONE = "mdi:cellphone"
|
|
TABLET = IPOD = EREADER = "mdi:tablet"
|
|
WATCH = WEARABLE = "mdi:watch"
|
|
CAR = AUTOMOTIVE = "mdi:car-back"
|
|
MEDIA_PLAYER = "mdi:volume-high"
|
|
TELEVISION = "mdi:television"
|
|
GAME_CONSOLE = "mdi:nintendo-game-boy"
|
|
STREAMING_DONGLE = "mdi:cast"
|
|
LOUDSPEAKER = SOUND_SYSTEM = STB = SATELLITE = MUSIC = "mdi:speaker"
|
|
DISC_PLAYER = "mdi:disk-player"
|
|
REMOTE_CONTROL = "mdi:remote-tv"
|
|
RADIO = "mdi:radio"
|
|
PHOTO_CAMERA = PHOTOS = "mdi:camera"
|
|
MICROPHONE = VOICE_CONTROL = "mdi:microphone"
|
|
PROJECTOR = "mdi:projector"
|
|
COMPUTER = DESKTOP = "mdi:desktop-tower"
|
|
LAPTOP = "mdi:laptop"
|
|
PRINTER = "mdi:printer"
|
|
SCANNER = "mdi:scanner"
|
|
POS = "mdi:printer-pos"
|
|
CLOCK = "mdi:clock"
|
|
BARCODE = "mdi:barcode"
|
|
SURVEILLANCE_CAMERA = BABY_MONITOR = PET_MONITOR = "mdi:cctv"
|
|
POE_PLUG = HEALTH_MONITOR = SMART_HOME = SMART_METER = APPLIANCE = SLEEP = (
|
|
"mdi:home-automation"
|
|
)
|
|
SMART_PLUG = "mdi:power-plug"
|
|
LIGHT = "mdi:lightbulb"
|
|
THERMOSTAT = HEATING = "mdi:home-thermometer"
|
|
POWER_SYSTEM = ENERGY = "mdi:lightning-bolt"
|
|
SOLAR_PANEL = "mdi:solar-power"
|
|
WASHER = "mdi:washing-machine"
|
|
FRIDGE = "mdi:fridge"
|
|
CLEANER = "mdi:vacuum"
|
|
GARAGE = "mdi:garage"
|
|
SPRINKLER = "mdi:sprinkler"
|
|
BELL = "mdi:doorbell"
|
|
KEY_LOCK = "mdi:lock-smart"
|
|
CONTROL_PANEL = SMART_CONTROLLER = "mdi:alarm-panel"
|
|
SCALE = "mdi:scale-bathroom"
|
|
TOY = "mdi:teddy-bear"
|
|
ROBOT = "mdi:robot"
|
|
WEATHER = "mdi:weather-cloudy"
|
|
ALARM = "mdi:alarm-light"
|
|
MOTION_DETECTOR = "mdi:motion-sensor"
|
|
SMOKE = HUMIDITY = SENSOR = DOMOTZ_BOX = FINGBOX = "mdi:smoke-detector"
|
|
ROUTER = MODEM = GATEWAY = FIREWALL = VPN = SMALL_CELL = "mdi:router-network"
|
|
WIFI = WIFI_EXTENDER = "mdi:wifi"
|
|
NAS_STORAGE = "mdi:nas"
|
|
SWITCH = "mdi:switch"
|
|
USB = "mdi:usb"
|
|
CLOUD = "mdi:cloud"
|
|
BATTERY = "mdi:battery"
|
|
NETWORK_APPLIANCE = "mdi:network"
|
|
VIRTUAL_MACHINE = MAIL_SERVER = FILE_SERVER = PROXY_SERVER = WEB_SERVER = (
|
|
DOMAIN_SERVER
|
|
) = COMMUNICATION = "mdi:monitor"
|
|
SERVER = "mdi:server"
|
|
TERMINAL = "mdi:console"
|
|
DATABASE = "mdi:database"
|
|
RASPBERRY = ARDUINO = "mdi:raspberry-pi"
|
|
PROCESSOR = CIRCUIT_CARD = RFID = "mdi:chip"
|
|
INDUSTRIAL = "mdi:factory"
|
|
MEDICAL = "mdi:medical-bag"
|
|
VOIP = CONFERENCING = "mdi:phone-voip"
|
|
FITNESS = "mdi:dumbbell"
|
|
POOL = "mdi:pool"
|
|
SECURITY_SYSTEM = "mdi:security"
|
|
|
|
|
|
def get_icon_from_type(type: str) -> str:
|
|
"""Return the right icon based on the type."""
|
|
try:
|
|
return DeviceType[type].value
|
|
except (ValueError, KeyError):
|
|
return "mdi:lan-connect"
|