@@ -8,32 +8,35 @@ export const config = {
88 matcher : [ '/' , '/closed' , '/favicon.ico' ] ,
99} ;
1010
11- export async function middleware ( req : NextRequest , context : NextFetchEvent ) {
11+ export async function middleware (
12+ { headers, method, nextUrl, url } : NextRequest ,
13+ _context : NextFetchEvent ,
14+ ) {
1215 // for demo purposes, warn when there is no EDGE_CONFIG or LAUNCHDARKLY_CLIENT_SIDE_ID
1316 if (
1417 ! process . env . EDGE_CONFIG ||
1518 ! process . env . LD_CLIENT_SIDE_ID ||
1619 ! parseConnectionString ( process . env . EDGE_CONFIG )
1720 ) {
18- return NextResponse . rewrite ( new URL ( '/missing-edge-config' , request . url ) ) ;
21+ return NextResponse . rewrite ( new URL ( '/missing-edge-config' , url ) ) ;
1922 }
2023
2124 try {
2225 const client = await ldEdgeClient . waitForInitialization ( ) ;
2326 const flagContext : LDMultiKindContext = {
2427 kind : 'multi' ,
2528 url : {
26- key : req . url ,
29+ key : url ,
2730 } ,
2831 method : {
29- key : req . method ,
32+ key : method ,
3033 } ,
3134 'user-agent' : {
32- key : req . headers . get ( 'user-agent' ) || 'unknown' ,
35+ key : headers . get ( 'user-agent' ) || 'unknown' ,
3336 } ,
3437 } ;
3538
36- const { pathname } = req . nextUrl ;
39+ const { pathname } = nextUrl ;
3740
3841 if ( pathname === '/favicon.ico' ) {
3942 const hotDogFaviconEnabled = await client . variation (
@@ -43,20 +46,20 @@ export async function middleware(req: NextRequest, context: NextFetchEvent) {
4346 ) ;
4447
4548 return hotDogFaviconEnabled
46- ? NextResponse . rewrite ( new URL ( '/hot-dog.ico' , request . url ) )
49+ ? NextResponse . rewrite ( new URL ( '/hot-dog.ico' , url ) )
4750 : NextResponse . next ( ) ;
4851 }
4952
5053 const storeClosed = await client . variation ( 'store-closed' , flagContext , false ) ;
5154
5255 if ( pathname === '/' && storeClosed ) {
53- req . nextUrl . pathname = `/closed` ;
54- return NextResponse . rewrite ( new URL ( '/closed' , req . url ) ) ;
56+ nextUrl . pathname = `/closed` ;
57+ return NextResponse . rewrite ( new URL ( '/closed' , url ) ) ;
5558 }
5659
5760 if ( pathname === '/closed' ) {
58- req . nextUrl . pathname == = '/' ;
59- return NextResponse . redirect ( new URL ( '/' , req . url ) ) ;
61+ nextUrl . pathname = '/' ;
62+ return NextResponse . redirect ( new URL ( '/' , url ) ) ;
6063 }
6164
6265 return ;
0 commit comments