import { FormEvent, ReactNode, useState } from 'react'; import { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, } from '@/components/ui/dialog'; import { Button } from '@/components/ui/button'; import { useForm } from '@inertiajs/react'; import { Form, FormField, FormFields } from '@/components/ui/form'; import { Label } from '@/components/ui/label'; import InputError from '@/components/ui/input-error'; import { LoaderCircleIcon } from 'lucide-react'; import { Site } from '@/types/site'; import SourceControlSelect from '@/pages/source-controls/components/source-control-select'; export default function ChangeSourceControl({ site, children }: { site: Site; children: ReactNode }) { const [open, setOpen] = useState(false); const form = useForm<{ source_control: string; }>({ source_control: site.source_control_id.toString() || '', }); const submit = (e: FormEvent) => { e.preventDefault(); form.patch(route('site-settings.update-source-control', { server: site.server_id, site: site.id }), { onSuccess: () => { setOpen(false); }, }); }; return ( {children} Change source control Change site's source control.
form.setData('source_control', value)} />
); }