import { supabase } from '@/lib/supabase';
import { showAuthToast } from '@/utils/auth';

export const signOut = async (): Promise<void> => {
  try {
    const { error } = await supabase.auth.signOut();
    
    if (error) {
      console.error('로그아웃 오류:', error);
      showAuthToast('로그아웃 실패', error.message, 'destructive');
    } else {
      showAuthToast('로그아웃 성공', '다음에 또 만나요!');
    }
  } catch (error: any) {
    console.error('로그아웃 중 예외 발생:', error);
    
    // 네트워크 오류 확인
    const errorMessage = error.message && error.message.includes('fetch') 
      ? '서버 연결에 실패했습니다. 네트워크 연결을 확인해주세요.' 
      : '예상치 못한 오류가 발생했습니다.';
      
    showAuthToast('로그아웃 오류', errorMessage, 'destructive');
  }
};
