From 56e176a6f1ea51144d2970c8ae1a3b45f1d0d3de Mon Sep 17 00:00:00 2001 From: Bram Kragten Date: Wed, 18 Mar 2020 21:29:09 +0100 Subject: [PATCH 1/5] Fix stack editor in conditional card (#5265) --- .../lovelace/editor/card-editor/hui-dialog-suggest-card.ts | 2 -- .../editor/config-elements/hui-conditional-card-editor.ts | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/panels/lovelace/editor/card-editor/hui-dialog-suggest-card.ts b/src/panels/lovelace/editor/card-editor/hui-dialog-suggest-card.ts index b478663aab..283cb9f4d3 100755 --- a/src/panels/lovelace/editor/card-editor/hui-dialog-suggest-card.ts +++ b/src/panels/lovelace/editor/card-editor/hui-dialog-suggest-card.ts @@ -13,9 +13,7 @@ import deepFreeze from "deep-freeze"; import { HomeAssistant } from "../../../../types"; import { LovelaceCardConfig } from "../../../../data/lovelace"; -import "./hui-card-editor"; import "./hui-card-preview"; -import "./hui-card-picker"; import { addCards } from "../config-util"; import "../../../../components/ha-yaml-editor"; diff --git a/src/panels/lovelace/editor/config-elements/hui-conditional-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-conditional-card-editor.ts index b1c83867ab..c05fdbd133 100644 --- a/src/panels/lovelace/editor/config-elements/hui-conditional-card-editor.ts +++ b/src/panels/lovelace/editor/config-elements/hui-conditional-card-editor.ts @@ -78,6 +78,7 @@ export class HuiConditionalCardEditor extends LitElement ` From 220e4134b79a4cbe6ed3f4fb572cff34b95e6b44 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Wed, 18 Mar 2020 12:32:35 -0700 Subject: [PATCH 2/5] Fix calculating title if panels not loaded yet (#5262) --- src/common/const.ts | 3 --- src/components/ha-sidebar.ts | 10 ++++----- src/data/panel.ts | 38 ++++++++++++++++++++++------------ src/layouts/home-assistant.ts | 4 ++-- src/state/panel-title-mixin.ts | 27 ++++++++++++------------ 5 files changed, 45 insertions(+), 37 deletions(-) diff --git a/src/common/const.ts b/src/common/const.ts index a2dc5412f7..a17ecd29da 100644 --- a/src/common/const.ts +++ b/src/common/const.ts @@ -7,9 +7,6 @@ /** Icon to use when no icon specified for domain. */ export const DEFAULT_DOMAIN_ICON = "hass:bookmark"; -/** Panel to show when no panel is picked. */ -export const DEFAULT_PANEL = "lovelace"; - /** Domains that have a state card. */ export const DOMAINS_WITH_CARD = [ "climate", diff --git a/src/components/ha-sidebar.ts b/src/components/ha-sidebar.ts index 9e0eca09fe..321a703bda 100644 --- a/src/components/ha-sidebar.ts +++ b/src/components/ha-sidebar.ts @@ -18,7 +18,6 @@ import "../components/user/ha-user-badge"; import "../components/ha-menu-button"; import { HomeAssistant, PanelInfo } from "../types"; import { fireEvent } from "../common/dom/fire_event"; -import { DEFAULT_PANEL } from "../common/const"; import { getExternalConfig, ExternalConfig, @@ -33,6 +32,7 @@ import { classMap } from "lit-html/directives/class-map"; import { PaperIconItemElement } from "@polymer/paper-item/paper-icon-item"; import { computeRTL } from "../common/util/compute_rtl"; import { compare } from "../common/string/compare"; +import { getDefaultPanelUrlPath, getDefaultPanel } from "../data/panel"; const SHOW_AFTER_SPACER = ["config", "developer-tools", "hassio"]; @@ -77,7 +77,6 @@ const panelSorter = (a: PanelInfo, b: PanelInfo) => { // both not built in, sort by title return compare(a.title!, b.title!); }; -const DEFAULT_PAGE = localStorage.defaultPage || DEFAULT_PANEL; const computePanels = (hass: HomeAssistant): [PanelInfo[], PanelInfo[]] => { const panels = hass.panels; @@ -88,8 +87,10 @@ const computePanels = (hass: HomeAssistant): [PanelInfo[], PanelInfo[]] => { const beforeSpacer: PanelInfo[] = []; const afterSpacer: PanelInfo[] = []; + const defaultPage = getDefaultPanelUrlPath(); + Object.values(panels).forEach((panel) => { - if (!panel.title || panel.url_path === DEFAULT_PAGE) { + if (!panel.title || panel.url_path === defaultPage) { return; } (SHOW_AFTER_SPACER.includes(panel.url_path) @@ -142,8 +143,7 @@ class HaSidebar extends LitElement { } } - const defaultPanel = - this.hass.panels[DEFAULT_PAGE] || this.hass.panels[DEFAULT_PANEL]; + const defaultPanel = getDefaultPanel(hass.panels); return html`