Files
campaign-site/middleware.ts
2025-01-07 15:42:25 -03:00

28 lines
588 B
TypeScript

import { withAuth } from 'next-auth/middleware'
import { refreshToken } from './server/utils/auth'
export default withAuth({
pages: {
signIn: '/',
},
callbacks: {
async authorized({ token }) {
if (!token) return false
if (Date.now() < token.accessTokenExpiresAt && !token.error) {
return true
}
const newToken = await refreshToken(token)
if (Date.now() < newToken.accessTokenExpiresAt && !newToken.error) {
return true
}
return false
},
},
})
export const config = { matcher: ['/:path/account/:path*'] }