import React, { useState } from "react"; import { BsArrowsAngleExpand, BsArrowsAngleContract } from "react-icons/bs"; import { motion, AnimatePresence } from "framer-motion"; import { Prompt } from "../../../hooks/usePrompts"; import { useLanguage } from '../../../contexts/LanguageContext'; import DashboardChatArea from './DashboardChatArea/DashboardChatArea'; import DashboardChatHistory from './DashboardChatHistory/DashboardChatHistory'; import styles from './DashboardChat.module.css'; interface DashboardChatProps { isExpanded: boolean; onToggleExpand: () => void; selectedPrompt?: Prompt | null; onPromptUsed?: () => void; onWorkflowIdChange?: (workflowId: string | null) => void; onWorkflowCompletedChange?: (completed: boolean) => void; onWorkflowResume?: (workflowId: string) => void; } const DashboardChat: React.FC = ({ isExpanded, onToggleExpand, selectedPrompt, onPromptUsed, onWorkflowIdChange, onWorkflowCompletedChange, onWorkflowResume }) => { const { t } = useLanguage(); const [activeTab, setActiveTab] = useState(t('dashboard.chat.area')); const [resumeWorkflowId, setResumeWorkflowId] = useState(null); const handleWorkflowResume = (workflowId: string) => { // Switch to Chat Area tab first setActiveTab(t('dashboard.chat.area')); // Set the workflow ID to resume setResumeWorkflowId(workflowId); // Then call the parent's resume handler if (onWorkflowResume) { onWorkflowResume(workflowId); } // Clear the resume ID after a short delay to allow processing setTimeout(() => { setResumeWorkflowId(null); }, 100); }; return (
); }; export default DashboardChat;