// ─────────────────────────────────────────────────────────────
//  About page content layer (vision pillars + advisory board)
//  Mock/seed data. Replaced at runtime by bootstrapAbout() which
//  fetches /api/vision-items and /api/advisory-board from the panel.
//  Keep this shape so the swap stays mechanical.
// ─────────────────────────────────────────────────────────────

export interface VisionItem {
  id: string;
  /** lucide icon name (string key) — mapped to a component in About.tsx */
  icon: string;
  titleFa: string;
  titleEn: string;
  descFa: string;
  descEn: string;
}

export interface AdvisoryMember {
  id: string;
  nameFa: string;
  nameEn: string;
  roleFa: string;
  roleEn: string;
}

export const visionItems: VisionItem[] = [
  {
    id: 'research-leadership',
    icon: 'FlaskConical',
    titleFa: 'پیشرو در پژوهش',
    titleEn: 'Research Leadership',
    descFa: 'تولید تحلیل‌های راهبردی و گزارش‌های تخصصی در حوزه صنعت فولاد',
    descEn: 'Producing strategic analyses and specialized reports in the steel industry',
  },
  {
    id: 'expert-networking',
    icon: 'Network',
    titleFa: 'شبکه‌سازی خبرگان',
    titleEn: 'Expert Networking',
    descFa: 'ایجاد پیوند میان متخصصان، سیاست‌گذاران و فعالان صنعتی',
    descEn: 'Building connections between specialists, policymakers, and industry practitioners',
  },
  {
    id: 'green-steel',
    icon: 'Leaf',
    titleFa: 'فولاد سبز',
    titleEn: 'Green Steel',
    descFa: 'ترویج رویکردهای پایدار و کاهش اثرات زیست‌محیطی در زنجیره فولاد',
    descEn: 'Promoting sustainable approaches and reducing environmental impacts across the steel chain',
  },

];

export const advisoryBoard: AdvisoryMember[] = [
  {
    id: 'alireza-akbarian',
    nameFa: 'دکتر علیرضا اکبریان',
    nameEn: 'Dr. Alireza Akbarian',
    roleFa: 'مدیر اندیشکده',
    roleEn: 'Institute Director',
  },
  {
    id: 'sara-mohammadi',
    nameFa: 'مهندس سارا محمدی',
    nameEn: 'Eng. Sara Mohammadi',
    roleFa: 'پژوهشگر ارشد فولاد سبز',
    roleEn: 'Senior Green Steel Researcher',
  },
  {
    id: 'mohammad-jalali',
    nameFa: 'دکتر محمد جلالی',
    nameEn: 'Dr. Mohammad Jalali',
    roleFa: 'تحلیلگر بازارهای جهانی',
    roleEn: 'Global Markets Analyst',
  },
  {
    id: 'fatemeh-rezaei',
    nameFa: 'دکتر فاطمه رضایی',
    nameEn: 'Dr. Fatemeh Rezaei',
    roleFa: 'متخصص ژئوپلیتیک صنعتی',
    roleEn: 'Industrial Geopolitics Specialist',
  },
  {
    id: 'reza-karimi',
    nameFa: 'مهندس رضا کریمی',
    nameEn: 'Eng. Reza Karimi',
    roleFa: 'کارشناس فناوری و نوآوری',
    roleEn: 'Technology & Innovation Expert',
  },

];

const PANEL_API = (import.meta as ImportMeta & { env?: Record<string, string> }).env?.VITE_PANEL_API || ''

export async function bootstrapAbout(): Promise<void> {
  try {
    const [visionRes, boardRes] = await Promise.all([
      fetch(`${PANEL_API}/api/vision-items?limit=50`),
      fetch(`${PANEL_API}/api/advisory-board?limit=50`),
    ])

    if (visionRes.ok) {
      const fetched = await visionRes.json()
      if (Array.isArray(fetched) && fetched.length > 0) {
        visionItems.length = 0
        visionItems.push(...fetched.map((v: Record<string, unknown>) => ({
          id: String(v.id),
          icon: String(v.icon ?? ''),
          titleFa: String(v.titleFa ?? ''),
          titleEn: String(v.titleEn ?? ''),
          descFa: String(v.descFa ?? ''),
          descEn: String(v.descEn ?? ''),
        })))
      }
    }

    if (boardRes.ok) {
      const fetched = await boardRes.json()
      if (Array.isArray(fetched) && fetched.length > 0) {
        advisoryBoard.length = 0
        advisoryBoard.push(...fetched.map((m: Record<string, unknown>) => ({
          id: String(m.id),
          nameFa: String(m.nameFa ?? ''),
          nameEn: String(m.nameEn ?? ''),
          roleFa: String(m.roleFa ?? ''),
          roleEn: String(m.roleEn ?? ''),
        })))
      }
    }
  } catch { /* panel offline → keep static fallback */ }
}
