46 lines
1.7 KiB
TypeScript
46 lines
1.7 KiB
TypeScript
import { configureStore } from '@reduxjs/toolkit';
|
|
import styleReducer from './styleSlice';
|
|
import mainReducer from './mainSlice';
|
|
import authSlice from './authSlice';
|
|
import openAiSlice from './openAiSlice';
|
|
|
|
import usersSlice from "./users/usersSlice";
|
|
import rolesSlice from "./roles/rolesSlice";
|
|
import permissionsSlice from "./permissions/permissionsSlice";
|
|
import walletsSlice from "./wallets/walletsSlice";
|
|
import devicesSlice from "./devices/devicesSlice";
|
|
import mining_poolsSlice from "./mining_pools/mining_poolsSlice";
|
|
import mining_configsSlice from "./mining_configs/mining_configsSlice";
|
|
import mining_sessionsSlice from "./mining_sessions/mining_sessionsSlice";
|
|
import hashrate_samplesSlice from "./hashrate_samples/hashrate_samplesSlice";
|
|
import reward_payoutsSlice from "./reward_payouts/reward_payoutsSlice";
|
|
import extension_eventsSlice from "./extension_events/extension_eventsSlice";
|
|
import audit_logsSlice from "./audit_logs/audit_logsSlice";
|
|
|
|
export const store = configureStore({
|
|
reducer: {
|
|
style: styleReducer,
|
|
main: mainReducer,
|
|
auth: authSlice,
|
|
openAi: openAiSlice,
|
|
|
|
users: usersSlice,
|
|
roles: rolesSlice,
|
|
permissions: permissionsSlice,
|
|
wallets: walletsSlice,
|
|
devices: devicesSlice,
|
|
mining_pools: mining_poolsSlice,
|
|
mining_configs: mining_configsSlice,
|
|
mining_sessions: mining_sessionsSlice,
|
|
hashrate_samples: hashrate_samplesSlice,
|
|
reward_payouts: reward_payoutsSlice,
|
|
extension_events: extension_eventsSlice,
|
|
audit_logs: audit_logsSlice,
|
|
},
|
|
})
|
|
|
|
// 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
|