feat: 新版webui

This commit is contained in:
bietiaop
2025-01-24 21:13:44 +08:00
parent afc9c7ed8d
commit 31c0c1f4bc
201 changed files with 18454 additions and 3422 deletions

View File

@@ -0,0 +1,16 @@
import { configureStore } from '@reduxjs/toolkit'
import configSlice from './modules/config'
const store = configureStore({
reducer: {
config: configSlice
}
})
export default store
// Infer the `RootState` and `AppDispatch` types from the store itself
export type RootState = ReturnType<typeof store.getState>
// Inferred type: {posts: PostsState, comments: CommentsState, users: UsersState}
export type AppDispatch = typeof store.dispatch

View File

@@ -0,0 +1,37 @@
import { PayloadAction, createSlice } from '@reduxjs/toolkit'
import type { RootState } from '@/store'
interface ConfigState {
value: OneBotConfig
}
const initialState: ConfigState = {
value: {
network: {
httpServers: [],
httpClients: [],
websocketServers: [],
websocketClients: []
},
musicSignUrl: '',
enableLocalFile2Url: false,
parseMultMsg: true
}
}
export const configSlice = createSlice({
name: 'config',
initialState,
reducers: {
updateConfig: (state, action: PayloadAction<OneBotConfig>) => {
state.value = action.payload
}
}
})
export const { updateConfig } = configSlice.actions
export const selectCount = (state: RootState) => state.config.value
export default configSlice.reducer