Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Section: No real "hiding" with show_empty: false #20352

Closed
4 tasks done
Revilo91 opened this issue Apr 3, 2024 · 3 comments
Closed
4 tasks done

Section: No real "hiding" with show_empty: false #20352

Revilo91 opened this issue Apr 3, 2024 · 3 comments

Comments

@Revilo91
Copy link

Revilo91 commented Apr 3, 2024

Checklist

  • I have updated to the latest available Home Assistant version.
  • I have cleared the cache of my browser.
  • I have tried a different browser to see if it is related to my browser.
  • I have tried reproducing the issue in safe mode to rule out problems with unsupported custom resources.

Describe the issue you are experiencing

If you used "show_empty: false" in the "old" view, these lines were hidden. If you now use this in the new section view, it will no longer be hidden quite as much as before.

Describe the behavior you expected

No line should be visible anymore

Steps to reproduce the issue

...

What version of Home Assistant Core has the issue?

core-2024.4.0b7

What was the last working version of Home Assistant Core?

No response

In which browser are you experiencing the issue with?

Google Chrome Version 122.0.6261.95 (64-Bit)

Which operating system are you using to run this browser?

Windows 10 / 11

State of relevant entities

No response

Problem-relevant frontend configuration

see additional information

Javascript errors shown in your browser console/inspector

No response

Additional information

Sidebar View

theme: Backend-selected
title: Home
path: home
icon: mdi:home
layout: {}
Badges: []
type: sidebar
cards:
  - type: custom:mushroom-chips-card
    chips:
      - type: action
        tap_action:
          action: navigate
          navigation_path: /dashboard-home/kalendar
        icon: mdi:calendar
      - type: template
        entity: sensor.abfall
        icon: |-
          {%if ("Restmüll" in states("sensor.abfall"))%}
             mdi:trash-can
          {%elif ("Biotonne" in states("sensor.abfall"))%}
             mdi:flower  
          {%elif ("Gelber Sack" in states("sensor.abfall")) %}
             mdi:recycle  
          {%elif ("Papierabfuhr" in states("sensor.abfall")) %}
             mdi:newspaper-variant-multiple
          {%elif ("Papiertonne" in states("sensor.abfall")) %}
             mdi:newspaper-variant-multiple
          {%else%}
             mdi:mdi-numeric-2-box-multiple-outline
          {%endif%}
        icon_color: |-
          {%if ("Restmüll" in states("sensor.abfall"))%}
             grey
          {%elif ("Biotonne" in states("sensor.abfall"))%}
             saddlebrown 
          {%elif ("Gelber Sack" in states("sensor.abfall")) %}
             yellow 
          {%elif ("Papierabfuhr" in states("sensor.abfall")) %}
             blue
          {%elif ("Papiertonne" in states("sensor.abfall")) %}
             darkblue
          {%else%}
             red
          {%endif%}
        content: "{{states(\"sensor.abfall\")}}"
        tap_action:
          action: more-info
        hold_action:
          action: more-info
        double_tap_action:
          action: more-info
  - type: horizontal-stack
    cards:
      - show_name: false
        show_icon: true
        type: button
        tap_action:
          action: toggle
        entity: switch.filmeabend
        icon_height: 100px
      - show_name: false
        show_icon: true
        type: button
        tap_action:
          action: toggle
        entity: light.licht_wohnzimmer
        icon_height: 100px
      - show_name: false
        show_icon: true
        type: button
        tap_action:
          action: toggle
        entity: light.eg_wohnzimmer_weihnachtsbaum_switch_0
        icon_height: 100px
  - type: conditional
    conditions:
      - condition: screen
        media_query: "(min-width: 768px)"
    card:
      type: custom:auto-entities
      title: Test
      card:
        type: grid
        square: false
        title: Fensterkontakte
      card_param: cards
      filter:
        template: |
          {% for state in states.binary_sensor if (state.entity_id |
            regex_match("^.*fensterkontakt.*state.*|^.*tur.*state.*",
            ignorecase=False)) and is_state(state.entity_id,"on") -%}
                {{
                  {
                    'type': 'tile',
                    'entity': state.entity_id,
                    'name': state.attributes.friendly_name,
                    'state_content': ['state','last-changed']
                  }
                }},
            {%- endfor %}
      sort:
        method: friendly_name
        numeric: true
      show_empty: false
  - type: conditional
    conditions:
      - condition: screen
        media_query: "(min-width: 0px) and (max-width: 767px)"
    card:
      type: custom:auto-entities
      title: Test
      card:
        square: false
        type: grid
        title: Fensterkontakte
        columns: 1
      card_param: cards
      filter:
        template: |
          {% for state in states.binary_sensor if (state.entity_id |
            regex_match("^.*fensterkontakt.*state.*|^.*tur.*state.*",
            ignorecase=False)) and is_state(state.entity_id,"on") -%}
                {{
                  {
                    'type': 'tile',
                    'entity': state.entity_id,
                    'name': state.attributes.friendly_name,
                    'state_content': ['state','last-changed']
                  }
                }},
            {%- endfor %}
      sort:
        method: friendly_name
        numeric: true
      show_empty: false
  - type: conditional
    conditions:
      - condition: screen
        media_query: "(min-width: 768px)"
    card:
      type: custom:auto-entities
      title: Test
      card:
        type: grid
        square: false
        title: Batteriestatus
      card_param: cards
      filter:
        template: >
          {% for state in states.binary_sensor if (state.entity_id |
          regex_match(".*low_battery", ignorecase=False)) and not
          is_state(state.entity_id,"off") -%}
              {{
                {
                  'type': 'tile',
                  'entity': state.entity_id,
                  'name': state.attributes.friendly_name.replace("Batterie",""),
                  'state_content': 'last-changed'
                }
              }},
          {%- endfor %}  
      sort:
        method: friendly_name
        numeric: true
      show_empty: false
  - type: conditional
    conditions:
      - condition: screen
        media_query: "(min-width: 0px) and (max-width: 767px)"
    card:
      type: custom:auto-entities
      title: Test
      card:
        square: false
        type: grid
        title: Batteriestatus
        columns: 1
      card_param: cards
      filter:
        template: >
          {% for state in states.binary_sensor if (state.entity_id |
          regex_match(".*low_battery", ignorecase=False)) and not
          is_state(state.entity_id,"off") -%}
              {{
                {
                  'type': 'tile',
                  'entity': state.entity_id,
                  'name': state.attributes.friendly_name.replace("Batterie",""),
                  'state_content': 'last-changed'
                }
              }},
          {%- endfor %}  
      sort:
        method: friendly_name
        numeric: true
      show_empty: false
  - type: custom:auto-entities
    card:
      type: entities
      title: Licht
    show_empty: false
    filter:
      include:
        - domain: light
          state: "on"
          options:
            secondary_info: last-changed
      exclude:
        - entity_id: light.eg_lichtgruppe
        - entity_id: light.og_lichtgruppe
        - entity_id: light.kg_lichtgruppe
        - entity_id: light.licht_wohnzimmer
        - entity_id: light.gesamt_licht
        - entity_id: light.alarm_licht
        - entity_id: light.eg_wohnzimmer_weihnachtsbaum_switch_0
        - entity_id: light.og_flur_switch_0
        - entity_id: light.shelly_haustur_channel_2
        - entity_id: light.eg_gardrobe_licht
        - entity_id: light.eg_gardrobe_licht_2
        - entity_id: light.eg_garage_licht
        - entity_id: light.eg_garage_licht_2
        - entity_id: light.eg_garage_licht_3
        - entity_id: light.shelly_hoflicht_switch_0
        - entity_id: light.shelly_haustur_channel_1
        - entity_id: light.shelly_haustur_channel_2
    sort:
      method: friendly_name
      ignore_case: false
      numeric: false
      ip: false
      reverse: false
  - type: entity-filter
    show_empty: false
    entities:
      - entity: switch.eg_buro_schaltsteckdose_2
        secondary_info: last-changed
      - type: custom:restriction-card
        row: true
        restrictions:
          block:
            condition:
              value: printing
              entity: sensor.prusalink
              operator: "=="
        card:
          entity: switch.kg_keller1_3d_drucker_2
          secondary_info: last-changed
          state_color: true
      - type: custom:restriction-card
        row: true
        restrictions:
          block:
            condition:
              value: "on"
              entity: binary_sensor.waschmaschine_lauft_2
              operator: "=="
        card:
          entity: switch.kg_waschmaschine_shelly_switch_0
          secondary_info: last-changed
          state_color: true
      - type: custom:restriction-card
        row: true
        restrictions:
          block:
            condition:
              value: "on"
              entity: binary_sensor.trockner_lauft_2
              operator: "=="
        card:
          entity: switch.kg_trockner_shelly_switch_0
          secondary_info: last-changed
          state_color: true
      - entity: switch.wasche_hebeanlage_switch_0
        secondary_info: last-changed
      - entity: switch.shellyplus1pm_d4d4da7cbea8_switch_0
        secondary_info: last-changed
    state_filter:
      - "on"
      - unavailable
    card:
      type: entities
      title: Steckdosen
      state_color: true
  - type: horizontal-stack
    cards:
      - type: custom:bignumber-card
        entity: sensor.durchschnittstemperatur
        title: Durchschnitt
      - type: custom:button-card
        entity: sensor.trendsensortemperatur
        show_name: false
        size: 100%
        styles:
          card:
            - height: 100%
            - width: 50px
        state:
          - value: -3
            operator: <
            color: blue
            icon: mdi:arrow-down-thick
            styles:
              card:
                - animation: blink ease-in-out 2s infinite
          - value: -2
            operator: <
            color: blue
            icon: mdi:arrow-down-thick
          - value: -0.5
            operator: <
            color: lightblue
            icon: mdi:arrow-bottom-right-thick
          - value: 3
            operator: ">"
            color: red
            icon: mdi:arrow-up-thick
            styles:
              card:
                - animation: blink ease-in-out 2s infinite
          - value: 2
            operator: ">"
            color: red
            icon: mdi:arrow-up-thick
          - value: 0.5
            operator: ">"
            color: orange
            icon: mdi:arrow-top-right-thick
          - operator: default
            color: grey
            icon: mdi:arrow-right-thick
    view_layout:
      position: sidebar
  - type: conditional
    conditions:
      - condition: or
        conditions:
          - condition: state
            entity: sensor.dwd_weather_warnings_809273141_vorwarnstufe
            state_not: "0"
          - condition: state
            entity: sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe
            state_not: "0"
    card:
      type: markdown
      content: >
        {% set current_count =
        state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe",
        "warning_count") %} {% if current_count > 0 %} <h2>DWD
        Vorwarnungen</h2><hr><hr> {%endif%} {% for i in range(current_count) %}
          {% set headline = state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe", "warning_" ~ loop.index ~ "_headline") %}
          {% set description = state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe", "warning_" ~ loop.index ~ "_description") %}
          {% set level = state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe", "warning_" ~ loop.index ~ "_level") %}
          {% set time_start = state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe", "warning_" ~ loop.index ~ "_start") %}
          {% set time_end = state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe", "warning_" ~ loop.index ~ "_end") %}
          {% set level_color = state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe", "warning_" ~ loop.index ~ "_color") %}
        <b><font color={{ level_color }}>{{ headline }}</font></b> <br> <u>{{
        time_start.strftime("%a %H:%M") ~ " - " ~ time_end.strftime("%a %H:%M")
        }}</u> <br> <i>{{ description }}</i> <hr> {% endfor %} {% set
        advance_count =
        state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe",
        "warning_count") %} 

        {% if advance_count > 0 %} <h2>DWD Aktuelle
        Warnungen</h2><hr><hr>{%endif%}

        {% for i in range(advance_count) %}
          {% set headline = state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe", "warning_" ~ loop.index ~ "_headline") %}
          {% set description = state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe", "warning_" ~ loop.index ~ "_description") %}
          {% set level = state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe", "warning_" ~ loop.index ~ "_level") %}
          {% set time_start = state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe", "warning_" ~ loop.index ~ "_start") %}
          {% set time_end = state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe", "warning_" ~ loop.index ~ "_end") %}
          {% set level_color = state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe", "warning_" ~ loop.index ~ "_color") %}
        <b><font color={{ level_color }}>{{ headline }}</font></b> <br> <u>{{
        time_start.strftime("%a %H:%M") ~ " - " ~ time_end.strftime("%a %H:%M")
        }}</u> <br> <i>{{ description }}</i> <hr>

        {% endfor %}
    view_layout:
      position: sidebar
  - type: horizontal-stack
    cards:
      - type: tile
        entity: person.oliver_sudholt
        show_entity_picture: true
        name: " "
        vertical: true
        state_content: last-changed
      - type: tile
        entity: person.marina_wagensoner
        show_entity_picture: true
        vertical: true
        name: " "
        state_content:
          - last-changed
    view_layout:
      position: sidebar
  - type: conditional
    conditions:
      - condition: user
        users:
          - 342b1d30f55444c4813423f222e3a2b3
          - edbaa08211b24282b5ce0973f4f037e8
          - b81867129e7b499fae859eb974b30274
          - 3373141d00594017bfe557e3680107e4
          - d82c69c4967d4081b9c76887b365f2c6
          - 9249826f0c4b4ea8aff1286728f0a385
    card:
      type: custom:expander-card
      gap: 8px
      padding: ""

image
image

Section View

theme: Backend-selected
title: Home3
path: home3
icon: mdi:home
layout: {}
Badges: []
type: sections
sections:
  - cards:
      - type: custom:mushroom-chips-card
        chips:
          - type: action
            tap_action:
              action: navigate
              navigation_path: /dashboard-home/kalendar
            icon: mdi:calendar
          - type: template
            entity: sensor.abfall
            icon: |-
              {%if ("Restmüll" in states("sensor.abfall"))%}
                 mdi:trash-can
              {%elif ("Biotonne" in states("sensor.abfall"))%}
                 mdi:flower  
              {%elif ("Gelber Sack" in states("sensor.abfall")) %}
                 mdi:recycle  
              {%elif ("Papierabfuhr" in states("sensor.abfall")) %}
                 mdi:newspaper-variant-multiple
              {%elif ("Papiertonne" in states("sensor.abfall")) %}
                 mdi:newspaper-variant-multiple
              {%else%}
                 mdi:mdi-numeric-2-box-multiple-outline
              {%endif%}
            icon_color: |-
              {%if ("Restmüll" in states("sensor.abfall"))%}
                 grey
              {%elif ("Biotonne" in states("sensor.abfall"))%}
                 saddlebrown 
              {%elif ("Gelber Sack" in states("sensor.abfall")) %}
                 yellow 
              {%elif ("Papierabfuhr" in states("sensor.abfall")) %}
                 blue
              {%elif ("Papiertonne" in states("sensor.abfall")) %}
                 darkblue
              {%else%}
                 red
              {%endif%}
            content: "{{states(\"sensor.abfall\")}}"
            tap_action:
              action: more-info
            hold_action:
              action: more-info
            double_tap_action:
              action: more-info
      - show_name: false
        show_icon: true
        type: button
        tap_action:
          action: toggle
        entity: switch.filmeabend
      - show_name: false
        show_icon: true
        type: button
        tap_action:
          action: toggle
        entity: light.licht_wohnzimmer
      - show_name: false
        show_icon: true
        type: button
        tap_action:
          action: toggle
        entity: light.eg_wohnzimmer_weihnachtsbaum_switch_0
      - type: conditional
        conditions:
          - condition: screen
            media_query: "(min-width: 0px) and (max-width: 767px)"
        card:
          type: custom:auto-entities
          title: Test
          card:
            square: false
            type: grid
            title: Fensterkontakte
            columns: 1
          card_param: cards
          filter:
            template: |
              {% for state in states.binary_sensor if (state.entity_id |
                regex_match("^.*fensterkontakt.*state.*|^.*tur.*state.*",
                ignorecase=False)) and is_state(state.entity_id,"on") -%}
                    {{
                      {
                        'type': 'tile',
                        'entity': state.entity_id,
                        'name': state.attributes.friendly_name,
                        'state_content': ['state','last-changed']
                      }
                    }},
                {%- endfor %}
          sort:
            method: friendly_name
            numeric: true
          show_empty: false
      - type: conditional
        conditions:
          - condition: screen
            media_query: "(min-width: 768px)"
        card:
          type: custom:auto-entities
          title: Test
          card:
            type: grid
            square: false
            title: Fensterkontakte
          card_param: cards
          filter:
            template: |
              {% for state in states.binary_sensor if (state.entity_id |
                regex_match("^.*fensterkontakt.*state.*|^.*tur.*state.*",
                ignorecase=False)) and is_state(state.entity_id,"on") -%}
                    {{
                      {
                        'type': 'tile',
                        'entity': state.entity_id,
                        'name': state.attributes.friendly_name,
                        'state_content': ['state','last-changed']
                      }
                    }},
                {%- endfor %}
          sort:
            method: friendly_name
            numeric: true
          show_empty: false
      - type: conditional
        conditions:
          - condition: screen
            media_query: "(min-width: 0px) and (max-width: 767px)"
        card:
          type: custom:auto-entities
          title: Test
          card:
            square: false
            type: grid
            title: Batteriestatus
            columns: 1
          card_param: cards
          filter:
            template: >
              {% for state in states.binary_sensor if (state.entity_id |
              regex_match(".*low_battery", ignorecase=False)) and not
              is_state(state.entity_id,"off") -%}
                  {{
                    {
                      'type': 'tile',
                      'entity': state.entity_id,
                      'name': state.attributes.friendly_name.replace("Batterie",""),
                      'state_content': 'last-changed'
                    }
                  }},
              {%- endfor %}  
          sort:
            method: friendly_name
            numeric: true
          show_empty: false
      - type: conditional
        conditions:
          - condition: screen
            media_query: "(min-width: 768px)"
        card:
          type: custom:auto-entities
          title: Test
          card:
            type: grid
            square: false
            title: Batteriestatus
          card_param: cards
          filter:
            template: >
              {% for state in states.binary_sensor if (state.entity_id |
              regex_match(".*low_battery", ignorecase=False)) and not
              is_state(state.entity_id,"off") -%}
                  {{
                    {
                      'type': 'tile',
                      'entity': state.entity_id,
                      'name': state.attributes.friendly_name.replace("Batterie",""),
                      'state_content': 'last-changed'
                    }
                  }},
              {%- endfor %}  
          sort:
            method: friendly_name
            numeric: true
          show_empty: false
      - type: custom:auto-entities
        card:
          type: entities
          title: Licht
        show_empty: false
        filter:
          include:
            - domain: light
              state: "on"
              options:
                secondary_info: last-changed
          exclude:
            - entity_id: light.eg_lichtgruppe
            - entity_id: light.og_lichtgruppe
            - entity_id: light.kg_lichtgruppe
            - entity_id: light.licht_wohnzimmer
            - entity_id: light.gesamt_licht
            - entity_id: light.alarm_licht
            - entity_id: light.eg_wohnzimmer_weihnachtsbaum_switch_0
            - entity_id: light.og_flur_switch_0
            - entity_id: light.shelly_haustur_channel_2
            - entity_id: light.eg_gardrobe_licht
            - entity_id: light.eg_gardrobe_licht_2
            - entity_id: light.eg_garage_licht
            - entity_id: light.eg_garage_licht_2
            - entity_id: light.eg_garage_licht_3
            - entity_id: light.shelly_hoflicht_switch_0
            - entity_id: light.shelly_haustur_channel_1
            - entity_id: light.shelly_haustur_channel_2
        sort:
          method: friendly_name
          ignore_case: false
          numeric: false
          ip: false
          reverse: false
      - type: entity-filter
        show_empty: false
        entities:
          - entity: switch.eg_buro_schaltsteckdose_2
            secondary_info: last-changed
          - type: custom:restriction-card
            row: true
            restrictions:
              block:
                condition:
                  value: printing
                  entity: sensor.prusalink
                  operator: "=="
            card:
              entity: switch.kg_keller1_3d_drucker_2
              secondary_info: last-changed
              state_color: true
          - type: custom:restriction-card
            row: true
            restrictions:
              block:
                condition:
                  value: "on"
                  entity: binary_sensor.waschmaschine_lauft_2
                  operator: "=="
            card:
              entity: switch.kg_waschmaschine_shelly_switch_0
              secondary_info: last-changed
              state_color: true
          - type: custom:restriction-card
            row: true
            restrictions:
              block:
                condition:
                  value: "on"
                  entity: binary_sensor.trockner_lauft_2
                  operator: "=="
            card:
              entity: switch.kg_trockner_shelly_switch_0
              secondary_info: last-changed
              state_color: true
          - entity: switch.wasche_hebeanlage_switch_0
            secondary_info: last-changed
          - entity: switch.shellyplus1pm_d4d4da7cbea8_switch_0
            secondary_info: last-changed
        state_filter:
          - "on"
          - unavailable
        card:
          type: entities
          title: Steckdosen
          state_color: true
  - cards:
      - type: custom:bignumber-card
        entity: sensor.durchschnittstemperatur
        title: Durchschnitt
      - type: horizontal-stack
        cards:
          - type: tile
            entity: person.oliver_sudholt
            show_entity_picture: true
            name: " "
            vertical: true
            state_content: last-changed
          - type: tile
            entity: person.marina_wagensoner
            show_entity_picture: true
            vertical: true
            name: " "
            state_content:
              - last-changed
      - type: conditional
        conditions:
          - condition: user
            users:
              - 342b1d30f55444c4813423f222e3a2b3
              - edbaa08211b24282b5ce0973f4f037e8
              - b81867129e7b499fae859eb974b30274
              - 3373141d00594017bfe557e3680107e4
              - d82c69c4967d4081b9c76887b365f2c6
              - 9249826f0c4b4ea8aff1286728f0a385
        card:
          type: custom:expander-card
          gap: 8px
          padding: ""
          clear: true
          title: Expander
          overlay-margin: ""
          child-padding: ""
          button-background: transparent
          expanded: false
          title-card-button-overlay: true
          cards:
            - type: entities
              entities:
                - entity: sensor.aktueller_verbrauch
                - entity: sensor.unbekannte_leistung
                - entity: sensor.bekannte_leistung
                - entity: binary_sensor.beschattung_hysterese
                - entity: sensor.beschattung_percent
                - entity: sensor.beschattung_sum
            - type: custom:mini-graph-card
              entities:
                - entity: sensor.aktueller_verbrauch
                  name: Verbrauch
                  color: "#FF5000"
                - entity: sensor.aktuelle_erzeugung
                  name: PV Ertrag
                  color: "#50ff00"
              name: Verbrauch + Solar
              icon: mdi:flash
              hours_to_show: 12
              group_by: hour
              show:
                graph: bar
          title-card:
            type: custom:power-flow-card-plus
            entities:
              grid:
                entity: sensor.smartmeter_power
                display_state: one_way_no_zero
                color_circle: true
                color_value: true
                color_icon: true
                color:
                  production: "#43A047"
                  consumption: "#E53935"
              solar:
                icon: mdi:solar-power-variant
                entity: sensor.aktuelle_erzeugung
                color_value: true
                color_icon: true
                color: "#B2FF59"
              battery: {}
              home:
                entity: sensor.aktueller_verbrauch
                color_value: true
                color_icon: true
            clickable_entities: true
            use_new_flow_rate_model: true
            display_zero_lines:
              mode: hide
              transparency: 75
              grey_color: "#EEEEEE"
            w_decimals: 0
            kw_decimals: 2
      - type: conditional
        conditions:
          - condition: or
            conditions:
              - condition: state
                entity: sensor.dwd_weather_warnings_809273141_vorwarnstufe
                state_not: "0"
              - condition: state
                entity: sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe
                state_not: "0"
        card:
          type: markdown
          content: >
            {% set current_count =
            state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe",
            "warning_count") %} {% if current_count > 0 %} <h2>DWD
            Vorwarnungen</h2><hr><hr> {%endif%} {% for i in range(current_count)
            %}
              {% set headline = state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe", "warning_" ~ loop.index ~ "_headline") %}
              {% set description = state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe", "warning_" ~ loop.index ~ "_description") %}
              {% set level = state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe", "warning_" ~ loop.index ~ "_level") %}
              {% set time_start = state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe", "warning_" ~ loop.index ~ "_start") %}
              {% set time_end = state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe", "warning_" ~ loop.index ~ "_end") %}
              {% set level_color = state_attr("sensor.dwd_weather_warnings_809273141_vorwarnstufe", "warning_" ~ loop.index ~ "_color") %}
            <b><font color={{ level_color }}>{{ headline }}</font></b> <br>
            <u>{{ time_start.strftime("%a %H:%M") ~ " - " ~
            time_end.strftime("%a %H:%M") }}</u> <br> <i>{{ description }}</i>
            <hr> {% endfor %} {% set advance_count =
            state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe",
            "warning_count") %} 

            {% if advance_count > 0 %} <h2>DWD Aktuelle
            Warnungen</h2><hr><hr>{%endif%}

            {% for i in range(advance_count) %}
              {% set headline = state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe", "warning_" ~ loop.index ~ "_headline") %}
              {% set description = state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe", "warning_" ~ loop.index ~ "_description") %}
              {% set level = state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe", "warning_" ~ loop.index ~ "_level") %}
              {% set time_start = state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe", "warning_" ~ loop.index ~ "_start") %}
              {% set time_end = state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe", "warning_" ~ loop.index ~ "_end") %}
              {% set level_color = state_attr("sensor.dwd_weather_warnings_809273141_aktuelle_warnstufe", "warning_" ~ loop.index ~ "_color") %}
            <b><font color={{ level_color }}>{{ headline }}</font></b> <br>
            <u>{{ time_start.strftime("%a %H:%M") ~ " - " ~
            time_end.strftime("%a %H:%M") }}</u> <br> <i>{{ description }}</i>
            <hr>

            {% endfor %}
      - type: horizontal-stack
        cards:
          - type: custom:button-card
            size: 100%
            show_label: true
            tap_action:
              action: call-service
              service: cover.toggle
              target:
                entity_id: cover.eg_garagentor
            styles:
              card:
                - height: 200px
              name:
                - justify-self: center
                - font-weight: bold
                - font-size: 80px
                - text-transform: uppercase
            name: |
              [[[
                if (states['cover.eg_garagentor'].state==="closed")
                  return 'auf';
                else if (states['cover.eg_garagentor'].state==="open")
                  return "zu";
                return "stop";
              ]]]
          - type: custom:button-card
            size: 100%
            show_label: true
            tap_action:
              action: call-service
              service: input_button.press
              target:
                entity_id: input_button.garagentor_luften
            styles:
              card:
                - height: 200px
              name:
                - justify-self: center
                - font-weight: bold
                - font-size: 50px
                - text-transform: uppercase
            name: |
              [[[
                if (states['cover.eg_garagentor'].state==="closed")
                  return 'lüften';
                else if (states['cover.eg_garagentor'].state==="open")
                  return "zu";
                return "stop";
              ]]]
      - type: horizontal-stack
        cards:
          - type: custom:button-card
            size: 100%
            entity: sensor.eg_garagentor_door_state
            state:
              - value: closed
                color: green
                icon: mdi:garage-variant
              - value: open
                color: red
                icon: mdi:garage-open-variant
                styles:
                  icon:
                    - animation: blink ease-in-out 2s infinite
              - operator: default
                color: yellow
                icon: mdi:garage-alert-variant
            styles:
              card:
                - height: 200px
            tap_action:
              action: none
          - type: custom:button-card
            size: 100%
            entity: input_boolean.garagentor_warnung
            state:
              - value: "off"
                color: green
                icon: mdi:check-decagram
              - value: "on"
                color: red
                icon: mdi:alert-decagram
                styles:
                  icon:
                    - animation: blink ease-in-out 2s infinite
            styles:
              card:
                - height: 200px
            tap_action:
              action: toggle
visible:
  - user: 342b1d30f55444c4813423f222e3a2b3
  - user: 30e6ccc5c0234b96b4d66ce5e534bb6d
  - user: 9249826f0c4b4ea8aff1286728f0a385
  - user: d82c69c4967d4081b9c76887b365f2c6
  - user: 3373141d00594017bfe557e3680107e4
  - user: b81867129e7b499fae859eb974b30274
  - user: 40e7a29c783e49f294ae7b6db3f4c501
  - user: 7ef7f000a368438c86a705f5f5e3e1d5
  - user: edbaa08211b24282b5ce0973f4f037e8
cards: []

image
image

@mjmccans
Copy link

I am having the same issue with "show_empty: false" resulting in an empty space in my dashboard when the card is empty. This may be different than #20479 because for that issue it looks like a conditional card causing the issue and not the show_empty option. Conditional cards work for me without a space, but the following card using "show_empty: false" does result in an unwanted space:

card:
  show_state: false
  title: Batteries
  type: glance
entities:
  - sensor.laundry_room_battery
  - sensor.living_room_battery
  - sensor.bedroom_battery
show_empty: false
state_filter:
  - '0'
type: entity-filter

@Drun555
Copy link

Drun555 commented May 6, 2024

Auto-entities custom card also have same issue for me, just as conditional cards.

@Revilo91
Copy link
Author

Revilo91 commented Jun 1, 2024

Can be fixed using the new visibility property and a helper variable. Can be closed here. #20840 (core 2024.6.0b4 / frontend 20240530.0)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants