custom-cards / stack-in-card

🛠 group multiple cards into one card without the borders
MIT License
262 stars 24 forks source link

Card does't load properly and causes console error #23

Open TTLucian opened 3 years ago

TTLucian commented 3 years ago

MS Edge Version 88.0.705.53 (Official build) (64-bit) on Windows 10

Description of problem:

This card doesn't load correctly:

type: 'custom:stack-in-card'
mode: horizontal
cards:
  - type: button
    name: Settings
    tap_action:
      action: call-service
      service: browser_mod.popup
      service_data:
        title: Bedroom
        deviceID:
          - this
          - dashboard
        card:
          type: 'custom:stack-in-card'
          cards:
            - type: markdown
              content: |
                <font size= 4px>When temperature rises above:</font>
            - type: 'custom:slider-entity-row'
              entity: input_number.max_temp_bedroom
            - type: 'custom:stack-in-card'
              cards:
                - type: markdown
                  content: |
                    <font size= 4px>Set to:</font>
                - type: entities
                  entities:
                    - entity: input_select.mode1_bedroom
                - type: conditional
                  conditions:
                    - entity: input_select.mode1_bedroom
                      state_not: 'off'
                  card:
                    type: entities
                    entities:
                      - type: 'custom:slider-entity-row'
                        entity: input_number.set_temp_bedroom
                      - entity: input_select.swing1_bedroom
                      - entity: input_select.fan1_bedroom

Causes this:

VM500:100 TSS: Counted history being replaced
VM500:105 TSS: caught history
VM500:62 TSS: Checking if repeated 500 times for interval 1000 against data:  {lastTime: 1611932795460, lastCount: 2}
VM500:95 TSS: Counted history being pushed
VM500:105 TSS: caught history
VM500:62 TSS: Checking if repeated 500 times for interval 1000 against data:  {lastTime: 1611932803406, lastCount: 1}
slider-entity-row.js:1 Uncaught (in promise) TypeError: Cannot read property 'states' of undefined
    at input_number.set hass [as hass] (slider-entity-row.js:1)
    at HTMLElement.render (slider-entity-row.js:1)
    at HTMLElement.update (app.924deda6.js:10297)
    at HTMLElement.performUpdate (app.924deda6.js:10297)
    at HTMLElement._enqueueUpdate (app.924deda6.js:10297)
set hass @ slider-entity-row.js:1
render @ slider-entity-row.js:1
update @ app.924deda6.js:10297
performUpdate @ app.924deda6.js:10297
_enqueueUpdate @ app.924deda6.js:10297
Promise.then (async)
_waitForChildren @ stack-in-card.js:208
(anonymous) @ stack-in-card.js:208
_loopChildren @ stack-in-card.js:208
_updateChildren @ stack-in-card.js:208
(anonymous) @ stack-in-card.js:208
Promise.then (async)
_waitForChildren @ stack-in-card.js:208
updated @ stack-in-card.js:204
performUpdate @ stack-in-card.js:148
_enqueueUpdate @ stack-in-card.js:148
async function (async)
_enqueueUpdate @ stack-in-card.js:148
requestUpdateInternal @ stack-in-card.js:148
initialize @ stack-in-card.js:148
initialize @ stack-in-card.js:186
W @ stack-in-card.js:148
et @ stack-in-card.js:186
Et @ stack-in-card.js:200
s @ chunk.455e79b014618741a716.js:2837
(anonymous) @ chunk.455e79b014618741a716.js:2837
d @ chunk.455e79b014618741a716.js:2837
c @ chunk.455e79b014618741a716.js:2837
a @ chunk.455e79b014618741a716.js:2837
_makeCard @ browser_mod.js:1
async function (async)
_makeCard @ browser_mod.js:1
showDialog @ browser_mod.js:1
v @ browser_mod.js:90
async function (async)
v @ browser_mod.js:90
t @ browser_mod.js:149
do_popup @ browser_mod.js:149
popup @ browser_mod.js:149
msg_callback @ browser_mod.js:149
_connection.subscribeMessage.type @ browser_mod.js:149
_handleMessage @ core.94ddb68d.js:1
(anonymous) @ core.94ddb68d.js:1

However, this card works fine:


type: 'custom:stack-in-card'
mode: horizontal
cards:
  - type: button
    name: Settings
    tap_action:
      action: call-service
      service: browser_mod.popup
      service_data:
        title: Bedroom
        deviceID:
          - this
          - dashboard
        card:
          type: 'custom:vertical-stack-in-card'
          cards:
            - type: markdown
              content: |
                <font size= 4px>When temperature rises above:</font>
            - type: 'custom:slider-entity-row'
              entity: input_number.max_temp_bedroom
            - type: 'custom:stack-in-card'
              cards:
                - type: markdown
                  content: |
                    <font size= 4px>Set to:</font>
                - type: entities
                  entities:
                    - entity: input_select.mode1_bedroom
                - type: conditional
                  conditions:
                    - entity: input_select.mode1_bedroom
                      state_not: 'off'
                  card:
                    type: entities
                    entities:
                      - type: 'custom:slider-entity-row'
                        entity: input_number.set_temp_bedroom
                      - entity: input_select.swing1_bedroom
                      - entity: input_select.fan1_bedroom

Is it a bug? Or am I doing something stupid?