"use client"; import { type FormEvent, useState } from "react"; import { circuitGroupCategories, circuitGroupCategoryLabels, type CircuitGroupCategory, } from "../../shared/constants/circuit-group"; import type { CircuitTreeSectionDto } from "../types"; import { FormModal } from "./form-modal"; interface CircuitGroupModalProps { initialSection?: CircuitTreeSectionDto; isSaving: boolean; onClose: () => void; onSave: (values: { category: CircuitGroupCategory; displayName: string; }) => Promise; } export function CircuitGroupModal({ initialSection, isSaving, onClose, onSave, }: CircuitGroupModalProps) { const [category, setCategory] = useState( initialSection?.category ?? "lighting" ); const [displayName, setDisplayName] = useState( initialSection?.displayName ?? "" ); async function handleSubmit(event: FormEvent) { event.preventDefault(); await onSave({ category, displayName }); } return (
setDisplayName(event.target.value)} placeholder={ initialSection ? undefined : "Leer lassen für den automatisch erzeugten Namen" } required={Boolean(initialSection)} value={displayName} />
); }