/**
 * ─── Brand Asset Registry ───────────────────────────────────────────────────
 *
 * Maps each supported brand to its official uploaded logo file in /public/brands/.
 * NO generated SVGs. NO Clearbit URLs. NO placeholders.
 *
 * SUPPORTED BRANDS (14 with uploaded assets):
 *   Audi · BMW · Honda · Hyundai · Jeep · Kia · MG · Mahindra
 *   Maruti Suzuki · Mercedes-Benz · Renault · Skoda · Toyota · Volkswagen
 *
 * HOW TO ADD A NEW BRAND
 * ──────────────────────
 * 1. Drop the logo file into  frontend/public/brands/
 *    (supported: .png  .jpeg  .jpg  .svg  .webp)
 * 2. Add an entry to BRAND_ASSETS below.
 *    Key  = exact brand name as stored in the database
 *    logo = absolute path from /public  e.g. "/brands/tata.png"
 * 3. Restart the dev server — no other code changes needed.
 */

export interface BrandAsset {
  /** Absolute path from /public root — served by Next.js static asset handler */
  logo: string;
  /** Brand accent colour used for loading shimmer and card tinting */
  bgColor: string;
}

/** Master brand registry — edit ONLY this file to add / change logos. */
export const BRAND_ASSETS: Record<string, BrandAsset> = {
  "Audi":          { logo: "/brands/audi.png",           bgColor: "#BB0A30" },
  "BMW":           { logo: "/brands/bmw.jpeg",            bgColor: "#1C69D4" },
  "Honda":         { logo: "/brands/honda.jpeg",          bgColor: "#CC0000" },
  "Hyundai":       { logo: "/brands/hyundai.jpeg",        bgColor: "#002C5F" },
  "Jeep":          { logo: "/brands/jeep.jpeg",           bgColor: "#2D2D2D" },
  "Kia":           { logo: "/brands/kia.png",             bgColor: "#05141F" },
  "MG":            { logo: "/brands/mg.png",              bgColor: "#B22222" },
  "Mahindra":      { logo: "/brands/mahindra.jpeg",       bgColor: "#C41E3A" },
  "Maruti Suzuki": { logo: "/brands/maruti-suzuki.png",   bgColor: "#1E3A8A" },
  "Mercedes-Benz": { logo: "/brands/mercedes.jpeg",       bgColor: "#767676" },
  "Renault":       { logo: "/brands/renault.jpeg",        bgColor: "#EFAC00" },
  "Skoda":         { logo: "/brands/skoda.jpeg",          bgColor: "#4BA82E" },
  "Toyota":        { logo: "/brands/toyota.png",          bgColor: "#EB0A1E" },
  "Volkswagen":    { logo: "/brands/volkswagen.jpeg",     bgColor: "#001E50" },

  /* ── Add more brands below as logo files are uploaded ─────────────────── */
  "Tata":       { logo: "/brands/tatalogo.png",            bgColor: "#00235B" },
  "Ford":       { logo: "/brands/ford.png",            bgColor: "#003478" },
  "Nissan":     { logo: "/brands/nissan.png",          bgColor: "#C3002F" },
  "Lexus":      { logo: "/brands/lexus.jpeg",           bgColor: "#1A1A1A" },
  "Volvo":      { logo: "/brands/volvo.png",           bgColor: "#003057" },
  "Land Rover": { logo: "/brands/landrover.png",      bgColor: "#004225" },
  "Porsche":    { logo: "/brands/porsche.jpeg",         bgColor: "#D5001C" },
  "Tesla":    { logo: "/brands/tesla.png",         bgColor: "#D5001C" },
};

// ── Helpers ──────────────────────────────────────────────────────────────────

/** Returns true when the brand has an official logo file registered. */
export function hasBrandAsset(brand: string): boolean {
  return brand in BRAND_ASSETS;
}

/** Returns the official logo path, or null for unregistered brands. */
export function getLogoPath(brand: string): string | null {
  return BRAND_ASSETS[brand]?.logo ?? null;
}

/** Returns the brand accent colour (for shimmer / card tinting). */
export function getBrandColor(brand: string): string {
  return BRAND_ASSETS[brand]?.bgColor ?? "#6B7280";
}
