// lib/hreflang.ts

import { pathnames } from "../../pathnames";


/**
 * Generates hreflang metadata for a given route
 * @param routeKey - The key from pathnames object (e.g., '/tarifs')
 * @param currentLocale - Current locale ('fr' or 'en')
 * @returns Metadata alternates object for Next.js
 */
export function generateHreflangMetadata(
  routeKey: string,
  currentLocale: string
): {
  canonical: string;
  languages: Record<string, string>;
} {
  const baseUrl = process.env.NEXT_PUBLIC_FRONTEND_HOST || 'https://dadycar.com';
  
  // Get paths from your pathnames configuration
  const paths = pathnames[routeKey as keyof typeof pathnames];
  
  if (!paths) {
    console.warn(`No pathnames found for route: ${routeKey}`);
    return {
      canonical: baseUrl,
      languages: {
        'fr': baseUrl,
        'en': `${baseUrl}/en`,
        'x-default': baseUrl,
      }
    };
  }

  const frPath = paths.fr;
  const enPath = paths.en;
  
  // Build full URLs
  const frUrl = `${baseUrl}${frPath}`;
  const enUrl = `${baseUrl}${enPath === '/home' ? '/en' : `/en${enPath}`}`;
  
  // Current URL based on locale
  const currentUrl = currentLocale === 'fr' ? frUrl : enUrl;

  return {
    canonical: currentUrl,
    languages: {
      'fr': frUrl,
      'en': enUrl,
      'x-default': frUrl, // French is default
    }
  };
}