import { useState , useEffect } from "react"; import { useTranslation } from "react-i18next"; import { JsonRpcResponse, useJsonRpc } from "@/hooks/useJsonRpc"; import { SettingsPageHeader } from "../components/SettingsPageheader"; import { Button } from "../components/Button"; import notifications from "../notifications"; import Checkbox from "../components/Checkbox"; import { useDeviceUiNavigation } from "../hooks/useAppNavigation"; import { useDeviceStore } from "../hooks/stores"; import { SettingsItem } from "./devices.$id.settings"; export default function SettingsGeneralRoute() { const { send } = useJsonRpc(); const { t } = useTranslation(); const { navigateTo } = useDeviceUiNavigation(); const [autoUpdate, setAutoUpdate] = useState(true); const currentVersions = useDeviceStore(state => { const { appVersion, systemVersion } = state; if (!appVersion || !systemVersion) return null; return { appVersion, systemVersion }; }); useEffect(() => { send("getAutoUpdateState", {}, (resp: JsonRpcResponse) => { if ("error" in resp) return; setAutoUpdate(resp.result as boolean); }); }, [send]); const handleAutoUpdateChange = (enabled: boolean) => { send("setAutoUpdateState", { enabled }, (resp: JsonRpcResponse) => { if ("error" in resp) { notifications.error( t('Failed_to_set_auto-update_msg',{msg:resp.error.data || t('Unknown_error')}) ); return; } setAutoUpdate(enabled); }); }; return (