39 lines
1.0 KiB
TypeScript
39 lines
1.0 KiB
TypeScript
import { StrictMode } from "react";
|
|
import { createRoot } from "react-dom/client";
|
|
import { createBrowserRouter, RouterProvider } from "react-router-dom";
|
|
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
|
|
|
|
import App from "./App";
|
|
import "./index.css";
|
|
import TRPCDemoPage from "./pages/TRPCDemoPage";
|
|
import NotFoundPage from "./pages/NotFoundPage";
|
|
import { trpc, trpcClient } from "./lib/trpc";
|
|
|
|
// Create a React Query client
|
|
const queryClient = new QueryClient({
|
|
defaultOptions: {
|
|
queries: {
|
|
staleTime: 5 * 1000, // 5 seconds
|
|
},
|
|
},
|
|
});
|
|
|
|
const router = createBrowserRouter([
|
|
{
|
|
path: "/",
|
|
element: <App />,
|
|
children: [{ index: true, element: <TRPCDemoPage /> }],
|
|
},
|
|
{ path: "*", element: <NotFoundPage /> },
|
|
]);
|
|
|
|
createRoot(document.getElementById("root")!).render(
|
|
<StrictMode>
|
|
<trpc.Provider client={trpcClient} queryClient={queryClient}>
|
|
<QueryClientProvider client={queryClient}>
|
|
<RouterProvider router={router} />
|
|
</QueryClientProvider>
|
|
</trpc.Provider>
|
|
</StrictMode>
|
|
);
|