import { useState } from 'react'; import type { NewTaskInput } from '../types'; import './CreateTaskForm.css'; interface CreateTaskFormProps { onCreateTask: (task: NewTaskInput) => void; } export default function CreateTaskForm({ onCreateTask }: CreateTaskFormProps) { const [isOpen, setIsOpen] = useState(false); const [name, setName] = useState(''); const [doesRepeat, setDoesRepeat] = useState(true); const [repeatAmount, setRepeatAmount] = useState('1'); const [repeatUnit, setRepeatUnit] = useState<'WEEKS' | 'MONTHS' | 'YEARS'>('WEEKS'); const [toDoToday, setToDoToday] = useState(true); const [priority, setPriority] = useState<'ESSENTIAL' | 'WHEN_I_HAVE_TIME'>('ESSENTIAL'); const handleSubmit = (e: React.FormEvent) => { e.preventDefault(); if (!name.trim()) { alert('Please enter a task name'); return; } const taskInput: NewTaskInput = { name: name.trim(), doesRepeat, repeatsEvery: doesRepeat ? `${repeatAmount}_${repeatUnit}` : undefined, priority, toDoToday, }; onCreateTask(taskInput); // Reset form setName(''); setDoesRepeat(true); setRepeatAmount('1'); setRepeatUnit('WEEKS'); setToDoToday(true); setPriority('ESSENTIAL'); setIsOpen(false); }; return (