import '../../models/group_member_model.dart';
import '../../models/group_model.dart';
import '../../models/user_model.dart';

/// Static seed data used when [AppConfig.debugMode] is true.
class MockData {
  static final List<UserModel> users = [
    UserModel(
      id: 'u-0001',
      username: 'admin',
      role: UserRole.admin,
      isActive: true,
    ),
    UserModel(
      id: 'u-0002',
      username: 'ali_karimi',
      role: UserRole.member,
      isActive: true,
    ),
    UserModel(
      id: 'u-0003',
      username: 'sara_mohammadi',
      role: UserRole.member,
      isActive: true,
    ),
    UserModel(
      id: 'u-0004',
      username: 'reza_ahmadi',
      role: UserRole.member,
      isActive: true,
    ),
    UserModel(
      id: 'u-0005',
      username: 'maryam_hosseini',
      role: UserRole.member,
      isActive: true,
    ),
    UserModel(
      id: 'u-0006',
      username: 'javad_rezaei',
      role: UserRole.member,
      isActive: false,
    ),
    UserModel(
      id: 'u-0007',
      username: 'nasrin_bagheri',
      role: UserRole.member,
      isActive: true,
    ),
    UserModel(
      id: 'u-0008',
      username: 'hamed_safari',
      role: UserRole.member,
      isActive: true,
    ),
    UserModel(
      id: 'u-0009',
      username: 'leila_moradi',
      role: UserRole.member,
      isActive: true,
    ),
    UserModel(
      id: 'u-0010',
      username: 'mehdi_tavakoli',
      role: UserRole.member,
      isActive: false,
    ),
    UserModel(
      id: 'u-0011',
      username: 'fatemeh_nazari',
      role: UserRole.member,
      isActive: true,
    ),
    UserModel(
      id: 'u-0012',
      username: 'omid_shahidi',
      role: UserRole.member,
      isActive: true,
    ),
  ];

  static final List<GroupModel> groups = [
    GroupModel(
      id: 'g-0001',
      name: 'تیم آلفا',
      isActive: true,
      type: GroupType.public,
    ),
    GroupModel(
      id: 'g-0002',
      name: 'تیم براوو',
      isActive: true,
      type: GroupType.public,
    ),
    GroupModel(
      id: 'g-0003',
      name: 'مرکز فرماندهی',
      isActive: true,
      type: GroupType.public,
    ),
    GroupModel(
      id: 'g-0004',
      name: 'لجستیک',
      isActive: true,
      type: GroupType.public,
    ),
    GroupModel(
      id: 'g-0005',
      name: 'واکنش اضطراری',
      isActive: false,
      type: GroupType.public,
    ),
  ];

  static final Map<String, List<GroupMemberModel>> memberships = {
    'g-0001': [
      GroupMemberModel(
        userId: 'u-0002',
        role: GroupRole.manager,
        username: 'ali_karimi',
        isOnline: true,
      ),
      GroupMemberModel(
        userId: 'u-0003',
        role: GroupRole.member,
        username: 'sara_mohammadi',
        isOnline: false,
      ),
      GroupMemberModel(
        userId: 'u-0004',
        role: GroupRole.member,
        username: 'reza_ahmadi',
        isOnline: true,
      ),
      GroupMemberModel(
        userId: 'u-0007',
        role: GroupRole.member,
        username: 'nasrin_bagheri',
        isOnline: false,
      ),
    ],
    'g-0002': [
      GroupMemberModel(
        userId: 'u-0005',
        role: GroupRole.manager,
        username: 'maryam_hosseini',
        isOnline: true,
      ),
      GroupMemberModel(
        userId: 'u-0008',
        role: GroupRole.member,
        username: 'hamed_safari',
        isOnline: false,
      ),
      GroupMemberModel(
        userId: 'u-0009',
        role: GroupRole.member,
        username: 'leila_moradi',
        isOnline: true,
      ),
    ],
    'g-0003': [
      GroupMemberModel(
        userId: 'u-0001',
        role: GroupRole.manager,
        username: 'admin',
        isOnline: true,
      ),
      GroupMemberModel(
        userId: 'u-0002',
        role: GroupRole.member,
        username: 'ali_karimi',
        isOnline: true,
      ),
      GroupMemberModel(
        userId: 'u-0005',
        role: GroupRole.member,
        username: 'maryam_hosseini',
        isOnline: false,
      ),
      GroupMemberModel(
        userId: 'u-0010',
        role: GroupRole.member,
        username: 'mehdi_tavakoli',
        isOnline: false,
      ),
      GroupMemberModel(
        userId: 'u-0011',
        role: GroupRole.member,
        username: 'fatemeh_nazari',
        isOnline: true,
      ),
    ],
    'g-0004': [
      GroupMemberModel(
        userId: 'u-0010',
        role: GroupRole.manager,
        username: 'mehdi_tavakoli',
        isOnline: true,
      ),
      GroupMemberModel(
        userId: 'u-0011',
        role: GroupRole.member,
        username: 'fatemeh_nazari',
        isOnline: false,
      ),
      GroupMemberModel(
        userId: 'u-0012',
        role: GroupRole.member,
        username: 'omid_shahidi',
        isOnline: true,
      ),
    ],
    'g-0005': [
      GroupMemberModel(
        userId: 'u-0002',
        role: GroupRole.manager,
        username: 'ali_karimi',
        isOnline: false,
      ),
      GroupMemberModel(
        userId: 'u-0006',
        role: GroupRole.member,
        username: 'javad_rezaei',
        isOnline: false,
      ),
    ],
  };
}
