import austria from "@/assets/dest/austria.jpg";
import bhutan from "@/assets/dest/bhutan.jpg";
import iceland from "@/assets/dest/iceland.jpg";
import japan from "@/assets/dest/japan.jpg";
import kenya from "@/assets/dest/kenya.jpg";
import kerala from "@/assets/dest/kerala.jpg";
import ladakh from "@/assets/dest/ladakh.jpg";
import portugal from "@/assets/dest/portugal.jpg";
import switzerland from "@/assets/dest/switzerland.jpg";
import vietnam from "@/assets/dest/vietnam.jpg";

const MAP: Record<string, string> = {
  switzerland,
  austria,
  japan,
  vietnam,
  kerala,
  ladakh,
  iceland,
  kenya,
  bhutan,
  portugal,
};

const ORDER = Object.values(MAP);

/** Destination image for any free-text destination / tour / trip name. */
export function destinationImage(name: string | undefined | null): string {
  const key = (name ?? "").toLowerCase();
  for (const [k, v] of Object.entries(MAP)) {
    if (key.includes(k)) return v;
  }
  let hash = 0;
  for (let i = 0; i < key.length; i++) hash = (hash * 31 + key.charCodeAt(i)) % 9973;
  return ORDER[hash % ORDER.length]!;
}
