Add separate flag for progress indicators.
This commit is contained in:
@@ -122,7 +122,8 @@ export function renderProgressIndicator(options?: {
|
|||||||
return html`
|
return html`
|
||||||
<frigate-card-progress-indicator
|
<frigate-card-progress-indicator
|
||||||
.message=${options?.message || ''}
|
.message=${options?.message || ''}
|
||||||
.animated=${options?.cardWideConfig?.performance?.profile !== 'low'}
|
.animated=${options?.cardWideConfig?.performance?.features
|
||||||
|
.animated_progress_indicator ?? true}
|
||||||
>
|
>
|
||||||
</frigate-card-progress-indicator>
|
</frigate-card-progress-indicator>
|
||||||
`;
|
`;
|
||||||
|
|||||||
+5
-1
@@ -192,7 +192,8 @@ export const CONF_MENU_BUTTONS_FRIGATE_UI = `${CONF_MENU}.buttons.frigate_ui` as
|
|||||||
export const CONF_MENU_BUTTONS_FULLSCREEN = `${CONF_MENU}.buttons.fullscreen` as const;
|
export const CONF_MENU_BUTTONS_FULLSCREEN = `${CONF_MENU}.buttons.fullscreen` as const;
|
||||||
export const CONF_MENU_BUTTONS_IMAGE = `${CONF_MENU}.buttons.image` as const;
|
export const CONF_MENU_BUTTONS_IMAGE = `${CONF_MENU}.buttons.image` as const;
|
||||||
export const CONF_MENU_BUTTONS_LIVE = `${CONF_MENU}.buttons.live` as const;
|
export const CONF_MENU_BUTTONS_LIVE = `${CONF_MENU}.buttons.live` as const;
|
||||||
export const CONF_MENU_BUTTONS_MEDIA_PLAYER = `${CONF_MENU}.buttons.media_player` as const;
|
export const CONF_MENU_BUTTONS_MEDIA_PLAYER =
|
||||||
|
`${CONF_MENU}.buttons.media_player` as const;
|
||||||
export const CONF_MENU_BUTTONS_SNAPSHOTS = `${CONF_MENU}.buttons.snapshots` as const;
|
export const CONF_MENU_BUTTONS_SNAPSHOTS = `${CONF_MENU}.buttons.snapshots` as const;
|
||||||
export const CONF_MENU_BUTTONS_TIMELINE = `${CONF_MENU}.buttons.timeline` as const;
|
export const CONF_MENU_BUTTONS_TIMELINE = `${CONF_MENU}.buttons.timeline` as const;
|
||||||
|
|
||||||
@@ -203,5 +204,8 @@ export const CONF_DIMENSIONS_ASPECT_RATIO_MODE =
|
|||||||
|
|
||||||
export const CONF_OVERRIDES = 'overrides' as const;
|
export const CONF_OVERRIDES = 'overrides' as const;
|
||||||
|
|
||||||
|
export const CONF_PERFORMANCE = 'performance' as const;
|
||||||
|
export const CONF_PERFORMANCE_FEATURES_ANIMATED_PROGRESS_INDICATOR = `${CONF_PERFORMANCE}.features.animated_progress_indicator`;
|
||||||
|
|
||||||
// Taken from https://github.dev/home-assistant/frontend/blob/b5861869e39290fd2e15737e89571dfc543b3ad3/src/data/media-player.ts#L93
|
// Taken from https://github.dev/home-assistant/frontend/blob/b5861869e39290fd2e15737e89571dfc543b3ad3/src/data/media-player.ts#L93
|
||||||
export const MEDIA_PLAYER_SUPPORT_BROWSE_MEDIA = 131072;
|
export const MEDIA_PLAYER_SUPPORT_BROWSE_MEDIA = 131072;
|
||||||
|
|||||||
@@ -41,6 +41,7 @@ import {
|
|||||||
CONF_MENU_BUTTONS_MEDIA_PLAYER,
|
CONF_MENU_BUTTONS_MEDIA_PLAYER,
|
||||||
CONF_MENU_BUTTONS_TIMELINE,
|
CONF_MENU_BUTTONS_TIMELINE,
|
||||||
CONF_MENU_STYLE,
|
CONF_MENU_STYLE,
|
||||||
|
CONF_PERFORMANCE_FEATURES_ANIMATED_PROGRESS_INDICATOR,
|
||||||
CONF_TIMELINE_CONTROLS_THUMBNAILS_MODE,
|
CONF_TIMELINE_CONTROLS_THUMBNAILS_MODE,
|
||||||
CONF_TIMELINE_CONTROLS_THUMBNAILS_SHOW_DETAILS,
|
CONF_TIMELINE_CONTROLS_THUMBNAILS_SHOW_DETAILS,
|
||||||
CONF_TIMELINE_CONTROLS_THUMBNAILS_SHOW_FAVORITE_CONTROL,
|
CONF_TIMELINE_CONTROLS_THUMBNAILS_SHOW_FAVORITE_CONTROL,
|
||||||
@@ -110,6 +111,9 @@ const LOW_PROFILE_DEFAULTS = {
|
|||||||
[CONF_TIMELINE_CONTROLS_THUMBNAILS_SHOW_FAVORITE_CONTROL]: false,
|
[CONF_TIMELINE_CONTROLS_THUMBNAILS_SHOW_FAVORITE_CONTROL]: false,
|
||||||
[CONF_TIMELINE_CONTROLS_THUMBNAILS_SHOW_TIMELINE_CONTROL]: false,
|
[CONF_TIMELINE_CONTROLS_THUMBNAILS_SHOW_TIMELINE_CONTROL]: false,
|
||||||
[CONF_TIMELINE_CONTROLS_THUMBNAILS_SHOW_DETAILS]: false,
|
[CONF_TIMELINE_CONTROLS_THUMBNAILS_SHOW_DETAILS]: false,
|
||||||
|
|
||||||
|
// Disable all optional performance related features.
|
||||||
|
[CONF_PERFORMANCE_FEATURES_ANIMATED_PROGRESS_INDICATOR]: false,
|
||||||
};
|
};
|
||||||
|
|
||||||
const LOW_PROFILE_CAMERA_DEFAULTS = {
|
const LOW_PROFILE_CAMERA_DEFAULTS = {
|
||||||
|
|||||||
+17
-5
@@ -206,7 +206,7 @@ const FRIGATE_CARD_GENERAL_ACTIONS = [
|
|||||||
'menu_toggle',
|
'menu_toggle',
|
||||||
'diagnostics',
|
'diagnostics',
|
||||||
'recording',
|
'recording',
|
||||||
'recordings'
|
'recordings',
|
||||||
] as const;
|
] as const;
|
||||||
const FRIGATE_CARD_ACTIONS = [
|
const FRIGATE_CARD_ACTIONS = [
|
||||||
...FRIGATE_CARD_GENERAL_ACTIONS,
|
...FRIGATE_CARD_GENERAL_ACTIONS,
|
||||||
@@ -1208,11 +1208,23 @@ export type LiveOverrides = z.infer<typeof liveOverridesSchema>;
|
|||||||
|
|
||||||
const performanceConfigDefault = {
|
const performanceConfigDefault = {
|
||||||
profile: 'high' as const,
|
profile: 'high' as const,
|
||||||
}
|
features: {
|
||||||
|
animated_progress_indicator: true,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
|
||||||
const performanceConfigSchema = z.object({
|
const performanceConfigSchema = z
|
||||||
profile: z.enum(['low', 'high'])
|
.object({
|
||||||
}).default(performanceConfigDefault);
|
profile: z.enum(['low', 'high']),
|
||||||
|
features: z
|
||||||
|
.object({
|
||||||
|
animated_progress_indicator: z
|
||||||
|
.boolean()
|
||||||
|
.default(performanceConfigDefault.features.animated_progress_indicator),
|
||||||
|
})
|
||||||
|
.default(performanceConfigDefault.features),
|
||||||
|
})
|
||||||
|
.default(performanceConfigDefault);
|
||||||
export type PerformanceConfig = z.infer<typeof performanceConfigSchema>;
|
export type PerformanceConfig = z.infer<typeof performanceConfigSchema>;
|
||||||
|
|
||||||
export interface CardWideConfig {
|
export interface CardWideConfig {
|
||||||
|
|||||||
Reference in New Issue
Block a user