@@ -27,27 +27,27 @@ async function refresh() {
2727}
2828
2929export function middleware ( request : NextRequest ) {
30- // const from = request.headers.has("referer") ? request.headers.get("referer") : "/"
31- // const to = request.url
32- // const state = store.getState()
33- // if (from) {
34- // if (loggedIn(state) && anonymousRoutes.some(route => to.endsWith(route))) {
35- // if (redirectRoutes.some(route => from.endsWith(route))) {
36- // return NextResponse.redirect(new URL('/', request.url))
37- // } else {
38- // return NextResponse.redirect(new URL(from, request.url))
39- // }
40- // } else if (!loggedIn(state) && authenticatedRoutes.some(route => to.endsWith(route))) {
41- // if (redirectRoutes.some(route => from.endsWith(route))) {
42- // return NextResponse.redirect(new URL('/', request.url))
43- // } else {
44- // return NextResponse.redirect(new URL(from, request.url))
45- // }
46- // } else if (!isAdmin(state) && adminRoutes.some(route => to.endsWith(route))) {
47- // return NextResponse.redirect(new URL(from, request.url))
48- // }
49- // }
50- // if (!loggedIn(state) && refreshRoutes.some(route => to.endsWith(route))) {
51- // refresh()
52- // }
30+ const from = request . headers . has ( "referer" ) ? request . headers . get ( "referer" ) : "/"
31+ const to = request . url
32+ const state = store . getState ( )
33+ if ( from ) {
34+ if ( loggedIn ( state ) && anonymousRoutes . some ( route => to . endsWith ( route ) ) ) {
35+ if ( redirectRoutes . some ( route => from . endsWith ( route ) ) ) {
36+ return NextResponse . redirect ( new URL ( '/' , request . url ) )
37+ } else {
38+ return NextResponse . redirect ( new URL ( from , request . url ) )
39+ }
40+ } else if ( ! loggedIn ( state ) && authenticatedRoutes . some ( route => to . endsWith ( route ) ) ) {
41+ if ( redirectRoutes . some ( route => from . endsWith ( route ) ) ) {
42+ return NextResponse . redirect ( new URL ( '/' , request . url ) )
43+ } else {
44+ return NextResponse . redirect ( new URL ( from , request . url ) )
45+ }
46+ } else if ( ! isAdmin ( state ) && adminRoutes . some ( route => to . endsWith ( route ) ) ) {
47+ return NextResponse . redirect ( new URL ( from , request . url ) )
48+ }
49+ }
50+ if ( ! loggedIn ( state ) && refreshRoutes . some ( route => to . endsWith ( route ) ) ) {
51+ refresh ( )
52+ }
5353}
0 commit comments