import type {
  ActiveUser,
  Conversation,
  NearbyPet,
  Pet,
  Post,
  UserProfile
} from '@/types/domain'

export const mockProfile: UserProfile = {
  _id: 'u_ab',
  nickname: '阿布的家长',
  handle: '@abudejiazhang',
  avatarKey: 'gradient-avatar-2',
  profileCompleted: true,
  location: '上海 · 浦东新区',
  yearsWithPets: 6,
  level: 6,
  bio: '喜欢带奶昔去江边,也在认真学习和猫咪和平相处。',
  verified: true,
  stats: {
    posts: 128,
    following: 342,
    followers: 1200
  },
  preferences: {
    notifications: true,
    nearbyVisible: true
  }
}

export const mockPets: Pet[] = [
  {
    _id: 'pet_milkshake',
    ownerId: 'u_ab',
    name: '奶昔',
    species: 'dog',
    breed: '金毛',
    ageText: '3 岁',
    avatarKey: 'gradient-avatar-4',
    photoKey: 'photo-gold',
    tags: ['亲人', '爱玩水', '可约遛'],
    mood: '今天想去江边'
  },
  {
    _id: 'pet_ricecake',
    ownerId: 'u_ab',
    name: '年糕',
    species: 'cat',
    breed: '布偶',
    ageText: '2 岁',
    avatarKey: 'gradient-avatar-2',
    photoKey: 'photo-purple',
    tags: ['安静', '会开抽屉'],
    mood: '下午晒太阳'
  }
]

export const mockPosts: Post[] = [
  {
    _id: 'p1',
    author: { id: 'u1', name: '奶油', avatarKey: 'gradient-avatar-1' },
    pet: { name: '奶昔', breed: '金毛', tone: 'purple' },
    body:
      '今天带 #奶昔 去了滨江公园,她第一次见到江面上的轮船,整个狗都愣住了。路上还遇到一只超凶的柴犬妹妹,两个小家伙打闹了半小时才肯回家。',
    topics: ['奶昔', '滨江公园', '金毛日常'],
    mediaTone: 'pet-1',
    sticker: '滨江公园',
    locationText: '上海 · 滨江公园',
    timeText: '2 分钟前',
    counts: { likes: 128, comments: 24 },
    likedByMe: false
  },
  {
    _id: 'p2',
    author: { id: 'u2', name: '乐乐家', avatarKey: 'gradient-avatar-2' },
    pet: { name: '年糕', breed: '布偶', tone: 'green' },
    body:
      '年糕最近学会了一个新技能 —— #开抽屉。我们家所有抽屉现在都得加儿童锁。求问各位铲屎官,猫咪成精了怎么办?',
    topics: ['开抽屉', '猫咪'],
    mediaTone: 'pet-2',
    locationText: '上海 · 静安区',
    timeText: '15 分钟前',
    counts: { likes: 87, comments: 12 },
    likedByMe: false
  },
  {
    _id: 'p3',
    author: { id: 'u3', name: 'Lucky 之家', avatarKey: 'gradient-avatar-3' },
    pet: { name: 'Lucky', breed: '柯基', tone: 'gold' },
    body: '第一次带 Lucky 参加宠物生日会,认识了 4 个新朋友,回家累瘫了 #社交牛逼证',
    topics: ['宠物生日会', '社交牛逼证'],
    mediaTone: 'pet-3',
    sticker: '3 岁生日会',
    locationText: '上海 · 徐汇区',
    timeText: '1 小时前',
    counts: { likes: 256, comments: 42 },
    likedByMe: true
  }
]

export const mockNearbyPets: NearbyPet[] = [
  {
    ...mockPets[0],
    ownerName: '阿布的家长',
    isMine: true,
    isFollowing: false,
    isFriend: false,
    distanceText: '260m',
    online: true
  },
  {
    _id: 'pet_corgi',
    ownerId: 'u3',
    name: 'Lucky',
    species: 'dog',
    breed: '柯基',
    ageText: '3 岁',
    distanceText: '420m',
    avatarKey: 'gradient-avatar-3',
    photoKey: 'photo-green',
    ownerName: 'Lucky 之家',
    isFollowing: true,
    isFriend: true,
    tags: ['精力旺盛', '会接飞盘'],
    mood: '找玩伴',
    online: true
  },
  {
    _id: 'pet_shiba',
    ownerId: 'u4',
    name: '豆包',
    species: 'dog',
    breed: '柴犬',
    ageText: '1 岁半',
    distanceText: '530m',
    avatarKey: 'gradient-avatar-6',
    photoKey: 'photo-pink',
    ownerName: '豆包妈',
    isFollowing: false,
    isFriend: false,
    tags: ['慢热', '爱追球'],
    mood: '想闻新朋友'
  },
  {
    _id: 'pet_samoyed',
    ownerId: 'u5',
    name: '白桃',
    species: 'dog',
    breed: '萨摩耶',
    ageText: '4 岁',
    distanceText: '780m',
    avatarKey: 'gradient-avatar-2',
    photoKey: 'photo-blue',
    ownerName: '白桃家',
    isFollowing: true,
    isFriend: false,
    tags: ['温柔', '适合新手'],
    mood: '公园散步中'
  },
  {
    _id: 'pet_mocha',
    ownerId: 'u6',
    name: '摩卡',
    species: 'cat',
    breed: '英短',
    ageText: '5 岁',
    distanceText: '960m',
    avatarKey: 'gradient-avatar-5',
    photoKey: 'photo-gold',
    ownerName: '摩卡家',
    isFollowing: false,
    isFriend: false,
    tags: ['安静围观', '亲人'],
    mood: '正在车里看热闹'
  }
]

export const mockActiveUsers: ActiveUser[] = [
  { id: 'a1', name: '奶油', avatarKey: 'gradient-avatar-1', live: true },
  { id: 'a2', name: '乐乐家', avatarKey: 'gradient-avatar-2' },
  { id: 'a3', name: 'Lucky', avatarKey: 'gradient-avatar-3', live: true },
  { id: 'a4', name: '豆包妈', avatarKey: 'gradient-avatar-4' },
  { id: 'a5', name: '小七', avatarKey: 'gradient-avatar-5' }
]

export const mockConversations: Conversation[] = [
  {
    _id: 'c1',
    type: 'single',
    title: '乐乐家',
    petName: '年糕',
    avatarKey: 'gradient-avatar-2',
    preview: '刚看到你发的滨江公园,周末还去吗?',
    timeText: '现在',
    unreadCount: 3,
    online: true
  },
  {
    _id: 'c3',
    type: 'single',
    title: 'Lucky 之家',
    petName: 'Lucky',
    avatarKey: 'gradient-avatar-3',
    preview: 'Lucky 看到奶昔的视频之后一直盯着手机。',
    timeText: '昨天',
    unreadCount: 0
  },
  {
    _id: 'c4',
    type: 'system',
    title: '汪圈小助手',
    avatarKey: 'gradient-avatar-4',
    preview: '你的动态获得了 24 个新的喜欢。',
    timeText: '周一',
    unreadCount: 1,
    muted: true
  }
]
