From 7f133d0316b5598037a90a48f6e0104d339de28f Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Tue, 12 Jun 2018 09:28:41 -0400 Subject: [PATCH] Don't rely on get panels from websocket package (#1264) --- src/components/ha-sidebar.js | 2 +- src/entrypoints/app.js | 13 ++++++++++++- src/layouts/partial-panel-resolver.js | 2 +- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/components/ha-sidebar.js b/src/components/ha-sidebar.js index 560f4b2daa..a68bb96261 100644 --- a/src/components/ha-sidebar.js +++ b/src/components/ha-sidebar.js @@ -171,7 +171,7 @@ class HaSidebar extends } computePanels(hass) { - var panels = hass.config.panels; + var panels = hass.panels; var sortValue = { map: 1, logbook: 2, diff --git a/src/entrypoints/app.js b/src/entrypoints/app.js index 735dbc1544..837fea06e8 100644 --- a/src/entrypoints/app.js +++ b/src/entrypoints/app.js @@ -104,7 +104,7 @@ class HomeAssistant extends LocalizeMixin(PolymerElement) { } computeShowMain(hass) { - return hass && hass.states && hass.config; + return hass && hass.states && hass.config && hass.panels; } computeShowLoading(connectionPromise, hass) { @@ -176,6 +176,7 @@ class HomeAssistant extends LocalizeMixin(PolymerElement) { states: null, config: null, themes: null, + panels: null, panelUrl: this.panelUrl, language: getActiveTranslation(), @@ -240,6 +241,7 @@ class HomeAssistant extends LocalizeMixin(PolymerElement) { var reconnected = () => { this._updateHass({ connected: true }); this.loadBackendTranslations(); + this._loadPanels(); }; const disconnected = () => { @@ -275,6 +277,8 @@ class HomeAssistant extends LocalizeMixin(PolymerElement) { unsubConfig = unsub; }); + this._loadPanels(); + var unsubThemes; @@ -379,6 +383,13 @@ class HomeAssistant extends LocalizeMixin(PolymerElement) { } } + _loadPanels() { + this.connection.sendMessagePromise({ + type: 'get_panels' + }).then(msg => this._updateHass({ panels: msg.result })); + } + + _updateHass(obj) { this.hass = Object.assign({}, this.hass, obj); } diff --git a/src/layouts/partial-panel-resolver.js b/src/layouts/partial-panel-resolver.js index c1bc8f368e..4f86569d88 100644 --- a/src/layouts/partial-panel-resolver.js +++ b/src/layouts/partial-panel-resolver.js @@ -213,7 +213,7 @@ class PartialPanelResolver extends NavigateMixin(PolymerElement) { } computeCurrentPanel(hass) { - return hass.config.panels[hass.panelUrl]; + return hass.panels[hass.panelUrl]; } }