import { createRouter, useRouter } from "@tanstack/react-router";
import { QueryClient } from "@tanstack/react-query";
import { routeTree } from "./routeTree.gen";
function DefaultErrorComponent({ error, reset }: { error: Error; reset: () => void }) {
const router = useRouter();
return (
Algo deu errado
Ocorreu um erro inesperado. Tente novamente.
{import.meta.env.DEV && error.message && (
{error.message}
)}
Ir para o início
);
}
export const getRouter = () => {
// Fresh QueryClient per request — never module-level (vaza dados entre SSR requests)
const queryClient = new QueryClient({
defaultOptions: {
queries: {
staleTime: 30_000,
retry: 1,
refetchOnWindowFocus: false,
},
},
});
const router = createRouter({
routeTree,
context: { queryClient },
scrollRestoration: true,
defaultPreloadStaleTime: 0,
defaultErrorComponent: DefaultErrorComponent,
});
return router;
};