/** * New Middleware */ import { clerkMiddleware } from '@clerk/nextjs/server'; export default clerkMiddleware(); export const config = { matcher: ['/((?!.*\\..*|_next).*)', '/', '/(api|trpc)(.*)'], }; /** * Old Middleware */ /* import { authMiddleware, redirectToSignIn } from '@clerk/nextjs'; import { NextResponse } from 'next/server'; export default authMiddleware({ publicRoutes: ['/', '/api/webhook', '/privacy-policy', '/terms-of-service'], afterAuth(auth, req) { if (!auth.userId && !auth.isPublicRoute) { return redirectToSignIn({ returnBackUrl: req.url }); } if (auth.userId && !auth.orgId && req.nextUrl.pathname !== '/select-org') { const orgSelection = new URL('/select-org', req.url); return NextResponse.redirect(orgSelection); } }, }); export const config = { matcher: ['/((?!.+\\.[\\w]+$|_next).*)', '/', '/(api|trpc)(.*)'], }; */