const BASE_PREFIX = '/api/kcg';

/**
 * KCG 백엔드 API 호출 래퍼.
 * - 자동 credentials: 'include'
 * - JSON 파싱
 * - 에러 시 null 반환 (graceful degradation)
 */
export async function kcgFetch<T>(path: string): Promise<T | null> {
  try {
    const res = await fetch(`${BASE_PREFIX}${path}`, { credentials: 'include' });
    if (!res.ok) return null;
    return await res.json() as T;
  } catch {
    return null;
  }
}

/**
 * 외부 API 호출 래퍼 (CORS 프록시 경유).
 */
export async function externalFetch<T>(url: string): Promise<T | null> {
  try {
    const res = await fetch(url);
    if (!res.ok) return null;
    return await res.json() as T;
  } catch {
    return null;
  }
}
