32 lines · 826 B · TypeScript
RawDownload
import { createElement } from "react";import { QueryClient, QueryClientProvider } from "@tanstack/react-query";import { createRouter, RouterHistory } from "@tanstack/react-router"; import { AppAtomRegistryProvider } from "./rpc/atomRegistry";import { routeTree } from "./routeTree.gen"; export function getRouter(history: RouterHistory) {  const queryClient = new QueryClient();   return createRouter({    routeTree,    history,    context: {      queryClient,    },    Wrap: ({ children }) =>      createElement(        QueryClientProvider,        { client: queryClient },        createElement(AppAtomRegistryProvider, undefined, children),      ),  });} export type AppRouter = ReturnType<typeof getRouter>; declare module "@tanstack/react-router" {  interface Register {    router: AppRouter;  }}