import type { QueryClient } from "@tanstack/react-query"; import { ReactQueryDevtools } from "@tanstack/react-query-devtools"; import { createRootRouteWithContext, HeadContent, Outlet, useRouterState, } from "@tanstack/react-router"; import { TanStackRouterDevtools } from "@tanstack/react-router-devtools"; import Header from "@/components/header"; import Loader from "@/components/loader"; import { ThemeProvider } from "@/components/theme-provider"; import { Toaster } from "@/components/ui/sonner"; import type { trpc } from "@/utils/trpc"; import "../index.css"; export interface RouterAppContext { trpc: typeof trpc; queryClient: QueryClient; } export const Route = createRootRouteWithContext()({ component: RootComponent, head: () => ({ meta: [ { title: "Reflecto", }, { name: "description", content: "Reflecto is a web application", }, ], links: [ { rel: "icon", href: "/favicon.ico", }, ], }), }); function RootComponent() { const isFetching = useRouterState({ select: (s) => s.isLoading, }); return ( <>
{isFetching ? : }
); }