From 40bb171d48f7bca6c6933994d6b9b0550cf67cfa Mon Sep 17 00:00:00 2001 From: BBQ Date: Thu, 12 Feb 2026 21:54:30 +0800 Subject: [PATCH] fix(web): remove duplicate User.ts conflicting with user.ts on case-insensitive fs --- packages/web/src/store/User.ts | 72 ---------------------------------- 1 file changed, 72 deletions(-) delete mode 100644 packages/web/src/store/User.ts diff --git a/packages/web/src/store/User.ts b/packages/web/src/store/User.ts deleted file mode 100644 index 447b9323..00000000 --- a/packages/web/src/store/User.ts +++ /dev/null @@ -1,72 +0,0 @@ -import { defineStore } from 'pinia' -import { reactive, watch } from 'vue' -import { useLocalStorage } from '@vueuse/core' -import { useRouter } from 'vue-router' - -export interface UserInfo { - id: string; - username: string; - role: string; - displayName: string; - avatarUrl: string; -} - -export const useUserStore = defineStore( - 'user', - () => { - const userInfo = reactive({ - id: '', - username: '', - role: '', - displayName: '', - avatarUrl: '', - }) - - const localToken = useLocalStorage('token', '') - - const login = (userData: UserInfo, token: string) => { - localToken.value = token - for (const key of Object.keys(userData) as (keyof UserInfo)[]) { - userInfo[key] = userData[key] - } - } - - const patchUserInfo = (patch: Partial) => { - for (const key of Object.keys(patch) as (keyof UserInfo)[]) { - const value = patch[key] - if (value !== undefined) { - userInfo[key] = value - } - } - } - - const exitLogin = () => { - localToken.value = '' - for (const key of Object.keys(userInfo) as (keyof UserInfo)[]) { - userInfo[key as keyof UserInfo] = '' - } - } - const router = useRouter() - watch( - localToken, - () => { - if (!localToken.value) { - exitLogin() - router.replace({ name: 'Login' }) - } - }, - { - immediate: true, - }, - ) - return { - userInfo, - login, - patchUserInfo, - exitLogin, - } - }, - { - persist: true, - }, -)