first commit
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
import { storeToRefs } from 'pinia'
|
||||
|
||||
import { tokenService } from '@/services/api/token-service'
|
||||
import { useAuthStore } from '@/store/auth'
|
||||
|
||||
export default function useAuth() {
|
||||
const store = useAuthStore()
|
||||
const { user, role, isAuthenticated } = storeToRefs(store)
|
||||
|
||||
const applySession = (payload = {}) => {
|
||||
if (payload.token) tokenService.saveToken(payload.token)
|
||||
if (payload.refreshToken) tokenService.saveRefreshToken(payload.refreshToken)
|
||||
if (payload.user) store.setUser(payload.user)
|
||||
}
|
||||
|
||||
const savePhoneNumber = (phoneNumber) => {
|
||||
if (!phoneNumber) return
|
||||
const current = tokenService.getUserInfo() || {}
|
||||
if (!current.phoneNumber) {
|
||||
store.setUser({ ...current, phoneNumber })
|
||||
}
|
||||
}
|
||||
|
||||
const clearSession = () => {
|
||||
store.clearUser()
|
||||
}
|
||||
|
||||
return {
|
||||
user,
|
||||
role,
|
||||
isAuthenticated,
|
||||
applySession,
|
||||
savePhoneNumber,
|
||||
clearSession,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user