import 'package:hmg_patient_app_new/core/enums.dart';
import 'package:hmg_patient_app_new/features/symptoms_checker/models/organ_model.dart';

class OrganData {
  // ==================== FRONT VIEW ====================
  static const List<OrganModel> frontViewOrgansForMale = [
    // ========== HEAD & FACE ==========
    OrganModel(
      id: 'head',
      name: 'whole_head',
      nameAr: 'الرأس_كامل',
      description: 'Head',
      descriptionAr: 'الرأس',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.50, y: 0.03),
    ),
    OrganModel(
      id: 'left_eye',
      name: 'eyes',
      nameAr: 'العيون',
      description: 'Left Eye',
      descriptionAr: 'العين اليسرى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.43, y: 0.07),
    ),
    OrganModel(
      id: 'right_eye',
      name: 'eyes',
      nameAr: 'العيون',
      description: 'Right Eye',
      descriptionAr: 'العين اليمنى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.57, y: 0.07),
    ),
    OrganModel(
      id: 'nose_mouth',
      name: 'oral_cavity',
      nameAr: 'تجويف_الفم',
      description: 'Mouth',
      descriptionAr: 'الفم',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.50, y: 0.135),
    ),

    // ========== EARS (NEW) ==========
    OrganModel(
      id: 'left_ear',
      name: 'ears',
      nameAr: 'الأذن',
      description: 'Left Ear',
      descriptionAr: 'الأذن اليسرى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.4, y: 0.1),
    ),
    OrganModel(
      id: 'right_ear',
      name: 'ears',
      nameAr: 'الأذن',
      description: 'Right Ear',
      descriptionAr: 'الأذن اليمنى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.64, y: 0.1),
    ),

    // ========== NOSE (NEW) ==========
    OrganModel(
      id: 'nose',
      name: 'nose',
      nameAr: 'الأنف',
      description: 'Nose',
      descriptionAr: 'الأنف',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.50, y: 0.095),
    ),

    // ========== HEAD – SPECIFIC (NEW) ==========
    // OrganModel(
    //   id: 'front_head',
    //   name: 'head',
    //   nameAr: 'الرأس',
    //   description: 'Front Head',
    //   descriptionAr: 'مقدمة الرأس',
    //   bodyView: BodyView.front,
    //   position: OrganPosition(x: 0.50, y: 0.04),
    // ),

    // // ========== BEHAVIOR / THOUGHTS (NEW) ==========
    // OrganModel(
    //   id: 'behavior_thoughts',
    //   name: 'problem_concerning_behavior_or_thoughts',
    //   nameAr: 'مشكلة_سلوكية_أو_نفسية',
    //   description: 'Behavior / Thoughts',
    //   descriptionAr: 'سلوك / أفكار',
    //   bodyView: BodyView.front,
    //   position: OrganPosition(x: 0.50, y: 0.02),
    // ),

    // ========== NECK ==========
    OrganModel(
      id: 'throat',
      name: 'neck_or_throat',
      nameAr: 'الرقبة_أو_الحلق',
      description: 'Throat',
      descriptionAr: 'الحلق',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.50, y: 0.17),
    ),

    // ========== HALF NECK (NEW) ==========
    OrganModel(
      id: 'left_halfneck',
      name: 'halfneck',
      nameAr: 'نصف_الرقبة',
      description: 'Left Half Neck',
      descriptionAr: 'نصف الرقبة الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.42, y: 0.15),
    ),
    OrganModel(
      id: 'right_halfneck',
      name: 'halfneck',
      nameAr: 'نصف_الرقبة',
      description: 'Right Half Neck',
      descriptionAr: 'نصف الرقبة الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.58, y: 0.15),
    ),

    // ========== SHOULDERS ==========
    OrganModel(
      id: 'left_shoulder',
      name: 'upper_arm',
      nameAr: 'الذراع_العلوي',
      description: 'Left Shoulder',
      descriptionAr: 'الكتف الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.22, y: 0.22),
    ),
    OrganModel(
      id: 'right_shoulder',
      name: 'upper_arm',
      nameAr: 'الذراع_العلوي',
      description: 'Right Shoulder',
      descriptionAr: 'الكتف الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.8, y: 0.22),
    ),

    // ========== UPPER LIMB (NEW) ==========
    OrganModel(
      id: 'left_upper_limb',
      name: 'upper_limb',
      nameAr: 'الطرف_العلوي',
      description: 'Left Upper Limb',
      descriptionAr: 'الطرف العلوي الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.20, y: 0.30),
    ),
    OrganModel(
      id: 'right_upper_limb',
      name: 'upper_limb',
      nameAr: 'الطرف_العلوي',
      description: 'Right Upper Limb',
      descriptionAr: 'الطرف العلوي الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.80, y: 0.30),
    ),

    // ========== CHEST ==========
    OrganModel(
      id: 'left_chest',
      name: 'chest',
      nameAr: 'الصدر',
      description: 'Left Chest',
      descriptionAr: 'الصدر الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.38, y: 0.22),
    ),
    OrganModel(
      id: 'center_chest',
      name: 'chest',
      nameAr: 'الصدر',
      description: 'Center Chest',
      descriptionAr: 'وسط الصدر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.52, y: 0.25),
    ),
    OrganModel(
      id: 'right_chest',
      name: 'chest',
      nameAr: 'الصدر',
      description: 'Right Chest',
      descriptionAr: 'الصدر الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.65, y: 0.22),
    ),

    // ========== RIBS ==========
    OrganModel(
      id: 'left_ribs',
      name: 'chest',
      nameAr: 'الصدر',
      description: 'Left Ribs',
      descriptionAr: 'الأضلاع اليسرى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.38, y: 0.35),
    ),
    OrganModel(
      id: 'right_ribs',
      name: 'chest',
      nameAr: 'الصدر',
      description: 'Right Ribs',
      descriptionAr: 'الأضلاع اليمنى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.64, y: 0.35),
    ),

    // ========== ABDOMEN ==========
    OrganModel(
      id: 'upper_abdomen',
      name: 'upper_abdomen',
      nameAr: 'البطن_العلوي',
      description: 'Upper Abdomen',
      descriptionAr: 'أعلى البطن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.51, y: 0.31),
    ),
    OrganModel(
      id: 'navel',
      name: 'mid_abdomen',
      nameAr: 'البطن_الأوسط',
      description: 'Navel',
      descriptionAr: 'السرة',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.51, y: 0.38),
    ),
    OrganModel(
      id: 'lower_abdomen',
      name: 'lower_abdomen',
      nameAr: 'البطن_السفلي',
      description: 'Lower Abdomen',
      descriptionAr: 'أسفل البطن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.51, y: 0.44),
    ),

    // ========== ABDOMEN – GENERAL (NEW) ==========
    // OrganModel(
    //   id: 'abdomin',
    //   name: 'abdomin',
    //   nameAr: 'البطن_العام',
    //   description: 'Abdomen',
    //   descriptionAr: 'البطن',
    //   bodyView: BodyView.front,
    //   position: OrganPosition(x: 0.51, y: 0.36),
    // ),

    // ========== SKIN (NEW) ==========
    // OrganModel(
    //   id: 'skin',
    //   name: 'skin',
    //   nameAr: 'الجلد',
    //   description: 'Skin',
    //   descriptionAr: 'الجلد',
    //   bodyView: BodyView.front,
    //   position: OrganPosition(x: 0.50, y: 0.50),
    // ),

    // ========== PELVIS ==========
    OrganModel(
      id: 'left_groin',
      name: 'sexual_organs',
      nameAr: 'الأعضاء_التناسلية',
      description: 'Left Groin',
      descriptionAr: 'الفخذ الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.42, y: 0.49),
    ),
    OrganModel(
      id: 'right_groin',
      name: 'sexual_organs',
      nameAr: 'الأعضاء_التناسلية',
      description: 'Right Groin',
      descriptionAr: 'الفخذ الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.59, y: 0.49),
    ),

    // ========== LEFT ARM ==========
    OrganModel(
      id: 'left_elbow',
      name: 'elbow',
      nameAr: 'الكوع',
      description: 'Left Elbow',
      descriptionAr: 'الكوع الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.21, y: 0.35),
    ),
    OrganModel(
      id: 'left_forearm',
      name: 'forearm',
      nameAr: 'الساعد',
      description: 'Left Forearm',
      descriptionAr: 'الساعد الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.19, y: 0.43),
    ),
    OrganModel(
      id: 'left_wrist',
      name: 'hand',
      nameAr: 'اليد',
      description: 'Left Wrist',
      descriptionAr: 'المعصم الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.14, y: 0.5),
    ),

    // ========== RIGHT ARM ==========
    OrganModel(
      id: 'right_elbow',
      name: 'elbow',
      nameAr: 'الكوع',
      description: 'Right Elbow',
      descriptionAr: 'الكوع الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.79, y: 0.35),
    ),
    OrganModel(
      id: 'right_forearm',
      name: 'forearm',
      nameAr: 'الساعد',
      description: 'Right Forearm',
      descriptionAr: 'الساعد الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.81, y: 0.43),
    ),
    OrganModel(
      id: 'right_wrist',
      name: 'hand',
      nameAr: 'اليد',
      description: 'Right Wrist',
      descriptionAr: 'المعصم الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.85, y: 0.5),
    ),

    // ========== LEFT LEG ==========
    OrganModel(
      id: 'left_thigh',
      name: 'thigh',
      nameAr: 'الفخذ',
      description: 'Left Thigh',
      descriptionAr: 'الفخذ الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.4, y: 0.60),
    ),
    OrganModel(
      id: 'left_knee',
      name: 'knee',
      nameAr: 'الركبة',
      description: 'Left Knee',
      descriptionAr: 'الركبة اليسرى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.4, y: 0.72),
    ),
    OrganModel(
      id: 'left_shin',
      name: 'lower_leg',
      nameAr: 'الساق_السفلي',
      description: 'Left Shin',
      descriptionAr: 'الساق اليسرى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.41, y: 0.82),
    ),
    OrganModel(
      id: 'left_ankle',
      name: 'foot',
      nameAr: 'القدم',
      description: 'Left Ankle',
      descriptionAr: 'الكاحل الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.43, y: 0.91),
    ),

    // ========== RIGHT LEG ==========
    OrganModel(
      id: 'right_thigh',
      name: 'thigh',
      nameAr: 'الفخذ',
      description: 'Right Thigh',
      descriptionAr: 'الفخذ الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.65, y: 0.60),
    ),
    OrganModel(
      id: 'right_knee',
      name: 'knee',
      nameAr: 'الركبة',
      description: 'Right Knee',
      descriptionAr: 'الركبة اليمنى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.6, y: 0.72),
    ),
    OrganModel(
      id: 'right_shin',
      name: 'lower_leg',
      nameAr: 'الساق_السفلي',
      description: 'Right Shin',
      descriptionAr: 'الساق اليمنى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.57, y: 0.82),
    ),
    OrganModel(
      id: 'right_ankle',
      name: 'foot',
      nameAr: 'القدم',
      description: 'Right Ankle',
      descriptionAr: 'الكاحل الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.57, y: 0.91),
    ),


    // ========== UPPER LEG (NEW) ==========
    OrganModel(
      id: 'left_upperleg',
      name: 'upperleg',
      nameAr: 'الجزء_العلوي_من_الساق',
      description: 'Left Upper Leg',
      descriptionAr: 'الجزء العلوي من الساق الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.40, y: 0.63),
    ),
    OrganModel(
      id: 'right_upperleg',
      name: 'upperleg',
      nameAr: 'الجزء_العلوي_من_الساق',
      description: 'Right Upper Leg',
      descriptionAr: 'الجزء العلوي من الساق الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.60, y: 0.63),
    ),

    // ========== LOWER LEG – lowerleg key (NEW) ==========
    OrganModel(
      id: 'left_lowerleg',
      name: 'lowerleg',
      nameAr: 'الجزء_السفلي_من_الساق',
      description: 'Left Lower Leg',
      descriptionAr: 'الجزء السفلي من الساق الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.41, y: 0.78),
    ),
    OrganModel(
      id: 'right_lowerleg',
      name: 'lowerleg',
      nameAr: 'الجزء_السفلي_من_الساق',
      description: 'Right Lower Leg',
      descriptionAr: 'الجزء السفلي من الساق الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.57, y: 0.78),
    ),

    // ========== LOWER LIMB (NEW) ==========
    OrganModel(
      id: 'left_lower_limb',
      name: 'lower_limb',
      nameAr: 'الطرف_السفلي',
      description: 'Left Lower Limb',
      descriptionAr: 'الطرف السفلي الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.40, y: 0.67),
    ),
    OrganModel(
      id: 'right_lower_limb',
      name: 'lower_limb',
      nameAr: 'الطرف_السفلي',
      description: 'Right Lower Limb',
      descriptionAr: 'الطرف السفلي الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.60, y: 0.67),
    ),
  ];

  static const List<OrganModel> frontViewOrgansForFemale = [
    // ========== HEAD & FACE ==========
    OrganModel(
      id: 'head',
      name: 'whole_head',
      nameAr: 'الرأس_كامل',
      description: 'Head',
      descriptionAr: 'الرأس',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.54, y: 0.05),
    ),
    OrganModel(
      id: 'left_eye',
      name: 'eyes',
      nameAr: 'العيون',
      description: 'Left Eye',
      descriptionAr: 'العين اليسرى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.49, y: 0.095),
    ),
    OrganModel(
      id: 'right_eye',
      name: 'eyes',
      nameAr: 'العيون',
      description: 'Right Eye',
      descriptionAr: 'العين اليمنى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.6, y: 0.095),
    ),
    OrganModel(
      id: 'nose_mouth',
      name: 'oral_cavity',
      nameAr: 'تجويف_الفم',
      description: 'Mouth',
      descriptionAr: 'الأنف/الفم',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.54, y: 0.14),
    ),

    // ========== EARS (NEW) ==========
    OrganModel(
      id: 'left_ear',
      name: 'ears',
      nameAr: 'الأذن',
      description: 'Left Ear',
      descriptionAr: 'الأذن اليسرى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.43, y: 0.12),
    ),
    OrganModel(
      id: 'right_ear',
      name: 'ears',
      nameAr: 'الأذن',
      description: 'Right Ear',
      descriptionAr: 'الأذن اليمنى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.656, y: 0.12),
    ),

    // ========== NOSE (NEW) ==========
    OrganModel(
      id: 'nose',
      name: 'nose',
      nameAr: 'الأنف',
      description: 'Nose',
      descriptionAr: 'الأنف',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.54, y: 0.115),
    ),

    // ========== HEAD – SPECIFIC (NEW) ==========
    OrganModel(
      id: 'front_head',
      name: 'head',
      nameAr: 'الرأس',
      description: 'Front Head',
      descriptionAr: 'مقدمة الرأس',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.54, y: 0.05),
    ),

    // // ========== BEHAVIOR / THOUGHTS (NEW) ==========
    // OrganModel(
    //   id: 'behavior_thoughts',
    //   name: 'problem_concerning_behavior_or_thoughts',
    //   nameAr: 'مشكلة_سلوكية_أو_نفسية',
    //   description: 'Behavior / Thoughts',
    //   descriptionAr: 'سلوك / أفكار',
    //   bodyView: BodyView.front,
    //   position: OrganPosition(x: 0.54, y: 0.02),
    // ),

    // ========== NECK ==========
    OrganModel(
      id: 'throat',
      name: 'neck_or_throat',
      nameAr: 'الرقبة_أو_الحلق',
      description: 'Throat',
      descriptionAr: 'الحلق',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.54, y: 0.17),
    ),

    // ========== HALF NECK (NEW) ==========
    OrganModel(
      id: 'left_halfneck',
      name: 'halfneck',
      nameAr: 'نصف_الرقبة',
      description: 'Left Half Neck',
      descriptionAr: 'نصف الرقبة الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.48, y: 0.175),
    ),
    OrganModel(
      id: 'right_halfneck',
      name: 'halfneck',
      nameAr: 'نصف_الرقبة',
      description: 'Right Half Neck',
      descriptionAr: 'نصف الرقبة الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.60, y: 0.175),
    ),

    // ========== SHOULDERS ==========
    OrganModel(
      id: 'left_shoulder',
      name: 'upper_arm',
      nameAr: 'الذراع_العلوي',
      description: 'Left Shoulder',
      descriptionAr: 'الكتف الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.29, y: 0.22),
    ),
    OrganModel(
      id: 'right_shoulder',
      name: 'upper_arm',
      nameAr: 'الذراع_العلوي',
      description: 'Right Shoulder',
      descriptionAr: 'الكتف الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.75, y: 0.22),
    ),

    // ========== UPPER LIMB (NEW) ==========
    OrganModel(
      id: 'left_upper_limb',
      name: 'upper_limb',
      nameAr: 'الطرف_العلوي',
      description: 'Left Upper Limb',
      descriptionAr: 'الطرف العلوي الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.26, y: 0.30),
    ),
    OrganModel(
      id: 'right_upper_limb',
      name: 'upper_limb',
      nameAr: 'الطرف_العلوي',
      description: 'Right Upper Limb',
      descriptionAr: 'الطرف العلوي الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.76, y: 0.30),
    ),

    // ========== CHEST ==========
    OrganModel(
      id: 'left_chest',
      name: 'chest',
      nameAr: 'الصدر',
      description: 'Left Chest',
      descriptionAr: 'الصدر الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.4, y: 0.22),
    ),
    OrganModel(
      id: 'center_chest',
      name: 'chest',
      nameAr: 'الصدر',
      description: 'Center Chest',
      descriptionAr: 'وسط الصدر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.52, y: 0.25),
    ),
    OrganModel(
      id: 'right_chest',
      name: 'chest',
      nameAr: 'الصدر',
      description: 'Right Chest',
      descriptionAr: 'الصدر الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.65, y: 0.22),
    ),

    // ========== BREASTS (NEW – female only) ==========
    OrganModel(
      id: 'left_breast',
      name: 'breasts',
      nameAr: 'الثدي',
      description: 'Left Breast',
      descriptionAr: 'الثدي الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.4, y: 0.27),
    ),
    OrganModel(
      id: 'right_breast',
      name: 'breasts',
      nameAr: 'الثدي',
      description: 'Right Breast',
      descriptionAr: 'الثدي الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.62, y: 0.27),
    ),

    // ========== RIBS ==========
    OrganModel(
      id: 'left_ribs',
      name: 'chest',
      nameAr: 'الصدر',
      description: 'Left Ribs',
      descriptionAr: 'الأضلاع اليسرى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.38, y: 0.35),
    ),
    OrganModel(
      id: 'right_ribs',
      name: 'chest',
      nameAr: 'الصدر',
      description: 'Right Ribs',
      descriptionAr: 'الأضلاع اليمنى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.64, y: 0.35),
    ),

    // ========== ABDOMEN ==========
    OrganModel(
      id: 'upper_abdomen',
      name: 'upper_abdomen',
      nameAr: 'البطن_العلوي',
      description: 'Upper Abdomen',
      descriptionAr: 'أعلى البطن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.51, y: 0.31),
    ),
    OrganModel(
      id: 'navel',
      name: 'mid_abdomen',
      nameAr: 'البطن_الأوسط',
      description: 'Navel',
      descriptionAr: 'السرة',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.51, y: 0.38),
    ),
    OrganModel(
      id: 'lower_abdomen',
      name: 'lower_abdomen',
      nameAr: 'البطن_السفلي',
      description: 'Lower Abdomen',
      descriptionAr: 'أسفل البطن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.51, y: 0.44),
    ),

    // ========== ABDOMEN – GENERAL (NEW) ==========
    // OrganModel(
    //   id: 'abdomin',
    //   name: 'abdomin',
    //   nameAr: 'البطن_العام',
    //   description: 'Abdomen',
    //   descriptionAr: 'البطن',
    //   bodyView: BodyView.front,
    //   position: OrganPosition(x: 0.54, y: 0.36),
    // ),

    // ========== SKIN (NEW) ==========
    // OrganModel(
    //   id: 'skin',
    //   name: 'skin',
    //   nameAr: 'الجلد',
    //   description: 'Skin',
    //   descriptionAr: 'الجلد',
    //   bodyView: BodyView.front,
    //   position: OrganPosition(x: 0.54, y: 0.50),
    // ),

    // ========== PELVIS ==========
    OrganModel(
      id: 'left_groin',
      name: 'sexual_organs',
      nameAr: 'الأعضاء_التناسلية',
      description: 'Left Groin',
      descriptionAr: 'الفخذ الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.42, y: 0.49),
    ),
    OrganModel(
      id: 'right_groin',
      name: 'sexual_organs',
      nameAr: 'الأعضاء_التناسلية',
      description: 'Right Groin',
      descriptionAr: 'الفخذ الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.59, y: 0.49),
    ),

    // ========== LEFT ARM ==========
    OrganModel(
      id: 'left_elbow',
      name: 'elbow',
      nameAr: 'الكوع',
      description: 'Left Elbow',
      descriptionAr: 'الكوع الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.24, y: 0.35),
    ),
    OrganModel(
      id: 'left_forearm',
      name: 'forearm',
      nameAr: 'الساعد',
      description: 'Left Forearm',
      descriptionAr: 'الساعد الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.24, y: 0.43),
    ),
    OrganModel(
      id: 'left_wrist',
      name: 'hand',
      nameAr: 'اليد',
      description: 'Left Wrist',
      descriptionAr: 'المعصم الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.17, y: 0.49),
    ),

    // ========== RIGHT ARM ==========
    OrganModel(
      id: 'right_elbow',
      name: 'elbow',
      nameAr: 'الكوع',
      description: 'Right Elbow',
      descriptionAr: 'الكوع الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.76, y: 0.35),
    ),
    OrganModel(
      id: 'right_forearm',
      name: 'forearm',
      nameAr: 'الساعد',
      description: 'Right Forearm',
      descriptionAr: 'الساعد الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.76, y: 0.43),
    ),
    OrganModel(
      id: 'right_wrist',
      name: 'hand',
      nameAr: 'اليد',
      description: 'Right Wrist',
      descriptionAr: 'المعصم الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.83, y: 0.5),
    ),

    // ========== LEFT LEG ==========
    OrganModel(
      id: 'left_thigh',
      name: 'thigh',
      nameAr: 'الفخذ',
      description: 'Left Thigh',
      descriptionAr: 'الفخذ الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.4, y: 0.60),
    ),
    OrganModel(
      id: 'left_knee',
      name: 'knee',
      nameAr: 'الركبة',
      description: 'Left Knee',
      descriptionAr: 'الركبة اليسرى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.4, y: 0.72),
    ),
    OrganModel(
      id: 'left_shin',
      name: 'lower_leg',
      nameAr: 'الساق_السفلي',
      description: 'Left Shin',
      descriptionAr: 'الساق اليسرى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.41, y: 0.82),
    ),
    OrganModel(
      id: 'left_ankle',
      name: 'foot',
      nameAr: 'القدم',
      description: 'Left Ankle',
      descriptionAr: 'الكاحل الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.43, y: 0.91),
    ),

    // ========== RIGHT LEG ==========
    OrganModel(
      id: 'right_thigh',
      name: 'thigh',
      nameAr: 'الفخذ',
      description: 'Right Thigh',
      descriptionAr: 'الفخذ الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.65, y: 0.60),
    ),
    OrganModel(
      id: 'right_knee',
      name: 'knee',
      nameAr: 'الركبة',
      description: 'Right Knee',
      descriptionAr: 'الركبة اليمنى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.6, y: 0.72),
    ),
    OrganModel(
      id: 'right_shin',
      name: 'lower_leg',
      nameAr: 'الساق_السفلي',
      description: 'Right Shin',
      descriptionAr: 'الساق اليمنى',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.59, y: 0.82),
    ),
    OrganModel(
      id: 'right_ankle',
      name: 'foot',
      nameAr: 'القدم',
      description: 'Right Ankle',
      descriptionAr: 'الكاحل الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.57, y: 0.91),
    ),



    // ========== UPPER LEG (NEW) ==========
    OrganModel(
      id: 'left_upperleg',
      name: 'upperleg',
      nameAr: 'الجزء_العلوي_من_الساق',
      description: 'Left Upper Leg',
      descriptionAr: 'الجزء العلوي من الساق الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.40, y: 0.63),
    ),
    OrganModel(
      id: 'right_upperleg',
      name: 'upperleg',
      nameAr: 'الجزء_العلوي_من_الساق',
      description: 'Right Upper Leg',
      descriptionAr: 'الجزء العلوي من الساق الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.65, y: 0.63),
    ),

    // ========== LOWER LEG – lowerleg key (NEW) ==========
    OrganModel(
      id: 'left_lowerleg',
      name: 'lowerleg',
      nameAr: 'الجزء_السفلي_من_الساق',
      description: 'Left Lower Leg',
      descriptionAr: 'الجزء السفلي من الساق الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.41, y: 0.78),
    ),
    OrganModel(
      id: 'right_lowerleg',
      name: 'lowerleg',
      nameAr: 'الجزء_السفلي_من_الساق',
      description: 'Right Lower Leg',
      descriptionAr: 'الجزء السفلي من الساق الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.59, y: 0.78),
    ),

    // ========== LOWER LIMB (NEW) ==========
    OrganModel(
      id: 'left_lower_limb',
      name: 'lower_limb',
      nameAr: 'الطرف_السفلي',
      description: 'Left Lower Limb',
      descriptionAr: 'الطرف السفلي الأيسر',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.40, y: 0.67),
    ),
    OrganModel(
      id: 'right_lower_limb',
      name: 'lower_limb',
      nameAr: 'الطرف_السفلي',
      description: 'Right Lower Limb',
      descriptionAr: 'الطرف السفلي الأيمن',
      bodyView: BodyView.front,
      position: OrganPosition(x: 0.65, y: 0.67),
    ),
  ];

  // ==================== BACK VIEW ====================
  static const List<OrganModel> backViewOrgansForMale = [
    // ========== HEAD & NECK ==========
    OrganModel(
      id: 'back_of_head',
      name: 'whole_head',
      nameAr: 'الرأس_كامل',
      description: 'Back of Head',
      descriptionAr: 'مؤخرة الرأس',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.50, y: 0.04),
    ),
    OrganModel(
      id: 'neck_back',
      name: 'nape_of_neck',
      nameAr: 'مؤخرة_الرقبة',
      description: 'Neck',
      descriptionAr: 'الرقبة',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.50, y: 0.14),
    ),

    // ========== SHOULDERS ==========
    OrganModel(
      id: 'left_shoulder_back',
      name: 'upper_arm',
      nameAr: 'الذراع_العلوي',
      description: 'Left Shoulder',
      descriptionAr: 'الكتف الأيسر',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.33, y: 0.19),
    ),
    OrganModel(
      id: 'right_shoulder_back',
      name: 'upper_arm',
      nameAr: 'الذراع_العلوي',
      description: 'Right Shoulder',
      descriptionAr: 'الكتف الأيمن',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.67, y: 0.19),
    ),

    // ========== UPPER BACK ==========
    OrganModel(
      id: 'upper_spine',
      name: 'back',
      nameAr: 'الظهر',
      description: 'Upper Spine',
      descriptionAr: 'العمود الفقري العلوي',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.50, y: 0.23),
    ),
    OrganModel(
      id: 'left_upper_back',
      name: 'back',
      nameAr: 'الظهر',
      description: 'Left Upper Back',
      descriptionAr: 'أعلى الظهر الأيسر',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.38, y: 0.28),
    ),
    OrganModel(
      id: 'right_upper_back',
      name: 'back',
      nameAr: 'الظهر',
      description: 'Right Upper Back',
      descriptionAr: 'أعلى الظهر الأيمن',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.62, y: 0.28),
    ),

    // ========== MID BACK ==========
    OrganModel(
      id: 'mid_spine',
      name: 'back',
      nameAr: 'الظهر',
      description: 'Mid Spine',
      descriptionAr: 'العمود الفقري الأوسط',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.50, y: 0.35),
    ),
    OrganModel(
      id: 'left_mid_back',
      name: 'back',
      nameAr: 'الظهر',
      description: 'Left Mid Back',
      descriptionAr: 'وسط الظهر الأيسر',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.38, y: 0.35),
    ),
    OrganModel(
      id: 'right_mid_back',
      name: 'back',
      nameAr: 'الظهر',
      description: 'Right Mid Back',
      descriptionAr: 'وسط الظهر الأيمن',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.62, y: 0.35),
    ),

    // ========== LOWER BACK ==========
    OrganModel(
      id: 'lower_spine',
      name: 'lower_back',
      nameAr: 'أسفل_الظهر',
      description: 'Lower Back',
      descriptionAr: 'أسفل الظهر',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.50, y: 0.43),
    ),
    OrganModel(
      id: 'left_lower_back',
      name: 'lower_back',
      nameAr: 'أسفل_الظهر',
      description: 'Left Lower Back',
      descriptionAr: 'أسفل الظهر الأيسر',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.40, y: 0.43),
    ),
    OrganModel(
      id: 'right_lower_back',
      name: 'lower_back',
      nameAr: 'أسفل_الظهر',
      description: 'Right Lower Back',
      descriptionAr: 'أسفل الظهر الأيمن',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.60, y: 0.43),
    ),

    // ========== ANUS (NEW) ==========
    OrganModel(
      id: 'anus',
      name: 'anus',
      nameAr: 'فتحة_الشرج',
      description: 'Anus',
      descriptionAr: 'فتحة الشرج',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.525, y: 0.5),
    ),
    // ========== GLUTES ==========
    OrganModel(
      id: 'sacrum',
      name: 'lower_back',
      nameAr: 'أسفل_الظهر',
      description: 'Sacrum',
      descriptionAr: 'العجز',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.50, y: 0.46),
    ),
    OrganModel(
      id: 'left_glute',
      name: 'buttocks',
      nameAr: 'الأرداف',
      description: 'Left Glute',
      descriptionAr: 'الأرداف اليسرى',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.45, y: 0.56),
    ),
    OrganModel(
      id: 'right_glute',
      name: 'buttocks',
      nameAr: 'الأرداف',
      description: 'Right Glute',
      descriptionAr: 'الأرداف اليمنى',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.55, y: 0.56),
    ),

    // ========== LEGS ==========
    OrganModel(
      id: 'left_hamstring',
      name: 'thigh',
      nameAr: 'الفخذ',
      description: 'Left Hamstring',
      descriptionAr: 'عضلة الفخذ الخلفية اليسرى',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.43, y: 0.65),
    ),
    OrganModel(
      id: 'right_hamstring',
      name: 'thigh',
      nameAr: 'الفخذ',
      description: 'Right Hamstring',
      descriptionAr: 'عضلة الفخذ الخلفية اليمنى',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.57, y: 0.65),
    ),
    OrganModel(
      id: 'left_calf',
      name: 'lower_leg',
      nameAr: 'الساق_السفلي',
      description: 'Left Calf',
      descriptionAr: 'ربلة الساق اليسرى',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.43, y: 0.79),
    ),
    OrganModel(
      id: 'right_calf',
      name: 'lower_leg',
      nameAr: 'الساق_السفلي',
      description: 'Right Calf',
      descriptionAr: 'ربلة الساق اليمنى',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.57, y: 0.79),
    ),
  ];

  static const List<OrganModel> backViewOrgansForFemale = [
    // ========== HEAD & NECK ==========
    OrganModel(
      id: 'back_of_head',
      name: 'whole_head',
      nameAr: 'الرأس_كامل',
      description: 'Back of Head',
      descriptionAr: 'مؤخرة الرأس',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.48, y: 0.055),
    ),
    OrganModel(
      id: 'neck_back',
      name: 'nape_of_neck',
      nameAr: 'مؤخرة_الرقبة',
      description: 'Neck',
      descriptionAr: 'الرقبة',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.50, y: 0.14),
    ),

    // ========== SHOULDERS ==========
    OrganModel(
      id: 'left_shoulder_back',
      name: 'upper_arm',
      nameAr: 'الذراع_العلوي',
      description: 'Left Shoulder',
      descriptionAr: 'الكتف الأيسر',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.3, y: 0.2),
    ),
    OrganModel(
      id: 'right_shoulder_back',
      name: 'upper_arm',
      nameAr: 'الذراع_العلوي',
      description: 'Right Shoulder',
      descriptionAr: 'الكتف الأيمن',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.69, y: 0.2),
    ),

    // ========== UPPER BACK ==========
    OrganModel(
      id: 'upper_spine',
      name: 'back',
      nameAr: 'الظهر',
      description: 'Upper Spine',
      descriptionAr: 'العمود الفقري العلوي',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.50, y: 0.23),
    ),
    OrganModel(
      id: 'left_upper_back',
      name: 'back',
      nameAr: 'الظهر',
      description: 'Left Upper Back',
      descriptionAr: 'أعلى الظهر الأيسر',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.38, y: 0.28),
    ),
    OrganModel(
      id: 'right_upper_back',
      name: 'back',
      nameAr: 'الظهر',
      description: 'Right Upper Back',
      descriptionAr: 'أعلى الظهر الأيمن',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.62, y: 0.28),
    ),

    // // ========== SKIN – BACK (NEW) ==========
    // OrganModel(
    //   id: 'skin_back',
    //   name: 'skin',
    //   nameAr: 'الجلد',
    //   description: 'Skin',
    //   descriptionAr: 'الجلد',
    //   bodyView: BodyView.back,
    //   position: OrganPosition(x: 0.50, y: 0.30),
    // ),

    // ========== MID BACK ==========
    OrganModel(
      id: 'mid_spine',
      name: 'back',
      nameAr: 'الظهر',
      description: 'Mid Spine',
      descriptionAr: 'العمود الفقري الأوسط',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.50, y: 0.35),
    ),
    OrganModel(
      id: 'left_mid_back',
      name: 'back',
      nameAr: 'الظهر',
      description: 'Left Mid Back',
      descriptionAr: 'وسط الظهر الأيسر',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.38, y: 0.35),
    ),
    OrganModel(
      id: 'right_mid_back',
      name: 'back',
      nameAr: 'الظهر',
      description: 'Right Mid Back',
      descriptionAr: 'وسط الظهر الأيمن',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.62, y: 0.35),
    ),

    // ========== LOWER BACK ==========
    OrganModel(
      id: 'lower_spine',
      name: 'lower_back',
      nameAr: 'أسفل_الظهر',
      description: 'Lower Back',
      descriptionAr: 'أسفل الظهر',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.50, y: 0.43),
    ),
    OrganModel(
      id: 'left_lower_back',
      name: 'lower_back',
      nameAr: 'أسفل_الظهر',
      description: 'Left Lower Back',
      descriptionAr: 'أسفل الظهر الأيسر',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.36, y: 0.43),
    ),
    OrganModel(
      id: 'right_lower_back',
      name: 'lower_back',
      nameAr: 'أسفل_الظهر',
      description: 'Right Lower Back',
      descriptionAr: 'أسفل الظهر الأيمن',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.65, y: 0.43),
    ),

    // ========== GLUTES ==========
    OrganModel(
      id: 'sacrum',
      name: 'lower_back',
      nameAr: 'أسفل_الظهر',
      description: 'Sacrum',
      descriptionAr: 'العجز',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.50, y: 0.47),
    ),
    OrganModel(
      id: 'left_glute',
      name: 'buttocks',
      nameAr: 'الأرداف',
      description: 'Left Glute',
      descriptionAr: 'الأرداف اليسرى',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.36, y: 0.52),
    ),
    OrganModel(
      id: 'right_glute',
      name: 'buttocks',
      nameAr: 'الأرداف',
      description: 'Right Glute',
      descriptionAr: 'الأرداف اليمنى',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.61, y: 0.52),
    ),

    // ========== LEGS ==========
    OrganModel(
      id: 'left_hamstring',
      name: 'thigh',
      nameAr: 'الفخذ',
      description: 'Left Hamstring',
      descriptionAr: 'عضلة الفخذ الخلفية اليسرى',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.41, y: 0.62),
    ),
    OrganModel(
      id: 'right_hamstring',
      name: 'thigh',
      nameAr: 'الفخذ',
      description: 'Right Hamstring',
      descriptionAr: 'عضلة الفخذ الخلفية اليمنى',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.62, y: 0.62),
    ),
    OrganModel(
      id: 'left_calf',
      name: 'lower_leg',
      nameAr: 'الساق_السفلي',
      description: 'Left Calf',
      descriptionAr: 'ربلة الساق اليسرى',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.43, y: 0.79),
    ),
    OrganModel(
      id: 'right_calf',
      name: 'lower_leg',
      nameAr: 'الساق_السفلي',
      description: 'Right Calf',
      descriptionAr: 'ربلة الساق اليمنى',
      bodyView: BodyView.back,
      position: OrganPosition(x: 0.57, y: 0.79),
    ),
  ];

  // Helper methods
  // Accept genderKey (e.g., 'male' / 'female' or Arabic 'ذكر' / 'أنثى') to return gender-specific organ sets
  static List<OrganModel> getOrgansForView(BodyView view, {String? genderKey}) {
    final bool isFemale = genderKey != null && (genderKey.toLowerCase() == 'female' || genderKey == 'أنثى' || genderKey == '2');

    if (view == BodyView.front) {
      return isFemale ? frontViewOrgansForFemale : frontViewOrgansForMale;
    } else {
      return isFemale ? backViewOrgansForFemale : backViewOrgansForMale;
    }
  }

  /// Return all organs (front + back) for the selected gender.
  /// If genderKey is null, default to male to preserve previous behavior.
  static List<OrganModel> getAllOrgans({String? genderKey}) {
    final bool isFemale = genderKey != null && (genderKey.toLowerCase() == 'female' || genderKey == 'أنثى' || genderKey == '2');

    if (isFemale) {
      return [...frontViewOrgansForFemale, ...backViewOrgansForFemale];
    }

    // default: male
    return [...frontViewOrgansForMale, ...backViewOrgansForMale];
  }

  /// Find organ by id within the organs of the selected gender (or male if not specified)
  static OrganModel? getOrganById(String id, {String? genderKey}) {
    try {
      return getAllOrgans(genderKey: genderKey).firstWhere((organ) => organ.id == id);
    } catch (e) {
      return null;
    }
  }
}