blob: bebc250a0698b0e7555a8efe77afd7560aefbd95 [file] [log] [blame]
Krishyac6b24832025-06-05 20:13:20 +08001// import { Route } from 'wouter';
2// import { Redirect } from 'wouter';
3// import AuthPage from './pages/AuthPage/AuthPage';
4// import HomePage from './pages/HomePage';
5// import FriendMoments from './pages/FriendMoments/FriendMoments';
6// import ForumPage from './pages/Forum/posts-main/ForumPage';
7// import SeedList from './pages/SeedList/SeedList';
8// import PostDetailPage from './pages/Forum/posts-detail/PostDetailPage';
9// import { UserProvider } from './context/UserContext';
10// import { GroupProvider } from './context/useGroupStore'; // 导入 GroupProvider
11// import PublishSeed from './pages/PublishSeed/PublishSeed';
12// import SeedDetail from './pages/SeedList/SeedDetail/SeedDetail';
13// import InterestGroup from './pages/InterestGroup/InterestGroup';
14// import UserProfile from './pages/UserCenter/UserProfile';
15// import CreatePostPage from './pages/Forum/posts-create/CreatePostPage';
16// import MessagePage from './pages/MessagePage/MessagePage';
17// import CreateMoment from './pages/FriendMoments/CreateMoment';
18// import PromotionsPage from './pages/PromotionsPage/PromotionsPage';
19// import LevelPage from './pages/LevelPage/LevelPage';
20// import NewbieTasks from './pages/UserCenter/NewbieTasks';
21// // import UserDynamics from './pages/UserCenter/UserDynamics';
22// import UserFriends from './pages/UserCenter/UserFriends';
23// import UserCollect from './pages/UserCenter/UserCollect';
24// import UserInvite from './pages/UserCenter/UserInvite';
25// import SimpleUploader from './pages/PublishSeed/SimpleUploader';
26
27// function RedirectToAuth() {
28// if (typeof window !== 'undefined') {
29// window.location.replace('/auth');
30// }
31// return null;
32// }
33
34// function App() {
35// return (
36// <UserProvider>
37// <GroupProvider> {/* 添加 GroupProvider */}
38// <>
39// <Route path="/" component={RedirectToAuth} />
40// <Route path="/auth" component={AuthPage} />
41// <Route path="/friend-moments" component={FriendMoments} />
42// <Route path="/friend-moments/create" component={CreateMoment} />
43// <Route path="/forum" component={ForumPage} />
44// <Route path="/forum/post/:postId" component={PostDetailPage} />
45// <Route path="/forum/create-post" component={CreatePostPage} />
46// <Route path="/seed-list" component={SeedList} />
47// {/* <Route path="/publish-seed" component={PublishSeed} /> */}
48// <Route path="/publish-seed" component={SimpleUploader} />
49// <Route path="/seed/:seed_id" component={SeedDetail} />
50// <Route path="/interest-groups" component={InterestGroup} />
51// <Route path="/user/profile" component={UserProfile} />
52// <Route path="/messages" component={MessagePage} />
53// <Route path="/promotions" component={PromotionsPage} />
54// <Route path="/level" component={LevelPage} />
55// <Route path="/user/newbie-tasks" component={NewbieTasks} />
56// {/* <Route path="/user/dynamics" component={UserDynamics} /> */}
57// <Route path="/user/friends" component={UserFriends} />
58// <Route path="/user/collections" component={UserCollect} />
59// <Route path="/user/invite" component={UserInvite} />
60// </>
61// </GroupProvider>
62// </UserProvider>
63// );
64// }
65
66// export default App;
67
Krishyae71688a2025-04-10 21:25:17 +080068import { Route } from 'wouter';
Krishya8f2fec82025-06-04 21:54:46 +080069import { Redirect } from 'wouter';
Krishya1df05892025-04-05 21:16:30 +080070import AuthPage from './pages/AuthPage/AuthPage';
Krishya75e43c02025-04-05 21:16:30 +080071import HomePage from './pages/HomePage';
Krishyae71688a2025-04-10 21:25:17 +080072import FriendMoments from './pages/FriendMoments/FriendMoments';
Krishya7ec1dd02025-04-19 15:29:03 +080073import ForumPage from './pages/Forum/posts-main/ForumPage';
22301009ecc1c1c2025-04-09 21:56:23 +080074import SeedList from './pages/SeedList/SeedList';
Krishya7ec1dd02025-04-19 15:29:03 +080075import PostDetailPage from './pages/Forum/posts-detail/PostDetailPage';
Krishya75e43c02025-04-05 21:16:30 +080076import { UserProvider } from './context/UserContext';
Krishyac6b24832025-06-05 20:13:20 +080077import { GroupProvider } from './context/useGroupStore';
223010095b28c672025-04-10 20:12:45 +080078import PublishSeed from './pages/PublishSeed/PublishSeed';
Krishya8f2fec82025-06-04 21:54:46 +080079import SeedDetail from './pages/SeedList/SeedDetail/SeedDetail';
223010093a876cc2025-04-14 16:22:20 +080080import InterestGroup from './pages/InterestGroup/InterestGroup';
223010097ff51f22025-04-15 21:35:28 +080081import UserProfile from './pages/UserCenter/UserProfile';
Krishya7ec1dd02025-04-19 15:29:03 +080082import CreatePostPage from './pages/Forum/posts-create/CreatePostPage';
Krishyaf1d0ea82025-05-03 17:01:58 +080083import MessagePage from './pages/MessagePage/MessagePage';
84import CreateMoment from './pages/FriendMoments/CreateMoment';
Krishya57cc17b2025-05-26 16:43:34 +080085import PromotionsPage from './pages/PromotionsPage/PromotionsPage';
Krishya2283d882025-05-27 22:25:19 +080086import LevelPage from './pages/LevelPage/LevelPage';
Krishya2e0f49a2025-05-29 10:59:01 +080087import NewbieTasks from './pages/UserCenter/NewbieTasks';
22301009648cb7e2025-06-04 08:54:23 +080088// import UserDynamics from './pages/UserCenter/UserDynamics';
89import UserFriends from './pages/UserCenter/UserFriends';
2230100964011632025-06-04 21:57:22 +080090import UserCollect from './pages/UserCenter/UserCollect';
Krishya7096ab12025-06-05 17:15:46 +080091import UserInvite from './pages/UserCenter/UserInvite';
22301009df48f962025-06-05 13:40:44 +080092import SimpleUploader from './pages/PublishSeed/SimpleUploader';
Krishya75e43c02025-04-05 21:16:30 +080093
Krishyac6b24832025-06-05 20:13:20 +080094import UserLayout from './pages/UserCenter/UserLayout';
95
Krishya8f2fec82025-06-04 21:54:46 +080096function RedirectToAuth() {
97 if (typeof window !== 'undefined') {
98 window.location.replace('/auth');
99 }
100 return null;
101}
102
Krishya75e43c02025-04-05 21:16:30 +0800103function App() {
104 return (
105 <UserProvider>
Krishyac6b24832025-06-05 20:13:20 +0800106 <GroupProvider>
Krishyab5ef96d2025-06-05 13:57:05 +0800107 <>
108 <Route path="/" component={RedirectToAuth} />
109 <Route path="/auth" component={AuthPage} />
110 <Route path="/friend-moments" component={FriendMoments} />
111 <Route path="/friend-moments/create" component={CreateMoment} />
112 <Route path="/forum" component={ForumPage} />
113 <Route path="/forum/post/:postId" component={PostDetailPage} />
114 <Route path="/forum/create-post" component={CreatePostPage} />
115 <Route path="/seed-list" component={SeedList} />
Krishyab5ef96d2025-06-05 13:57:05 +0800116 <Route path="/publish-seed" component={SimpleUploader} />
117 <Route path="/seed/:seed_id" component={SeedDetail} />
118 <Route path="/interest-groups" component={InterestGroup} />
Krishyab5ef96d2025-06-05 13:57:05 +0800119 <Route path="/messages" component={MessagePage} />
120 <Route path="/promotions" component={PromotionsPage} />
121 <Route path="/level" component={LevelPage} />
Krishyac6b24832025-06-05 20:13:20 +0800122
123 {/* 用户中心嵌套路由模拟 */}
124 <Route path="/user/profile" component={() => (
125 <UserLayout><UserProfile /></UserLayout>
126 )} />
127 <Route path="/user/newbie-tasks" component={() => (
128 <UserLayout><NewbieTasks /></UserLayout>
129 )} />
130 {/* <Route path="/user/dynamics" component={() => (
131 <UserLayout><UserDynamics /></UserLayout>
132 )} /> */}
133 <Route path="/user/friends" component={() => (
134 <UserLayout><UserFriends /></UserLayout>
135 )} />
136 <Route path="/user/collections" component={() => (
137 <UserLayout><UserCollect /></UserLayout>
138 )} />
139 <Route path="/user/invite" component={() => (
140 <UserLayout><UserInvite /></UserLayout>
141 )} />
Krishyab5ef96d2025-06-05 13:57:05 +0800142 </>
143 </GroupProvider>
Krishya75e43c02025-04-05 21:16:30 +0800144 </UserProvider>
145 );
146}
147
Krishyac6b24832025-06-05 20:13:20 +0800148export default App;