fix enabled camera state switch after adding via wizard

Cameras added mid-session have no WS state until the dispatcher publishes camera_activity (which only happens on a fresh onConnect). Fall back to the config's enabled value so the switch reflects reality immediately after the wizard closes.
This commit is contained in:
Josh Hawkins 2026-05-06 11:52:17 -05:00
parent bdcdbe7c9d
commit b735c76920

View File

@ -313,12 +313,18 @@ type CameraEnableSwitchProps = {
function CameraEnableSwitch({ cameraName }: CameraEnableSwitchProps) { function CameraEnableSwitch({ cameraName }: CameraEnableSwitchProps) {
const { payload: enabledState, send: sendEnabled } = const { payload: enabledState, send: sendEnabled } =
useEnabledState(cameraName); useEnabledState(cameraName);
const { data: config } = useSWR<FrigateConfig>("config");
const isChecked =
enabledState === "ON" || enabledState === "OFF"
? enabledState === "ON"
: (config?.cameras?.[cameraName]?.enabled ?? false);
return ( return (
<div className="flex flex-row items-center"> <div className="flex flex-row items-center">
<Switch <Switch
id={`camera-enabled-${cameraName}`} id={`camera-enabled-${cameraName}`}
checked={enabledState === "ON"} checked={isChecked}
onCheckedChange={(isChecked) => { onCheckedChange={(isChecked) => {
sendEnabled(isChecked ? "ON" : "OFF"); sendEnabled(isChecked ? "ON" : "OFF");
}} }}