mirror of
https://github.com/warmbly/warmbly.git
synced 2026-09-11 16:08:09 +00:00
45 lines
1.3 KiB
TypeScript
45 lines
1.3 KiB
TypeScript
// Entry point: TanStack Router (code-based routes; the app has exactly one
|
|
// real route) + TanStack Query, mounted under the shell the Go forms service
|
|
// serves at /f/<publicId>.
|
|
|
|
import { StrictMode } from "react";
|
|
import { createRoot } from "react-dom/client";
|
|
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
|
|
import { createRootRoute, createRoute, createRouter, Outlet, RouterProvider } from "@tanstack/react-router";
|
|
|
|
import { FormPage } from "./FormPage";
|
|
import { initErrorReporting } from "./observability";
|
|
import { NotFound } from "./NotFound";
|
|
import "./styles.css";
|
|
|
|
const rootRoute = createRootRoute({
|
|
component: () => <Outlet />,
|
|
notFoundComponent: NotFound,
|
|
});
|
|
|
|
const formRoute = createRoute({
|
|
getParentRoute: () => rootRoute,
|
|
path: "/f/$publicId",
|
|
component: FormPage,
|
|
});
|
|
|
|
const router = createRouter({ routeTree: rootRoute.addChildren([formRoute]) });
|
|
|
|
declare module "@tanstack/react-router" {
|
|
interface Register {
|
|
router: typeof router;
|
|
}
|
|
}
|
|
|
|
const queryClient = new QueryClient();
|
|
|
|
initErrorReporting();
|
|
|
|
createRoot(document.getElementById("root")!).render(
|
|
<StrictMode>
|
|
<QueryClientProvider client={queryClient}>
|
|
<RouterProvider router={router} />
|
|
</QueryClientProvider>
|
|
</StrictMode>,
|
|
);
|