store.ts 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. import { configureStore } from "@reduxjs/toolkit";
  2. import layoutReducer from "./reducers/layout";
  3. import sessionReducer from "./reducers/session";
  4. import currentUserReducer from "./reducers/current-user";
  5. import courseUserReducer from "./reducers/course-user";
  6. import openArticleReducer from "./reducers/open-article";
  7. import settingReducer from "./reducers/setting";
  8. import commandReducer from "./reducers/command";
  9. import suggestionReducer from "./reducers/suggestion";
  10. import articleModeReducer from "./reducers/article-mode";
  11. import inlineDictReducer from "./reducers/inline-dict";
  12. import currentCourseReducer from "./reducers/current-course";
  13. import sentenceReducer from "./reducers/sentence";
  14. import themeReducer from "./reducers/theme";
  15. import acceptPrReducer from "./reducers/accept-pr";
  16. import termVocabularyReducer from "./reducers/term-vocabulary";
  17. import nissayaEndingVocabularyReducer from "./reducers/nissaya-ending-vocabulary";
  18. import relationReducer from "./reducers/relation";
  19. import relationAddReducer from "./reducers/relation-add";
  20. import termChangeReducer from "./reducers/term-change";
  21. import paraChangeReducer from "./reducers/para-change";
  22. import rightPanelReducer from "./reducers/right-panel";
  23. import sentWordsReducer from "./reducers/sent-word";
  24. import netStatusReducer from "./reducers/net-status";
  25. import discussionReducer from "./reducers/discussion";
  26. import wbwReducer from "./reducers/wbw";
  27. import termOrderReducer from "./reducers/term-order";
  28. import focusReducer from "./reducers/focus";
  29. import prLoadReducer from "./reducers/pr-load";
  30. import termClickReducer from "./reducers/term-click";
  31. import cartModeReducer from "./reducers/cart-mode";
  32. import discussionCountReducer from "./reducers/discussion-count";
  33. const store = configureStore({
  34. reducer: {
  35. layout: layoutReducer,
  36. session: sessionReducer,
  37. currentUser: currentUserReducer,
  38. courseUser: courseUserReducer,
  39. openArticle: openArticleReducer,
  40. setting: settingReducer,
  41. command: commandReducer,
  42. suggestion: suggestionReducer,
  43. articleMode: articleModeReducer,
  44. inlineDict: inlineDictReducer,
  45. currentCourse: currentCourseReducer,
  46. sentence: sentenceReducer,
  47. theme: themeReducer,
  48. acceptPr: acceptPrReducer,
  49. termVocabulary: termVocabularyReducer,
  50. nissayaEndingVocabulary: nissayaEndingVocabularyReducer,
  51. relation: relationReducer,
  52. relationAdd: relationAddReducer,
  53. termChange: termChangeReducer,
  54. paraChange: paraChangeReducer,
  55. rightPanel: rightPanelReducer,
  56. sentWords: sentWordsReducer,
  57. netStatus: netStatusReducer,
  58. discussion: discussionReducer,
  59. wbw: wbwReducer,
  60. termOrder: termOrderReducer,
  61. focus: focusReducer,
  62. prLoad: prLoadReducer,
  63. termClick: termClickReducer,
  64. cartMode: cartModeReducer,
  65. discussionCount: discussionCountReducer,
  66. },
  67. });
  68. export type RootState = ReturnType<typeof store.getState>;
  69. export type AppDispatch = typeof store.dispatch;
  70. export type AppStore = typeof store;
  71. export default store;