⬆️ Updated: Next.js 12.1.6 -> 12.2.0

This commit is contained in:
SR3u
2022-10-27 17:20:02 +03:00
parent 5077d753b6
commit c6474923b0
6 changed files with 113 additions and 79 deletions

23
src/middleware.ts Normal file
View File

@@ -0,0 +1,23 @@
import { NextFetchEvent, NextRequest, NextResponse } from 'next/server';
// eslint-disable-next-line consistent-return
export function middleware(req: NextRequest, ev: NextFetchEvent) {
const isCorrectPassword = req.cookies.get('password') === process.env.PASSWORD;
const url = req.nextUrl.clone();
const skipURL = url.pathname && (
url.pathname.includes('login') || url.pathname === ('/api/configs/tryPassword') || (
url.pathname.includes('/_next/') && !url.pathname.includes('/pages/')
) ||
url.pathname === '/favicon.ico' ||
url.pathname === '/404' ||
url.pathname.includes('pages/_app')
);
if (
!skipURL &&
!isCorrectPassword &&
process.env.PASSWORD
) {
url.pathname = '/login';
return NextResponse.rewrite(url);
}
}