import { redirect } from 'react-router'
import type { Route } from './+types/$'

export async function loader({ request }: Route.LoaderArgs) {
  const url = new URL(request.url)

  // Handle React DevTools and other development files
  if (
    url.pathname.endsWith('.js.map') ||
    url.pathname.includes('installHook') ||
    url.pathname.startsWith('/__') ||
    url.pathname.startsWith('/node_modules/')
  ) {
    // Return a 404 response for these dev-only requests
    throw new Response('Not Found', { status: 404 })
  }

  // For any other unmatched routes, redirect to home
  return redirect('/')
}

export default function CatchAll() {
  // This component should never render since we always redirect or throw
  return null
}
