Must specify media type in viewer target search.
This commit is contained in:
+3
-3
@@ -35,7 +35,7 @@ import type {
|
||||
Message,
|
||||
} from './types.js';
|
||||
|
||||
import { CARD_VERSION, REPO_URL } from './const.js';
|
||||
import { CAMERA_BIRDSEYE, CARD_VERSION, REPO_URL } from './const.js';
|
||||
import { FrigateCardElements } from './components/elements.js';
|
||||
import { FrigateCardImage } from './components/image.js';
|
||||
import { FRIGATE_BUTTON_MENU_ICON, FrigateCardMenu } from './components/menu.js';
|
||||
@@ -333,7 +333,7 @@ export class FrigateCard extends LitElement {
|
||||
if (
|
||||
this._getConfig().menu.buttons.clips &&
|
||||
cameraConfig?.camera_name &&
|
||||
(cameraConfig?.camera_name !== 'birdseye' ||
|
||||
(cameraConfig?.camera_name !== CAMERA_BIRDSEYE ||
|
||||
cameraConfig?.dependent_cameras?.length)
|
||||
) {
|
||||
buttons.push({
|
||||
@@ -351,7 +351,7 @@ export class FrigateCard extends LitElement {
|
||||
if (
|
||||
this._getConfig().menu.buttons.snapshots &&
|
||||
cameraConfig?.camera_name &&
|
||||
(cameraConfig?.camera_name !== 'birdseye' ||
|
||||
(cameraConfig?.camera_name !== CAMERA_BIRDSEYE ||
|
||||
cameraConfig?.dependent_cameras?.length)
|
||||
) {
|
||||
buttons.push({
|
||||
|
||||
@@ -32,6 +32,7 @@ import {
|
||||
FrigateEvent,
|
||||
frigateCardConfigDefaults,
|
||||
} from '../types';
|
||||
import { CAMERA_BIRDSEYE } from '../const';
|
||||
import { View, ViewContext } from '../view';
|
||||
import {
|
||||
dispatchErrorMessageEvent,
|
||||
@@ -283,7 +284,7 @@ class TimelineEventManager {
|
||||
if (
|
||||
this._dateEnd &&
|
||||
this._dateStart &&
|
||||
cameraConfig.camera_name !== 'birdseye'
|
||||
cameraConfig.camera_name !== CAMERA_BIRDSEYE
|
||||
) {
|
||||
const param = BrowseMediaUtil.getBrowseMediaQueryParameters(
|
||||
hass,
|
||||
@@ -592,7 +593,7 @@ export class FrigateCardTimelineCore extends LitElement {
|
||||
protected _getGroups(): DataGroupCollectionType {
|
||||
const groups: FrigateCardGroupData[] = [];
|
||||
this.cameras?.forEach((cameraConfig, camera) => {
|
||||
if (cameraConfig.camera_name !== 'birdseye') {
|
||||
if (cameraConfig.camera_name !== CAMERA_BIRDSEYE) {
|
||||
groups.push({
|
||||
id: camera,
|
||||
content: getCameraTitle(this.hass, cameraConfig),
|
||||
|
||||
@@ -77,7 +77,12 @@ export class FrigateCardViewer extends LitElement {
|
||||
);
|
||||
|
||||
if (!this.view.target) {
|
||||
if (!browseMediaQueryParameters) {
|
||||
// If the target is not specified, the view must tell us which mediaType
|
||||
// to search for. When the target *is* specified, the view is not required
|
||||
// to indicate the media type (e.g. the mixed 'events' view from the
|
||||
// timeline).
|
||||
const mediaType = this.view.getMediaType();
|
||||
if (!browseMediaQueryParameters || !mediaType) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -85,7 +90,10 @@ export class FrigateCardViewer extends LitElement {
|
||||
this,
|
||||
this.hass,
|
||||
this.view,
|
||||
browseMediaQueryParameters,
|
||||
BrowseMediaUtil.overrideMultiBrowseMediaQueryParameters(
|
||||
browseMediaQueryParameters,
|
||||
{ mediaType: mediaType },
|
||||
),
|
||||
);
|
||||
return renderProgressIndicator();
|
||||
}
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
export const CARD_VERSION = '3.0.0' as const;
|
||||
|
||||
export const CAMERA_BIRDSEYE = 'birdseye' as const;
|
||||
export const REPO_URL = 'https://github.com/dermotduffy/frigate-hass-card' as const;
|
||||
export const TROUBLESHOOTING_URL = `${REPO_URL}#troubleshooting` as const;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user