import { useQuery } from '@tanstack/react-query';
import { api } from '../lib/api';
import type { ApiResponse } from '../lib/api';

export interface ServiceCategoryOption {
  key: string;
  label: string;
}

/**
 * لیست نوع خدمت (سرپایی/بستری/…) از سرور. هرگز hardcode نشود: افزودن نوع تازه
 * فقط یک case در enum بک‌اند است و از همین‌جا در همه‌ی فرم‌ها ظاهر می‌شود.
 */
export function useServiceCategories(enabled = true) {
  const { data, isLoading } = useQuery<ApiResponse<ServiceCategoryOption[]>>({
    queryKey: ['service-categories'],
    queryFn: () => api.get('/api/v1/service-categories'),
    staleTime: 60 * 60 * 1000,
    enabled,
  });

  // پاسخ کنترلر تودرتوست: success(['data' => …]) → data.data
  const rows = (data as any)?.data?.data ?? data?.data;

  return { categories: Array.isArray(rows) ? rows : [], isLoading };
}
