wip try fix auth

This commit is contained in:
Carl-Gerhard Lindesvärd
2024-02-17 13:46:03 +01:00
parent e05d8bdca1
commit ae8482c1e3
3 changed files with 25 additions and 14 deletions

View File

@@ -15,7 +15,7 @@ export const viewport = {
userScalable: 1,
};
export default async function RootLayout({
export default function RootLayout({
children,
}: {
children: React.ReactNode;

View File

@@ -6,14 +6,15 @@ import { TooltipProvider } from '@/components/ui/tooltip';
import { ModalProvider } from '@/modals';
import type { AppStore } from '@/redux';
import makeStore from '@/redux';
import { ClerkProvider } from '@clerk/nextjs';
import { ClerkProvider, useAuth } from '@clerk/nextjs';
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
import { httpLink } from '@trpc/client';
import { Provider as ReduxProvider } from 'react-redux';
import { Toaster } from 'sonner';
import superjson from 'superjson';
export default function Providers({ children }: { children: React.ReactNode }) {
function AllProviders({ children }: { children: React.ReactNode }) {
const { getToken } = useAuth();
const [queryClient] = useState(
() =>
new QueryClient({
@@ -32,6 +33,9 @@ export default function Providers({ children }: { children: React.ReactNode }) {
links: [
httpLink({
url: `${process.env.NEXT_PUBLIC_DASHBOARD_URL}/api/trpc`,
async headers() {
return { Authorization: `Bearer ${await getToken()}` };
},
}),
],
})
@@ -43,19 +47,25 @@ export default function Providers({ children }: { children: React.ReactNode }) {
storeRef.current = makeStore();
}
return (
<ReduxProvider store={storeRef.current}>
<api.Provider client={trpcClient} queryClient={queryClient}>
<QueryClientProvider client={queryClient}>
<TooltipProvider delayDuration={200}>
{children}
<Toaster />
<ModalProvider />
</TooltipProvider>
</QueryClientProvider>
</api.Provider>
</ReduxProvider>
);
}
export default function Providers({ children }: { children: React.ReactNode }) {
return (
<ClerkProvider>
<ReduxProvider store={storeRef.current}>
<api.Provider client={trpcClient} queryClient={queryClient}>
<QueryClientProvider client={queryClient}>
<TooltipProvider delayDuration={200}>
{children}
<Toaster />
<ModalProvider />
</TooltipProvider>
</QueryClientProvider>
</api.Provider>
</ReduxProvider>
<AllProviders>{children}</AllProviders>
</ClerkProvider>
);
}

View File

@@ -5,6 +5,7 @@ import { authMiddleware } from '@clerk/nextjs';
// See https://clerk.com/docs/references/nextjs/auth-middleware for more information about configuring your Middleware
export default authMiddleware({
publicRoutes: ['/share/overview/:id', '/api/trpc(.*)'],
debug: true,
});
export const config = {