44 lines
1.6 KiB
TypeScript
44 lines
1.6 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 analyticsSlice from './analytics/analyticsSlice';
|
|
import coursesSlice from './courses/coursesSlice';
|
|
import discussion_boardsSlice from './discussion_boards/discussion_boardsSlice';
|
|
import enrollmentsSlice from './enrollments/enrollmentsSlice';
|
|
import instructorsSlice from './instructors/instructorsSlice';
|
|
import studentsSlice from './students/studentsSlice';
|
|
import rolesSlice from './roles/rolesSlice';
|
|
import permissionsSlice from './permissions/permissionsSlice';
|
|
import categoriesSlice from './categories/categoriesSlice';
|
|
import tasksSlice from './tasks/tasksSlice';
|
|
|
|
export const store = configureStore({
|
|
reducer: {
|
|
style: styleReducer,
|
|
main: mainReducer,
|
|
auth: authSlice,
|
|
openAi: openAiSlice,
|
|
|
|
users: usersSlice,
|
|
analytics: analyticsSlice,
|
|
courses: coursesSlice,
|
|
discussion_boards: discussion_boardsSlice,
|
|
enrollments: enrollmentsSlice,
|
|
instructors: instructorsSlice,
|
|
students: studentsSlice,
|
|
roles: rolesSlice,
|
|
permissions: permissionsSlice,
|
|
categories: categoriesSlice,
|
|
tasks: tasksSlice,
|
|
},
|
|
});
|
|
|
|
// 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;
|