mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-08-03 17:43:59 +03:00
* add ability to order subfields with dot notation * put review genai enabled at the top of the genai subsection * fix genai summary title truncation issue in detail stream
109 lines
2.8 KiB
TypeScript
109 lines
2.8 KiB
TypeScript
import type { SectionConfigOverrides } from "./types";
|
|
|
|
const review: SectionConfigOverrides = {
|
|
base: {
|
|
sectionDocs: "/configuration/review",
|
|
messages: [
|
|
{
|
|
key: "record-disabled",
|
|
messageKey: "configMessages.review.recordDisabled",
|
|
severity: "warning",
|
|
condition: (ctx) => {
|
|
if (ctx.level === "camera" && ctx.fullCameraConfig) {
|
|
return ctx.fullCameraConfig.record.enabled === false;
|
|
}
|
|
return ctx.fullConfig.record?.enabled === false;
|
|
},
|
|
},
|
|
{
|
|
key: "detect-disabled",
|
|
messageKey: "configMessages.review.detectDisabled",
|
|
severity: "info",
|
|
condition: (ctx) => {
|
|
if (ctx.level === "camera" && ctx.fullCameraConfig) {
|
|
return ctx.fullCameraConfig.detect?.enabled === false;
|
|
}
|
|
return false;
|
|
},
|
|
},
|
|
],
|
|
fieldMessages: [
|
|
{
|
|
key: "detections-all-non-alert",
|
|
field: "detections.labels",
|
|
messageKey: "configMessages.review.allNonAlertDetections",
|
|
severity: "info",
|
|
position: "after",
|
|
condition: (ctx) => {
|
|
const labels = (
|
|
ctx.formData?.detections as Record<string, unknown> | undefined
|
|
)?.labels;
|
|
return !Array.isArray(labels) || labels.length === 0;
|
|
},
|
|
},
|
|
],
|
|
fieldDocs: {
|
|
"alerts.labels": "/configuration/review/#alerts-and-detections",
|
|
"detections.labels": "/configuration/review/#alerts-and-detections",
|
|
},
|
|
restartRequired: [],
|
|
fieldOrder: ["alerts", "detections", "genai", "genai.enabled"],
|
|
fieldGroups: {},
|
|
hiddenFields: [
|
|
"enabled_in_config",
|
|
"alerts.enabled_in_config",
|
|
"detections.enabled_in_config",
|
|
"genai.enabled_in_config",
|
|
],
|
|
advancedFields: [],
|
|
uiSchema: {
|
|
alerts: {
|
|
"ui:before": { render: "CameraReviewStatusToggles" },
|
|
labels: {
|
|
"ui:widget": "reviewLabels",
|
|
"ui:options": {
|
|
suppressMultiSchema: true,
|
|
},
|
|
},
|
|
required_zones: {
|
|
"ui:widget": "hidden",
|
|
},
|
|
},
|
|
detections: {
|
|
labels: {
|
|
"ui:widget": "reviewLabels",
|
|
"ui:options": {
|
|
suppressMultiSchema: true,
|
|
},
|
|
},
|
|
required_zones: {
|
|
"ui:widget": "hidden",
|
|
},
|
|
},
|
|
genai: {
|
|
additional_concerns: {
|
|
"ui:widget": "ArrayAsTextWidget",
|
|
"ui:options": {
|
|
size: "full",
|
|
multiline: true,
|
|
},
|
|
},
|
|
activity_context_prompt: {
|
|
"ui:widget": "textarea",
|
|
"ui:options": {
|
|
size: "full",
|
|
},
|
|
},
|
|
},
|
|
},
|
|
},
|
|
global: {
|
|
restartRequired: [],
|
|
},
|
|
camera: {
|
|
restartRequired: [],
|
|
},
|
|
};
|
|
|
|
export default review;
|