import React, { useState, useEffect, useRef } from 'react'; const COLOURS = ['#3d3a79', '#2d6a4f', '#7b2d8b', '#c0392b', '#d4800a', '#1a6b8a']; export default function ProjectModal({ project, mode, onSave, onDelete, onClose }) { const [name, setName] = useState(project?.name ?? ''); const [description, setDescription] = useState(project?.description ?? ''); const [colour, setColour] = useState(project?.colour ?? COLOURS[0]); const [isolated, setIsolated] = useState(project?.isolated === 1); const inputRef = useRef(null); useEffect(() => { if (mode !== 'confirm-delete') inputRef.current?.focus(); }, [mode]); function handleSubmit() { const trimmed = name.trim(); if (!trimmed) return; onSave({ name: trimmed, description: description.trim() || null, colour, icon: null, isolated }); onClose(); } function handleKeyDown(e) { if (e.key === 'Enter' && mode !== 'confirm-delete') handleSubmit(); if (e.key === 'Escape') onClose(); } return (
Are you sure you want to delete{' '} {project.name}? Sessions in this project will not be deleted.