import { GenericPageData } from '../../pageInterface'; import { LuMessageSquare } from 'react-icons/lu'; import { IoMdSend } from 'react-icons/io'; import { MdStop } from 'react-icons/md'; import { createChatbotHook } from '../../../../hooks/useChatbot'; export const chatbotPageData: GenericPageData = { id: 'start-chatbot', path: 'start/chatbot', name: 'Chatbot', description: 'Simple chatbot interface for conversations', // Parent page parentPath: 'start', // Visual icon: LuMessageSquare, title: 'Chatbot', subtitle: 'Chat with AI assistant', // No header buttons (simpler than dashboard) headerButtons: [], // Content sections content: [ { id: 'chatbot-history', type: 'chatHistory', chatHistoryConfig: { emptyMessage: 'No chat history yet. Start a conversation to see it here.' } }, { id: 'chatbot-messages', type: 'messages', messagesConfig: { variant: 'chat', showDocuments: true, showMetadata: false, showProgress: false, emptyMessage: 'No messages yet. Start a conversation to see messages here.' } }, { id: 'chatbot-input', type: 'inputForm', inputFormConfig: { hookFactory: createChatbotHook, placeholder: 'Type your message here...', buttonLabel: 'Send', stopButtonLabel: 'Stop', buttonIcon: IoMdSend, stopButtonIcon: MdStop, buttonVariant: 'primary', stopButtonVariant: 'danger', buttonSize: 'md', textFieldSize: 'md', showFileUpload: false } } ], // Page behavior persistent: true, preserveState: true, preload: true, moduleEnabled: true, // Lifecycle hooks onActivate: async () => { if (import.meta.env.DEV) console.log('Chatbot activated - state preserved'); }, onDeactivate: async () => { if (import.meta.env.DEV) console.log('Chatbot deactivated - keeping state'); } };