Files
reffuse/packages/example/src/main.tsx
Julien Valverdé 6f688db913
All checks were successful
Lint / lint (push) Successful in 11s
SetStateAction
2025-01-17 21:23:06 +01:00

37 lines
1.1 KiB
TypeScript

import { FetchHttpClient } from "@effect/platform"
import { Clipboard, Geolocation, Permissions } from "@effect/platform-browser"
import { createRouter, RouterProvider } from "@tanstack/react-router"
import { ReffuseRuntime } from "@thilawyn/reffuse"
import { Layer } from "effect"
import { StrictMode } from "react"
import { createRoot } from "react-dom/client"
import { GlobalContext } from "./reffuse"
import { routeTree } from "./routeTree.gen"
const layer = Layer.empty.pipe(
Layer.provideMerge(Clipboard.layer),
Layer.provideMerge(Geolocation.layer),
Layer.provideMerge(Permissions.layer),
Layer.provideMerge(FetchHttpClient.layer),
)
const router = createRouter({ routeTree })
declare module "@tanstack/react-router" {
interface Register {
router: typeof router
}
}
createRoot(document.getElementById("root")!).render(
<StrictMode>
<ReffuseRuntime.Provider>
<GlobalContext.Provider layer={layer}>
<RouterProvider router={router} />
</GlobalContext.Provider>
</ReffuseRuntime.Provider>
</StrictMode>
)