mirror of
https://github.com/joBr99/nspanel-lovelace-ui.git
synced 2025-12-21 15:04:24 +01:00
some fixes
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
# https://developers.home-assistant.io/docs/add-ons/configuration#add-on-config
|
# https://developers.home-assistant.io/docs/add-ons/configuration#add-on-config
|
||||||
name: NSPanel Lovelace UI Addon
|
name: NSPanel Lovelace UI Addon
|
||||||
version: "4.7.28"
|
version: "4.7.29"
|
||||||
slug: nspanel-lovelace-ui
|
slug: nspanel-lovelace-ui
|
||||||
description: NSPanel Lovelace UI Addon
|
description: NSPanel Lovelace UI Addon
|
||||||
services:
|
services:
|
||||||
|
|||||||
@@ -22,10 +22,11 @@ class HAEntity(panel_cards.Entity):
|
|||||||
if self.etype in ["delete", "navigate", "iText"]:
|
if self.etype in ["delete", "navigate", "iText"]:
|
||||||
out = super().render()
|
out = super().render()
|
||||||
if self.etype == "navigate" and "status" in self.config:
|
if self.etype == "navigate" and "status" in self.config:
|
||||||
config["entity"] = config["status"]
|
self.config["entity"] = self.config.pop("status")
|
||||||
|
self.__init__(self.locale, self.config, self.panel)
|
||||||
status_out = self.render().split("~")
|
status_out = self.render().split("~")
|
||||||
status_out[2] = out.split("~")[2]
|
status_out[2] = out.split("~")[2]
|
||||||
status_out = status_out.join("~")
|
status_out = "~".join(status_out)
|
||||||
return status_out
|
return status_out
|
||||||
return out
|
return out
|
||||||
|
|
||||||
@@ -42,6 +43,8 @@ class HAEntity(panel_cards.Entity):
|
|||||||
icon_char = ha_icons.get_icon_ha(self.etype, self.state, device_class=self.attributes.get("device_class", None), media_content_type=self.attributes.get("media_content_type", None), overwrite=self.config.get("icon"))
|
icon_char = ha_icons.get_icon_ha(self.etype, self.state, device_class=self.attributes.get("device_class", None), media_content_type=self.attributes.get("media_content_type", None), overwrite=self.config.get("icon"))
|
||||||
color = ha_colors.get_entity_color(
|
color = ha_colors.get_entity_color(
|
||||||
self.etype, self.state, self.attributes)
|
self.etype, self.state, self.attributes)
|
||||||
|
if self.color_overwrite:
|
||||||
|
color = rgb_dec565(self.color_overwrite)
|
||||||
name = self.config.get("name", self.attributes.get("friendly_name", "unknown"))
|
name = self.config.get("name", self.attributes.get("friendly_name", "unknown"))
|
||||||
if self.name_overwrite:
|
if self.name_overwrite:
|
||||||
name = self.name_overwrite
|
name = self.name_overwrite
|
||||||
@@ -252,11 +255,11 @@ class HACard(panel_cards.Card):
|
|||||||
'color': [255, 255, 255],
|
'color': [255, 255, 255],
|
||||||
}, self.panel
|
}, self.panel
|
||||||
).render()[1:]
|
).render()[1:]
|
||||||
if not self.iid_prev and not self.iid_next:
|
if not self.iid_prev and not self.iid_next and len(self.panel.cards) != 1:
|
||||||
leftBtn = panel_cards.Entity(self.locale,
|
leftBtn = panel_cards.Entity(self.locale,
|
||||||
{
|
{
|
||||||
'entity': f'navigate.UP',
|
'entity': f'navigate.UP',
|
||||||
'icon': 'mdi:arrow-left-bold',
|
'icon': 'mdi:arrow-up-bold',
|
||||||
'color': [255, 255, 255],
|
'color': [255, 255, 255],
|
||||||
}, self.panel
|
}, self.panel
|
||||||
).render()[1:]
|
).render()[1:]
|
||||||
|
|||||||
@@ -41,14 +41,19 @@ class Entity:
|
|||||||
def render(self, cardType=""):
|
def render(self, cardType=""):
|
||||||
icon_char = self.icon_overwrite or ""
|
icon_char = self.icon_overwrite or ""
|
||||||
color = rgb_dec565([68, 115, 158])
|
color = rgb_dec565([68, 115, 158])
|
||||||
|
if self.color_overwrite:
|
||||||
|
color = rgb_dec565(self.color_overwrite)
|
||||||
name = self.name_overwrite or ""
|
name = self.name_overwrite or ""
|
||||||
value = ""
|
value = ""
|
||||||
match self.etype:
|
match self.etype:
|
||||||
case 'delete':
|
case 'delete':
|
||||||
return f"~delete~~~~~"
|
return f"~delete~~~~~"
|
||||||
case 'navigate':
|
case 'navigate':
|
||||||
page_search_res = self.panel.searchCard(
|
card_iid = self.entity_id.split(".")[1]
|
||||||
self.entity_id.split(".")[1])
|
if card_iid == "UP":
|
||||||
|
return f"~button~{self.entity_id}~{get_icon_char(icon_char)}~{color}~{name}~{value}"
|
||||||
|
else:
|
||||||
|
page_search_res = self.panel.searchCard(card_iid)
|
||||||
if page_search_res is not None:
|
if page_search_res is not None:
|
||||||
if name == "":
|
if name == "":
|
||||||
name = page_search_res.title
|
name = page_search_res.title
|
||||||
|
|||||||
Reference in New Issue
Block a user