create-questpie-app
Version:
Bootstrap a new QUESTPIE Studio application with your choice of template and packages
25 lines (20 loc) • 770 B
text/typescript
import { initializeMiddleware } from '@questpie/core/backend/middleware/initialize-middleware'
import type { NextRequest } from 'next/server'
let middlewarePromise: Promise<
(req: NextRequest) => Promise<import('next/server').NextResponse | undefined>
> | null = null
export async function middleware(req: NextRequest) {
if (!middlewarePromise) {
middlewarePromise = initializeMiddleware()
}
const composedMiddleware = await middlewarePromise
return composedMiddleware(req)
}
// Simple static config - let individual middleware handle their own path filtering
export const config = {
matcher: [
// Match most paths, let individual middleware decide what to process
'/((?!_next/static|_next/image|favicon.ico).*)',
],
runtime: 'nodejs',
}