Files
open-anylink-web/src/stores/user.js
2024-08-21 21:51:06 +08:00

62 lines
1.1 KiB
JavaScript

import { defineStore } from 'pinia'
import { ref } from 'vue'
// 用户模块
export const userStore = defineStore(
'anyim-user',
() => {
const at = ref({
token: '',
secret: '',
expiretime: null
})
const rt = ref({
token: '',
secret: '',
expiretime: null
})
const setAt = (newAt) => {
const now = new Date()
at.value = {
token: newAt.token,
secret: newAt.secret,
expiretime: new Date(now.getTime() + newAt.expire * 1000)
}
}
const setRt = (newRt) => {
const now = new Date()
rt.value = {
token: newRt.token,
secret: newRt.secret,
expiretime: new Date(now.getTime() + newRt.expire * 1000)
}
}
const clearAt = () => {
at.value = {
token: '',
secret: '',
expiretime: null
}
}
const clearRt = () => {
rt.value = {
token: '',
secret: '',
expiretime: null
}
}
return {
at,
rt,
setAt,
setRt,
clearAt,
clearRt
}
},
{
persist: true
}
)