import { useState } from 'react'; import AccessTimeIcon from '@mui/icons-material/AccessTime'; import CancelIcon from '@mui/icons-material/Cancel'; import DeviceHubIcon from '@mui/icons-material/DeviceHub'; import ImportExportIcon from '@mui/icons-material/ImportExport'; import LockIcon from '@mui/icons-material/Lock'; import SettingsBackupRestoreIcon from '@mui/icons-material/SettingsBackupRestore'; import SettingsEthernetIcon from '@mui/icons-material/SettingsEthernet'; import SettingsInputAntennaIcon from '@mui/icons-material/SettingsInputAntenna'; import TuneIcon from '@mui/icons-material/Tune'; import ViewModuleIcon from '@mui/icons-material/ViewModule'; import { Box, Button, Dialog, DialogActions, DialogContent, DialogTitle, List } from '@mui/material'; import { API } from 'api/app'; import { dialogStyle } from 'CustomTheme'; import { useRequest } from 'alova/client'; import type { APIcall } from 'app/main/types'; import { SectionContent, useLayoutTitle } from 'components'; import ListMenuItem from 'components/layout/ListMenuItem'; import { useI18nContext } from 'i18n/i18n-react'; const Settings = () => { const { LL } = useI18nContext(); useLayoutTitle(LL.SETTINGS(0)); const [confirmFactoryReset, setConfirmFactoryReset] = useState(false); const { send: sendAPI } = useRequest((data: APIcall) => API(data), { immediate: false }); const doFormat = async () => { await sendAPI({ device: 'system', cmd: 'format', id: 0 }).then(() => { setConfirmFactoryReset(false); }); }; const renderFactoryResetDialog = () => ( setConfirmFactoryReset(false)} > {LL.FACTORY_RESET()} {LL.SYSTEM_FACTORY_TEXT_DIALOG()} ); const content = () => ( <> {renderFactoryResetDialog()} ); return {content()}; }; export default Settings;