import { useTranslation } from "react-i18next"; import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogFooter, } from "@/components/ui/dialog"; import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { Switch } from "@/components/ui/switch"; import { useConfig } from "./ConfigProvider"; interface SettingsDialogProps { isOpen: boolean; onOpenChange: (isOpen: boolean) => void; } export function SettingsDialog({ isOpen, onOpenChange }: SettingsDialogProps) { const { t } = useTranslation(); const { config, setConfig } = useConfig(); if (!config) { return null; } const handleLogChange = (checked: boolean) => { setConfig({ ...config, LOG: checked }); }; const handlePathChange = (e: React.ChangeEvent) => { setConfig({ ...config, CLAUDE_PATH: e.target.value }); }; return ( {t("toplevel.title")}
setConfig({ ...config, HOST: e.target.value })} className="transition-all-ease focus:scale-[1.01]" />
setConfig({ ...config, PORT: parseInt(e.target.value, 10) })} className="transition-all-ease focus:scale-[1.01]" />
setConfig({ ...config, API_TIMEOUT_MS: e.target.value })} className="transition-all-ease focus:scale-[1.01]" />
setConfig({ ...config, PROXY_URL: e.target.value })} className="transition-all-ease focus:scale-[1.01]" />
setConfig({ ...config, APIKEY: e.target.value })} className="transition-all-ease focus:scale-[1.01]" />
); }