// api/category.ts
import axios from "../axiosInstance";  // axios instance'ı import ediyoruz
import type { CategoryDetailsModel } from "../../models/category/CategoryDetailsModel";  // CategoryDetailsModel'i import ediyoruz

export async function fetchCategoryDetails(slug: string): Promise<CategoryDetailsModel> {
  try {
    // API'den kategori detaylarını almak için axios instance'ını kullanıyoruz
    const response = await axios.get(`/category/${slug}`);
    
    // Backend'den gelen veriyi CategoryDetailsModel formatına uygun şekilde döndürüyoruz
    const data = response.data;

    return {
      id: data.id,
      name: data.name,
      slug: data.slug,
      description: data.description || "Açıklama bulunmuyor",
      breadcrumb: data.breadcrumb.map((item: any) => ({
        id: item.id,
        name: item.name,
        slug: item.slug,
      })),
    };
  } catch (error) {
    // Hata durumunda console loglama ve uygun mesaj döndürme
    console.error("Error fetching category details:", error);
    throw new Error("Kategori detayları alınırken bir hata oluştu");
  }
}
