Skip to content

Commit 4822dde

Browse files
committed
chore: update
1 parent 352ad46 commit 4822dde

File tree

3 files changed

+15
-15
lines changed

3 files changed

+15
-15
lines changed

playground/auth.d.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,15 @@ declare module '#auth-utils' {
2929
polar?: string
3030
zitadel?: string
3131
authentik?: string
32-
jtw?: {
33-
accessToken: string
34-
refreshToken: string
35-
}
3632
}
3733

3834
interface UserSession {
3935
// eslint-disable-next-line @typescript-eslint/no-explicit-any
4036
extended?: any
37+
jtw?: {
38+
accessToken: string
39+
refreshToken: string
40+
}
4141
loggedInAt: number
4242
}
4343

playground/middleware/jtw.global.ts

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,31 +3,31 @@ import { parse, parseSetCookie, serialize } from 'cookie-es'
33
import type { JwtData } from '@tsndr/cloudflare-worker-jwt'
44
import { decode } from '@tsndr/cloudflare-worker-jwt'
55

6-
export default defineNuxtRouteMiddleware(async (route) => {
6+
export default defineNuxtRouteMiddleware(async () => {
77
const nuxtApp = useNuxtApp()
88
// Don't run on client hydration when server rendered
99
if (import.meta.client && nuxtApp.isHydrating && nuxtApp.payload.serverRendered) return
1010

11+
const { session, clear: clearSession, fetch: fetchSession } = useUserSession()
12+
// Ignore if no tokens
13+
if (!session.value?.jwt) return
14+
1115
const serverEvent = useRequestEvent()
1216
const runtimeConfig = useRuntimeConfig()
13-
const { session, clear, fetch } = useUserSession()
14-
const { accessToken, refreshToken } = session.value?.jwt || {}
15-
// Ignore if no tokens
16-
if (!accessToken || !refreshToken) return
17+
const { accessToken, refreshToken } = session.value.jwt
1718

1819
const accessPayload = decode(accessToken)
1920
const refreshPayload = decode(refreshToken)
2021

21-
// console.log(accessPayload, '\n', refreshPayload)
2222
// Both tokens expired, clearing session
2323
if (isExpired(accessPayload) && isExpired(refreshPayload)) {
24-
console.log('both tokens expired, clearing session')
25-
await clear()
24+
console.info('both tokens expired, clearing session')
25+
await clearSession()
2626
// return navigateTo('/login')
2727
}
2828
// Access token expired, refreshing
2929
else if (isExpired(accessPayload)) {
30-
console.log('access token expired, refreshing')
30+
console.info('access token expired, refreshing')
3131
await useRequestFetch()('/api/jtw/refresh', {
3232
method: 'POST',
3333
onResponse({ response: { headers } }) {
@@ -53,7 +53,8 @@ export default defineNuxtRouteMiddleware(async (route) => {
5353
}
5454
},
5555
})
56-
await fetch()
56+
// refresh the session
57+
await fetchSession()
5758
}
5859
})
5960

playground/server/api/jtw/create.post.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { randomUUID } from 'node:crypto'
21
import jwt from '@tsndr/cloudflare-worker-jwt'
32

43
export default defineEventHandler(async (event) => {

0 commit comments

Comments
 (0)