diff --git a/apps/frontend/src/features/home/home-page.tsx b/apps/frontend/src/features/home/home-page.tsx index 6527810..8700377 100644 --- a/apps/frontend/src/features/home/home-page.tsx +++ b/apps/frontend/src/features/home/home-page.tsx @@ -49,8 +49,14 @@ export function HomePage() { useEffect(() => { async function autoSelect() { if (myComplexesQuery.data && myComplexesQuery.data.length === 1) { - await apiClient.complexes.select({ complexId: myComplexesQuery.data[0].id }); - queryClient.invalidateQueries({ queryKey: ['current-complex'] }); + try { + const result = await apiClient.complexes.select({ + complexId: myComplexesQuery.data[0].id, + }); + queryClient.setQueryData(['current-complex'], result); + } catch (error) { + console.error('Error al auto-seleccionar complejo:', error); + } } else if ( myComplexesQuery.data && myComplexesQuery.data.length > 1 && diff --git a/apps/frontend/src/features/select-complex/select-complex-page.tsx b/apps/frontend/src/features/select-complex/select-complex-page.tsx index 8ff755c..119683e 100644 --- a/apps/frontend/src/features/select-complex/select-complex-page.tsx +++ b/apps/frontend/src/features/select-complex/select-complex-page.tsx @@ -1,7 +1,7 @@ import { Button } from '@/components/ui/button'; import { apiClient } from '@/lib/api-client'; import type { ComplexWithRole } from '@repo/api-contract'; -import { useMutation, useQuery } from '@tanstack/react-query'; +import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'; import { useNavigate } from '@tanstack/react-router'; import { Building2, Loader2 } from 'lucide-react'; @@ -13,12 +13,15 @@ export function SelectComplexPage() { queryFn: () => apiClient.complexes.listMine(), }); + const queryClient = useQueryClient(); + const selectMutation = useMutation({ mutationFn: async (complexId: string) => { const response = await apiClient.complexes.select({ complexId }); return response; }, - onSuccess: () => { + onSuccess: (data) => { + queryClient.setQueryData(['current-complex'], data); navigate({ to: '/' }); }, });