const ROUTE_ALIASES: Record<string, string> = {
  career: "/careers",
  careers: "/careers",
  contact: "/contact",
  "contact-us": "/contact",
  newsletter: "/newsletter",
  about: "/about",
  hospitality: "/hospitality",
  entertainment: "/entertainment",
  safl: "/safl",
  logistics: "/logistics",
  "green-energy": "/green-energy",
  "vital-industries": "/vital-industries",
  "wedding-collective": "/wedding-collective",
}

export function normalizeCmsLink(value: unknown, fallback = ""): string {
  if (typeof value !== "string" && typeof value !== "number") return fallback

  const raw = String(value).trim()
  if (!raw) return fallback

  const lowered = raw.toLowerCase()
  if (lowered === "null" || lowered === "undefined") return fallback

  if (
    raw.startsWith("/") ||
    raw.startsWith("#") ||
    raw.startsWith("mailto:") ||
    raw.startsWith("tel:") ||
    /^[a-z][a-z0-9+.-]*:\/\//i.test(raw)
  ) {
    return raw
  }

  return ROUTE_ALIASES[lowered] ?? `/${raw.replace(/^\/+/, "")}`
}
