split thunks from slices to avoid circular dependencies

This commit is contained in:
Athou
2023-12-28 22:11:03 +01:00
parent bb4bb0c7d7
commit 0ea0db48db
41 changed files with 460 additions and 413 deletions

View File

@@ -0,0 +1,29 @@
import { createSlice, type PayloadAction } from "@reduxjs/toolkit"
import { reloadServerInfos } from "app/server/thunks"
import { type ServerInfo } from "app/types"
interface ServerState {
serverInfos?: ServerInfo
webSocketConnected: boolean
}
const initialState: ServerState = {
webSocketConnected: false,
}
export const serverSlice = createSlice({
name: "server",
initialState,
reducers: {
setWebSocketConnected: (state, action: PayloadAction<boolean>) => {
state.webSocketConnected = action.payload
},
},
extraReducers: builder => {
builder.addCase(reloadServerInfos.fulfilled, (state, action) => {
state.serverInfos = action.payload
})
},
})
export const { setWebSocketConnected } = serverSlice.actions