feat: refactor admin authentication to staff authentication with updated cookie handling

This commit is contained in:
Ardeman
2025-03-03 16:47:59 +08:00
parent 4f4e94389e
commit 459e25c010
11 changed files with 120 additions and 90 deletions
+19 -2
View File
@@ -1,12 +1,15 @@
import { decodeJwt } from 'jose'
import { userTokenCookieConfig } from '~/libs/cookie.server'
import {
staffTokenCookieConfig,
userTokenCookieConfig,
} from '~/libs/cookie.server'
type TTokenCookie = {
token: string
}
export const generateTokenCookie = (parameters: TTokenCookie) => {
export const generateUserTokenCookie = (parameters: TTokenCookie) => {
const { token } = parameters
const decodedToken = decodeJwt(token)
@@ -19,3 +22,17 @@ export const generateTokenCookie = (parameters: TTokenCookie) => {
expires: expirationDate,
})
}
export const generateStaffTokenCookie = (parameters: TTokenCookie) => {
const { token } = parameters
const decodedToken = decodeJwt(token)
const decodedTokenExp = decodedToken.exp
const expirationDate = decodedTokenExp
? new Date(decodedTokenExp * 1000)
: undefined
return staffTokenCookieConfig.serialize(token, {
expires: expirationDate,
})
}