"use client"; import { useEffect, useState } from "react"; import { useRouter } from "next/navigation"; import { useChatHistoryContext } from "@/app/contexts/ChatHistoryContext"; import { useDirectoryData } from "../shared/useDirectoryData"; import { ProjectPickerModal } from "../modals/ProjectPickerModal"; interface Props { open: boolean; onClose: () => void; } export function SelectAssistantProjectModal({ open, onClose }: Props) { const [selectedId, setSelectedId] = useState(null); const [creating, setCreating] = useState(false); const router = useRouter(); const { saveChat } = useChatHistoryContext(); const { loading, projects } = useDirectoryData(open); useEffect(() => { if (!open) return; setSelectedId(null); }, [open]); if (!open) return null; async function handleContinue() { if (!selectedId) return; setCreating(true); try { const chatId = await saveChat(selectedId); if (!chatId) return; onClose(); router.push(`/projects/${selectedId}/assistant/chat/${chatId}`); } finally { setCreating(false); } } return ( ); }