diff --git a/apps/nspanel-lovelace-ui/luibackend/icon_mapping.py b/apps/nspanel-lovelace-ui/luibackend/icon_mapping.py index 2c343cdc..232c8190 100644 --- a/apps/nspanel-lovelace-ui/luibackend/icon_mapping.py +++ b/apps/nspanel-lovelace-ui/luibackend/icon_mapping.py @@ -6898,6 +6898,8 @@ icons = { } def get_icon_id(ma_name): + if "text:" in ma_name: + return ma_name.replace("text:","") ma_name = ma_name.replace("mdi:","") if ma_name in icons: return icons[ma_name] diff --git a/apps/nspanel-lovelace-ui/luibackend/icons.py b/apps/nspanel-lovelace-ui/luibackend/icons.py index 851ebdf5..61c4ff3e 100644 --- a/apps/nspanel-lovelace-ui/luibackend/icons.py +++ b/apps/nspanel-lovelace-ui/luibackend/icons.py @@ -114,7 +114,13 @@ def map_to_mdi_name(ha_type, state=None, device_class=None, cardType=None): def get_icon_id_ha(ha_type, state=None, device_class=None, overwrite=None): if overwrite is not None: - return get_icon_id(overwrite) + if type(overwrite) is str: + return get_icon_id(overwrite) + if type(overwrite) is dict: + for overwrite_state, overwrite_icon in d.items(): + if overwrite_state == state: + return get_icon_id(overwrite_icon) + return get_icon_id(map_to_mdi_name(ha_type, state, device_class)) def get_action_id_ha(ha_type, action, device_class=None, overwrite=None):