mirror of
https://github.com/jeffvli/feishin.git
synced 2026-08-08 05:12:57 +02:00
add logout button
This commit is contained in:
@@ -12,6 +12,7 @@ export interface AuthSlice extends AuthState {
|
||||
addServer: (args: ServerListItemWithCredential) => void;
|
||||
deleteServer: (id: string) => void;
|
||||
getServer: (id: string) => null | ServerListItemWithCredential;
|
||||
logout: () => void;
|
||||
setCurrentServer: (server: null | ServerListItemWithCredential) => void;
|
||||
setMusicFolderId: (musicFolderId: string[] | undefined) => void;
|
||||
updateServer: (id: string, args: Partial<ServerListItemWithCredential>) => void;
|
||||
@@ -48,6 +49,23 @@ export const useAuthStore = createWithEqualityFn<AuthSlice>()(
|
||||
if (server) return server;
|
||||
return null;
|
||||
},
|
||||
logout: () => {
|
||||
set((state) => {
|
||||
const currentServer = state.currentServer;
|
||||
if (!currentServer) {
|
||||
return;
|
||||
}
|
||||
|
||||
const server = state.serverList[currentServer.id];
|
||||
if (server) {
|
||||
server.credential = '';
|
||||
server.ndCredential = undefined;
|
||||
server.savePassword = false;
|
||||
}
|
||||
|
||||
state.currentServer = null;
|
||||
});
|
||||
},
|
||||
setCurrentServer: (server) => {
|
||||
set((state) => {
|
||||
state.currentServer = server;
|
||||
|
||||
Reference in New Issue
Block a user