Advertisement
tiwing

decluttering yaml

Feb 14th, 2025
221
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 6.25 KB | None | 0 0
  1. decluttering_templates:
  2.   bar_chart:
  3.     default:
  4.       - left: 0
  5.       - top: 0
  6.     element:
  7.       type: state-label
  8.       style:
  9.         transform: none
  10.         transform-origin: left top
  11.         left: '[[left]]'
  12.         top: '[[top]]'
  13.         width: 100%
  14.       entity: '[[entity]]'
  15.       prefix: '[[prefix]]'
  16.       tap_action:
  17.         action: more-info
  18.       double_tap_action: none
  19.       hold_action: none
  20.       card_mod:
  21.         style: |
  22.          :host {
  23.             {% if '[[v_scale]]' in ["indoor_humidity","outdoor_humidity"] %}
  24.               {% set minval = 0 %}
  25.               {% set maxval = 101 %}
  26.             {% elif '[[v_scale]]' == "indoor_temp" %}
  27.               {% set minval = states('input_number.indoor_temp_chart_low_limit')|float(0) %}
  28.               {% set maxval = states('input_number.indoor_temp_chart_high_limit')|float(0) %}
  29.             {% elif '[[v_scale]]' == "outdoor_temp" %}
  30.               {% set minval = states('input_number.outdoor_temp_chart_low_limit')|float(0) %}
  31.               {% set maxval = states('input_number.outdoor_temp_chart_high_limit')|float(0) %}
  32.             {% endif %}
  33.  
  34.             {% set curval = states('[[entity]]')|float(0) %}
  35.             {% if curval < minval %}
  36.               {% set progressPct = 0 %}
  37.             {% elif curval > maxval %}
  38.               {% set progressPct = 100 %}
  39.             {% else %}
  40.               {% set progressPct = 100*(1-((maxval-curval)/(maxval-minval)))|round(3) %}
  41.             {% endif %}
  42.  
  43.             {% if '[[v_scale]]' == "indoor_temp" %}
  44.                 {% if curval < 16 %}
  45.                     {% set barc = "63,43,255" %}
  46.                 {% elif curval < 18.5 %}
  47.                     {% set barc = "135,206,235" %}
  48.                 {% elif curval < 23.5 %}
  49.                     {% set barc = "0,128,0" %}
  50.                 {% elif curval < 25.5 %}
  51.                     {% set barc = "255,215,0" %}
  52.                 {% elif curval < 28 %}
  53.                     {% set barc = "255,115,0" %}
  54.                 {% else %}
  55.                     {% set barc = "255,0,0" %}
  56.                 {% endif %}
  57.             {% elif '[[v_scale]]' == "outdoor_temp" %}
  58.                 {% if curval < -20 %}
  59.                     {% set barc = "8,48,107" %}
  60.                 {% elif curval < -16 %}
  61.                     {% set barc = "8,81,156" %}
  62.                 {% elif curval < -12 %}
  63.                     {% set barc = "33,113,181" %}
  64.                 {% elif curval < -10 %}
  65.                     {% set barc = "66,146,198" %}
  66.                 {% elif curval < -8 %}
  67.                     {% set barc = "107,174,214" %}
  68.                 {% elif curval < -6 %}
  69.                     {% set barc = "158,202,225" %}
  70.                 {% elif curval < -4 %}
  71.                     {% set barc = "198,219,239" %}
  72.                 {% elif curval < -2 %}
  73.                     {% set barc = "222,235,247" %}
  74.                 {% elif curval < 0 %}
  75.                     {% set barc = "255,255,255" %}
  76.                 {% elif curval < 2 %}
  77.                     {% set barc = "255,255,255" %}
  78.                 {% elif curval < 4 %}
  79.                     {% set barc = "254,224,210" %}
  80.                 {% elif curval < 6 %}
  81.                     {% set barc = "252,187,161" %}
  82.                 {% elif curval < 9 %}
  83.                     {% set barc = "252,146,114" %}
  84.                 {% elif curval < 12 %}
  85.                     {% set barc = "251,106,74" %}
  86.                 {% elif curval < 15 %}
  87.                     {% set barc = "239,59,44" %}
  88.                 {% elif curval < 18 %}
  89.                     {% set barc = "203,24,29" %}
  90.                 {% elif curval < 22 %}
  91.                     {% set barc = "165,15,21" %}
  92.                 {% elif curval < 26 %}
  93.                     {% set barc = "138,1,19" %}
  94.                 {% elif curval < 30 %}
  95.                     {% set barc = "191,2,27" %}
  96.                 {% else %}
  97.                     {% set barc = "191,2,27" %}
  98.                 {% endif %}
  99.             {% elif '[[v_scale]]' == "indoor_humidity" %}
  100.                 {% if curval < 20 %}
  101.                     {% set barc = "255,10,10" %}
  102.                 {% elif curval < 30 %}
  103.                     {% set barc = "8,81,156" %}
  104.                 {% elif curval < 55 %}
  105.                     {% set barc = "0,128,0" %}
  106.                 {% elif curval < 70 %}
  107.                     {% set barc = "255,255,0" %}
  108.                 {% else  %}
  109.                     {% set barc = "255,10,10" %}
  110.                 {% endif %}
  111.             {% elif '[[v_scale]]' == "outdoor_humidity" %}
  112.                 {% if curval < 12 %}
  113.                     {% set barc = "240,0,0" %}
  114.                 {% elif curval < 12 %}
  115.                     {% set barc = "200,66,13" %}
  116.                 {% elif curval < 22 %}
  117.                     {% set barc = "194,134,62" %}
  118.                 {% elif curval < 32 %}
  119.                     {% set barc = "105,173,56" %}
  120.                 {% elif curval < 42 %}
  121.                     {% set barc = "117,203,190" %}
  122.                 {% elif curval < 52 %}
  123.                     {% set barc = "56,174,173" %}
  124.                 {% elif curval < 62 %}
  125.                     {% set barc = "45,157,173" %}
  126.                 {% elif curval < 72 %}
  127.                     {% set barc = "35,147,167" %}
  128.                 {% elif curval < 82 %}
  129.                     {% set barc = "15,132,253" %}
  130.                 {% else  %}
  131.                     {% set barc = "0,70,214" %}
  132.                 {% endif %}
  133.             {% endif %}
  134.  
  135.                   color: white;
  136.                   width: 45% !important;
  137.                   {% if states('[[batt_ent]]')|float(0) <= 10 %}
  138.                     outline: 2px solid red;
  139.                   {% else %}
  140.                     outline: 1px solid rgb({{barc}});
  141.                   {% endif %}
  142.                   border-radius: 0px 9px 9px 0px;
  143.                   background:
  144.                     linear-gradient(to right, rgba({{barc}},0.5) {{progressPct}}%, rgba(80,80,80,0) {{progressPct}}%, rgba(0,0,0,0) 100%),
  145.                     rgba({{barc}},0.15) !important;
  146.                   height: 23px;
  147.                   padding: 0px !important;
  148.                   margin: 0px !important;
  149.                   font-size: 12px;
  150.                 }
  151.           div {
  152.             padding: 2px !important;
  153.             margin-left: 8px;
  154.           }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement