From e3400ec81529b61f80a9296ed72d8799c8b78c4e Mon Sep 17 00:00:00 2001 From: Felipe Santos Date: Wed, 8 Jun 2022 02:08:14 -0300 Subject: [PATCH] Do not show unavailable media players Because they are not playable, anyway. --- src/card.ts | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/card.ts b/src/card.ts index ac7ae248..276dc35f 100644 --- a/src/card.ts +++ b/src/card.ts @@ -3,7 +3,9 @@ import { CSSResultGroup, html, LitElement, - PropertyValues, TemplateResult, unsafeCSS + PropertyValues, + TemplateResult, + unsafeCSS, } from 'lit'; import { customElement, property, state } from 'lit/decorators.js'; import { classMap } from 'lit/directives/class-map.js'; @@ -18,7 +20,7 @@ import { ConditionState, conditionStateRequestHandler, getOverriddenConfig, - getOverridesByKey + getOverridesByKey, } from './card-condition.js'; import './components/elements.js'; import { FrigateCardElements } from './components/elements.js'; @@ -38,7 +40,7 @@ import { CAMERA_BIRDSEYE, CARD_VERSION, MEDIA_PLAYER_SUPPORT_BROWSE_MEDIA, - REPO_URL + REPO_URL, } from './const.js'; import './editor.js'; import { localize } from './localize/localize.js'; @@ -61,14 +63,14 @@ import { MediaShowInfo, MenuButton, Message, - RawFrigateCardConfig + RawFrigateCardConfig, } from './types.js'; import { convertActionToFrigateCardCustomAction, createFrigateCardCustomAction, frigateCardHandleAction, frigateCardHasAction, - getActionConfigGivenAction + getActionConfigGivenAction, } from './utils/action.js'; import { contentsChanged } from './utils/basic.js'; import { getCameraIcon, getCameraID, getCameraTitle } from './utils/camera.js'; @@ -79,7 +81,7 @@ import { homeAssistantSignPath, isHassDifferent, isTriggeredState, - sideLoadHomeAssistantElements + sideLoadHomeAssistantElements, } from './utils/ha'; import { getEventID } from './utils/ha/browse-media.js'; import { DeviceList, getAllDevices } from './utils/ha/device-registry.js'; @@ -87,7 +89,7 @@ import { ExtendedEntityCache, getAllEntities, getExtendedEntities, - getExtendedEntity + getExtendedEntity, } from './utils/ha/entity-registry.js'; import { ResolvedMediaCache } from './utils/ha/resolved-media.js'; import { supportsFeature } from './utils/ha/update.js'; @@ -499,7 +501,11 @@ export class FrigateCard extends LitElement { const isValidMediaPlayer = (entity: string): boolean => { if (entity.startsWith('media_player.')) { const stateObj = this._hass?.states[entity]; - if (stateObj && supportsFeature(stateObj, MEDIA_PLAYER_SUPPORT_BROWSE_MEDIA)) { + if ( + stateObj && + stateObj.state !== 'unavailable' && + supportsFeature(stateObj, MEDIA_PLAYER_SUPPORT_BROWSE_MEDIA) + ) { return true; } }