import { useEffect } from 'react';
import { BackHandler, Alert } from 'react-native';
import { useRouter, usePathname } from 'expo-router';

export default function BackHandlerWrapper() {
  const router = useRouter();
  const pathname = usePathname();

  const isHomeScreen = 
    !router.canGoBack() && 
    (pathname.includes('home') || pathname === '/');

  useEffect(() => {
    const onBackPress = () => {
      if (isHomeScreen) {
        Alert.alert('Exit App', 'Are you sure you want to exit?', [
          { text: 'Cancel', style: 'cancel' },
          { text: 'Exit', onPress: () => BackHandler.exitApp() },
        ]);
        return true;
      }
      return false;
    };

    const subscription = BackHandler.addEventListener('hardwareBackPress', onBackPress);
    return () => {
      subscription.remove();
    };
  }, [isHomeScreen]);

  return null;
}