"use client"
import { QueryClientProvider } from "@tanstack/react-query";
{{#if (eq api "orpc")}}
import { orpc, ORPCContext, queryClient } from "@/utils/orpc";
{{/if}}
{{#if (eq api "trpc")}}
import { queryClient } from "@/utils/trpc";
{{/if}}
import { ThemeProvider } from "./theme-provider";
import { Toaster } from "./ui/sonner";

export default function Providers({
  children,
}: {
  children: React.ReactNode
}) {
  return (
    <ThemeProvider
      attribute="class"
      defaultTheme="system"
      enableSystem
      disableTransitionOnChange
    >
      <QueryClientProvider client={queryClient}>
        {{#if (eq api "orpc")}}
        <ORPCContext.Provider value={orpc}>
          {children}
        </ORPCContext.Provider>
        {{/if}}
        {{#if (eq api "trpc")}}
        {children}
        {{/if}}
      </QueryClientProvider>
      <Toaster richColors />
    </ThemeProvider>
  )
}
