- Add support for Frigate reviews / detections. - Add support for GenAI metadata. - Significant internal refactor to more flexible "UnifiedQuery" to allow mixing cameras with simple metadata and review metadata (e.g. a timeline view of a Frigate camera with reviews, and a Reolink camera with simple metadata). - Add support for folder media as camera media. There are a few more PRs to commit prior to this going live, but commiting this for now due to the scale of the change. BREAKING CHANGE: `media_type` and `events_type` are retired under `live`, `viewer` and `timeline` configuration sections, instead media type is associated (once) with the camera under `media`.
28 lines
719 B
TypeScript
28 lines
719 B
TypeScript
import { z } from 'zod';
|
|
import {
|
|
thumbnailControlsDefaults,
|
|
thumbnailsControlSchema,
|
|
} from './common/controls/thumbnails';
|
|
import {
|
|
timelineCoreConfigDefault,
|
|
timelineCoreConfigSchema,
|
|
} from './common/controls/timeline';
|
|
|
|
export const timelineConfigDefault = {
|
|
...timelineCoreConfigDefault,
|
|
controls: {
|
|
thumbnails: thumbnailControlsDefaults,
|
|
},
|
|
};
|
|
|
|
export const timelineConfigSchema = timelineCoreConfigSchema
|
|
.extend({
|
|
controls: z
|
|
.object({
|
|
thumbnails: thumbnailsControlSchema.default(thumbnailControlsDefaults),
|
|
})
|
|
.default(timelineConfigDefault.controls),
|
|
})
|
|
.default(timelineConfigDefault);
|
|
export type TimelineConfig = z.infer<typeof timelineConfigSchema>;
|