diff --git a/middleware.ts b/middleware.ts
index 42e19583..4c34f904 100644
--- a/middleware.ts
+++ b/middleware.ts
@@ -3,18 +3,6 @@ import { NextResponse } from "next/server";
export default withAuth(
function middleware(req) {
- // Allow access to public paths
- if (
- req.nextUrl.pathname === "/" ||
- req.nextUrl.pathname === "/signin" ||
- req.nextUrl.pathname.startsWith("/_next") ||
- req.nextUrl.pathname.startsWith("/api/auth") ||
- req.nextUrl.pathname.startsWith("/public")
- ) {
- return NextResponse.next();
- }
-
- // For all other routes, check authentication
return NextResponse.next();
},
{
@@ -31,6 +19,20 @@ export default withAuth(
return true;
}
+ // For API routes, check if the request is for mail or other protected endpoints
+ if (req.nextUrl.pathname.startsWith('/api/')) {
+ // Allow access to public API endpoints
+ if (
+ req.nextUrl.pathname.startsWith('/api/auth') ||
+ req.nextUrl.pathname.startsWith('/api/news')
+ ) {
+ return true;
+ }
+
+ // Require authentication for protected API endpoints
+ return !!token;
+ }
+
// For all other routes, require a valid token
return !!token;
},