diff --git a/src/layouts/ha-init-page.ts b/src/layouts/ha-init-page.ts index f8476643ec..737346c6f4 100644 --- a/src/layouts/ha-init-page.ts +++ b/src/layouts/ha-init-page.ts @@ -1,4 +1,3 @@ -import "@polymer/paper-button/paper-button"; import "@polymer/paper-spinner/paper-spinner-lite"; import { @@ -62,6 +61,13 @@ class HaInitPage extends LitElement { `; } + protected updated(changedProps) { + super.updated(changedProps); + if (changedProps.has("error") && this.error) { + import(/* webpackChunkName: "paper-button" */ "@polymer/paper-button/paper-button"); + } + } + private _retry() { location.reload(); } diff --git a/src/layouts/hass-loading-screen.js b/src/layouts/hass-loading-screen.js index 025f6ee84a..d97813833b 100644 --- a/src/layouts/hass-loading-screen.js +++ b/src/layouts/hass-loading-screen.js @@ -1,6 +1,6 @@ import "@polymer/app-layout/app-toolbar/app-toolbar"; import "@polymer/iron-flex-layout/iron-flex-layout-classes"; -import "@polymer/paper-spinner/paper-spinner"; +import "@polymer/paper-spinner/paper-spinner-lite"; import { html } from "@polymer/polymer/lib/utils/html-tag"; import { PolymerElement } from "@polymer/polymer/polymer-element"; @@ -25,10 +25,10 @@ class HassLoadingScreen extends PolymerElement { narrow="[[narrow]]" show-menu="[[showMenu]]" > -
[[title]]
+
[[title]]
- +
`; diff --git a/src/layouts/partial-panel-resolver.ts b/src/layouts/partial-panel-resolver.ts index 97be0f8be4..1b58560bb2 100644 --- a/src/layouts/partial-panel-resolver.ts +++ b/src/layouts/partial-panel-resolver.ts @@ -6,7 +6,6 @@ import { } from "lit-element"; import "./hass-loading-screen"; -import "./hass-error-screen"; import { HomeAssistant, Panel, PanelElement, Route } from "../types"; // Cache of panel loading promises. @@ -168,7 +167,15 @@ class PartialPanelResolver extends LitElement { `; } + protected firstUpdated(changedProps: PropertyValues) { + super.firstUpdated(changedProps); + // Load it before it's needed, because it will be shown if user is offline + // and a panel has to be loaded. + import(/* webpackChunkName: "hass-error-screen" */ "./hass-error-screen"); + } + protected updated(changedProps: PropertyValues) { + super.updated(changedProps); if (!this.hass) { return; }