diff --git a/client/ui/Main.tsx b/client/ui/Main.tsx index 8f923aa..ea263fa 100644 --- a/client/ui/Main.tsx +++ b/client/ui/Main.tsx @@ -3,7 +3,7 @@ import useEventListener from "../utils/useEventListener.ts" import AvatarMySelf from "./AvatarMySelf.tsx" import MainSharedContext from './MainSharedContext.ts' import * as React from 'react' -import { BrowserRouter, Link, Outlet, Route, Routes, useNavigate } from "react-router" +import { BrowserRouter, createBrowserRouter, Link, Outlet, Route, RouterProvider, Routes } from "react-router" import LoginDialog from "./main-page/LoginDialog.tsx" import useAsyncEffect from "../utils/useAsyncEffect.ts" import performAuth from "../performAuth.ts" @@ -18,24 +18,7 @@ import AllChatsList from "./main-page/AllChatsList.tsx" import FavouriteChatsList from "./main-page/FavouriteChatsList.tsx" import AddFavourtieChatDialog from "./main-page/AddFavourtieChatDialog.tsx" import RecentChatsList from "./main-page/RecentChatsList.tsx" -import ChatInfoDialog from "./routers/ChatInfoDialog.tsx" - -function Test() { - const nav = useNavigate() - const dialogRef = React.useRef() - useAsyncEffect(async () => { - await sleep(10) - dialogRef.current!.open = true - dialogRef.current!.addEventListener('overlay-click', () => { - dialogRef.current!.open = false - }) - dialogRef.current!.addEventListener('closed', async () => { - await sleep(100) - nav(-1) - }) - }, []) - return -} +import UserOrChatInfoDialog from "./routers/UserOrChatInfoDialog.tsx" export default function Main() { const [myProfileCache, setMyProfileCache] = React.useState() @@ -111,133 +94,132 @@ export default function Main() { waitingForAuth.open = false }) - return ( - - - - - { - // 将子路由渲染到此处 - - } - - - - - - - {myProfileCache?.getNickName()} - - - 账号设置 - - 添加收藏对话 - 创建新的群组 - 我是测试 - 我是测试2 - -
- - LingChair Web v{__APP_VERSION__}
- Build: {__GIT_HASH__} ({__BUILD_TIME__})
- 在 Codeberg 上查看源代码 -
-
- { - /** - * Default: 侧边列表提供列表切换 - */ - !isMobileUI() ? - - drawerRef.current!.open = true}> + const Root = ( + +
+ { + // 将子路由渲染到此处 + + } + + + + + + + {myProfileCache?.getNickName()} + + + 账号设置 + + 添加收藏对话 + 创建新的群组 + 我是测试 + 我是测试2 + +
+ + LingChair Web v{__APP_VERSION__}
+ Build: {__GIT_HASH__} ({__BUILD_TIME__})
+ 在 Codeberg 上查看源代码 +
+
+ { + /** + * Default: 侧边列表提供列表切换 + */ + !isMobileUI() ? + + drawerRef.current!.open = true}> - - - - - /** - * Mobile: 底部导航栏提供列表切换 - */ - : - drawerRef.current!.open = true}> - { - ({ - Recents: "最近对话", - Favourites: "收藏对话", - AllChats: "所有对话", - })[currentShowPage] - } -
-
- } - { - /** - * Mobile: 指定高度的容器 - * Default: 侧边列表 - */ - - } - { - /** - * Mobile: 底部导航栏提供列表切换 - * Default: 侧边列表提供列表切换 - */ - isMobileUI() && - 最近对话 - 收藏对话 - 全部对话 - - } -
- )}> - - } /> - } /> - - -
-
-
+ + + + + /** + * Mobile: 底部导航栏提供列表切换 + */ + : + drawerRef.current!.open = true}> + { + ({ + Recents: "最近对话", + Favourites: "收藏对话", + AllChats: "所有对话", + })[currentShowPage] + } +
+
+ } + { + /** + * Mobile: 指定高度的容器 + * Default: 侧边列表 + */ + + } + { + /** + * Mobile: 底部导航栏提供列表切换 + * Default: 侧边列表提供列表切换 + */ + isMobileUI() && + 最近对话 + 收藏对话 + 全部对话 + + } + + ) -} \ No newline at end of file + + const router = createBrowserRouter([{ + path: "/", + element: Root, + children: [ + { path: 'info/:type', Component: UserOrChatInfoDialog, }, + ], + }]) + + return +}