1- import { NextRequest , NextResponse } from "next/server" ;
2- import { loggingMiddleware } from "@/middleware/loggingMiddleware" ;
3- import { errorHandler } from "@/middleware/errorHandler" ;
4- import { auth } from "@/lib/auth/auth" ;
5- import { headers } from "next/headers" ;
6- import { signOut } from "@/lib/auth/auth-client" ;
1+ import { NextRequest , NextResponse } from "next/server" ;
2+ import { loggingMiddleware } from "@/middleware/loggingMiddleware" ;
3+ import { errorHandler } from "@/middleware/errorHandler" ;
4+ import { auth } from "@/lib/auth/auth" ;
5+ import { headers } from "next/headers" ;
76
87export async function proxy ( request : NextRequest ) {
98 const url = request . nextUrl . clone ( ) ;
@@ -13,25 +12,20 @@ export async function proxy(request: NextRequest) {
1312 const session = await auth . api . getSession ( {
1413 headers : await headers ( ) ,
1514 } ) ;
16-
1715 if ( ! session ) {
1816 return NextResponse . redirect ( new URL ( `/login?redirect=${ redirectUrl } ` , request . url ) ) ;
1917 }
20-
2118 if ( session . user . banned ) {
22- signOut ( ) ;
19+ await auth . api . signOut ( { headers : await headers ( ) } ) ;
2320 return NextResponse . redirect ( new URL ( "/login?error=banned" , request . url ) ) ;
2421 }
25-
2622 if ( session . user . role === "pending" ) {
27- signOut ( ) ;
23+ await auth . api . signOut ( { headers : await headers ( ) } ) ;
2824 return NextResponse . redirect ( new URL ( `/login?error=pending?redirect=${ redirectUrl } ` , request . url ) ) ;
2925 }
30-
3126 if ( url . pathname === "/dashboard" ) {
3227 return NextResponse . redirect ( new URL ( `/dashboard/home` , request . url ) ) ;
3328 }
34-
3529 return NextResponse . next ( ) ;
3630 }
3731
@@ -42,9 +36,9 @@ export async function proxy(request: NextRequest) {
4236 if ( url . pathname . startsWith ( "/api" ) ) {
4337 const routeExists = checkRouteExists ( url . pathname ) ;
4438 if ( ! routeExists ) {
45- return new NextResponse ( JSON . stringify ( { message : "This API route does not exist." , status : 404 } ) , {
39+ return new NextResponse ( JSON . stringify ( { message : "This API route does not exist." , status : 404 } ) , {
4640 status : 404 ,
47- headers : { "Content-Type" : "application/json" } ,
41+ headers : { "Content-Type" : "application/json" } ,
4842 } ) ;
4943 }
5044 }
0 commit comments