diff --git a/packages/webui/src/trpc/TRPCClientProvider.tsx b/packages/webui/src/trpc/TRPCClientProvider.tsx new file mode 100644 index 0000000..5408969 --- /dev/null +++ b/packages/webui/src/trpc/TRPCClientProvider.tsx @@ -0,0 +1,37 @@ +import { QueryClient, QueryClientProvider } from "@tanstack/react-query" +import { httpBatchLink } from "@trpc/client" +import { ReactNode, useState } from "react" +import { trpc } from "./trpc" + + +export interface TRPCClientProviderProps { + children: ReactNode +} + + +export function TRPCClientProvider({ children }: TRPCClientProviderProps) { + + const [queryClient] = useState(new QueryClient()) + + const [trpcClient] = useState(trpc.createClient({ + links: [ + httpBatchLink({ + url: "http://localhost:8080/rpc", + headers: async () => ({}), + }) + ] + })) + + + return ( + + + {children} + + + ) + +} diff --git a/packages/webui/src/trpc/trpc.ts b/packages/webui/src/trpc/trpc.ts index b644009..bb82294 100644 --- a/packages/webui/src/trpc/trpc.ts +++ b/packages/webui/src/trpc/trpc.ts @@ -2,4 +2,4 @@ import type { Router } from "@todo-tests/common/rpc" import { createTRPCReact } from "@trpc/react-query" -export const trpc = createTRPCReact() +export const trpc: ReturnType> = createTRPCReact()