refactor: 总超时从滑块改为数字输入框(120-3600秒),移除未用的Slider导入

This commit is contained in:
thzxx
2026-06-27 22:12:36 +08:00
parent c5ae4c9efa
commit a6397f07db
+12 -5
View File
@@ -3,7 +3,7 @@
*/ */
import { useState, useEffect, useCallback } from 'react'; import { useState, useEffect, useCallback } from 'react';
import { Dialog, DialogContent, DialogTitle, Button, TextField, Select, MenuItem, Tabs, Tab, Slider, Checkbox, Box, Typography, Stack, Divider, FormControlLabel, InputLabel, FormControl, IconButton, Chip } from '@mui/material'; import { Dialog, DialogContent, DialogTitle, Button, TextField, Select, MenuItem, Tabs, Tab, Checkbox, Box, Typography, Stack, Divider, FormControlLabel, InputLabel, FormControl, IconButton, Chip } from '@mui/material';
import { X, Settings, Bot, Wrench, Server, Palette, FileText, Eye, EyeOff, FolderOpen } from 'lucide-react'; import { X, Settings, Bot, Wrench, Server, Palette, FileText, Eye, EyeOff, FolderOpen } from 'lucide-react';
import { useUIStore, type ThemeMode } from '@renderer/stores/ui-store'; import { useUIStore, type ThemeMode } from '@renderer/stores/ui-store';
import { useAgentStore } from '@renderer/stores/agent-store'; import { useAgentStore } from '@renderer/stores/agent-store';
@@ -156,10 +156,17 @@ function AgentSettings() {
))} ))}
</Select> </Select>
</FormControl> </FormControl>
<Box> <TextField
<Stack direction="row" justifyContent="space-between"><Typography variant="caption" sx={{ color: 'text.secondary' }}> ()</Typography><Typography variant="caption" sx={{ fontFamily: 'monospace' }}>{timeout / 1000}s</Typography></Stack> size="small"
<Slider value={timeout / 1000} onChange={(_, v) => setTimeout_((v as number) * 1000)} min={60} max={1800} step={60} size="small" /> label="总超时(秒)"
</Box> type="number"
value={timeout / 1000}
onChange={(e) => {
const v = Number(e.target.value);
if (v >= 120 && v <= 3600) setTimeout_(v * 1000);
}}
slotProps={{ htmlInput: { min: 120, max: 3600, step: 30 } }}
/>
<FormControlLabel control={<Checkbox checked={thinking} onChange={(e) => setThinking(e.target.checked)} size="small" />} label={<Typography variant="body2"></Typography>} /> <FormControlLabel control={<Checkbox checked={thinking} onChange={(e) => setThinking(e.target.checked)} size="small" />} label={<Typography variant="body2"></Typography>} />
{thinking && ( {thinking && (
<FormControl size="small"><InputLabel></InputLabel> <FormControl size="small"><InputLabel></InputLabel>