mirror of
https://github.com/joBr99/nspanel-lovelace-ui.git
synced 2025-12-20 22:47:01 +01:00
Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
529b0516f4 | ||
|
|
b9504a2ff0 | ||
|
|
b4b988b735 | ||
|
|
d3ab908507 | ||
|
|
2ee79debd0 |
12
.github/issue-close-app.yml
vendored
12
.github/issue-close-app.yml
vendored
@@ -5,10 +5,10 @@
|
||||
|
||||
# Comment that will be sent if an issue is judged to be closed.
|
||||
comment: >-
|
||||
This issue has been automatically closed because the TEMPLATE is missing or incomplete.
|
||||
This issue has been automatically closed because the TEMPLATE (it's the stuff you deleted from the issue while opening) is missing or incomplete.
|
||||
|
||||
Filling the template is required so standard questions don't need to be asked again each time.
|
||||
THe ability to provide assistance is greatly hampered if few minutes are not taken to complete the issue template
|
||||
The ability to provide assistance is greatly hampered if few minutes are not taken to complete the issue template
|
||||
with the requested information. The details requested potentially affect which options to pursue. The small amount
|
||||
of time you will spend completing the template will also help the volunteers, providing assistance to you, to reduce
|
||||
the time required to help you.
|
||||
@@ -19,14 +19,16 @@ comment: >-
|
||||
|
||||
[Docs](https://docs.nspanel.pky.eu) for more information.
|
||||
|
||||
IF YOU THINK THIS IS WAS CLOSED AS A FALSE POSITIVE or you just didn't find a template that matches your request, please do not open another issue, closed issues will also be monitored.
|
||||
|
||||
issueConfigs:
|
||||
# There can be several configs for different kind of issues.
|
||||
- content:
|
||||
# template 1: bug report
|
||||
- "PROBLEM DESCRIPTION"
|
||||
# - "REQUESTED INFORMATION"
|
||||
# - "TO REPRODUCE"
|
||||
# - "EXPECTED BEHAVIOUR"
|
||||
- "REQUESTED INFORMATION"
|
||||
- "TO REPRODUCE"
|
||||
- "EXPECTED BEHAVIOUR"
|
||||
- content:
|
||||
# template 2: feature request
|
||||
- "FEATURE DESCRIPTION"
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import colorsys
|
||||
import math
|
||||
import apis
|
||||
|
||||
def scale(val, src, dst):
|
||||
"""
|
||||
@@ -37,6 +38,8 @@ def rgb_brightness(rgb_color, brightness):
|
||||
return [int(red), int(green), int(blue)]
|
||||
|
||||
def rgb_dec565(rgb_color):
|
||||
if type(rgb_color) is str:
|
||||
rgb_color = apis.ha_api.render_template(rgb_color)
|
||||
red = rgb_color[0]
|
||||
green = rgb_color[1]
|
||||
blue = rgb_color[2]
|
||||
|
||||
@@ -25,7 +25,7 @@ class LuiPagesGen(object):
|
||||
|
||||
def get_entity_color(self, entity, ha_type=None, overwrite=None):
|
||||
if overwrite is not None:
|
||||
if type(overwrite) is list:
|
||||
if type(overwrite) in [str, list]:
|
||||
return rgb_dec565(overwrite)
|
||||
if type(overwrite) is dict:
|
||||
state = entity.state
|
||||
@@ -455,16 +455,16 @@ class LuiPagesGen(object):
|
||||
|
||||
icon_res = "".join(icon_res_list)
|
||||
|
||||
if len(icon_res_list) == 1:
|
||||
if len(icon_res_list) == 1 and not self._config.get("model") == "us-p":
|
||||
icon_res = "~"*4 + icon_res_list[0] + "~"*4*6
|
||||
elif len(icon_res_list) == 2:
|
||||
elif len(icon_res_list) == 2 and not self._config.get("model") == "us-p":
|
||||
icon_res = "~"*4*2 + icon_res_list[0] + "~"*4*2 + icon_res_list[1] + "~"*4*2
|
||||
elif len(icon_res_list) == 3:
|
||||
elif len(icon_res_list) == 3 and not self._config.get("model") == "us-p":
|
||||
icon_res = "~"*4*2 + icon_res_list[0] + "~"*4 + icon_res_list[1] + "~"*4 + icon_res_list[2] + "~"*4
|
||||
elif len(icon_res_list) == 4:
|
||||
elif len(icon_res_list) == 4 and not self._config.get("model") == "us-p":
|
||||
icon_res = "~"*4 + icon_res_list[0] + "~"*4 + icon_res_list[1] + "~"*4 + icon_res_list[2] + "~"*4 + icon_res_list[3]
|
||||
elif len(icon_res_list) >= 5:
|
||||
icon_res = "~"*4 + "".join(icon_res_list) + "~"*4*(7-len(icon_res_list))
|
||||
elif len(icon_res_list) >= 5 or self._config.get("model") == "us-p":
|
||||
icon_res = "".join(icon_res_list) + "~"*4*(8-len(icon_res_list))
|
||||
|
||||
currently_translation = get_translation(self._locale, "frontend.ui.card.climate.currently")
|
||||
state_translation = get_translation(self._locale, "frontend.ui.panel.config.devices.entities.state")
|
||||
@@ -486,7 +486,7 @@ class LuiPagesGen(object):
|
||||
else:
|
||||
media_icon = self.generate_entities_item(entity, "cardGrid")
|
||||
ha_entity = apis.ha_api.get_entity(entityId)
|
||||
heading = title if title != "unknown" else entity.attributes.friendly_name
|
||||
heading = title if title != "unknown" else ha_entity.attributes.friendly_name
|
||||
title = get_attr_safe(ha_entity, "media_title", "")
|
||||
author = get_attr_safe(ha_entity, "media_artist", "")
|
||||
volume = int(get_attr_safe(ha_entity, "volume_level", 0)*100)
|
||||
|
||||
@@ -20,7 +20,7 @@ List of supported config keys of this card:
|
||||
key | optional | type | default | description
|
||||
-- | -- | -- | -- | --
|
||||
`type` | False | string | `None` | Type of the card
|
||||
`entities` | False | complex | `None` | contains a list of entities of this card
|
||||
`entity` | False | string | `None` | contains the entitiy of this card
|
||||
`title` | True | string | `None` | Title of the Page
|
||||
`temperatureUnit` | True | string | `celsius` | set this to fahrenheit to change the temperatureUnit on the page
|
||||
`key` | True | string | `None` | Used by navigate items in combination with the type (cardEntities_key)
|
||||
|
||||
@@ -45,6 +45,11 @@ It is also possible to configure different color overwrites per state:
|
||||
"on": [255,0,0]
|
||||
"off": [0,0,255]
|
||||
```
|
||||
Dynamic color overwrites using homeassistant templates:
|
||||
|
||||
```yaml
|
||||
color: '{{iif(states("binary_sensor.test")=="on", "[0,255,0]", "[255,165,0]")}}'
|
||||
```
|
||||
|
||||
It is also possible to use text instead of icons with `text:X`
|
||||
|
||||
|
||||
Reference in New Issue
Block a user