2026-02-27 09:55:36 -06:00
|
|
|
import type { SectionConfigOverrides } from "./types";
|
|
|
|
|
|
|
|
|
|
const birdseye: SectionConfigOverrides = {
|
|
|
|
|
base: {
|
|
|
|
|
sectionDocs: "/configuration/birdseye",
|
2026-03-29 16:25:40 -05:00
|
|
|
messages: [
|
|
|
|
|
{
|
2026-08-12 19:24:35 +07:00
|
|
|
key: "object-tracking-detect-disabled",
|
|
|
|
|
messageKey: "configMessages.birdseye.objectTrackingDetectDisabled",
|
2026-03-29 16:25:40 -05:00
|
|
|
severity: "info",
|
|
|
|
|
condition: (ctx) => {
|
|
|
|
|
if (ctx.level !== "camera" || !ctx.fullCameraConfig) return false;
|
2026-08-12 19:24:35 +07:00
|
|
|
const mode = ctx.formData?.mode;
|
|
|
|
|
if (!mode || typeof mode !== "object" || Array.isArray(mode)) {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
2026-03-29 16:25:40 -05:00
|
|
|
return (
|
2026-08-12 19:24:35 +07:00
|
|
|
(mode.objects === true || mode.stationary_objects === true) &&
|
2026-03-29 16:25:40 -05:00
|
|
|
ctx.fullCameraConfig.detect?.enabled === false
|
|
|
|
|
);
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
],
|
2026-02-27 09:55:36 -06:00
|
|
|
restartRequired: [],
|
|
|
|
|
fieldOrder: ["enabled", "mode", "order"],
|
2026-05-18 22:52:40 -05:00
|
|
|
hiddenFields: ["order"],
|
2026-02-27 09:55:36 -06:00
|
|
|
advancedFields: [],
|
|
|
|
|
overrideFields: ["enabled", "mode"],
|
2026-05-11 01:09:50 +08:00
|
|
|
uiSchema: {
|
|
|
|
|
mode: {
|
2026-08-12 19:24:35 +07:00
|
|
|
continuous: { "ui:size": "xs" },
|
|
|
|
|
motion: { "ui:size": "xs" },
|
|
|
|
|
objects: { "ui:size": "xs" },
|
|
|
|
|
stationary_objects: { "ui:size": "xs" },
|
2026-05-11 01:09:50 +08:00
|
|
|
},
|
|
|
|
|
},
|
2026-02-27 09:55:36 -06:00
|
|
|
},
|
|
|
|
|
global: {
|
|
|
|
|
fieldOrder: [
|
|
|
|
|
"enabled",
|
|
|
|
|
"restream",
|
|
|
|
|
"width",
|
|
|
|
|
"height",
|
|
|
|
|
"quality",
|
|
|
|
|
"mode",
|
|
|
|
|
"layout",
|
|
|
|
|
"inactivity_threshold",
|
|
|
|
|
"idle_heartbeat_fps",
|
|
|
|
|
],
|
|
|
|
|
advancedFields: ["width", "height", "quality", "inactivity_threshold"],
|
|
|
|
|
restartRequired: [
|
|
|
|
|
"enabled",
|
|
|
|
|
"restream",
|
|
|
|
|
"width",
|
|
|
|
|
"height",
|
|
|
|
|
"quality",
|
|
|
|
|
"layout.scaling_factor",
|
|
|
|
|
"idle_heartbeat_fps",
|
|
|
|
|
],
|
|
|
|
|
uiSchema: {
|
|
|
|
|
mode: {
|
2026-05-18 22:52:40 -05:00
|
|
|
"ui:after": { render: "BirdseyeCameraReorder" },
|
2026-02-27 09:55:36 -06:00
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export default birdseye;
|