Router.tsx 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. import { Route, Routes } from "react-router-dom";
  2. import Anonymous from "./layouts/anonymous";
  3. import Dashboard from "./layouts/dashboard";
  4. import NutUsersSignIn from "./pages/nut/users/sign-in";
  5. import NutUsersSignUp from "./pages/nut/users/sign-up";
  6. import NutUsersUnlockNew from "./pages/nut/users/unlock/new";
  7. import NutUsersUnlockVerify from "./pages/nut/users/unlock/verify";
  8. import NutUsersResetPassword from "./pages/nut/users/reset-password";
  9. import NutUsersForgotPassword from "./pages/nut/users/forgot-password";
  10. import NutUsersChangePassword from "./pages/nut/users/change-password";
  11. import NutUsersAccountInfo from "./pages/nut/users/account-info";
  12. import NutUsersLogs from "./pages/nut/users/logs";
  13. import NutForbidden from "./pages/nut/forbidden";
  14. import NutNotFound from "./pages/nut/not-found";
  15. import NutSwitchLanguage from "./pages/nut/switch-languages";
  16. import NutHome from "./pages/nut";
  17. import LibraryCommunity from "./pages/library/community";
  18. import LibraryCommunityList from "./pages/library/community/list";
  19. import LibraryCommunityRecent from "./pages/library/community/recent";
  20. import LibraryPalicanon from "./pages/library/palicanon";
  21. import LibraryPalicanonByPath from "./pages/library/palicanon/bypath";
  22. import LibraryPalicanonChapter from "./pages/library/palicanon/chapter";
  23. import LibraryCourse from "./pages/library/course";
  24. import LibraryCourseList from "./pages/library/course/list";
  25. import LibraryCourseShow from "./pages/library/course/course";
  26. import LibraryLessonShow from "./pages/library/course/lesson";
  27. import LibraryTerm from "./pages/library/term/show";
  28. import LibraryDict from "./pages/library/dict";
  29. import LibraryDictShow from "./pages/library/dict/show";
  30. import LibraryDictRecent from "./pages/library/dict/recent";
  31. import LibraryAnthology from "./pages/library/anthology";
  32. import LibraryAnthologyShow from "./pages/library/anthology/show";
  33. import LibraryAnthologyList from "./pages/library/anthology/list";
  34. import LibraryArticle from "./pages/library/anthology/article";
  35. import LibraryBlog from "./pages/library/blog";
  36. import LibraryBlogOverview from "./pages/library/blog/overview";
  37. import LibraryBlogTranslation from "./pages/library/blog/translation";
  38. import LibraryBlogCourse from "./pages/library/blog/course";
  39. import LibraryBlogAnthology from "./pages/library/blog/anthology";
  40. import LibraryBlogTerm from "./pages/library/blog/term";
  41. import Studio from "./pages/studio";
  42. import StudioHome from "./pages/studio/home";
  43. import StudioPalicanon from "./pages/studio/palicanon";
  44. import StudioRecent from "./pages/studio/recent";
  45. import StudioChannel from "./pages/studio/channel";
  46. import StudioChannelList from "./pages/studio/channel/list";
  47. import StudioChannelEdit from "./pages/studio/channel/edit";
  48. import StudioGroup from "./pages/studio/group";
  49. import StudioGroupList from "./pages/studio/group/list";
  50. import StudioGroupEdit from "./pages/studio/group/edit";
  51. import StudioGroupShow from "./pages/studio/group/show";
  52. import StudioDict from "./pages/studio/dict";
  53. import StudioDictList from "./pages/studio/dict/list";
  54. import StudioTerm from "./pages/studio/term";
  55. import StudioTermList from "./pages/studio/term/list";
  56. import StudioArticle from "./pages/studio/article";
  57. import StudioArticleList from "./pages/studio/article/list";
  58. import StudioArticleEdit from "./pages/studio/article/edit";
  59. import StudioAnthology from "./pages/studio/anthology";
  60. import StudioAnthologyList from "./pages/studio/anthology/list";
  61. import StudioAnthologyEdit from "./pages/studio/anthology/edit";
  62. import StudioAnalysis from "./pages/studio/analysis";
  63. import StudioAnalysisList from "./pages/studio/analysis/list";
  64. const Widget = () => {
  65. return (
  66. <Routes>
  67. <Route path="anonymous" element={<Anonymous />}>
  68. <Route path="users">
  69. <Route path="sign-in" element={<NutUsersSignIn />} />
  70. <Route path="sign-up" element={<NutUsersSignUp />} />
  71. <Route path="unlock">
  72. <Route path="new" element={<NutUsersUnlockNew />} />
  73. <Route path="verify/:token" element={<NutUsersUnlockVerify />} />
  74. </Route>
  75. <Route path="reset-password/:token" element={<NutUsersResetPassword />} />
  76. <Route path="forgot-password" element={<NutUsersForgotPassword />} />
  77. </Route>
  78. </Route>
  79. <Route path="dashboard" element={<Dashboard />}>
  80. <Route path="users">
  81. <Route path="change-password" element={<NutUsersChangePassword />} />
  82. <Route path="logs" element={<NutUsersLogs />} />
  83. <Route path="account-info" element={<NutUsersAccountInfo />} />
  84. </Route>
  85. </Route>
  86. <Route path="switch-language" element={<NutSwitchLanguage />} />
  87. <Route path="forbidden" element={<NutForbidden />} />
  88. <Route path="" element={<NutHome />} />
  89. <Route path="*" element={<NutNotFound />} />
  90. <Route path="community" element={<LibraryCommunity />}>
  91. <Route path="list" element={<LibraryCommunityList />} />
  92. <Route path="recent" element={<LibraryCommunityRecent />} />
  93. </Route>
  94. <Route path="palicanon" element={<LibraryPalicanon />}>
  95. <Route path="list" element={<LibraryPalicanonByPath />} />
  96. <Route path="list/:root" element={<LibraryPalicanonByPath />} />
  97. <Route path="list/:root/:path" element={<LibraryPalicanonByPath />} />
  98. <Route path="list/:root/:path/:tag" element={<LibraryPalicanonByPath />} />
  99. <Route path="chapter/:id" element={<LibraryPalicanonChapter />} />
  100. </Route>
  101. <Route path="course" element={<LibraryCourse />}>
  102. <Route path="list" element={<LibraryCourseList />}></Route>
  103. <Route path="show/:id" element={<LibraryCourseShow />}></Route>
  104. <Route path="lesson/:id" element={<LibraryLessonShow />}></Route>
  105. </Route>
  106. <Route path="term/:word" element={<LibraryTerm />} />
  107. <Route path="dict" element={<LibraryDict />}>
  108. <Route path=":word" element={<LibraryDictShow />} />
  109. <Route path="recent" element={<LibraryDictRecent />} />
  110. </Route>
  111. <Route path="anthology" element={<LibraryAnthology />}>
  112. <Route path="list" element={<LibraryAnthologyList />} />
  113. <Route path=":id" element={<LibraryAnthologyShow />} />
  114. <Route path=":id/by_channel/:tags" element={<LibraryAnthologyShow />} />
  115. </Route>
  116. <Route path="article" element={<LibraryArticle />}>
  117. <Route path=":type/:id" element={<LibraryArticle />} />
  118. <Route path=":type/:id/param/:param" element={<LibraryArticle />} />
  119. <Route path=":type/:id/tran" element={<LibraryArticle />} />
  120. <Route path=":type/:id/tran/param/:param" element={<LibraryArticle />} />
  121. </Route>
  122. <Route path="blog/:studio" element={<LibraryBlog />}>
  123. <Route path="overview" element={<LibraryBlogOverview />} />
  124. <Route path="palicanon" element={<LibraryBlogTranslation />} />
  125. <Route path="course" element={<LibraryBlogCourse />} />
  126. <Route path="anthology" element={<LibraryBlogAnthology />} />
  127. <Route path="term" element={<LibraryBlogTerm />} />
  128. </Route>
  129. <Route path="studio/:studioname" element={<Studio />}>
  130. <Route path="home" element={<StudioHome />} />
  131. <Route path="palicanon" element={<StudioPalicanon />}></Route>
  132. <Route path="recent" element={<StudioRecent />}></Route>
  133. <Route path="channel" element={<StudioChannel />}>
  134. <Route path="list" element={<StudioChannelList />} />
  135. <Route path=":channelid/edit" element={<StudioChannelEdit />} />
  136. </Route>
  137. <Route path="group" element={<StudioGroup />}>
  138. <Route path="list" element={<StudioGroupList />} />
  139. <Route path=":groupid" element={<StudioGroupShow />} />
  140. <Route path=":groupid/edit" element={<StudioGroupEdit />} />
  141. </Route>
  142. <Route path="dict" element={<StudioDict />}>
  143. <Route path="list" element={<StudioDictList />} />
  144. </Route>
  145. <Route path="term" element={<StudioTerm />}>
  146. <Route path="list" element={<StudioTermList />} />
  147. </Route>
  148. <Route path="article" element={<StudioArticle />}>
  149. <Route path="list" element={<StudioArticleList />} />
  150. <Route path=":articleid/edit" element={<StudioArticleEdit />} />
  151. </Route>
  152. <Route path="anthology" element={<StudioAnthology />}>
  153. <Route path="list" element={<StudioAnthologyList />}></Route>
  154. <Route path=":anthology_id/edit" element={<StudioAnthologyEdit />} />
  155. </Route>
  156. <Route path="analysis" element={<StudioAnalysis />}>
  157. <Route path="list" element={<StudioAnalysisList />} />
  158. </Route>
  159. </Route>
  160. </Routes>
  161. );
  162. };
  163. export default Widget;