Don't display browser-player if it can't work.
This commit is contained in:
parent
e2bdad02f4
commit
8703964438
File diff suppressed because one or more lines are too long
@ -7,19 +7,19 @@ class BrowserPlayerEditor extends LitElement {
|
||||
}
|
||||
}
|
||||
|
||||
(async () => {
|
||||
while (!window.browser_mod) {
|
||||
await new Promise((resolve) => setTimeout(resolve, 1000));
|
||||
}
|
||||
await window.browser_mod.connectionPromise;
|
||||
// (async () => {
|
||||
// while (!window.browser_mod) {
|
||||
// await new Promise((resolve) => setTimeout(resolve, 1000));
|
||||
// }
|
||||
// await window.browser_mod.connectionPromise;
|
||||
|
||||
if (!customElements.get("browser-player-editor")) {
|
||||
customElements.define("browser-player-editor", BrowserPlayerEditor);
|
||||
window.customCards = window.customCards || [];
|
||||
window.customCards.push({
|
||||
type: "browser-player",
|
||||
name: "Browser Player",
|
||||
preview: true,
|
||||
});
|
||||
}
|
||||
})();
|
||||
if (!customElements.get("browser-player-editor")) {
|
||||
customElements.define("browser-player-editor", BrowserPlayerEditor);
|
||||
window.customCards = window.customCards || [];
|
||||
window.customCards.push({
|
||||
type: "browser-player",
|
||||
name: "Browser Player",
|
||||
preview: true,
|
||||
});
|
||||
}
|
||||
// })();
|
||||
|
@ -7,6 +7,7 @@ import "./types";
|
||||
|
||||
class BrowserPlayer extends LitElement {
|
||||
@property() hass;
|
||||
@property({ attribute: "edit-mode", reflect: true }) editMode;
|
||||
|
||||
static getConfigElement() {
|
||||
return document.createElement("browser-player-editor");
|
||||
@ -15,6 +16,17 @@ class BrowserPlayer extends LitElement {
|
||||
return {};
|
||||
}
|
||||
|
||||
async connectedCallback() {
|
||||
super.connectedCallback();
|
||||
if (!window.browser_mod?.registered) {
|
||||
if (this.parentElement.localName === "hui-card-preview") {
|
||||
this.removeAttribute("hidden");
|
||||
} else {
|
||||
this.setAttribute("hidden", "");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async setConfig(config) {
|
||||
while (!window.browser_mod) {
|
||||
await new Promise((resolve) => setTimeout(resolve, 1000));
|
||||
@ -28,10 +40,10 @@ class BrowserPlayer extends LitElement {
|
||||
"canplay",
|
||||
"loadeddata",
|
||||
])
|
||||
window.browser_mod._audio_player.addEventListener(event, () =>
|
||||
window.browser_mod?._audio_player?.addEventListener(event, () =>
|
||||
this.requestUpdate()
|
||||
);
|
||||
window.browser_mod._video_player.addEventListener(event, () =>
|
||||
window.browser_mod?._video_player?.addEventListener(event, () =>
|
||||
this.requestUpdate()
|
||||
);
|
||||
}
|
||||
@ -72,6 +84,13 @@ class BrowserPlayer extends LitElement {
|
||||
window.setTimeout(() => this.requestUpdate(), 100);
|
||||
return html``;
|
||||
}
|
||||
if (!window.browser_mod?.registered) {
|
||||
return html`
|
||||
<ha-card>
|
||||
<ha-alert> This browser is not registered to Browser Mod. </ha-alert>
|
||||
</ha-card>
|
||||
`;
|
||||
}
|
||||
return html`
|
||||
<ha-card>
|
||||
<div class="card-content">
|
||||
@ -116,6 +135,12 @@ class BrowserPlayer extends LitElement {
|
||||
|
||||
static get styles() {
|
||||
return css`
|
||||
:host(["hidden"]) {
|
||||
display: none;
|
||||
}
|
||||
:host([edit-mode="true"]) {
|
||||
display: block !important;
|
||||
}
|
||||
paper-icon-button[highlight] {
|
||||
color: var(--accent-color);
|
||||
}
|
||||
@ -143,12 +168,12 @@ class BrowserPlayer extends LitElement {
|
||||
}
|
||||
}
|
||||
|
||||
(async () => {
|
||||
while (!window.browser_mod) {
|
||||
await new Promise((resolve) => setTimeout(resolve, 1000));
|
||||
}
|
||||
await window.browser_mod.connectionPromise;
|
||||
// (async () => {
|
||||
// while (!window.browser_mod) {
|
||||
// await new Promise((resolve) => setTimeout(resolve, 1000));
|
||||
// }
|
||||
// await window.browser_mod.connectionPromise;
|
||||
|
||||
if (!customElements.get("browser-player"))
|
||||
customElements.define("browser-player", BrowserPlayer);
|
||||
})();
|
||||
if (!customElements.get("browser-player"))
|
||||
customElements.define("browser-player", BrowserPlayer);
|
||||
// })();
|
||||
|
Loading…
x
Reference in New Issue
Block a user