@@ -13,10 +13,11 @@ import type {
13
13
AuthAction ,
14
14
NextAuthRequest ,
15
15
NextAuthResponse ,
16
+ Awaitable ,
16
17
} from "../core/types"
17
18
18
19
interface RouteHandlerContext {
19
- params : { nextauth : string [ ] }
20
+ params : Awaitable < { nextauth : string [ ] } >
20
21
}
21
22
22
23
async function NextAuthApiHandler (
@@ -74,19 +75,17 @@ async function NextAuthRouteHandler(
74
75
75
76
// eslint-disable-next-line @typescript-eslint/no-var-requires
76
77
const { headers, cookies } = require ( "next/headers" )
77
- const nextauth = context . params ?. nextauth
78
+ const nextauth = ( await context . params ) ?. nextauth
78
79
const query = Object . fromEntries ( req . nextUrl . searchParams )
79
80
const body = await getBody ( req )
80
81
const internalResponse = await AuthHandler ( {
81
82
req : {
82
83
body,
83
84
query,
84
85
cookies : Object . fromEntries (
85
- cookies ( )
86
- . getAll ( )
87
- . map ( ( c ) => [ c . name , c . value ] )
86
+ ( await cookies ( ) ) . getAll ( ) . map ( ( c ) => [ c . name , c . value ] )
88
87
) ,
89
- headers : Object . fromEntries ( headers ( ) as Headers ) ,
88
+ headers : Object . fromEntries ( ( await headers ( ) ) as Headers ) ,
90
89
method : req . method ,
91
90
action : nextauth ?. [ 0 ] as AuthAction ,
92
91
providerId : nextauth ?. [ 1 ] ,
@@ -176,7 +175,7 @@ export async function getServerSession<
176
175
O extends GetServerSessionOptions ,
177
176
R = O [ "callbacks" ] extends { session : ( ...args : any [ ] ) => infer U }
178
177
? U
179
- : Session
178
+ : Session ,
180
179
> ( ...args : GetServerSessionParams < O > ) : Promise < R | null > {
181
180
const isRSC = args . length === 0 || args . length === 1
182
181
@@ -187,11 +186,9 @@ export async function getServerSession<
187
186
// eslint-disable-next-line @typescript-eslint/no-var-requires
188
187
const { headers, cookies } = require ( "next/headers" )
189
188
req = {
190
- headers : Object . fromEntries ( headers ( ) as Headers ) ,
189
+ headers : Object . fromEntries ( ( await headers ( ) ) as Headers ) ,
191
190
cookies : Object . fromEntries (
192
- cookies ( )
193
- . getAll ( )
194
- . map ( ( c ) => [ c . name , c . value ] )
191
+ ( await cookies ( ) ) . getAll ( ) . map ( ( c ) => [ c . name , c . value ] )
195
192
) ,
196
193
}
197
194
res = { getHeader ( ) { } , setCookie ( ) { } , setHeader ( ) { } }
@@ -236,7 +233,7 @@ export async function unstable_getServerSession<
236
233
O extends GetServerSessionOptions ,
237
234
R = O [ "callbacks" ] extends { session : ( ...args : any [ ] ) => infer U }
238
235
? U
239
- : Session
236
+ : Session ,
240
237
> ( ...args : GetServerSessionParams < O > ) : Promise < R | null > {
241
238
if ( ! deprecatedWarningShown && process . env . NODE_ENV !== "production" ) {
242
239
console . warn (
0 commit comments