import { createFileRoute } from '@tanstack/react-router'; import { CloudAccountList } from '@/components/CloudAccountList'; import { Button } from '@/components/ui/button'; import { useToast } from '@/components/ui/use-toast'; import { getLocalizedErrorMessage } from '@/utils/errorMessages'; import { RefreshCw } from 'lucide-react'; import { useEffect, useRef } from 'react'; import { useTranslation } from 'react-i18next'; function HomePage() { return (
); } function HomePageErrorBoundary({ error, reset }: { error: unknown; reset: () => void }) { const { t } = useTranslation(); const { toast } = useToast(); const hasShownToastRef = useRef(false); useEffect(() => { if (hasShownToastRef.current) { return; } toast({ title: t('error.generic'), description: getLocalizedErrorMessage(error, t), variant: 'destructive', }); hasShownToastRef.current = true; }, [error, t, toast]); return (
{t('error.generic')}
{t('action.retry')}
); } export const Route = createFileRoute('/')({ component: HomePage, errorComponent: HomePageErrorBoundary, });