import { ChatMessage } from '../types'; import { apiService } from './apiService'; export class ChatService { async sendMessage(messages: ChatMessage[]): Promise { try { // Convert ChatMessage format to API format const apiMessages = messages.map(msg => ({ role: msg.role, content: msg.content })); const response = await apiService.sendChatMessage(apiMessages); return response; } catch (error) { console.error('Chat service error:', error); throw new Error('Failed to get response from chat service. Please try again or create a support ticket.'); } } async createTicketFromConversation( requester: string, email: string, messages: ChatMessage[] ) { try { const conversation = messages .map(msg => `${msg.role === 'user' ? 'User' : 'Assistant'}: ${msg.content}`) .join('\n\n'); const response = await apiService.createTicketFromChat({ requester, email, conversation }); return response.ticket; } catch (error) { console.error('Error creating ticket from chat:', error); throw error; } } }