新增 pc-client:畅联 PC 端工程(Electron+React,按确认效果图改造,B-59)

- 基于 openim-electron-demo 改造:工号+密码登录(自研账号服务)、会话列表/聊天窗/通讯录界面重做
- 文字/语音/文件/图片消息、文件拖拽发送、表情面板、一对一语音通话(LiveKit)
- RTC 令牌对接账号服务带鉴权版 /api/rtc_token(Bearer imToken + {room,identity})
- account-service: CORS Allow-Headers 补 authorization(浏览器/渲染进程跨域调 rtc_token 需要)
- 附本地 mock 账号服务(scripts/mock-account-server.js)与截图联调脚本
This commit is contained in:
KIMI
2026-08-09 09:11:06 +08:00
parent b95159f7eb
commit 7ce40e356f
284 changed files with 31599 additions and 7 deletions
+59
View File
@@ -0,0 +1,59 @@
import { createHashRouter } from "react-router-dom";
import { MainContentLayout } from "@/layout/MainContentLayout";
import { MainContentWrap } from "@/layout/MainContentWrap";
import { EmptyChat } from "@/pages/chat/EmptyChat";
import { QueryChat } from "@/pages/chat/queryChat";
import contactRoutes from "./ContactRoutes";
import GlobalErrorElement from "./GlobalErrorElement";
const router = createHashRouter([
{
path: "/",
element: <MainContentWrap />,
errorElement: <GlobalErrorElement />,
children: [
{
path: "/",
element: <MainContentLayout />,
children: [
{
path: "/chat",
async lazy() {
const { Chat } = await import("@/pages/chat");
return { Component: Chat };
},
children: [
{
index: true,
element: <EmptyChat />,
},
{
path: ":conversationID",
element: <QueryChat />,
},
],
},
{
path: "contact",
async lazy() {
const { Contact } = await import("@/pages/contact");
return { Component: Contact };
},
children: contactRoutes,
},
],
},
{
path: "login",
async lazy() {
const { Login } = await import("@/pages/login");
return { Component: Login };
},
},
],
},
]);
export default router;