diff --git a/src/layouts/ha-init-page.js b/src/layouts/ha-init-page.js deleted file mode 100644 index fe33063bbb..0000000000 --- a/src/layouts/ha-init-page.js +++ /dev/null @@ -1,48 +0,0 @@ -import "@polymer/iron-flex-layout/iron-flex-layout-classes"; -import "@polymer/paper-button/paper-button"; -import "@polymer/paper-spinner/paper-spinner"; -import { html } from "@polymer/polymer/lib/utils/html-tag"; -import { PolymerElement } from "@polymer/polymer/polymer-element"; - -import LocalizeMixin from "../mixins/localize-mixin"; -import EventsMixin from "../mixins/events-mixin"; - -/* - * @appliesMixin LocalizeMixin - */ -class HaInitPage extends EventsMixin(LocalizeMixin(PolymerElement)) { - static get template() { - return html` - - - -
- - - - -
- `; - } - - static get properties() { - return { - error: Boolean, - }; - } - - _retry() { - location.reload(); - } -} - -customElements.define("ha-init-page", HaInitPage); diff --git a/src/layouts/ha-init-page.ts b/src/layouts/ha-init-page.ts new file mode 100644 index 0000000000..f8476643ec --- /dev/null +++ b/src/layouts/ha-init-page.ts @@ -0,0 +1,70 @@ +import "@polymer/paper-button/paper-button"; +import "@polymer/paper-spinner/paper-spinner-lite"; + +import { + LitElement, + PropertyDeclarations, + html, + CSSResult, + css, +} from "lit-element"; + +/* + * @appliesMixin LocalizeMixin + */ +class HaInitPage extends LitElement { + public error?: boolean; + + static get properties(): PropertyDeclarations { + return { + error: { + type: Boolean, + }, + }; + } + + protected render() { + return html` +
+ + + ${this.error + ? html` + Unable to connect to Home Assistant. + Retry + ` + : "Loading data"} +
+ `; + } + + static get styles(): CSSResult { + return css` + div { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + } + paper-spinner-lite { + margin-bottom: 10px; + } + paper-button { + font-weight: 500; + color: var(--primary-color); + } + `; + } + + private _retry() { + location.reload(); + } +} + +customElements.define("ha-init-page", HaInitPage);