Files
portabase/app/providers.tsx
T

31 lines
932 B
TypeScript
Raw Normal View History

2025-05-16 15:54:17 +02:00
"use client";
2024-11-03 15:29:30 +01:00
2025-12-23 09:06:06 +01:00
import {PropsWithChildren, Suspense} from "react";
import {ThemeProvider} from "@/features/theme/theme-provider";
2024-11-10 23:12:38 +01:00
2025-12-23 09:06:06 +01:00
import {Toaster} from "@/components/ui/sonner";
import {QueryClient, QueryClientProvider} from "@tanstack/react-query";
2025-12-26 11:55:43 +01:00
import {ThemeMetaUpdaterRoot} from "@/features/browser/theme-meta-updater-root";
2024-11-03 15:29:30 +01:00
2025-12-23 09:06:06 +01:00
export type ProviderProps = PropsWithChildren<{}>;
2025-05-16 15:54:17 +02:00
const queryClient = new QueryClient();
2024-11-03 15:29:30 +01:00
export const Providers = (props: ProviderProps) => {
return (
2025-12-23 09:06:06 +01:00
<Suspense fallback={null}>
2025-12-22 20:32:18 +01:00
<ThemeProvider
attribute="class"
defaultTheme="system"
enableSystem
>
2025-12-26 11:55:43 +01:00
<ThemeMetaUpdaterRoot/>
2025-05-16 15:54:17 +02:00
<QueryClientProvider client={queryClient}>
2025-12-23 09:06:06 +01:00
<Toaster/>
2025-05-16 15:54:17 +02:00
{props.children}
</QueryClientProvider>
</ThemeProvider>
2025-02-20 09:26:38 +01:00
</Suspense>
2025-05-16 15:54:17 +02:00
);
};