// Mock data for chat system
import { User, Chat, Message } from './chatApi';

export const mockChatData = {
  users: [
    {
      id: 'user-1',
      name: 'Alexander Kaminski',
      email: 'alexander@example.com',
      avatar: '/api/placeholder/40/40',
      online: true,
      lastSeen: new Date().toISOString()
    },
    {
      id: 'user-2',
      name: 'Edwin Martins',
      email: 'edwin@example.com',
      avatar: '/api/placeholder/40/40',
      online: false,
      lastSeen: new Date(Date.now() - 3600000).toISOString()
    },
    {
      id: 'user-3',
      name: 'Gabriel North',
      email: 'gabriel@example.com',
      avatar: '/api/placeholder/40/40',
      online: true,
      lastSeen: new Date().toISOString()
    },
    {
      id: 'user-4',
      name: 'Ethan Blackwood',
      email: 'ethan@example.com',
      avatar: '/api/placeholder/40/40',
      online: false,
      lastSeen: new Date(Date.now() - 86400000).toISOString()
    },
    {
      id: 'user-5',
      name: 'Alexander Steele',
      email: 'alexs@example.com',
      avatar: '/api/placeholder/40/40',
      online: true,
      lastSeen: new Date().toISOString()
    },
    {
      id: 'user-6',
      name: 'Marcus Knight',
      email: 'marcus@example.com',
      avatar: '/api/placeholder/40/40',
      online: false,
      lastSeen: new Date(Date.now() - 1800000).toISOString()
    },
    {
      id: 'user-7',
      name: 'Pranoti Deshpande',
      email: 'pranoti@example.com',
      avatar: '/api/placeholder/40/40',
      online: true,
      lastSeen: new Date().toISOString()
    },
    {
      id: 'user-8',
      name: 'Sarah Wilson',
      email: 'sarah@example.com',
      avatar: '/api/placeholder/40/40',
      online: false,
      lastSeen: new Date(Date.now() - 7200000).toISOString()
    },
    {
      id: 'user-9',
      name: 'Michael Chen',
      email: 'michael@example.com',
      avatar: '/api/placeholder/40/40',
      online: true,
      lastSeen: new Date().toISOString()
    },
    {
      id: 'user-10',
      name: 'Lisa Rodriguez',
      email: 'lisa@example.com',
      avatar: '/api/placeholder/40/40',
      online: false,
      lastSeen: new Date(Date.now() - 3600000).toISOString()
    }
  ] as User[],

  chats: [
    {
      id: 'chat-1',
      name: 'Alexander Kaminski',
      type: 'direct',
      participants: [
        {
          id: 'user-1',
          name: 'Alexander Kaminski',
          email: 'alexander@example.com',
          avatar: '/api/placeholder/40/40',
          online: true
        }
      ],
      unreadCount: 2,
      lastActivity: new Date(Date.now() - 300000).toISOString(),
      avatar: '/api/placeholder/40/40',
      online: true,
      lastMessage: {
        id: 'msg-1',
        chatId: 'chat-1',
        senderId: 'user-1',
        senderName: 'Alexander Kaminski',
        senderAvatar: '/api/placeholder/40/40',
        content: 'A new feature has been updated to your...',
        timestamp: '10:30 AM',
        isOwn: false,
        status: 'delivered'
      }
    },
    {
      id: 'chat-2',
      name: 'Edwin Martins',
      type: 'direct',
      participants: [
        {
          id: 'user-2',
          name: 'Edwin Martins',
          email: 'edwin@example.com',
          avatar: '/api/placeholder/40/40',
          online: false
        }
      ],
      unreadCount: 1,
      lastActivity: new Date(Date.now() - 3600000).toISOString(),
      avatar: '/api/placeholder/40/40',
      online: false,
      lastMessage: {
        id: 'msg-2',
        chatId: 'chat-2',
        senderId: 'user-2',
        senderName: 'Edwin Martins',
        senderAvatar: '/api/placeholder/40/40',
        content: 'How can i improve my chances of getting a deposit?',
        timestamp: '10:05 PM',
        isOwn: false,
        status: 'delivered'
      }
    },
    {
      id: 'chat-3',
      name: 'Gabriel North',
      type: 'direct',
      participants: [
        {
          id: 'user-3',
          name: 'Gabriel North',
          email: 'gabriel@example.com',
          avatar: '/api/placeholder/40/40',
          online: true
        }
      ],
      unreadCount: 0,
      lastActivity: new Date(Date.now() - 86400000).toISOString(),
      avatar: '/api/placeholder/40/40',
      online: true,
      lastMessage: {
        id: 'msg-3',
        chatId: 'chat-3',
        senderId: 'user-3',
        senderName: 'Gabriel North',
        senderAvatar: '/api/placeholder/40/40',
        content: 'Hey Chris, could i ask you to help me out with variation...',
        timestamp: 'Tue',
        isOwn: false,
        status: 'read'
      }
    },
    {
      id: 'chat-4',
      name: 'Ethan Blackwood',
      type: 'direct',
      participants: [
        {
          id: 'user-4',
          name: 'Ethan Blackwood',
          email: 'ethan@example.com',
          avatar: '/api/placeholder/40/40',
          online: false
        }
      ],
      unreadCount: 0,
      lastActivity: new Date(Date.now() - 172800000).toISOString(),
      avatar: '/api/placeholder/40/40',
      online: false,
      lastMessage: {
        id: 'msg-4',
        chatId: 'chat-4',
        senderId: 'user-4',
        senderName: 'Ethan Blackwood',
        senderAvatar: '/api/placeholder/40/40',
        content: 'By injected humour, or randomised words which...',
        timestamp: '1/22/2019',
        isOwn: false,
        status: 'read'
      }
    },
    {
      id: 'chat-5',
      name: 'Alexander Steele',
      type: 'direct',
      participants: [
        {
          id: 'user-5',
          name: 'Alexander Steele',
          email: 'alexs@example.com',
          avatar: '/api/placeholder/40/40',
          online: true
        }
      ],
      unreadCount: 3,
      lastActivity: new Date(Date.now() - 259200000).toISOString(),
      avatar: '/api/placeholder/40/40',
      online: true,
      lastMessage: {
        id: 'msg-5',
        chatId: 'chat-5',
        senderId: 'user-5',
        senderName: 'Alexander Steele',
        senderAvatar: '/api/placeholder/40/40',
        content: 'No more running out of the office at 4pm on Fridays!',
        timestamp: '1/18/2019',
        isOwn: false,
        status: 'delivered'
      }
    },
    {
      id: 'chat-6',
      name: 'Marcus Knight',
      type: 'direct',
      participants: [
        {
          id: 'user-6',
          name: 'Marcus Knight',
          email: 'marcus@example.com',
          avatar: '/api/placeholder/40/40',
          online: false
        }
      ],
      unreadCount: 0,
      lastActivity: new Date(Date.now() - 345600000).toISOString(),
      avatar: '/api/placeholder/40/40',
      online: false,
      lastMessage: {
        id: 'msg-6',
        chatId: 'chat-6',
        senderId: 'user-6',
        senderName: 'Marcus Knight',
        senderAvatar: '/api/placeholder/40/40',
        content: 'All your favourite books at your reach! We are now mobile',
        timestamp: '1/09/2019',
        isOwn: false,
        status: 'read'
      }
    },
    {
      id: 'chat-7',
      name: 'Pranoti Deshpande',
      type: 'direct',
      participants: [
        {
          id: 'user-7',
          name: 'Pranoti Deshpande',
          email: 'pranoti@example.com',
          avatar: '/api/placeholder/40/40',
          online: true
        }
      ],
      unreadCount: 0,
      lastActivity: new Date(Date.now() - 432000000).toISOString(),
      avatar: '/api/placeholder/40/40',
      online: true,
      lastMessage: {
        id: 'msg-7',
        chatId: 'chat-7',
        senderId: 'user-7',
        senderName: 'Pranoti Deshpande',
        senderAvatar: '/api/placeholder/40/40',
        content: 'Dear Deborah, your Thai massage is today at 5pm.',
        timestamp: 'Feb 9',
        isOwn: false,
        status: 'read'
      }
    }
  ] as Chat[],

  messages: [
    // Chat 1 messages
    {
      id: 'msg-1-1',
      chatId: 'chat-1',
      senderId: 'user-1',
      senderName: 'Alexander Kaminski',
      senderAvatar: '/api/placeholder/40/40',
      content: 'Hello! How are you doing today?',
      timestamp: '10:30 AM',
      isOwn: false,
      status: 'delivered'
    },
    {
      id: 'msg-1-2',
      chatId: 'chat-1',
      senderId: 'current-user',
      senderName: 'You',
      senderAvatar: '/api/placeholder/40/40',
      content: "Hi! I'm doing great, thank you for asking. How about you?",
      timestamp: '10:35 AM',
      isOwn: true,
      status: 'read'
    },
    {
      id: 'msg-1-3',
      chatId: 'chat-1',
      senderId: 'user-1',
      senderName: 'Alexander Kaminski',
      senderAvatar: '/api/placeholder/40/40',
      content: 'A new feature has been updated to your account. Would you like me to show you around?',
      timestamp: '10:36 AM',
      isOwn: false,
      status: 'delivered'
    },
    {
      id: 'msg-1-4',
      chatId: 'chat-1',
      senderId: 'current-user',
      senderName: 'You',
      senderAvatar: '/api/placeholder/40/40',
      content: "That sounds great! I'd love to hear more about it.",
      timestamp: '10:40 AM',
      isOwn: true,
      status: 'read'
    },
    // Chat 2 messages
    {
      id: 'msg-2-1',
      chatId: 'chat-2',
      senderId: 'user-2',
      senderName: 'Edwin Martins',
      senderAvatar: '/api/placeholder/40/40',
      content: 'How can i improve my chances of getting a deposit?',
      timestamp: '10:05 PM',
      isOwn: false,
      status: 'delivered'
    },
    {
      id: 'msg-2-2',
      chatId: 'chat-2',
      senderId: 'current-user',
      senderName: 'You',
      senderAvatar: '/api/placeholder/40/40',
      content: 'There are several ways to improve your chances. First, make sure your profile is complete...',
      timestamp: '10:10 PM',
      isOwn: true,
      status: 'read'
    },
    // Chat 3 messages
    {
      id: 'msg-3-1',
      chatId: 'chat-3',
      senderId: 'user-3',
      senderName: 'Gabriel North',
      senderAvatar: '/api/placeholder/40/40',
      content: 'Hey Chris, could i ask you to help me out with variation of our main design theme?',
      timestamp: '2:15 PM',
      isOwn: false,
      status: 'read'
    },
    {
      id: 'msg-3-2',
      chatId: 'chat-3',
      senderId: 'current-user',
      senderName: 'You',
      senderAvatar: '/api/placeholder/40/40',
      content: 'Of course! What specific variations are you looking for?',
      timestamp: '2:20 PM',
      isOwn: true,
      status: 'read'
    }
  ] as Message[]
};