Skip to content

Commit

Permalink
Update auth.ts to await params in preparation for nextjs 15
Browse files Browse the repository at this point in the history
In NextJS 15, `params` from routes is now a Promise which must be awaited. Direct access is deprecated and will be removed in future versions.

This change is backwards compatible because awaiting on a non-promise returns back the value itself.

Without this change we get the following warning:
```
In route /api/auth/[auth0] a param property was accessed directly with `params.auth0`. `params` is now a Promise and should be awaited before accessing properties of the underlying params object. In this version of Next.js direct access to param properties is still supported to facilitate migration but in a future version you will be required to await `params`. If this use is inside an async function await it. If this use is inside a synchronous function then convert the function to async or await it from outside this function and pass the result in.
```

See more details in vercel/next.js#68812
  • Loading branch information
ammubhave authored Oct 4, 2024
1 parent 7ec9a87 commit 90bad3a
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion src/handlers/auth.ts
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ export default function handlerFactory({
const appRouteHandlerFactory: (customHandlers: ApiHandlers, onError?: AppRouterOnError) => AppRouteHandlerFn =
(customHandlers, onError) => async (req: NextRequest, ctx) => {
const { params } = ctx;
let route = params.auth0;
let route = (await params).auth0;

if (Array.isArray(route)) {
let otherRoutes;
Expand Down

0 comments on commit 90bad3a

Please sign in to comment.