Make Lovelace filter card more robust (#1431)

* Make Lovelace filter card more robust

* Update hui-entity-filter-card.js
This commit is contained in:
Paulus Schoutsen 2018-07-09 18:25:00 +02:00 committed by GitHub
parent 2e4ddebcda
commit 133d198e7c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -34,6 +34,7 @@ class HuiEntitiesCard extends PolymerElement {
if (this.lastChild) { if (this.lastChild) {
this.removeChild(this.lastChild); this.removeChild(this.lastChild);
this._element = null;
} }
const card = 'card' in config ? Object.assign({}, config.card) : {}; const card = 'card' in config ? Object.assign({}, config.card) : {};
@ -43,14 +44,12 @@ class HuiEntitiesCard extends PolymerElement {
const element = createCardElement(card); const element = createCardElement(card);
element._filterRawConfig = card; element._filterRawConfig = card;
this._updateCardConfig(element); this._updateCardConfig(element);
element.hass = this.hass;
this.appendChild(element); this._element = element;
} }
_hassChanged(hass) { _hassChanged() {
const element = this.lastChild; this._updateCardConfig(this._element);
this._updateCardConfig(element);
element.hass = hass;
} }
_updateCardConfig(element) { _updateCardConfig(element) {
@ -69,6 +68,10 @@ class HuiEntitiesCard extends PolymerElement {
{ entities: entitiesList } { entities: entitiesList }
)); ));
element.isPanel = this.isPanel; element.isPanel = this.isPanel;
element.hass = this.hass;
// Attach element if it has never been attached.
if (!this.lastChild) this.appendChild(element);
} }
} }
customElements.define('hui-entity-filter-card', HuiEntitiesCard); customElements.define('hui-entity-filter-card', HuiEntitiesCard);